CINXE.COM

Article - Using Duo multi-factor auth...

<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head><meta name="viewport" content="width=device-width, initial-scale=1.0" /><script src="/TDPortal/Content/Scripts/jquery/2.2.4/jquery.min.js?v=20241127210920"></script><script src="/TDPortal/Content/Scripts/jquery-migrate/1.4.1/jquery-migrate.min.js?v=20241127210920"></script><script src="/TDPortal/Content/Scripts/jquery-ui/1.13.2/jquery-ui-1.13.2.custom.timepicker.min.js?v=20241127211336"></script><link href="/TDPortal/Content/Styles/jquery-ui/1.13.2/jquery-ui.compiled.min.css?v=20241127211340" rel="stylesheet" type="text/css" /><link href="/TDPortal/Content/bootstrap/3.4.1/dist/css/bootstrap.min.css?v=20241127210920" rel="stylesheet" type="text/css" id="lnkBootstrapCSS" /><script src="/TDPortal/Content/bootstrap/3.4.1/dist/js/bootstrap.min.js?v=20241127210920"></script><link href="/TDPortal/Content/FontAwesome/css/fontawesome.min.css?v=20241127210906" rel="stylesheet" type="text/css" id="lnkFontAwesome" /><link href="/TDPortal/Content/FontAwesome/css/solid.css?v=20241127210906" rel="stylesheet" type="text/css" /><link href="/TDPortal/Content/FontAwesome/css/regular.css?v=20241127210906" rel="stylesheet" type="text/css" /><link href="/TDPortal/Content/FontAwesome/css/brands.css?v=20241127210906" rel="stylesheet" type="text/css" /><link href="/TDPortal/Content/FontAwesome/css/v4-shims.css?v=20241127210906" rel="stylesheet" type="text/css" /><link href="/TDClient/Styles/bootstrap_custom.min.css?v=20241127211338" rel="stylesheet" type="text/css" /><link href="/TDClient/Styles/TDStyles.min.css?v=20241127211338" rel="stylesheet" type="text/css" /><link href="https://services.northwestern.edu/TDPortal/BE/Style/2/TDClient/30?v=20221021153037" rel="stylesheet" type="text/css" /><script src="/TDPortal/Content/Scripts/tdx/TDJSFramework.compiled.min.js?v=20241127211336"></script><script src="/TDPortal/Content/Scripts/underscore/1.12.1/underscore-min.js?v=20241127210920"></script> <script src="/TDClient/Scripts/clientOS.min.js?v=20241127211328"></script> <script src="/TDClient/Scripts/collapseMe.min.js?v=20241127211328"></script> <script src="/TDClient/Scripts/tdsearchfilter.min.js?v=20241127211328"></script> <script src="/TDClient/Scripts/SiteSearch.min.js?v=20241127211328"></script> <script src="/TDPortal/Content/Scripts/tdx/elasticsearchAutocomplete/elasticsearchAutocomplete.min.js?v=20241127211334"></script> <link id="ctl00_ctl00_lnkFavicon" rel="icon" href="https://services.northwestern.edu/TDPortal/BE/Icon/2/30?v=20220606153335" /> <script async src="//www.googletagmanager.com/gtag/js?id=G-WL1LE772RM"></script> <script> $(function () { window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); // Be sure to set the proper cookie domain to the customer's full subdomain when sending the pageview hit. gtag('config', 'G-WL1LE772RM', { 'cookie_domain': 'services.northwestern.edu' }); }); </script> <script> $(function () { var masterUi = MasterUI({ isPostback: false, baseUrl: '/TDClient/', isTdGoogleAnalyticsEnabled: true, isAuthenticated: false }); $('#collapseMe').collapseMe({ toggleVisibilitySelector: '.navbar-toggle' }); }); // The sub-nav menu uses padding-top to position itself below the header bar and main navigation sections. When the // window is resized, there is a chance that the content of these header or nav sections wraps, causing the height // to change, potentially covering the sub-nav menu, which is obviously a big usability problem. This function // listens for when the window size or orientation is changing (and also when the window first loads), and adjusts // the padding so that the sub-nav menu appears in the correct location. $(window).bind('load ready resize orientationchange', function () { var headerHeight = $('#divMstrHeader').height(); $('#navShim').css({ "padding-top": headerHeight }); $('#content').css({ "padding-top": headerHeight, "margin-top": headerHeight * -1 }); }); </script> <script src="/TDPortal/Content/select2/v3/select2.min.js?v=20241127212542"></script><link href="/TDPortal/Content/select2/v3/select2.compiled.min.css?v=20241127212542" rel="stylesheet" type="text/css" id="lnkSelect2" /> <script src="/TDClient/Scripts/attachmentHandler.min.js?v=20241127211336"></script> <style type="text/css"> .honey-pot-div { display: none; } </style> <script> function shareArticle() { if ($('#ctl00_ctl00_cpContent_cpContent_shareRecipients').val().trim() === "") { alert('You must first enter a valid email.'); $('#btnShare').progressButton('reset'); } else { __doPostBack('ctl00$ctl00$cpContent$cpContent$btnSendShare', ''); } } function closeShareModal() { $('#divShareModal').modal('hide'); $('#btnShare').progressButton('reset'); } function toggleFeedback(isHelpful) { $('#divHelpfulComments').show(); $('#divHelpfulYesNo').hide(); $('#ctl00_ctl00_cpContent_cpContent_hdnIsHelpful').val(isHelpful); $('#ctl00_ctl00_cpContent_cpContent_txtComments').focus(); } function toggleFeedbackResult() { $('#divWasHelpful, #divFeedbackRecorded, #divHelpfulComments, #divHelpfulYesNo').toggle(); } // The following two functions were added as a result of ticket ID: 1392522. We are generating these buttons dynamically to // prevent bots from clicking them and posting feedback on an article. Additionally, we have an input that is hidden from // the user. If a bot enters text in that input, which it likely will (bots love filling out forms), then we don't accept the // form submission function generateFeedbackButtons() { var $btnHelpfulYes = $('<button id="btnHelpfulYes" type="button" class="btn btn-primary gutter-left" onclick="toggleFeedback(1);">Yes</button>'); var $btnHelpfulNo = $('<button id="btnHelpfulNo" type="button" class="btn btn-primary gutter-left-sm" onclick="toggleFeedback(0);">No</button>'); $('#divWasHelpful').append($btnHelpfulYes); $('#divWasHelpful').append($btnHelpfulNo); } function attemptAddFeedback(e) { if ($('#honeyPot').val() !== '') { e.preventDefault(); window.location.reload(); } } function cancelFeedback() { $('#ctl00_ctl00_cpContent_cpContent_txtComments').val(''); $('#divHelpfulComments, #divHelpfulYesNo').toggle(); } function confirmDeleteFeedback(id) { if (confirm('Are you sure you want to delete this feedback? This cannot be undone.')) { $('#ctl00_ctl00_cpContent_cpContent_hdnFeedbackID').val(id); __doPostBack('ctl00$ctl00$cpContent$cpContent$btnDeleteFeedback', ''); } } function toggleAddressed(id, isAddressed) { $('#ctl00_ctl00_cpContent_cpContent_hdnFeedbackID').val(id); $('#ctl00_ctl00_cpContent_cpContent_hdnIsAddressed').val(isAddressed); __doPostBack('ctl00$ctl00$cpContent$cpContent$btnToggleAddressed', ''); } $(function () { generateFeedbackButtons(); $('[data-toggle="popover"]').popover(); var attachmentHandler = new TeamDynamix.AttachmentHandler({ containerSelector: '.js-article-attachments', resultLabelSelector: '#ctl00_ctl00_cpContent_cpContent_lblResults_lblResults-label', baseControllerUrl: '/TDClient/30/Portal/Shared/Attachments', antiForgeryToken: 'fhm3cXGQ-Oji1cLGJpvY0HdvFDpnmrpK_ue1Dxe_6DxTthpQK52jSYbyainL3pOeAlDSmEDs1NrWi2VEFT1BPyw0gtk1:mlZZKYBHte7yDjLQ4MqmtxvY2iWdpDGVBATLhb1QPcxJPq33VlPmVwlWPFXD_wVCx4fNklUWsH4KV62APxemFh9u-jQ1', itemId: 1494, componentId: 26, feedId: 'articleFeed' }); $('#btnShare').on('click', function () { shareArticle(); }); // Don't try and update the table styles if the user wanted to opt out. $('#ctl00_ctl00_cpContent_cpContent_divBody table:not(.SkipTableFixup)').each(function () { var padding = $(this).attr('cellpadding'); var spacing = $(this).attr('cellspacing'); $(this).css("border-collapse", "separate"); if (spacing) { $(this).css("border-spacing", spacing + "px"); } $(this).find('td').each(function () { $(this).css('padding', padding + 'px') }); }); }); </script> <meta property="og:title" content="Using Duo multi-factor authentication" /> <meta property="og:type" content="article" /> <meta property="og:url" content="https://services.northwestern.edu/TDClient/30/Portal/KB/ArticleDet?ID=1494" /> <meta property="og:image" content="https://services.northwestern.edu/TDPortal/BE/Logo/2/30" /> <meta property="og:site_name" content="Northwestern University - Knowledge Base" /> <meta property="article:section" content="IT Knowledge Base" /> <meta property="article:published_time" content="2022-05-12T17:39Z" /> <meta property="article:modified_time" content="2024-05-15T16:38Z" /><title> Article - Using Duo multi-factor auth... </title></head> <body> <form method="post" action="/TDClient/30/Portal/KB/ArticleDet?ID=1494" onsubmit="javascript:return WebForm_OnSubmit();" id="aspnetForm"> <div class="aspNetHidden"> <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="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" /> </div> <script type="text/javascript"> //<![CDATA[ var theForm = document.forms['aspnetForm']; if (!theForm) { theForm = document.aspnetForm; } function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); } } //]]> </script> <script src="/TDClient/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZMSMQxVWLi4fik2rw1_u_hZsCNzwv5c621ov6_ZX_wzTt5vh-g2&amp;t=638628063619783110" type="text/javascript"></script> <script src="/TDClient/ScriptResource.axd?d=nv7asgRUU0tRmHNR2D6t1NXOAgTb3J37FC1L2PfbYYFmSPm-ANa7n6FP0x7BAsbHeL4jfY3ptd1q7zKKVI7DbuXZcwEoKOwj9WxCI1VrQlbWE1Trg1t1GmJDN43kQMJsB7X8tw2&amp;t=ffffffffc7a8e318" type="text/javascript"></script> <script src="/TDClient/ScriptResource.axd?d=NJmAwtEo3Ipnlaxl6CMhvmVxW3-Ljsg_2Hna32smxrg-6ogyYAN3UTPsJQ8m1uwzn_kuf2Wpne6NSFmYui3h0wCQhJN3ZUiLTNkvhiIgZpq74-lKmofUPQGJ8own8RI2_mwAcmvlSj2WBnqwm5Wj4cyNvv81&amp;t=2a9d95e3" type="text/javascript"></script> <script src="/TDClient/ScriptResource.axd?d=dwY9oWetJoJoVpgL6Zq8OLdGoo5BVWQ_Eo60QZTEhEcHeiVfwgY9tLCgzdZ5TRwvrwYEnOvujbNccOVLUfWtUg4HivSIsewg6JABxkBGEqVVV64eiRyCAsPDqh6tUioISUQKB74sWMO4Er2mHrWEIWs_sBM1&amp;t=2a9d95e3" type="text/javascript"></script> <script src="/TDClient/WebResource.axd?d=xtfVMqdF1exC2MBVkOJwMveStDR5kg3dbZWgIXMXZmB1xXom6CcIrWFgHa7jsp4qJuFW2L5XShudyzlBsIO3JhCfiU5HmL2BDz__mCv9dznmBlEMS7LvcYg6wTdPTrAXIXI2CvtjwlnpZd-j4Zpsx2wG_uA1&amp;t=638683209600000000" type="text/javascript"></script> <script src="/TDClient/WebResource.axd?d=sp7vCoAo-SSYfpsQ1sYBBeEDnwCGxDYEwZCM0ler88yoVZIPDXMk1C3XF2L2L0xrbB8Rvhli51TswRlmPIOCZgaY58lKhPr-Pv1jTFJ1oUAu7x6RDtNFZUxbtxs3KYQGLK6FpPD5bKuB0e0NmS9HkAqRVks1&amp;t=638683209600000000" type="text/javascript"></script> <script src="/TDClient/WebResource.axd?d=icMURy63hv40LPPfq4rTvmm-RfB_YkC6rEEF_2QOO68q3TseXYNBetRKKgBXJ8mn2e8UIgCPiV23HaQUZbjySMHqSgmYZgLcYltBqwD2_EK8aQ08zBuqc3ZBVZITQrbtn6w46dRxFLibMIQg0Aho73rn8Rpxrzg5YMG_JR0UOrUR0wlZ0&amp;t=638683209600000000" type="text/javascript"></script> <script src="/TDClient/WebResource.axd?d=1HpFfNpwNihNfEP1lyJHvdPVqbv8KRoFH4-_ZORUgPOP-bqmmtIJRvFQc7828Vf59O_-fdBXcnwdv-hYp5RptPuHmMR0kGQM0_3rS4Z7sKfC7jy9Cc_8fyfcUWa8psszacEQlAXHPXmNwyRymbGSywEmhrE1&amp;t=638683209600000000" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ function WebForm_OnSubmit() { CKEditor_TextBoxEncode('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody', 0); if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false; return true; } //]]> </script> <div class="aspNetHidden"> <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="784CA02E" /> </div> <script type="text/javascript"> //<![CDATA[ Sys.WebForms.PageRequestManager._initialize('ctl00$ctl00$smMain', 'aspnetForm', ['tctl00$ctl00$cpContent$cpContent$UpdatePanel1','','tctl00$ctl00$cpContent$cpContent$upFeedbackGrid','','tctl00$ctl00$cpContent$cpContent$UpdatePanel3','','tctl00$ctl00$cpContent$cpContent$UpdatePanel2','','tctl00$ctl00$cpContent$cpContent$upShare','','tctl00$ctl00$cpContent$cpContent$lblResults$ctl00',''], ['ctl00$ctl00$cpContent$cpContent$btnSubmitComments','','ctl00$ctl00$cpContent$cpContent$btnToggleSubscribe','','ctl00$ctl00$cpContent$cpContent$btnToggleFavorite','','ctl00$ctl00$cpContent$cpContent$btnSendShare',''], [], 90, 'ctl00$ctl00'); //]]> </script> <div id="ctl00_ctl00_upMain" style="display:none;"> <div id="ctl00_ctl00_pbMain" class="progress-box-container"><div class="progress-box-body"><div class="well shadow"><h2 class="h4 gutter-top-none">Updating...</h2><div class="progress" style="margin-bottom: 0;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100" style="width: 100%"></div></div></div></div></div> </div> <header role="banner"> <div id="divMstrHeader" class="master-header NoPrint" style="background-color: #fff;"> <div class="logo-header-full hidden-xs"> <div class="pull-left"> <a href="#mainContent" class="sr-only sr-only-focusable">Skip to main content</a> </div> <div id="ctl00_ctl00_divPageHeader" class="container logo-header clearfix" style="padding: 5px;"> <div id="divLogo" class="pull-left logo-container"> <a href="https://www.northwestern.edu/" target="_blank"> <img src="/TDPortal/BE/Logo/2/30" alt="Northwestern University Home Page" class="js-logo img-responsive" /> </a> </div> <div class="master-header-right pull-right padding-top padding-bottom"> <div class="pull-left topLevelSearch input-group"> <div id="SiteSearch-f7d0873f515948578d4a9b51497c369d" class="gutter-bottom input-group site-search" style="max-width: 400px;"> <div id="SiteSearch-dropdown-f7d0873f515948578d4a9b51497c369d" class="input-group-btn"> <button type="button" id="SiteSearch-filter-f7d0873f515948578d4a9b51497c369d" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" title="Filter your search by category" data-component="all"> <span class="fa-solid fa-solid fa-earth-americas"></span><span class="fa-solid fa-fw fa-nopad fa-caret-down" aria-hidden="true"></span> <span class="sr-only"> Filter your search by category. Current category: <span class="js-current-component">All</span> </span> </button> <ul tabindex="-1" aria-label="Filter your search by category" role="menu" class="dropdown-menu" > <li> <a role="menuitem" href="javascript:void(0);" data-component-text="All" data-component="all" data-component-icon="fa-solid fa-earth-americas" title="Search all areas"> <span class="fa-solid fa-fw fa-nopad fa-earth-americas" aria-hidden="true"></span> All </a> </li> <li aria-hidden="true" class="divider"></li> <li role="presentation"> <a role="menuitem" href="javascript:void(0);" data-component-text="Knowledge Base" data-component="kb" data-component-icon="fa-lightbulb" title="Search Knowledge Base"> <span class="fa-regular fa-fw fa-nopad fa-lightbulb" aria-hidden="true"></span> Knowledge Base </a> </li> <li role="presentation"> <a role="menuitem" href="javascript:void(0);" data-component-text="Service Catalog" data-component="sc" data-component-icon="fa-compass" title="Search Service Catalog"> <span class="fa-solid fa-fw fa-nopad fa-compass" aria-hidden="true"></span> Service Catalog </a> </li> </ul> </div> <label class="sr-only" for="SiteSearch-text-f7d0873f515948578d4a9b51497c369d">Search the client portal</label> <input id="SiteSearch-text-f7d0873f515948578d4a9b51497c369d" type="text" class="form-control" autocomplete="off" placeholder="Search the client portal" title="To search for items with a specific tag, enter the # symbol followed by the name of the tag. To search for items using exact match, place double quotes around your text." /> <span class="input-group-btn"> <button id="SiteSearch-button-f7d0873f515948578d4a9b51497c369d" class="btn btn-default" type="button" title="Search"> <span class="fa-solid fa-fw fa-nopad fa-search blue" aria-hidden="true"></span> <span class="sr-only">Search</span> </button> </span> </div> <script> $(function() { var siteSearch = new TeamDynamix.SiteSearch({ searchUrl: "/TDClient/30/Portal/Shared/Search", enableAutocompleteSearch: true, autocompleteSearchUrl: '/TDClient/30/Portal/Shared/AutocompleteSearch', autocompleteResultsPosition: 'fixed', autocompleteResultsZIndex: 1000, searchTextBoxSelector: '#SiteSearch-text-f7d0873f515948578d4a9b51497c369d', searchComponentFilterButtonSelector: '#SiteSearch-filter-f7d0873f515948578d4a9b51497c369d', searchButtonSelector: '#SiteSearch-button-f7d0873f515948578d4a9b51497c369d', searchFilterDropdownSelector: '#SiteSearch-dropdown-f7d0873f515948578d4a9b51497c369d', showKnowledgeBaseOption: true, showServicesOption: true, showForumsOption: false, autoFocusSearch: false }); }); </script> </div> <div title="Sign In" class="pull-right gutter-top-sm"> <a href="/TDClient/30/Portal/Login.aspx?ReturnUrl=%2fTDClient%2f30%2fPortal%2fKB%2fArticleDet%3fID%3d1494"> Sign In </a> </div> </div> </div> </div> <nav id="ctl00_ctl00_mainNav" class="navbar navbar-default themed tdbar" aria-label="Primary"> <div id="navContainer" class="container"> <div class="navbar-header"> <button type="button" class="pull-left navbar-toggle collapsed themed tdbar-button-anchored tdbar-toggle gutter-left" data-toggle="collapse" data-target=".navbar-collapse"> <span class="tdbar-button-anchored icon-bar"></span> <span class="tdbar-button-anchored icon-bar"></span> <span class="tdbar-button-anchored icon-bar"></span> <span class="sr-only">Show Applications Menu</span> </button> <a class="navbar-brand hidden-sm hidden-md hidden-lg themed tdbar-button-anchored truncate-be" href="#"> Client Portal </a> </div> <div id="td-navbar-collapse" class="collapse navbar-collapse"> <ul class="nav navbar-nav nav-collapsing" id="collapseMe"> <li class="themed tdbar-button-anchored hidden-sm hidden-md hidden-lg"> <a href="/TDClient/30/Portal/Login.aspx?ReturnUrl=%2fTDClient%2f30%2fPortal%2fKB%2fArticleDet%3fID%3d1494">Sign In</a> </li> <li id="divSearch" class="themed tdbar-button-anchored hidden-sm hidden-md hidden-lg"> <a href="/TDClient/30/Portal/Shared/Search" title="search">Search</a> </li> <li id="divDesktopf8dba152-0487-4558-a4ec-20d93cb4e91a" class="themed tdbar-button-anchored"> <a href="/TDClient/30/Portal/Home/">Home</a> </li> <li id="divTDRequests" class="themed tdbar-button-anchored sr-focusable"> <a href="/TDClient/30/Portal/Requests/ServiceCatalog">Services</a> </li> <li id="divTDKnowledgeBase" class="themed tdbar-button-anchored sr-focusable"> <a href="/TDClient/30/Portal/KB/">Knowledge Base</a> </li> <li class="themed tdbar-button-anchored hidden-xs more-items-button" id="moreMenu"> <a data-toggle="dropdown" title="More Applications" href="javascript:;"> <span class="sr-only">More Applications</span> <span class="fa-solid fa-ellipsis-h" aria-hidden="true"></span> </a> <ul class="dropdown-menu dropdown-menu-right themed tdbar" id="collapsed"></ul> </li> </ul> </div> </div> </nav> </div> </header> <div id="navShim" class="hidden-xs hidden-sm"></div> <main role="main"> <div id="content"> <div id="mainContent" tabindex="-1"></div> <nav id="divTabHeader" class="tdbar-sub NoPrint hidden-xs navbar-subnav" aria-label="Knowledge Base"> <a href="#kbContent" class="sr-only sr-only-focusable">Skip to Knowledge Base content</a> <div class="container clearfix"> <ul class="nav navbar-nav js-submenu" id="kbSubMenu" style="margin-left: -15px;"> <li> <a href="/TDClient/30/Portal/KB/Search">Search <span class="sr-only">Articles</span></a> </li> </ul> </div> </nav> <div id="kbContent" class="container gutter-top gutter-bottom" tabindex="-1" style="outline:none;"> <input type="hidden" name="ctl00$ctl00$cpContent$cpContent$hdnFeedbackID" id="ctl00_ctl00_cpContent_cpContent_hdnFeedbackID" /> <input type="hidden" name="ctl00$ctl00$cpContent$cpContent$hdnIsAddressed" id="ctl00_ctl00_cpContent_cpContent_hdnIsAddressed" /> <span id="ctl00_ctl00_cpContent_cpContent_lblResults_ctl00" aria-live="polite" aria-atomic="true"><span id="ctl00_ctl00_cpContent_cpContent_lblResults_lblResults-label" class="red"></span></span> <a id="ctl00_ctl00_cpContent_cpContent_btnSendShare" tabindex="-1" class="hidden" aria-hidden="true" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$cpContent$cpContent$btnSendShare&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))">Blank</a> <div class="clearfix"> <nav aria-label="Breadcrumb"> <ol class="breadcrumb pull-left"> <li><a href="/TDClient/30/Portal/KB/">Knowledge Base</a></li><li class="active"><a href="/TDClient/30/Portal/KB/?CategoryID=2">IT Knowledge Base</a></li><li class="active">Using Duo multi-factor authentication</li> </ol> </nav> <span class="js-open-monitor" style="display: none;"></span> </div> <div class="row gutter-top"> <div id="divMainContent" class="col-md-8"> <h1 class="gutter-top" style="-ms-word-wrap: break-word; word-wrap: break-word;"> Using Duo multi-factor authentication </h1> <div id="ctl00_ctl00_cpContent_cpContent_divBody" class="gutter-top break-word ckeShim clearfix"><p><img alt="" height="400" src="/images/group293/68864/duo-login-screen-new.PNG" title="">When you're prompted to verify your identity using Duo Mobile, you confirm your identity using either&nbsp;<b>Send Duo Push or</b>&nbsp;<b>Duo Mobile passcode.</b>&nbsp;</p> <p><img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=c5a64cd7-2a01-490f-a2f1-85c2ca117417.PNG&amp;beidInt=2" style="height: 300px; width: 250px" title=""></p> <p>By default, Duo Mobile will send a Push notification to its assigned device. Once confirmed, you may opt to remember your authentication in this browser on this device/computer by checking the <b>Remember me for 30 days</b> checkbox.</p> <p>&nbsp;</p> <p>For more information on this feature, see <a href="https://services.northwestern.edu/TDClient/30/Portal/KB/ArticleDet?ID=270">How "Remember me" works in Duo multi-factor authentication</a>.<br> <img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=454af692-6473-43f9-8123-71901a560f54.PNG&amp;beidInt=2" style="height: 300px; width: 250px" title=""></p> <p>If you do not have Duo Mobile Push configured, or you would like to select a different option, click <b>Other options</b> to view the other available methods of authentication.<br> <img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=20eaf19c-209b-41a6-b005-2ef110a6d1fc.PNG&amp;beidInt=2" style="height: 300px; width: 250px" title=""></p> <h3>Duo Verified Push</h3> <p><b>This is the recommended method for verifying your identity.</b> All it requires an active Internet connection.</p> <p>Open Duo Mobile on your device (or tap the notification banner, if enabled) and <em>enter</em> the provided verification code to log in.<br> <img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=3468d4ac-eb85-4bd5-83bf-e59ad9e06e93.png&amp;beidInt=2" style="height: 506px; width: 900px" title=""></p> <h3>Enter Duo passcode</h3> <p>Click <b>Use Duo Mobile passcode</b> to open a text field.<br> <img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=69b1c8a2-ca1e-441c-8e22-e33654b68664.png&amp;beidInt=2" style="height: 330px; width: 250px" title=""></p> <p>Open Duo Mobile on your registered device and tap the <b>downwards-pointing toggle arrow</b> to reveal a passcode. To generate a new passcode, tap the <b>circular arrows</b>.</p> <p><br> <img alt="Duo Mobile on phone before generating passcode" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=87915708-1d4c-4ec8-ac84-37975e04a2c0.png&amp;beidInt=2" style="width: 250px; height: 320px" title="Duo Mobile on phone before generating passcode">&nbsp;&nbsp;&nbsp;&nbsp;<img alt="Passcode for Duo Mobile on phone" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=e753cba9-f648-44a8-99dc-7f749aaafea7.png&amp;beidInt=2" style="width: 250px; height: 320px" title="Passcode for Duo Mobile on phone"></p> <p>Enter the passcode into the field shown below and click <b>Verify</b>.<br> <img alt="" src="https://services.northwestern.edu/TDPortal/Images/Viewer?fileName=0b75e335-a59a-44b5-8c64-dff751265c73.PNG&amp;beidInt=2" style="height: 330px; width: 250px" title=""></p> <h3>&nbsp;</h3> <p>If you are unable to authenticate using any of these methods (i.e., you lost your phone, you don't have any devices to register with Duo, ...etc.), or for additional assistance, please contact the IT Support Center at 847-491-4357 (1-HELP) or via email at <a href="mailto:consultant@northwestern.edu">consultant@northwestern.edu</a>.</p> <p>&nbsp;</p></div> <div id="divFeedback2" class="well gutter-top-lg"> <div class="row" id="divHelpfulYesNo"> <div class="col-sm-7"> <div id="divWasHelpful"> Was this helpful? </div> <div id="divFeedbackRecorded" style="display: none;"> Thank you. Your feedback has been recorded. </div> </div> <div class="col-sm-5 text-right"> <div id="ctl00_ctl00_cpContent_cpContent_UpdatePanel1" aria-live="polite" aria-atomic="true"> 0% helpful - 10 reviews </div> </div> </div> <div id="divHelpfulComments" visible="false" style="display: none;"> <input name="ctl00$ctl00$cpContent$cpContent$hdnIsHelpful" type="hidden" id="ctl00_ctl00_cpContent_cpContent_hdnIsHelpful" /> <label class="control-label" for="ctl00_ctl00_cpContent_cpContent_txtComments">Comments</label> <textarea name="ctl00$ctl00$cpContent$cpContent$txtComments" id="ctl00_ctl00_cpContent_cpContent_txtComments" class="form-control" style="height: 100px"></textarea> <!-- The following div is used to prevent spam. Basic idea: This input is hidden from the user, but not from a bot. If the bot enters text in that hidden field (which it almost certainly will to prevent missed required fields), the feedback is not accepted. --> <div class="honey-pot-div"> <label for="ctl00_ctl00_cpContent_cpContent_honeyPot" class="sr-only">Do not fill this field out. It is used to deter robots.</label> <input name="ctl00$ctl00$cpContent$cpContent$honeyPot" type="text" id="ctl00_ctl00_cpContent_cpContent_honeyPot" /> </div> <div class="gutter-top"> <button onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(''); __doPostBack('ctl00$ctl00$cpContent$cpContent$btnSubmitComments','')" id="ctl00_ctl00_cpContent_cpContent_btnSubmitComments" type="button" class="btn btn-primary">Submit</button> <button id="btnCancelFeedback" type="button" class="btn btn-default pull-right" onclick="cancelFeedback();">Cancel Feedback</button> </div> </div> </div> <div class="tab-content gutter-top gutter-bottom"> <div id="ctl00_ctl00_cpContent_cpContent_upFeedbackGrid"> <a id="ctl00_ctl00_cpContent_cpContent_btnToggleAddressed" tabindex="-1" class="hidden" aria-hidden="true" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$cpContent$cpContent$btnToggleAddressed&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))">Blank</a> <a id="ctl00_ctl00_cpContent_cpContent_btnDeleteFeedback" tabindex="-1" class="hidden" aria-hidden="true" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$cpContent$cpContent$btnDeleteFeedback&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))">Blank</a> </div> </div> </div> <div class="col-md-4"> <a id="ctl00_ctl00_cpContent_cpContent_btnToggleSubscribe" tabindex="-1" class="hidden" aria-hidden="true" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$cpContent$cpContent$btnToggleSubscribe&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))">Blank</a> <a id="ctl00_ctl00_cpContent_cpContent_btnToggleFavorite" tabindex="-1" class="hidden" aria-hidden="true" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$cpContent$cpContent$btnToggleFavorite&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, true))">Blank</a> <a class="DetailAction " href="/TDClient/30/Portal/KB/PrintArticle?ID=1494" target="_blank"> <span class="fa-solid fa-print fa-fw" aria-hidden="true"></span> Print Article</a> <div id="divAttachments" class="js-article-attachments"></div> </div> </div> <div id="ctl00_ctl00_cpContent_cpContent_divProgress" style="display: none; z-index: 60;"> <div id="ctl00_ctl00_cpContent_cpContent_pbMain" class="progress-box-container"><div class="progress-box-body"><div class="well shadow"><h2 class="h4 gutter-top-none">Deleting...</h2><div class="progress" style="margin-bottom: 0;"><div class="progress-bar progress-bar-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100" style="width: 100%"></div></div></div></div></div> </div> <div class="modal fade" id="divShareModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">&times;</span> </button> <h3 class="modal-title h4" id="myModalLabel"> <span class="fa-solid fa-share-nodes fa-fw" aria-hidden="true"></span>Share </h3> </div> <div class="modal-body"> <div id="ctl00_ctl00_cpContent_cpContent_upShare" aria-live="polite" aria-atomic="true"> <div class="form-group required"> <label class="control-label" for="ctl00_ctl00_cpContent_cpContent_shareRecipients">Recipient(s) <small>- separate email addresses with a comma</small></label> <input name="ctl00$ctl00$cpContent$cpContent$shareRecipients" type="text" id="ctl00_ctl00_cpContent_cpContent_shareRecipients" class="form-control" /> </div> </div> <div class="form-group"> <label for="ctl00_ctl00_cpContent_cpContent_shareBody_txtBody" class="control-label">Message</label> <script src="/TDPortal/Content/nanospell/autoload.js?v=20241127210924"></script> <script type="text/javascript"> (function () { // The "CKEDITOR-config-loaded" event is thrown after the CKEDITOR global variable has been created, but before the instance of CKEditor is ready. // At this point attach a listener to the global variable for the instanceReady event so we can perform our initialization logic. window.addEventListener('CKEDITOR-config-loaded', function () { if (window.CKEDITOR) { setConfigs() initialize(); } }); })(); function setConfigs() { window.CKEDITOR.config['clientScripts'] = [{"scriptPath":["/TDPortal/Content/bootstrap/3.4.1/dist/js/bootstrap.min.js","https://services.northwestern.edu/TDPortal/Content/Scripts/tdx/TDJSFramework.compiled.min.js"],"scriptDependencyPath":"/TDPortal/Content/Scripts/jquery/2.2.4/jquery.min.js"}]; window.CKEDITOR.config['clientStyles'] = ["/TDPortal/Content/bootstrap/3.4.1/dist/css/bootstrap.min.css","/TDClient/Styles/bootstrap_custom.min.css","/TDClient/Styles/TDStyles.min.css","https://services.northwestern.edu/TDPortal/BE/Style/2/TDClient/30"]; window.CKEDITOR.config['itemTemplates'] = ''; window.CKEDITOR.config['reviseTextUrl'] = ''; } function initialize() { window.CKEDITOR.on('instanceReady', function (evt) { if (evt.editor.element.$.id == 'ctl00_ctl00_cpContent_cpContent_shareBody_txtBody') { nanospell.ckeditor('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody', { dictionary: 'en', server: 'asp.net' }); setTimeout(function () { evt.editor.startNanospell(); }, 200); // Check if we should mark the editor as required if ($(evt.editor.element.$).parents('div.required').length > 0) { evt.editor.editable().setAttribute('aria-required', 'true'); } } }); } </script> <span class="sr-only">Press Alt + 0 within the editor to access accessibility instructions, or press Alt + F10 to access the menu.</span> <textarea name="ctl00$ctl00$cpContent$cpContent$shareBody$txtBody" rows="2" cols="20" id="ctl00_ctl00_cpContent_cpContent_shareBody_txtBody" style="height:175px;"> Check out this article I found in the Client Portal knowledge base.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://services.northwestern.edu/TDClient/30/Portal/KB/ArticleDet?ID=1494&quot;&gt;https://services.northwestern.edu/TDClient/30/Portal/KB/ArticleDet?ID=1494&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Using Duo multi-factor authentication</textarea> <span id="ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor" style="display:none;"></span> <span id="ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength" style="display:none;"></span> </div> </div> <div class="modal-footer text-left"> <button id="btnShare" type="button" class="btn btn-primary js-progress-button"> <span class="fa-regular fa-paper-plane" aria-hidden="true"></span><span class="padding-left-xs">Send</span> </button> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> </div> </div> </div> </div> </div> </div> </main> <script type="text/javascript"> //<![CDATA[ var Page_Validators = new Array(document.getElementById("ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor"), document.getElementById("ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength")); //]]> </script> <script type="text/javascript"> //<![CDATA[ var ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor = document.all ? document.all["ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor"] : document.getElementById("ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor"); ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.controltovalidate = "ctl00_ctl00_cpContent_cpContent_shareBody_txtBody"; ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.focusOnError = "t"; ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.display = "None"; ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.enabled = "False"; ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor.initialvalue = ""; var ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength = document.all ? document.all["ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength"] : document.getElementById("ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength"); ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.controltovalidate = "ctl00_ctl00_cpContent_cpContent_shareBody_txtBody"; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.focusOnError = "t"; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.errormessage = "Message cannot be longer than 0 characters (including formatting characters)."; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.display = "None"; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.enabled = "False"; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.evaluationfunction = "CustomValidatorEvaluateIsValid"; ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength.clientvalidationfunction = "validateCommentLength"; //]]> </script> <script type="text/javascript"> //<![CDATA[ setNavPosition('TDKnowledgeBase');window.CKEDITOR_BASEPATH = 'https://services.northwestern.edu/TDPortal/Content/ckeditor/'; //]]> </script> <script src="https://services.northwestern.edu/TDPortal/Content/ckeditor/ckeditor.js?t=C6HH5UF" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ var CKEditor_Controls=[],CKEditor_Init=[];function CKEditor_TextBoxEncode(d,e){var f;if(typeof CKEDITOR=='undefined'||typeof CKEDITOR.instances[d]=='undefined'){f=document.getElementById(d);if(f)f.value=f.value.replace(/</g,'&lt;').replace(/>/g,'&gt;');}else{var g=CKEDITOR.instances[d];if(e&&(typeof Page_BlockSubmit=='undefined'||!Page_BlockSubmit)){g.destroy();f=document.getElementById(d);if(f)f.style.visibility='hidden';}else g.updateElement();}};(function(){if(typeof CKEDITOR!='undefined'){var d=document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody');if(d)d.style.visibility='hidden';}var e=function(){var f=CKEditor_Controls,g=CKEditor_Init,h=window.pageLoad,i=function(){for(var j=f.length;j--;){var k=document.getElementById(f[j]);if(k&&k.value&&(k.value.indexOf('<')==-1||k.value.indexOf('>')==-1))k.value=k.value.replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&');}if(typeof CKEDITOR!='undefined')for(var j=0;j<g.length;j++)g[j].call(this);};window.pageLoad=function(j,k){if(k.get_isPartialLoad())setTimeout(i,0);if(h&&typeof h=='function')h.call(this,j,k);};if(typeof Page_ClientValidate=='function'&&typeof CKEDITOR!='undefined')Page_ClientValidate=CKEDITOR.tools.override(Page_ClientValidate,function(j){return function(){for(var k in CKEDITOR.instances){if(document.getElementById(k))CKEDITOR.instances[k].updateElement();}return j.apply(this,arguments);};});setTimeout(i,0);};if(typeof Sys!='undefined'&&typeof Sys.Application!='undefined')Sys.Application.add_load(e);if(window.addEventListener)window.addEventListener('load',e,false);else if(window.attachEvent)window.attachEvent('onload',e);})();CKEditor_Controls.push('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody'); CKEditor_Init.push(function(){if(typeof CKEDITOR.instances['ctl00_ctl00_cpContent_cpContent_shareBody_txtBody']!='undefined' || !document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody')) return;CKEDITOR.replace('ctl00_ctl00_cpContent_cpContent_shareBody_txtBody',{"autoGrow_maxHeight" : 175, "autoGrow_minHeight" : 175, "contentsCss" : ['https://services.northwestern.edu/TDPortal/Content/ckeditor/contents.css', '/TDPortal/Content/FontAwesome/css/fontawesome.min.css', '/TDPortal/Content/FontAwesome/css/brands.min.css', '/TDPortal/Content/FontAwesome/css/regular.min.css', '/TDPortal/Content/FontAwesome/css/solid.min.css', '/TDPortal/Content/FontAwesome/css/v4-shims.min.css'], "height" : "175", "htmlEncodeOutput" : true, "image_previewText" : " ", "removePlugins" : "magicline,devtools,templates,elementspath,fontawesome,youtube,uploadimage,simpleimage,remoteimageblocker", "title" : "Message", "toolbar" : "TDSimple"}); }); var Page_ValidationActive = false; if (typeof(ValidatorOnLoad) == "function") { ValidatorOnLoad(); } function ValidatorOnSubmit() { if (Page_ValidationActive) { return ValidatorCommonOnSubmit(); } else { return true; } } Sys.Application.add_init(function() { $create(Sys.UI._UpdateProgress, {"associatedUpdatePanelId":null,"displayAfter":500,"dynamicLayout":true}, null, null, $get("ctl00_ctl00_upMain")); }); document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor').dispose = function() { Array.remove(Page_Validators, document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_rfvCkEditor')); } document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength').dispose = function() { Array.remove(Page_Validators, document.getElementById('ctl00_ctl00_cpContent_cpContent_shareBody_cvMaxLength')); } //]]> </script> </form> <footer role="contentinfo"> <div class="master-footer"> <div class="default-footer"> Powered by <a href="https://www.teamdynamix.com" target="_blank">TeamDynamix</a> | <a href="/TDClient/30/Portal/SiteMap">Site Map</a> </div> </div> </footer> <script> // Inject the Google Analytics isogram. This must happen here because it // cannot be injected through an external javascript library. (function (i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () { (i[r].q = i[r].q || []).push(arguments) }, i[r].l = 1 * new Date(); a = s.createElement(o), m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); // Per Incident #6707155. Need to focus on img. pseudo-class :focus-within is not supported in IE (function ($) { var $anchor = $('#divLogo a'); var $beLogo = $('#divLogo a img'); $anchor.focus(function () { $beLogo.addClass('accessibility-focus-on-logo'); }).blur(function () { $beLogo.removeClass('accessibility-focus-on-logo'); }); $.ajax({ url: "/TDClient/30/Portal/Chatbots/GetScript", type: "GET", dataType: 'text', success: function (data) { var jQueryAjaxSettingsCache = jQuery.ajaxSettings.cache; jQuery.ajaxSettings.cache = true; $(document.body).append(data); jQuery.ajaxSettings.cache = jQueryAjaxSettingsCache; } }); window.addEventListener("message", (event) => { // Only accept events that come from the same origin if (event.origin != window.location.origin) { return; } switch (event.data.type) { case "authenticate-using-popup": handleAuthenticateUsingPopup(event.data.payload); break; case "authenticated-successfully": handleAuthenticatedSuccessfully(event.data.payload); break; default: break; } }); function handleAuthenticateUsingPopup(payload) { let loginUrl = '/TDClient/30/Portal/Login.aspx'; if (payload.successCallbackUrl) { loginUrl += '?SuccessCallbackUrl=' + payload.successCallbackUrl; } window.open(loginUrl, "_blank", "popup=1"); } function handleAuthenticatedSuccessfully() { event.source.close(); window.location.href = window.location.href; } })(jQuery); </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10