login.microsoftonline.com
Open in
urlscan Pro
20.190.151.131
Public Scan
Submitted URL: https://set-dev-msd365-j36d5a5be182f02411devaossoap.axcloud.dynamics.com/
Effective URL: https://login.microsoftonline.com/jmfamily.com/wsfed?wa=wsignin1.0&wtrealm=spn%3a00000015-0000-0000-c000-000000000000&wctx=rm%3d0%...
Submission: On July 22 via api from US — Scanned from CA
Effective URL: https://login.microsoftonline.com/jmfamily.com/wsfed?wa=wsignin1.0&wtrealm=spn%3a00000015-0000-0000-c000-000000000000&wctx=rm%3d0%...
Submission: On July 22 via api from US — Scanned from CA
Form analysis
2 forms found in the DOMName: f1 — POST https://login.microsoftonline.com/jmfamily.com/login
<form name="f1" id="i0281" novalidate="novalidate" spellcheck="false" method="post" target="_top" autocomplete="off"
data-bind="visible: !isLoginPageHidden(), autoSubmit: forceSubmit, attr: { action: postUrl }, ariaHidden: !!activeDialog(), css: { 'provide-min-height': svr.fUseMinHeight }" action="https://login.microsoftonline.com/jmfamily.com/login"
class="provide-min-height">
<!-- ko withProperties: { '$loginPage': $data } -->
<div class="login-paginated-page" data-bind="component: { name: 'master-page',
publicMethods: masterPageMethods,
params: {
serverData: svr,
showButtons: svr.fShowButtons,
showFooterLinks: true,
useWizardBehavior: svr.fUseWizardBehavior,
handleWizardButtons: false,
password: password,
hideFromAria: ariaHidden },
event: {
footerAgreementClick: footer_agreementClick } }"><!-- -->
<!-- ko ifnot: useLayoutTemplates --><!-- /ko -->
<!-- ko if: useLayoutTemplates -->
<!-- ko withProperties: { '$page': $parent } -->
<!-- ko if: isLightboxTemplate() -->
<div id="lightboxTemplateContainer" data-bind="component: { name: 'lightbox-template', params: { serverData: svr, showHeader: $page.showHeader(), headerLogo: $page.headerLogo() } }, css: { 'provide-min-height': svr.fUseMinHeight }"
class="provide-min-height"><!-- -->
<div id="lightboxBackgroundContainer" data-bind="css: { 'provide-min-height': svr.fUsePlaywrightMinHeight },
component: { name: 'background-image-control',
publicMethods: $page.backgroundControlMethods,
event: { load: $page.backgroundImageControl_onLoad } }">
<div class="background-image-holder" role="presentation" data-bind="css: { app: isAppBranding }, style: { background: backgroundStyle }" style="background: rgb(255, 255, 255);">
<!-- ko if: smallImageUrl --><!-- /ko -->
<!-- ko if: backgroundImageUrl -->
<div id="backgroundImage" role="img" data-bind="backgroundImage: backgroundImageUrl(), externalCss: { 'background-image': true }, ariaLabel: str['STR_Background_Image_AltText']" class="background-image ext-background-image"
aria-label="Organization background image" style="background-image: url("https://aadcdn.msftauthimages.net/dbd5a2dd-qfhbivfukfnah7k2i-7zxkkynugruzxazsotqwghdmy/logintenantbranding/0/illustration?ts=637618233281395487");"></div>
<!-- ko if: useImageMask -->
<div data-bind="externalCss: { 'background-overlay': true }" class="background-overlay ext-background-overlay"></div>
<!-- /ko -->
<!-- /ko -->
</div>
</div>
<!-- ko if: svr.iBannerEnvironment --><!-- /ko -->
<!-- ko withProperties: { '$masterPageContext': $parentContext } -->
<div class="outer" data-bind="css: { 'app': $page.backgroundLogoUrl }">
<!-- ko if: showHeader --><!-- /ko -->
<div class="template-section main-section">
<div data-bind="externalCss: { 'middle': true }" class="middle ext-middle">
<div class="full-height" data-bind="component: { name: 'content-control', params: { serverData: svr, isVerticalSplitTemplate: $page.isVerticalSplitTemplate(), hasHeader: showHeader } }"><!-- -->
<!-- ko withProperties: { '$content': $data } -->
<div class="flex-column">
<!-- ko if: $page.paginationControlHelper.showBackgroundLogoHolder --><!-- /ko -->
<!-- ko if: $page.paginationControlHelper.showPageLevelTitleControl --><!-- /ko -->
<div class="win-scroll">
<div id="lightbox" data-bind="
animationEnd: $page.paginationControlHelper.animationEnd,
externalCss: { 'sign-in-box': true },
css: {
'inner': $content.isVerticalSplitTemplate,
'vertical-split-content': $content.isVerticalSplitTemplate,
'app': $page.backgroundLogoUrl,
'wide': $page.paginationControlHelper.useWiderWidth,
'fade-in-lightbox': $page.fadeInLightBox,
'has-popup': $page.showFedCredAndNewSession && ($page.showFedCredButtons() || $page.newSession()),
'transparent-lightbox': $page.backgroundControlMethods() && $page.backgroundControlMethods().useTransparentLightBox,
'lightbox-bottom-margin-debug': $page.showDebugDetails,
'has-header': $content.hasHeader }" class="sign-in-box ext-sign-in-box fade-in-lightbox has-popup">
<!-- ko template: { nodes: $masterPageContext.$componentTemplateNodes, data: $page } -->
<!-- ko if: svr.fShowCookieBanner --><!-- /ko -->
<div class="lightbox-cover" data-bind="css: { 'disable-lightbox': svr.fAllowGrayOutLightBox && showLightboxProgress() }"></div>
<!-- ko if: showLightboxProgress --><!-- /ko -->
<!-- ko if: loadBannerLogo -->
<div data-bind="component: { name: 'logo-control',
params: {
isChinaDc: svr.fIsChinaDc,
bannerLogoUrl: bannerLogoUrl() } }"><!-- -->
<!-- ko if: bannerLogoUrl -->
<!-- ko if: svr.fTenantBrandingCdnAddEventHandlers -->
<img id="bannerLogo" data-bind="addEventHandlers, attr: { src: bannerLogoUrl, alt: str['STR_Banner_Logo_AltText'] }, externalCss: { 'banner-logo': true }"
src="https://aadcdn.msftauthimages.net/dbd5a2dd-qfhbivfukfnah7k2i-7zxkkynugruzxazsotqwghdmy/logintenantbranding/0/bannerlogo?ts=637618233291842078" alt="Organization banner logo" class="banner-logo ext-banner-logo">
<!-- /ko -->
<!-- ko if: !svr.fTenantBrandingCdnAddEventHandlers --><!-- /ko -->
<!-- /ko -->
<!-- ko if: !bannerLogoUrl && !isChinaDc && !isCiamUserFlowUx --><!-- /ko -->
<!-- ko if: !bannerLogoUrl && isCiamUserFlowUx && bannerLogoText --><!-- /ko -->
</div>
<!-- /ko -->
<!-- ko if: svr.strLWADisclaimerMsg && paginationControlHelper.showLwaDisclaimer() --><!-- /ko -->
<!-- ko if: asyncInitReady -->
<div role="main" data-bind="component: { name: 'pagination-control',
publicMethods: paginationControlMethods,
params: {
enableCssAnimation: svr.fEnableCssAnimation,
disableAnimationIfAnimationEndUnsupported: svr.fDisableAnimationIfAnimationEndUnsupported,
initialViewId: initialViewId,
currentViewId: currentViewId,
initialSharedData: initialSharedData,
initialError: $loginPage.getServerError() },
event: {
cancel: paginationControl_onCancel,
load: paginationControlHelper.onLoad,
unload: paginationControlHelper.onUnload,
loadView: view_onLoadView,
showView: view_onShow,
setLightBoxFadeIn: view_onSetLightBoxFadeIn,
animationStateChange: paginationControl_onAnimationStateChange } }"><!-- -->
<div data-bind="css: { 'zero-opacity': hidePaginatedView() }" class="">
<!-- ko if: showIdentityBanner() && (sharedData.displayName || svr.sPOST_Username) --><!-- /ko -->
<div class="pagination-view animate slide-in-next" data-bind="css: {
'has-identity-banner': showIdentityBanner() && (sharedData.displayName || svr.sPOST_Username),
'zero-opacity': hidePaginatedView.hideSubView(),
'animate': animate(),
'slide-out-next': animate.isSlideOutNext(),
'slide-in-next': animate.isSlideInNext(),
'slide-out-back': animate.isSlideOutBack(),
'slide-in-back': animate.isSlideInBack() }">
<!-- ko foreach: views -->
<!-- ko if: $parent.currentViewIndex() === $index() -->
<!-- ko template: { nodes: [$data], data: $parent } -->
<div data-viewid="1" data-showfedcredbutton="true" data-bind="pageViewComponent: { name: 'login-paginated-username-view',
params: {
serverData: svr,
serverError: initialError,
isInitialView: isInitialState,
displayName: sharedData.displayName,
otherIdpRedirectUrl: sharedData.otherIdpRedirectUrl,
prefillNames: $loginPage.prefillNames,
flowToken: sharedData.flowToken,
availableSignupCreds: sharedData.availableSignupCreds,
customStrings: $loginPage.customStrings(),
isCustomizationFailure: $loginPage.isCustomStringsLoadFailure(),
userIdLabel: $loginPage.userIdLabel,
cantAccessYourAccountText: $loginPage.cantAccessYourAccountText,
hideAccountResetCredentials: $loginPage.hideAccountResetCredentials,
accessRecoveryLink: $loginPage.accessRecoveryLink,
boilerPlateText: $loginPage.boilerPlateText },
event: {
restoreIsRecoveryAttemptPost: $loginPage.view_onRestoreIsRecoveryAttemptPost,
redirect: $loginPage.view_onRedirect,
updateDFPUrl: $loginPage.view_onUpdateDFPUrl,
setPendingRequest: $loginPage.view_onSetPendingRequest,
registerDialog: $loginPage.view_onRegisterDialog,
unregisterDialog: $loginPage.view_onUnregisterDialog,
showDialog: $loginPage.view_onShowDialog,
updateAvailableCredsWithoutUsername: $loginPage.view_onUpdateAvailableCreds,
agreementClick: $loginPage.footer_agreementClick } }"><!-- -->
<!-- ko if: svr.fAllowLoginTextCustomizations -->
<div data-bind="component: { name: 'header-control',
params: {
serverData: svr,
title: customTitle() || str['WF_STR_HeaderDefault_Title'],
headerDescription: customDescription() } }">
<div>
<div class="row title ext-title" id="loginHeader" data-bind="externalCss: { 'title': true }">
<div role="heading" aria-level="1" data-bind="text: title">Sign in</div>
<!-- ko if: isSubtitleVisible --><!-- /ko -->
</div>
<!-- ko if: headerDescription --><!-- /ko -->
</div>
</div>
<!-- /ko -->
<!-- ko ifnot: svr.fAllowLoginTextCustomizations --><!-- /ko -->
<!-- ko if: pageDescription && !svr.fHideLoginDesc --><!-- /ko -->
<div class="row">
<!-- ko if: svr.fEnableAriaLiveUpdates --><!-- /ko -->
<!-- ko ifnot: svr.fEnableAriaLiveUpdates -->
<div role="alert" aria-live="assertive">
<!-- ko if: usernameTextbox.error --><!-- /ko -->
</div>
<!-- /ko -->
<div class="form-group col-md-24">
<!-- ko if: prefillNames().length > 1 --><!-- /ko -->
<!-- ko ifnot: prefillNames().length > 1 -->
<div class="placeholderContainer" data-bind="component: { name: 'placeholder-textbox-field',
publicMethods: usernameTextbox.placeholderTextboxMethods,
params: {
serverData: svr,
hintText: svr.fEnableLivePreview ? userIdLabel : tenantBranding.unsafe_userIdLabel || str['STR_SSSU_Username_Hint'] || str['CT_PWD_STR_Email_Example'],
hintCss: 'placeholder' + (!svr.fAllowPhoneSignIn ? ' ltr_override' : '') },
event: {
updateFocus: usernameTextbox.textbox_onUpdateFocus } }"><!-- ko withProperties: { '$placeholderText': placeholderText } -->
<!-- ko template: { nodes: $componentTemplateNodes, data: $parent } -->
<input type="email" name="loginfmt" id="i0116" maxlength="113" class="form-control ltr_override input ext-input text-box ext-text-box" aria-required="true" data-report-event="Signin_Email_Phone_Skype"
data-report-trigger="click" data-report-value="Email_Phone_Skype_Entry" data-bind="
attr: { lang: svr.fApplyAsciiRegexOnInput ? null : 'en',
autocomplete: svr.fIsUpdatedAutocompleteEnabled ? 'username' : null },
externalCss: {
'input': true,
'text-box': true,
'has-error': usernameTextbox.error },
ariaLabel: tenantBranding.unsafe_userIdLabel || str['CT_PWD_STR_Username_AriaLabel'],
ariaDescribedBy: 'loginHeader' + (pageDescription && !svr.fHideLoginDesc ? ' loginDescription usernameError' : ' usernameError'),
textInput: usernameTextbox.value,
hasFocusEx: usernameTextbox.focused,
placeholder: $placeholderText" autocomplete="username" aria-label="userid@jmfamily.com" aria-describedby="loginHeader usernameError" placeholder="userid@jmfamily.com" data-report-attached="1">
<!-- ko if: svr.fIsUpdatedAutocompleteEnabled -->
<input name="passwd" type="password" id="i0118" data-bind="moveOffScreen, textInput: passwordBrowserPrefill" class="moveOffScreen" tabindex="-1" aria-hidden="true">
<!-- /ko -->
<!-- ko ifnot: svr.fIsUpdatedAutocompleteEnabled --><!-- /ko -->
<!-- /ko -->
<!-- /ko -->
<!-- ko ifnot: usePlaceholderAttribute --><!-- /ko -->
</div>
<!-- /ko -->
</div>
</div>
<div data-bind="css: { 'position-buttons': !tenantBranding.BoilerPlateText && !boilerPlateText }, externalCss: { 'password-reset-links-container': true }"
class="password-reset-links-container ext-password-reset-links-container">
<div class="row">
<div class="col-md-24">
<div class="text-13">
<!-- ko if: svr.fCBShowSignUp && !svr.fDoIfExists && !svr.fCheckProofForAliases --><!-- /ko -->
<!-- ko ifnot: hideCantAccessYourAccount -->
<div class="form-group">
<a id="cantAccessAccount" name="cannotAccessAccount" data-bind="
text: svr.fEnableLivePreview ? cantAccessYourAccountText : unsafe_cantAccessYourAccountText,
click: accessRecoveryLink ? null : cantAccessAccount_onClick,
attr: { target: accessRecoveryLink && '_blank' },
href: accessRecoveryLink || '#'" target="" href="#">Can’t access your account?</a>
</div>
<!-- /ko -->
<!-- ko if: showFidoLinkInline && hasFido() && (availableCredsWithoutUsername().length >= 2 || svr.fShowForgotUsernameLink || isOfflineAccountVisible) --><!-- /ko -->
<!-- ko if: svr.fEnableShowPickerCredObservable -->
<!-- ko if: showCredPicker() --><!-- /ko -->
<!-- /ko -->
<!-- ko ifnot: svr.fEnableShowPickerCredObservable --><!-- /ko -->
<!-- ko if: svr.urlSkipZtd --><!-- /ko -->
</div>
</div>
</div>
</div>
<!-- ko if: svr.fShowLegalMessagingInline --><!-- /ko -->
<div class="win-button-pin-bottom boilerplate-button-bottom" data-bind="css : { 'boilerplate-button-bottom': tenantBranding.BoilerPlateText || boilerPlateText }">
<div class="row move-buttons" data-bind="css: { 'move-buttons': tenantBranding.BoilerPlateText || boilerPlateText }">
<div data-bind="component: { name: 'footer-buttons-field',
params: {
serverData: svr,
isPrimaryButtonEnabled: !isRequestPending(),
isPrimaryButtonVisible: svr.fShowButtons,
isSecondaryButtonEnabled: true,
isSecondaryButtonVisible: svr.fShowButtons && isSecondaryButtonVisible(),
secondaryButtonText: secondaryButtonText() },
event: {
primaryButtonClick: primaryButton_onClick,
secondaryButtonClick: secondaryButton_onClick } }">
<div class="col-xs-24 no-padding-left-right button-container button-field-container ext-button-field-container" data-bind="
visible: isPrimaryButtonVisible() || isSecondaryButtonVisible(),
css: { 'no-margin-bottom': removeBottomMargin },
externalCss: { 'button-field-container': true }">
<!-- ko if: isSecondaryButtonVisible -->
<div data-bind="css: { 'inline-block': true }, externalCss: { 'button-item': true }" class="inline-block button-item ext-button-item">
<input type="button" id="idBtn_Back" class="win-button button-secondary button ext-button secondary ext-secondary" data-bind="
attr: { 'id': secondaryButtonId || 'idBtn_Back' },
externalCss: {
'button': true,
'secondary': true },
value: secondaryButtonText() || str['CT_HRD_STR_Splitter_Back'],
ariaDescribedBy: secondaryButtonDescribedBy,
hasFocus: focusOnSecondaryButton,
click: secondaryButton_onClick,
clickBubble: !svr.fEnableLivePreview,
enable: isSecondaryButtonEnabled" value="Back">
</div>
<!-- /ko -->
<div data-bind="css: { 'inline-block': isPrimaryButtonVisible }, externalCss: { 'button-item': true }" class="inline-block button-item ext-button-item">
<!-- type="submit" is needed in-addition to 'type' in primaryButtonAttributes observable to support IE8 -->
<!-- ko ifnot: svr.fConsentButtonIdViaName -->
<input type="submit" id="idSIButton9" class="win-button button_primary high-contrast-overrides button ext-button primary ext-primary" data-report-event="Signin_Submit" data-report-trigger="click"
data-report-value="Submit" data-bind="
attr: primaryButtonAttributes,
css: { 'high-contrast-overrides': svr.fUseHighContrastOverrides },
externalCss: {
'button': true,
'primary': true },
value: primaryButtonText() || str['CT_PWD_STR_SignIn_Button_Next'],
hasFocus: focusOnPrimaryButton,
click: svr.fEnableLivePreview ? function() { } : primaryButton_onClick,
clickBubble: !svr.fEnableLivePreview,
enable: isPrimaryButtonEnabled,
visible: isPrimaryButtonVisible,
preventTabbing: primaryButtonPreventTabbing" value="Next" data-report-attached="1">
<!-- /ko -->
<!-- ko if: svr.fConsentButtonIdViaName --><!-- /ko -->
</div>
</div>
</div>
</div>
</div>
<!-- ko if: tenantBranding.BoilerPlateText || boilerPlateText -->
<div id="idBoilerPlateText" class="wrap-content boilerplate-text ext-boilerplate-text" data-bind="
htmlWithMods: svr.fEnableLivePreview ? boilerPlateText : tenantBranding.BoilerPlateText,
htmlMods: { filterLinks: svr.fIsHosted },
css: { 'transparent-lightbox': tenantBranding.UseTransparentLightBox },
externalCss: { 'boilerplate-text': true }">
<p>You are accessing JMFE’s Data Network owned exclusively by JMFE. JMFE reserves the right to monitor use of the Network. Unauthorized access use or modification of the Network and data contained herein or in transit to
or from it is a violation of law. Violators will be prosecuted to the fullest extent. JMFE’s Information Security Acceptable Use Policy governs use of the Network. Accessing or using the Network indicates your
acceptance of the Policy. Violations may result in disciplinary action up to termination of your employment or contractual relationship civil and/or criminal liability.</p>
</div>
<!-- /ko -->
</div><!-- /ko -->
<!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- ko if: $parent.currentViewIndex() === $index() --><!-- /ko -->
<!-- /ko -->
</div>
</div>
</div>
<!-- /ko -->
<input type="hidden" name="ps" data-bind="value: postedLoginStateViewId" value="">
<input type="hidden" name="psRNGCDefaultType" data-bind="value: postedLoginStateViewRNGCDefaultType" value="">
<input type="hidden" name="psRNGCEntropy" data-bind="value: postedLoginStateViewRNGCEntropy" value="">
<input type="hidden" name="psRNGCSLK" data-bind="value: postedLoginStateViewRNGCSLK" value="">
<!-- ko if: svr.sCanaryTokenName && !svr.fSkipRenderingNewCanaryToken -->
<input type="hidden" data-bind="attr: { name: svr.sCanaryTokenName }, value: svr.canary" name="canary" value="VtFq6N9H9rxAQEPHZbfLXByjP4qYXNOXH5JncmUd8Nw=7:1:CANARY:HN5W5nrBpTTA4llLa5Ji9x1Gb+em+9EFFVTJLI9V7HU=">
<!-- /ko -->
<!-- ko if: !svr.sCanaryTokenName || svr.fSkipRenderingNewCanaryToken --><!-- /ko -->
<input type="hidden" name="ctx" data-bind="value: ctx"
value="rQQIARAA42Kw0iguyLMyAANDU10QBSGSYSwYKBLiEhA4FBl24O0fr1m1PWZHlszLvcDI-IKR8RYTT3ixW2pKalFiSWZ-3ixmsaJcWwO1zBTbgsTi4syyVLWiUltVo7RNzDxZuWmJuZk5lXrJ-bkXWLhesTAZcPxgYVzECjT8X__2kAkvRTwbji2Y9TwhhOEUq35YiVuhmZ-lh2VRhWOga4BHVFKaT4RTZVaASWFkhJ9_hIepV15ybmiKhV-5rbmV4QQ2nlNsDB_YGDvYGWaxM-zi9MwoKSkottLXL04t0U1JLdPNLU4xNjPVzTI2SzFNNE1KNbQwSjMwMjE0BEom5hcX5ycW6CVWJOfkl6bopVTmAd2aXAxyq_4BXoYffFc3NO9_fX7VO49X_DoefqbhpnlFTgUhIY4mOTk-iaZemZYVhu5J2qm52paubm5hIV4-npZh5h6hthsEGB4IMAAA0">
<input type="hidden" name="hpgrequestid" data-bind="value: svr.sessionId" value="54b78ffe-e990-4914-80c6-a09ae7605400">
<input type="hidden" id="i0327" data-bind="attr: { name: svr.sFTName }, value: flowToken" name="flowToken"
value="AQABIQEAAAApTwJmzXqdR4BN2miheQMY0fGrIWIrxpNPys2A01Crg06GhZQ3GkMrnDpAG6aYtrSHBUl-4fsUGOgZwKTzBr3Ol9mN0YFM3touYgMotDs0f9Z6V8mACN1LOB4mhDsBbbcJp7TMUDYpU5ExEpDu-3VzYNIysJ8RcEsbD7d629ByAAAiNCSx-tYYT4qeVsr2ZzlO3WqwudOPZxFKVcfBofi4eDGVpvC_TEBrua5Sjx2lR5FK8CQ-66T2WVc0oqXFDbgZxegrgS6DchPfz0eyaSDiSr4B_JffQOHLkCHnaA04FzB6qBISnNMf1o3ZCBR9RsW8O_zQMv2E8eE_wHmKYXM6TmYM3TYtYnTPiLUBO5K-Irr10Or6haAbTT1Om-bqKuJM21B_aiTnV2uRriZuFRSJfg0xPl6Hhv2hFJ-xrV4UexOHl7SPFsJejnOFBgEV20jK90PJLZB1zbNBbbFOz42RupAQUqTsj70SOIdVZwy3mCAA">
<input type="hidden" name="PPSX" data-bind="value: svr.sRandomBlob" value="">
<input type="hidden" name="NewUser" value="1">
<input type="hidden" name="FoundMSAs" data-bind="value: svr.sFoundMSAs" value="">
<input type="hidden" name="fspost" data-bind="value: svr.fPOST_ForceSignin ? 1 : 0" value="0">
<input type="hidden" name="i21" data-bind="value: wasLearnMoreShown() ? 1 : 0" value="0">
<input type="hidden" name="CookieDisclosure" data-bind="value: svr.fShowCookieBanner ? 1 : 0" value="0">
<input type="hidden" name="IsFidoSupported" data-bind="value: isFidoSupported() ? 1 : 0" value="1">
<input type="hidden" name="isSignupPost" data-bind="value: isSignupPost() ? 1 : 0" value="0">
<!-- ko ifnot: svr.fShouldSupportTargetCredentialForRecovery --><!-- /ko -->
<!-- ko if: svr.fEnableDFPIntegration -->
<input type="hidden" name="DfpArtifact" data-bind="value: dfpResult()" value="">
<!-- /ko -->
<!-- ko if: svr.fShouldSupportTargetCredentialForRecovery && targetCredentialForRecovery() --><!-- /ko -->
<div data-bind="component: { name: 'instrumentation-control',
publicMethods: instrumentationMethods,
params: { serverData: svr } }">
<input type="hidden" name="i19" data-bind="value: timeOnPage" value="">
</div>
<!-- /ko -->
</div>
<!-- ko if: $page.showFedCredAndNewSession -->
<!-- ko ifnot: svr.fUsePromotedFedCredTypesArray --><!-- /ko -->
<!-- ko if: svr.fUsePromotedFedCredTypesArray -->
<!-- ko if: $page.showFedCredButtons -->
<div data-bind="component: { name: 'fed-cred-buttons-control',
params: {
serverData: svr,
fedCredOptions: $page.otherSigninOptions },
event: {
fedCredButtonClick: $page.otherSigninOptionsButton_onClick } }"><!-- -->
<!-- ko withProperties: { '$fedCredButtonsControl': $data } -->
<div data-bind="css: { 'app': $page.backgroundLogoUrl }, externalCss: { 'promoted-fed-cred-box': true }" class="promoted-fed-cred-box ext-promoted-fed-cred-box">
<div class="promoted-fed-cred-content animate slide-in-next" data-bind="css: {
'animate': $page.useCssAnimations && $page.animate(),
'slide-out-next': $page.animate.isSlideOutNext,
'slide-in-next': $page.animate.isSlideInNext,
'slide-out-back': $page.animate.isSlideOutBack,
'slide-in-back': $page.animate.isSlideInBack,
'app': $page.backgroundLogoUrl }">
<!-- ko ifnot: svr.fIsQrCodePinSupported --><!-- /ko -->
<!-- ko if: svr.fIsQrCodePinSupported -->
<!-- ko foreach: $fedCredButtonsControl.fedCredOptions -->
<div class="tile-container" data-bind="css: { 'binaryChoice list': svr.fSupportWindowsStyles }">
<div class="row tile">
<div class="table" role="button" tabindex="0" data-bind="
css: { 'list-item': svr.fSupportWindowsStyles },
pressEnter: $fedCredButtonsControl.fedCredButton_onClick,
click: $fedCredButtonsControl.fedCredButton_onClick,
ariaLabel: $data.text" aria-label="Sign-in options">
<div class="table-row">
<div class="table-cell tile-img medium">
<!-- ko component: 'accessible-image-control' --><!-- ko if: (isHighContrastBlackTheme || hasDarkBackground || svr.fHasBackgroundColor) && !isHighContrastWhiteTheme --><!-- /ko -->
<!-- ko if: (isHighContrastWhiteTheme || (!hasDarkBackground && !svr.fHasBackgroundColor)) && !isHighContrastBlackTheme -->
<!-- ko template: { nodes: [darkImageNode], data: $parent } --><img class="tile-img medium" role="presentation" data-bind="addEventHandlers, attr: { src: $data.darkIconUrl }"
src="https://aadcdn.msftauth.net/shared/1.0/content/images/signin-options_3e3f6b73c3f310c31d2c4d131a8ab8c6.svg"><!-- /ko -->
<!-- /ko --><!-- /ko -->
</div>
<div class="table-cell text-left content" data-bind="css: { 'content': !svr.fSupportWindowsStyles }">
<!-- ko if: $data.showPreviewBadge --><!-- /ko -->
<!-- ko ifnot: $data.showPreviewBadge -->
<div data-bind="text: $data.text, attr: { 'data-test-id': $data.testId }" data-test-id="signinOptions">Sign-in options</div>
<!-- /ko -->
<!-- ko if: $data.showHelpIcon --><!-- /ko -->
</div>
</div>
</div>
</div>
<!-- ko if: $data.showHelpIcon --><!-- /ko -->
</div>
<!-- /ko -->
<!-- /ko -->
</div>
</div>
<!-- /ko -->
</div>
<!-- /ko -->
<!-- ko if: $page.showSignupFedCredButtons --><!-- /ko -->
<!-- /ko -->
<!-- ko if: svr.fShowQrCodePinOption --><!-- /ko -->
<!-- ko if: $page.newSession --><!-- /ko -->
<!-- /ko -->
<!-- ko if: $page.showDebugDetails --><!-- /ko -->
</div>
</div>
<!-- /ko -->
</div>
</div>
</div>
<!-- ko if: $page.paginationControlHelper.showFooterControl -->
<div id="footer" role="contentinfo" data-bind="
externalCss: {
'footer': true,
'has-background': !$page.useDefaultBackground() && $page.showFooter(),
'background-always-visible': $page.backgroundLogoUrl }" class="footer ext-footer">
<div data-bind="component: { name: 'footer-control',
publicMethods: $page.footerMethods,
params: {
serverData: svr,
useDefaultBackground: $page.useDefaultBackground(),
hasDarkBackground: $page.backgroundLogoUrl(),
showLinks: true,
showFooter: $page.showFooter(),
hideTOU: $page.hideTOU(),
termsText: $page.termsText(),
termsLink: $page.termsLink(),
hidePrivacy: $page.hidePrivacy(),
privacyText: $page.privacyText(),
privacyLink: $page.privacyLink() },
event: {
agreementClick: $page.footer_agreementClick,
showDebugDetails: $page.toggleDebugDetails_onClick } }"><!-- ko if: !hideFooter && (showLinks || impressumLink || showIcpLicense) -->
<div id="footerLinks" class="footerNode text-secondary footer-links ext-footer-links" data-bind="externalCss: { 'footer-links': true }">
<!-- ko if: showFooter -->
<!-- ko if: !hideTOU -->
<a id="ftrTerms" data-bind="
text: termsText,
href: termsLink,
click: termsLink_onClick,
externalCss: {
'footer-content': true,
'footer-item': true,
'has-background': !useDefaultBackground,
'background-always-visible': hasDarkBackground }" href="https://www.microsoft.com/en-CA/servicesagreement/" class="footer-content ext-footer-content footer-item ext-footer-item has-background ext-has-background">Terms of use</a>
<!-- /ko -->
<!-- ko if: !hidePrivacy -->
<a id="ftrPrivacy" data-bind="
text: privacyText,
href: privacyLink,
click: privacyLink_onClick,
externalCss: {
'footer-content': true,
'footer-item': true,
'has-background': !useDefaultBackground,
'background-always-visible': hasDarkBackground }" href="https://privacy.microsoft.com/en-CA/privacystatement" class="footer-content ext-footer-content footer-item ext-footer-item has-background ext-has-background">Privacy & cookies</a>
<!-- /ko -->
<!-- ko if: impressumLink --><!-- /ko -->
<!-- ko if: a11yConformeLink --><!-- /ko -->
<!-- ko if: showIcpLicense --><!-- /ko -->
<!-- /ko -->
<!-- Set attr binding before hasFocusEx to prevent Narrator from losing focus -->
<a id="moreOptions" href="#" role="button" data-bind="
click: moreInfo_onClick,
ariaLabel: str['CT_STR_More_Options_Ellipsis_AriaLabel'],
attr: { 'aria-expanded': showDebugDetails().toString() },
hasFocusEx: focusMoreInfo(),
externalCss: {
'footer-content': true,
'footer-item': true,
'debug-item': true,
'has-background': !useDefaultBackground,
'background-always-visible': hasDarkBackground }" aria-label="Click here for troubleshooting information" aria-expanded="false" class="footer-content ext-footer-content footer-item ext-footer-item debug-item ext-debug-item has-background ext-has-background">...</a>
</div>
<!-- /ko -->
<!-- ko if: svr.fShowLegalMessagingInline && showLinks --><!-- /ko -->
</div>
</div>
<!-- /ko -->
</div>
<!-- /ko -->
</div>
<!-- /ko -->
<!-- ko if: isVerticalSplitTemplate() && isTemplateLoaded() --><!-- /ko -->
<!-- /ko -->
<!-- /ko -->
</div>
<!-- /ko -->
</form>
POST
<form data-bind="postRedirectForm: postRedirect" method="POST" aria-hidden="true" target="_top"></form>
Text Content
Sign in Can’t access your account? You are accessing JMFE’s Data Network owned exclusively by JMFE. JMFE reserves the right to monitor use of the Network. Unauthorized access use or modification of the Network and data contained herein or in transit to or from it is a violation of law. Violators will be prosecuted to the fullest extent. JMFE’s Information Security Acceptable Use Policy governs use of the Network. Accessing or using the Network indicates your acceptance of the Policy. Violations may result in disciplinary action up to termination of your employment or contractual relationship civil and/or criminal liability. Sign-in options Terms of use Privacy & cookies ...