CINXE.COM
CAS - Central Authentication Service Login
<!DOCTYPE html><html> <head> <meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /><title>CAS - Central Authentication Service Login</title> <meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/> <link rel="stylesheet" type="text/css" href="/cas/webjars/normalize.css/8.0.1/normalize.css" /><link rel="stylesheet" type="text/css" href="/cas/webjars/bootstrap/5.2.0/css/bootstrap-grid.min.css" /><!-- <link rel="stylesheet" type="text/css" href="../static/css/material-components-web.min.css" th:href="@{#{webjars.material-components.css}}" /> --><link rel="stylesheet" type="text/css" href="/cas/webjars/mdi__font/6.5.95/css/materialdesignicons.min.css" /><link rel="stylesheet" type="text/css" href="/cas/webjars/datatables/1.12.1/css/jquery.dataTables.min.css" /><link rel="stylesheet" type="text/css" href="/cas/css/cas.css" /><link rel="shortcut icon" href="/cas/favicon.ico" /></head> <body class="login mdc-typography"> <script type="text/javascript" src="/cas/webjars/jquery/3.6.1/jquery.min.js"></script> <script type="text/javascript" src="/cas/webjars/datatables/1.12.1/js/jquery.dataTables.min.js"></script> <script type="text/javascript" src="/cas/webjars/es5-shim/4.5.9/es5-shim.min.js"></script> <script type="text/javascript" src="/cas/webjars/css-vars-ponyfill/2.4.7/dist/css-vars-ponyfill.min.js"></script> <script type="text/javascript" src="/cas/webjars/material-components-web/14.0.0/dist/material-components-web.min.js"></script> <script type="text/javascript" src="/cas/js/cas.js"></script> <script type="text/javascript" src="/cas/js/material.js"></script> <script> if (typeof resourceLoadedSuccessfully === "function") { resourceLoadedSuccessfully(); } $(() => { typeof cssVars === "function" && cssVars({onlyLegacy: true}); }) var trackGeoLocation = false; </script> <div> <header id="app-bar" class="mdc-top-app-bar mdc-top-app-bar--fixed green-bar"> <nav class="navbar row green-bar"> <div class="col"> </div> <div class="col-6 align-items-center text-center"> <span class="cas-brand mx-auto"> <a href="https://www.ndsu.edu" class=""> <img class="ndsu-logo" title="NDSU" src="/cas/images/bison-login.png" alt="NDSU Bison Login Logo"/></a> </span> </div> <div class="col"> </div> </nav> </header> <!-- <div th:replace="fragments/logindrawer :: logindrawer"/> --><script>var countMessages = 0;</script> <!-- <div th:if="${'true' == #strings.defaultString(#themes.code('cas.notifications-menu.enabled'), 'true')}" class="mdc-dialog cas-notification-dialog modal" id="cas-notification-dialog" role="alertdialog" aria-modal="true" aria-labelledby="notif-dialog-title" aria-describedby="notif-dialog-content"> <div class="mdc-dialog__container modal-dialog"> <div class="mdc-dialog__surface modal-content"> <h1 class="mdc-dialog__title mt-lg-2 modal-header modal-title" id="notif-dialog-title"> Notifications </h1> <div class="mdc-dialog__content modal-body" id="notif-dialog-content"> <div class="cas-notification-message mdc-typography--body1" th:if="${staticAuthentication}"> <script>countMessages++;</script> <h6 class="mdc-typography--headline6 mdi mdi-alert-circle fas fa-exclamation-circle" th:utext="#{screen.defaultauthn.title}"/> <p class="text text-wrap small" th:utext="#{screen.defaultauthn.heading}"> <i class="mdi mdi-google fas fa-google"></i> Static AuthN is ONLY useful for demo purposes. It is recommended that you connect CAS to LDAP, JDBC, etc instead. </p> </div> <div class="cas-notification-message mdc-typography--body1" th:if="${not #httpServletRequest.secure}"> <h6 class="mdc-typography--headline6 mdi mdi-alert-circle fas fa-exclamation-circle" th:utext="#{screen.nonsecure.title}"/> <script>countMessages++;</script> <p class="text-wrap small" th:utext="#{screen.nonsecure.message}"> Unsure Connection </p> </div> <div id="cookiesSupportedDiv" class="cas-notification-message mdc-typography--body1" style="display: none"> <h6 class="mdc-typography--headline6 mdi mdi-alert-circle fas fa-exclamation-circle" th:utext="#{screen.cookies.disabled.title}"></h6> <p class="text-wrap small" th:utext="#{screen.cookies.disabled.message}"> Cookies are not supported by this browser. </p> </div> </div> <footer class="mdc-dialog__actions modal-footer"> <button type="button" class="mdc-button mdc-button--raised mdc-dialog__button btn btn-primary" data-mdc-dialog-action="accept" data-mdc-dialog-button-default data-bs-dismiss="modal"> <span class="mdc-button__label">OK</span> </button> </footer> </div> </div> <div class="mdc-dialog__scrim"></div> </div> --><script type="text/javascript"> (material => { let header = { init: () => { header.attachTopbar(); material.autoInit(); }, attachDrawer: () => { let elm = document.getElementById('app-drawer'); if (elm != null) { let drawer = material.drawer.MDCDrawer.attachTo(elm); let closeDrawer = evt => { drawer.open = false; }; drawer.foundation.handleScrimClick = closeDrawer; document.onkeydown = evt => { evt = evt || window.event; if (evt.keyCode == 27) { closeDrawer(); } }; header.drawer = drawer; return drawer; } return undefined; }, attachTopbar: drawer => { drawer = header.attachDrawer(); let dialog = header.attachNotificationDialog(); if (drawer != undefined) { header.attachDrawerToggle(drawer); } if (dialog != undefined) { header.attachNotificationToggle(dialog); } }, checkCaps: ev => { let s = String.fromCharCode(ev.which); if (s.toUpperCase() === s && s.toLowerCase() !== s && !ev.shiftKey) { ev.target.parentElement.classList.add('caps-on'); } else { ev.target.parentElement.classList.remove('caps-on'); } }, attachDrawerToggle: drawer => { let appBar = document.getElementById('app-bar'); if (appBar != null) { let topAppBar = material.topAppBar.MDCTopAppBar.attachTo(appBar); topAppBar.setScrollTarget(document.getElementById('main-content')); topAppBar.listen('MDCTopAppBar:nav', () => { drawer.open = !drawer.open; }); return topAppBar; } return undefined; }, attachNotificationDialog: () => { let element = document.getElementById('cas-notification-dialog'); if (element != null) { return material.dialog.MDCDialog.attachTo(element); } return undefined; }, attachNotificationToggle: dialog => { let btn = document.getElementById('cas-notifications-menu'); if (btn != null) { btn.addEventListener('click', () => { dialog.open(); }); } } } function supportsCookies() { try { document.cookie = 'testcookie=1'; let ret = document.cookie.indexOf('testcookie=') !== -1; document.cookie = 'testcookie=1; expires=Thu, 01-Jan-1970 00:00:01 GMT'; return ret; } catch (e) { console.log(e); return false; } } document.addEventListener('DOMContentLoaded', () => { if (material) { header.init(); } if (!supportsCookies()) { countMessages++; window.jQuery('#cookiesSupportedDiv').show(); } if (countMessages === 0) { window.jQuery('#notifications-count').remove(); window.jQuery('#cas-notifications-menu').remove(); } else { window.jQuery('#notifications-count').text(`(${countMessages})`) } }); })(typeof mdc !== 'undefined' && mdc); </script> </div> <div class="mdc-drawer-scrim"></div> <div class="mdc-drawer-app-content mdc-top-app-bar--fixed-adjust d-flex justify-content-center"> <main role="main" id="main-content" class="container-lg py-4"> <div id="content" class="d-flex justify-content-center"> <div class="d-flex justify-content-center flex-md-row flex-column mdc-card mdc-card-content card flex-grow-1"> <section id="loginForm" class="login-section login-form card-body"> <div class="d-flex flex-column justify-content-between m-auto"> <div> <div id="serviceui" class="mb-4"> <div class="d-flex align-items-center p-2"> <!-- <img th:unless="${serviceUIMetadata.logoUrl}" th:title="${serviceUIMetadata.displayName}" th:alt="${serviceUIMetadata.displayName}" th:src="@{images/webapp.png}" th:width="${serviceUIMetadata.logoWidth}" th:height="${serviceUIMetadata.logoHeight}"/> --><div class="ml-2"> <h2 id="serviceUIMetadataDisplayName">Knowledge Base</h2> <!-- <p id="serviceUIMetadataDescription" th:text="${serviceUIMetadata.description}">serviceUIMetadata.description</p> --></div> </div> </div> </div> <div class="form-wrapper container form"> <form method="post" id="fm1" action="login"> <div id="login-form-controls form-group"> <h3 class="text-center"> <i class="mdi mdi-security fas fa-shield-alt"></i> <span>Enter Bison Login & Password</span> </h3> <section class="cas-field form-group my-3" id="usernameSection"> <label for="username" class="mdc-text-field mdc-text-field--outlined control-label w-100"> <span class="mdc-notched-outline"> <span class="mdc-notched-outline__leading"></span> <span class="mdc-notched-outline__notch"> <span class="mdc-floating-label">Bison Login:</span> </span> <span class="mdc-notched-outline__trailing"></span> </span> <input class="mdc-text-field__input form-control" id="username" size="25" type="text" accesskey="u" autocapitalize="none" spellcheck="false" autocomplete="username" required name="username" value=""/></label> <!-- NOT WORKING, always displaying, so comment out <div class="mdc-text-field-helper-line"> <div class="mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg" aria-hidden="true"> <span id="usernameValidationMessage" th:utext="#{username.required}"></span> </div> </div> --><script type="text/javascript"> /*<![CDATA[*/ var username = ""; var disabled = false; if (username != null && username !== '') { $('#username').val(username); if (disabled) { $('#usernameSection').hide(); } } /*]]>*/ </script> </section> <section class="cas-field form-group my-3 mdc-input-group form-group" id="passwordSection"> <div class="mdc-input-group-field mdc-input-group-field-append"> <div class="caps-check"> <label for="password" class="mdc-text-field caps-check mdc-text-field--outlined control-label mdc-text-field--with-trailing-icon control-label w-100"> <span class="mdc-notched-outline"> <span class="mdc-notched-outline__leading"></span> <span class="mdc-notched-outline__notch"> <span class="mdc-floating-label"><span class="accesskey">P</span>assword:</span> </span> <span class="mdc-notched-outline__trailing"></span> </span> <div class="password-group"> <input class="mdc-text-field__input form-control pwd" type="password" id="password" size="25" required accesskey="p" autocomplete="off" name="password" value=""/><button class="reveal-password align-self-end mdc-button mdc-button--unelevated mdc-input-group-append" tabindex="-1" type="button"> <i class="mdi mdi-eye reveal-password-icon fas fa-eye"></i> <!-- <span class="visually-hidden">Toggle Password</span> --></button> </div> </label> <!-- NOT WORKING, always displaying, so comment out <div class="mdc-text-field-helper-line"> <div class="mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg" aria-hidden="true"> <span id="passwordValidationMessage" th:utext="#{password.required}"></span> </div> </div> --><!-- <div class="mdc-text-field-helper-line caps-warn"> <div class="mdc-text-field-helper-text mdc-text-field-helper-text--persistent mdc-text-field-helper-text--validation-msg text-danger"> <span th:utext="#{screen.capslock.on}"/> </div> </div> --></div> </div> </section> <section class="cas-field form-group my-3"> </section> <section class="cas-field"> <input type="hidden" name="execution" value="4b781bc6-1e92-4a48-b38b-55406cc61b6f_ZXlKaGJHY2lPaUpJVXpVeE1pSXNJblI1Y0NJNklrcFhWQ0lzSW10cFpDSTZJbUl6WVRKbE1EWXlMVGd5TVRZdE5EVTBPUzFpTXpRd0xUZzBaakl6WlRKaE16VTNOU0o5LlRqTzMzUnZVVmJ3bzN3TXhKVFlVM3VocGFPVVQ3eU9DZE5US3NfOG1lckxzbldfVGI1cDkwYUkzSFJCbThJLTU2cDlpazVzZjJ1WGxpUWxtbTMybXd2RzdjWnZfZXhWQ214S2ZVUnZJblRaVWtQU3NWNWMybEJURVlpS280X2cycjczcmJZTFMtMUpzZThLdlJFUlpHeS1IRm4wWk10OVZob0R3alZ1aU44SE5HWjR1eFB5M0dxTmYxZDFEMWQ1VmFBZ0piUVRuRW5maDlWRnhOTFhCOWhGakpjRmN5Uk1VSU1uaTNiSmZDcG9VVDVzaENHdDRkMC1sQ1Vsd2VpRmRMQUNtaVg0d2dxaE9hRmlvRXBHSkl6Rk5qYTZmaW1rSld6VjRiZnphNXdWVEpJSF93aHQ2NE8wbmpIOHprbTN1OWZYcXBDazd3MnBJdEI4aUFlWkpCSzVQZUpMTGxka252UXpjcVhCU2tERXdOWUdyTlJObXQzTFlsdHVwTzVtUXNpU0x5emQ5MEVpRHprZlRoWExEN1Z1eWNSTEJJbFJ6aEt6Ql9SbVlfdHdkNG9QNlFWd012TFg5LTNuR0VKOUtwMEVxa3JKOW03dFdqRnZ3NXdSVlc5c1BmU0owSlJjRWVSTV9jRTVqTmNzOUh6aFNta1V6SF9EWEdna09NNjl0TzNBcUh2eFRnMnY0eEJ4SmhIbFd2NjB1X0s5YmFiZW9YWE5vOUNIZUNIMzVhTEhSU1pCR1dsbE1fN3FNay10TndZa1BCSmxQSWpxX21ZQWhyWG5KTlBOSW5Hamo2QUx3Q2dnNTFfbGNVbGRVckN5SEEwVmpTSW5mNkFUX09aaGxyaTk2RHFibTdheThQaXljWE50NHRsZmwyRVVscklrNDZtVVdSQ2IyeDRTc2I4ZEhtbTczNHo0eERrMmFOdkxhT0FWNWR2NDFKM3lyRkp3VDNUWl9IVm5BZ1ZlRXlwWllPVGhSYWNOOFBxZ0NJWUliV2VXMk5wSFRpekN5RWpRRzZYdGdxMHRJSlRPeHc0d2pHLTVESi1fZFRUU2VUVW5MYUFFSnZOWXUzbTFBZjhNR3FMM0ljTGU5TTVLc0dacUV1WmNGZ0E3UHRVenhLeEdLQklCLTZmdG9uSE1VMmJ6VkZ2eHNBR3NsQUpMTG5yc2pjMFVFVWVkYTdTYmNHTDdBOGxZVUZhUTBVLU5ET3J2VGl5MWk1dU9ycUpaZ3BJQldhaUpwbHpfTkRjR0x0dktETzVKZmgyaFBxLUlrUEo4ZkxzVDBsOE5fVXRaU3VVSXNVcmpXRDlySkhPN2RITHFvX2pQRHFld255aEZTYzFkcW1ldlVEa1IxWmNoNkRQXzhNV05uQkFqa19KYm96TW1zTnBQUG1FczBaelRpZjdqLVI1VWlXeDhVV2kwYXFxY2loZlFKcXdIdzFmM3FyZ0tnaVY3T0ZUckZqRHd3SktsaFJjZ2JyUGJIVWdRcHJVR0dSZzVPM1dNeWxTdk9yb2IwUGdaZnR0cFlFYXA0UFpDLVV3RXRoSWFYOWhtemRjY01HTGFoUU1BcjRlSWpXVnNYOUpsU0Z6RHc0Q2RSR0dCS2pvTFhlRFRUYkFBY0I4cExiUkJiRllUb2NsUmoyUml4Ml9jaFY4QnI5N01wb2k0cVJWZlR0dmZwM1RuTjdiZEdmcGlpZE56dGZxZVJJTXFzTTJfM1B0VmFHcXQycDk2WVJnZU9TaW1KQUJpSEd1QWFSamZFVUZsTXZQWGFKSG9iR1BYQlgwLXRGZ2RWalRMcDMya1VIa1dPMTU0YmpTVEFtcWdEcDVPb3ZtUW5vMFFGREczN1pvQnhjMFlqRi1aamMwQVFSckhETTQ4WFpPZWhFTTdrbVR3SzZ3ZlBwV2c4dFVILTBfVGZaSkwzNldZenpJeGVZQV9mNnJLWU5JQU5TOUtxU3NVX0h6dUsyQ0l2WjltRjJvdG9BZkdsbDg4OUxrUUNVcFIya0RiV09GRTB2NWlmaGp1YUFCRk50RGdUWkRmNV9qQjlFd0xiMFFTd0wwNVRkRjJvUnF6ck9kMVNjaGxMNkJrQkRQX0VTYTg3MG9MMmVlNGZtRDhCclA5QS1UVVUtaU11c09QRlNOd3A2U295eU9HY0s2RVJWNjhhYXZwLVg2R1cwMzdGMGRleWZTSXpiV1M0clNuWG4yTC1FQ05yVUdmemh3TG5xUEhMcmdhTDlodkdLU1I4WlFyOXJ4am56VnNkMDRNeXdLZHV1NS1tNWRxbE5NR3V2Y3pKNVU4ZXhTRjMxcFdTc1k4QXk0Q2Jwd0s4eDZHUVNYQ2hVOWhKSDBEemhJcUJyTW5FQmZsUUIzWG80VkVoX25NbHVHM0JVSXdVRy1WekljRHpBbGdBZlRKdm5UZk1TLXRaQTVyTXdyTExTa0QtNUwwYUF5YnMwd2RGNWZFU01YT2J2SUZnQkZVUXBFZElSVHJaeElRVklHYTI5QXBDUkswSmdoZU9tckhoOF9BTGtqQmhYWVpleF9neWlQR2VWOUd1enJubldfeUlqMkw5NWVHYkxrWHlKdmpXQ2haUktKYmFtbVhxUjJkRnExWkdQNmdTQUIyekZvZnFkLU9VdUppNHRXLV9qZ2E0R01seEdBRlBFNW16WjRaMHdGai1RemF0dlAzYVkySUlHV3QzdVNBU1ZQMzJHSE13QnA5eUZPcUtiNlRPN1U2SVExRVVJa1dhdEh6Wm5JQW9FYjZneHdqcWNxUUg1SGdvQVEwRnhlMHViLVlCSl9heFBzN1pxMTRUV0RjLXhWWGpqTW82bUpDc0NRWXdPSlhqbjZ6enZHcDFRSmxhZDlPTktzTkkzNU51UUlKVUpqZGExVi10Y2pEdlc5NUo0NUJTOWJUUDRuQmlEZkdYXzNRVnk5NTVRaXJCVHZaZnJRSGtaZnlmM2FUeVd2QXg3WUp6M2VhX0tyVU92bFY2cFdxVVppRDlnTkRTZ0tGYkoyaEY2UmF3VDliX1N6LXJDeEt5eXAyWkN6NnJLQk1XckZoWnJkM3VmWXREX0VMQllnNHE3T0w1cWY3S1BSTnhGWjhtQUZzN3I2MzA1RmYwZGs5SWhCS25qTDVtZDFrdUpZSXlyME5OVmJjNngyb1paMGgwSEJ1elhlbVFaOFA3bk5MVjhkQXlyYVh6Nm55cjF6UUlxdlFMRUxGcGdZVXI2RzhVTkEwUnRvd2NMbGVPVlh6S2RDcUZRSDFvSHlrUk0yaWwzYzliS0FMYmV6dHM4SXhKdmJlXzNTdE9NSWdud3Zmb2hERUdvVk9MRTQwTlNQYlU1VTljTVNGblBnWUI2X1Z0V2VhdjktcUpNdkdYMDJzY0xwWDR5M3FVdGliNXVZNHpOT3JBWmJDR0lnQjllLXB3aWRBZFQ0WVZfVndPR005ZWdiblBnR2lDaE9FaEVYR25aa19jTTRLby1SU3phdmZDWHVZeElSU3M1NVpPSUVQZlQwYk9iYmxKM3N1QTBJNlFxSUZqQlotUHBMWVJ4TmhJdGpzZ2NSb0Q4N3RHR0twX0JnYzVxOTVwdU1jcGl4dXpETDYtTjZWci1IR1c1UTNBMkVMeTIxWVdQcnJIMFJPZEZSek80SEd3YkVjMDNPQk9XWGRtREcxaXQya01MM2NZaG1BZklId0FpT1lpV0ZHSlFPSkJpX1dvMExmMHdQVlpwcmRKeklGNDE5YUpvbmtGbzhxR2N5UmlvT2FFNE5Za3ZTbGUzaWpkeHozTm1CV21hN3BjaUFyeHVteTBERzZqUnJSaHVXTDMtZ0tPUFdETzN6amhpV1dvTzZ5WU9FSTE4OWlqbGhfLVhkSmdNdW94TXlmVDlTOEM2YXZQOEgyVjQ1NTVZa2E0WFRzdi1zcjJqRDdNU2JtTEJGSWhxNlZ0LTctYkY5SThreXg2SXJFVG8tT1lrY201RzJvNm1vRUdfNjM5NUJiMHlGNkJXbWFjUnJMdlZ5bmlhOFhPWDZVYXBVekdMbjZVcmx5YTJXb0N3cTMyS0xZWXpaX1B4Rkk0LWRYN18xVEpMMkU3cWljVXF1SU1vZk9ISTc5TWdKT3lBckgtOU9YZU9EamFjcGRCOF9ieHdzM1JvS3BVa1lUYWtiMXItdDJxdklWQjNfYXZzNWl0TFN4aXNENFc3NFpBLTM2djR5eHNOeWhabjQxOEJfZjBpUG9rVjgtanpRMlpuRHh5MUQzdng2YTV3eHZkU2ZZUVN2bEJhOWQzcGtLdTFkNkx0N3RhYWlJR1JfN3RCT01PZ19aWS1fUTFCMUhNbUxPZ2lfYW1PZTdoZG13UjZacXlBbVhMNzRuX1NQY1dOM19icEptY1NfZE41YzZCcGtqS1pUYjFOeDBzYWtLS1QxNjVidUxiNk14TEZKUW1pZWFFdUVoQTExMVA1eXlWU0RKa09BUmk4b045WDdObUtpeTlmUVl0dHpjUk1mMUhVZ2ctdFplOWtiT1V0cF9EeGhPV0VoUUthMG9QdWxxMHkyeWp4R0VSbWVkZ044eTZfM1B0XzVTaGhHc3RFOGgxdUtWZHNaSHM5NGZmUllKazF4MVl1Q2JjNTZYTGtEZmNrT1F3VXl3TTBLNlh6bjJVVHRocW9IOHV2QnJmUXpRMERraXBjOTdROUVvX1p6LXNlNUo5QjluRHZ1QmtMME5xZGVQdEFzNFJVNGlmZXlHV1g2ZDdET2xWaHUtWU9Xd0lYNUNhQlg4T2xiV1BsdjVxQU1CYzFTeFVEU1RsNm4xalc0a0NJenJlMl9IYXZLMGF0UGJRbURnbjl5T2l0UVRQZmtsdEtEQ3ItNHBQSDRfb1JIa2ZwNG50Nnc5SG55ZHVsMTJBT09qbWp5YjN1bnphTW51b1ExTXJXWjhBM20zQkU2Sk1BU0h0OFJrQk5QQ1hYeDBlS2ttYVVvM0JPTzJOQXppNEM2bnNUVEpaZXlPUU56Ym5LR0pNZnRiRkpsOFBTS2N6RTJDRFdQRlhJXzl3YkVCMjlQQlFYVU9vWFZUUGx3S2hMczRkZF9lSHd4elVyNUNDVTJrcDRFQVY0RFQ5blBlcl92ZzJkZkpHazA2UEE1S3N2amhuT0lqNWRPNmhkeE90V3dfWVZVWkZMQ2s3QmNFXzVLaUh1V1lIRHBJeHpkNzlHLTl4YTVab0E5VTdBdkw2ckllQ3dobm5sOWVQZm5pS3NSYlpTdTVHUTc5RWRlR18yY1RMSHAzbS1UeWVabkNOT1Nhdmk0YmV1MUdFblJ0NHhScVdyYmJjdnAyVVFZMG5BZ1lvaDNJMDF4TU53RWd1QWhnQ2JHWnJHQzdEMTBlUEk3RlpISVdoWmpXZUN6aEJCX1hmLUZkZUd1RDBDcGJvNkVhaFRLdy0wRlViRHEyalFRTklsTzJtREZDTTJMUzlOdmcyY2c2NmhIUmdINnF4VGZMc194QXdwdUpKcVlBT1BwRHF4R0h2UmY5aGtNUzU5TmFTeHVZOGplbUxGSXFaYldBTUVKVnFxTldJdVdOczNLTDJMX09hQzlCd2llR1NYeTNMVUZpTVQ3UHFZMzZVVFF1bnZnTkN0Z3ZOYk1EMThZT1piQ2N0OFNaUnFoSWxOOU1oOHJBSW9JenJzd0dwLURuSGc0UHBCLTBzOGR0YWpGZTZsak14dnB2cWx6OGE4dFpUWEx3OHRKUG1Cd1VXNk82bW5rVDRfR0FPYm9ycXRFR19HWFlFelJSMkZVSThuQmJXS092SFM4RTdQelpJeFNlNzZDd2lmTzNCTHQwbVFJbXFnWjVBOXlkUU9YS1lwa0VoOHpZRGZmU25GV25XVk5TZjB5djc3ZzF2Z2ctM0x5b29rdmxrSlNySVpoWDFtY3BGY0RWZU1La3pSMXBWV0lqb2lkT08tLWQxbHhfYXZoV3ZFNHltbFJnZVNlMVRvTFRmOUxadjR3bXRBekJrSHdMUXVBYWgxdU5MbzZWbncxd2R2Y1BlX0ZiYWhGcFRVdElDRUk4ZnI2VWJHVUpHUnNBLTdKMnM2QzNkdENfN3o5V09SY2pBLWxlUDNvSWZ2aGt4bTN6MG1HZVNVUlZqbjRnc1pjWDhIM1N3NjVrNnJhWV9DdTE5Y19FUjFLMnNGNUQteGpWTXA0czcyTklNMVc2ckN6OE16a2xibUpFZHJNbm43TnZaRTZ2UnFIenVmZURKSzBHOWNQWnJZYlhUdlBrRnMxOFJXMXdWaUtDSGRiUEN6MGVsakVJcGZuVFhOSWNFSEhpb1lLaUhhVVJKTU9MLWhza3c1VWEwZGVPcmdydHJMa1QtcEs5c3RhcnpTS0pLUlpNNUhBbk9FZ3ZPdzhuSmwydU9RYWhiSE1xU0duZTZINS1ueTVzTUJCd2JCNk50azVNZGEyLXN6UF92akdHN2JrWjFMaENQdWJ1Nzl3STJnWEtUeFRVcnN3NEoxRWhfVW13UlVqdW1CLXZ6M29NOUYyX0dPXzZHOXhyTHQ5X0F4dWdxY0VxS1VEakN1eGhQRS1kOV9zbmd4UVViSjVaamNjd2JIcVJPa1hkaktURHFWT3hxOWszUy1zMHZwd0hoY0U0SG5BTEU3ZWN1REFRSXFXRlpENWl3ZE5QalY5b3M2WVBJR3d3MmUxdHZsWXpGdVZRVUN6VUtBZ2JyRkJ6b1hlYTgyUjlwSVNsZzdmSl83MXBmQTlVcVM3cVBxeDF6am5UYnh1a0dUWnRzWnFLcXpKTC02WXVIR3dESXktcDRRNU95TzYzS0NtNDJRWWlxN1FFVWJONWhFS0RCUHdoR25MVGVZYlc4RmFyX0VRWHlDVmd3YnAzT1VTWDN4eG9QdzIzSkluY1J1ZVBXaHdsYmJ0Zmc4SFU5ZXdBTHhmMUZNamhvSHRneWc0MG1XcjhjOTZXYURFTzhGcHRLdE5RRWxwQ0dGSTVlUmRMQS0xdEx2Y0pXTTB5LWRVRzV2TXc5Nkh2NmhMeWhpZUtPRnNFVjF1REk5VkRuV3RWZ190ODl1dmQxNFZRTERNM3lJc2o2bkVBZUM0X1lwUS5oZzZoTjhxN1hpbTQzcGpwaFVTQ1AtRXBsV05DRm50Um5EbHE3TWpKX2MwZEVuRkMxWkljSUdMNnVYWF9LTGpabWtZVHR6UVZzSkRodzRfWXFqWmphUQ=="/><input type="hidden" name="_eventId" value="submit"/><input type="hidden" name="geolocation"/></section> <!-- Broken with universal prompt, so remove for now. <section> <input id="publicWorkstation" name="publicWorkstation" value="false" type="checkbox" /> <label for="publicWorkstation" th:utext="#{screen.welcome.label.publicstation}"/> </section> --><button class="mdc-button mdc-button--raised btn btn-primary btn-primary" name="submitBtn" accesskey="l" type="submit"> <span class="mdc-button__label">Login</span> </button> </div> </form> <!-- <div id="x509Login" th:if="${x509ClientAuthLoginEndpointUrl}"> <span th:if="${loginFormViewable and loginFormEnabled}"> <hr class="my-4"/> <script th:inline="javascript"> /*<![CDATA[*/ function x509login() { var url = /**/; url += window.location.search; window.location.assign(url) } /*]]>*/ </script> <a class="mdc-button mdc-button--raised btn btn-primary" onclick="javascript:x509login();" th:text="#{screen.welcome.button.loginx509}">X509 Login</a> </span> </div> --><hr class="my-4"/><span> <div id="pmlinks" class="my-2"> <div> <br /><span class="mdi mdi-account-question"></span> <span><a href="https://apps2.ndsu.edu/accounts/recover/forgotpassphrase">Forgot your password? </a></span> </div> </div> </span> <script type="text/javascript"> /*<![CDATA[*/ var i = "One moment please..." var j = "Login" /*]]>*/ $(window).on('pageshow', function () { $(':submit').prop('disabled', false); $(':submit').attr('value', j); }); $(document).ready(function () { $("#fm1").submit(function () { $(":submit").attr("disabled", true); $(":submit").attr("value", i); return true; }); }); </script> </div> <span> <div id="sidebar"> <div class="sidebar-content"> <p>For security reasons, please <a href="logout">log out</a> and exit your web browser when you are done accessing services that require authentication!</p> <h3>What are your Bison Login and password?</h3> <p>Your <strong>Bison Login</strong> and password are the same credentials that you use to log into NDSU computer labs. </p> <p>For detailed instructions on how to reset a forgotten Bison Login password, please visit the <a href="https://kb.ndsu.edu/104555">Password Management for Bison Login</a>. If you need further assistance, please contact the <a href="http://www.ndsu.edu/it/help/">IT Service Center</a> by phone or in person. </p> </div> </div> </span> </div> </section> <span> </span> </div> </div> </main> </div> <footer class="py-3 d-flex justify-content-center align-items-center cas-footer footer-green footer-left"> <div class="container"> <section class="footer-address"> <div class="address"> <p class="link-color-white"> <a href="https://www.ndsu.edu">North Dakota State University</a><br> <a href="https://www.ndsu.edu/it">Information Technology</a><br> Report a problem: NDSU IT Service Center phone 701.231.8685 / online <a href="https://www.ndsu.edu/it/help/">www.ndsu.edu/it/help</a><br> <a href="https://www.ndsu.edu/privacy/">Privacy Statement</a><br> </p> </div> </section> </div> </footer> </body> </html>