login.microsoftonline.com
Open in
urlscan Pro
20.190.159.23
Public Scan
Submitted URL: http://speedy.akwagroup.com/
Effective URL: https://login.microsoftonline.com/38dc3a50-7ed6-4b27-8c45-adad1d355cde/oauth2/authorize?response_type=code&client_id=691573dd-ad60...
Submission Tags: @phish_report
Submission: On July 25 via api from FI — Scanned from FI
Effective URL: https://login.microsoftonline.com/38dc3a50-7ed6-4b27-8c45-adad1d355cde/oauth2/authorize?response_type=code&client_id=691573dd-ad60...
Submission Tags: @phish_report
Submission: On July 25 via api from FI — Scanned from FI
Form analysis
2 forms found in the DOMName: f1 — POST https://login.microsoftonline.com/38dc3a50-7ed6-4b27-8c45-adad1d355cde/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/38dc3a50-7ed6-4b27-8c45-adad1d355cde/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 }">
<!-- 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="Organisaation taustakuva" style="background-image: url("https://aadcdn.msftauthimages.net/c1c6b6c8-bws9zviogutut7qvvbdu3cox07dpxhmepgpobp0k5ze/logintenantbranding/0/illustration?ts=635730866119481333");"></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/c1c6b6c8-bws9zviogutut7qvvbdu3cox07dpxhmepgpobp0k5ze/logintenantbranding/0/bannerlogo?ts=635730834183969889" alt="Organisaation banneri -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">Kirjaudu sisään</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="Anna sähköpostiosoitteesi, puhelinnumerosi tai Skype-nimesi." aria-describedby="loginHeader usernameError"
placeholder="Sähköpostiosoite, puhelinnumero tai Skype-nimi">
<!-- 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="position-buttons 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="#">Etkö pysty käyttämään tiliäsi?</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" data-bind="css : { 'boilerplate-button-bottom': tenantBranding.BoilerPlateText || boilerPlateText }">
<div class="row" 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="Edellinen">
</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="Seuraava">
<!-- /ko -->
<!-- ko if: svr.fConsentButtonIdViaName --><!-- /ko -->
</div>
</div>
</div>
</div>
</div>
<!-- ko if: tenantBranding.BoilerPlateText || boilerPlateText --><!-- /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="I1GUeCmrSU1lIcH++lHB9eytXtrBfc/dh/AEc7I88XI=8:1:CANARY:FsmtqbjjwpNa+EhCHTB3x5d2IV19hmk5xfNqct9htF0=">
<!-- /ko -->
<!-- ko if: !svr.sCanaryTokenName || svr.fSkipRenderingNewCanaryToken --><!-- /ko -->
<input type="hidden" name="ctx" data-bind="value: ctx"
value="rQQIARAAfZE_TBNRHMf7KFTAPzTsLg8m2sfdu3fX9i4ytKTYGwSkYDBCyLv33tGD691xd5VW7GjiYsLsojEmJjhonAxK4goTo-Bi4kJIFBcTBgdbjZtx-eWX3_D9ffL9jCXxODZGczrW8oRzRHlORqogOqJUxiinKDohlkJzQguHB9M3zxjY-1ks7_24T669O_qyA67W4jiIDEmKAiF4a5yub9LV0G8E48yvS28BOATgBICdnlFbVgtc4BySqRBIJVhGum5ZSNMxU_NYKESxjnuGZoqNuKZ0hx8698Tj5D4oBsFs6Ddb1ZjGwtiCpneXug6f99eFNyfisAUNr-G6WWhGNyLftig0bOpGIgtnQmfV8ag7RzcXQhca8A_tkrT0T94lCWbhnNhoiCjufLQdV5j8b3hVRJHje90DlHGOCFvDyGYWR6qmYmRxW0N5RghhlsV1QWB7pOzxGfs39SwNaX3kTXKUFDgjVJNRXvAcUi0ljwpM1TrFU4450TTGxUEy5QfCc_jHJDjsBae9PXL_eS941tcxsP_p1cmT25nS-3T16MWjqcRBn2Ti6wtish5WF7Brskom41ZKumjFi3FYspnEa1KxzPJmobBoThQMvJ0Cu6mB_mQ6AZOTs_h7Cjy8kNgd-L_Iw4vg-JI6mGIuderR8NgWdPhK3BUAO0Ka9WiFse7WEdMpDxp3YCcaLrfb7Q-XE-dXnj44-_p8--W3yulQdiqqxxvW2tpmME0z5dpkZb5EmhpXzFtYr9XXtaY9vcFivRZPyROv04nP6cQv0">
<input type="hidden" name="hpgrequestid" data-bind="value: svr.sessionId" value="e8afdbc9-599f-422b-bc10-53d9a78d4600">
<input type="hidden" id="i0327" data-bind="attr: { name: svr.sFTName }, value: flowToken" name="flowToken"
value="AQABIQEAAAApTwJmzXqdR4BN2miheQMYsODu1qZIROJiWC_Pf9YK57rBDOFqCPfr-FDozoY8h7PQ1btzvgWXuzVmupE3IcS_Ra7sS6I4ZV6BPZCGMV9TaIDP8TGHZSM4z55lF2e_fPinOux5gJUQssGMMi8eZG4TBWnybDWDSrNURiKAv0-JjkUXGmhx9J1McWweGwoaDAmKyS2UPdyXcix2YsQYS1t4Q4tALMKaSJpRuSO-p6hcmk6fIqMZajxtg6FHXRfiYsjJ17-xrGRuH1khymDv_U-hv4BFeir_QNIqctjk2IQujeyqqIyO-lvsIUnrsHZXb8BRgvthskRmQC26qEsZcof6eCltQ0IrZRwZdaPvyAcWAkC0_m94DHgox7hCoOtmPnsq5YrA1xuEDZ0dzIob4pIPwjINaSpGDqgc6hU4Q965sjKOkP6vDLNgZ7pq_RmoFb_03bczUNhRogu5Tmwr1NRYL9TAFGaW1g5o19zeWRSRkgBV3D6ViEgvwHcc1_dDwizmRhC6_xNDyoP6cTg6qaxFIAA">
<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" 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="Kirjautumisvaihtoehdot">
<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">Kirjautumisvaihtoehdot</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/fi-FI/servicesagreement/" class="footer-content ext-footer-content footer-item ext-footer-item has-background ext-has-background">Käyttöehdot</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/fi-FI/privacystatement" class="footer-content ext-footer-content footer-item ext-footer-item has-background ext-has-background">Tietosuoja ja evästeet</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="Saat tietoja vianmäärityksestä napsauttamalla tätä" 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
Kirjaudu sisään Etkö pysty käyttämään tiliäsi? Kirjautumisvaihtoehdot Käyttöehdot Tietosuoja ja evästeet ...