@azure/msal-browser 4.23.0 → 4.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/IPublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientNext.mjs +1 -1
- package/dist/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
- package/dist/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
- package/dist/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
- package/dist/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
- package/dist/cache/AccountManager.mjs +1 -1
- package/dist/cache/AsyncMemoryStorage.mjs +1 -1
- package/dist/cache/BrowserCacheManager.mjs +1 -1
- package/dist/cache/CacheHelpers.mjs +1 -1
- package/dist/cache/CacheKeys.mjs +1 -1
- package/dist/cache/CookieStorage.mjs +1 -1
- package/dist/cache/DatabaseStorage.mjs +1 -1
- package/dist/cache/EncryptedData.mjs +1 -1
- package/dist/cache/LocalStorage.mjs +1 -1
- package/dist/cache/MemoryStorage.mjs +1 -1
- package/dist/cache/SessionStorage.mjs +1 -1
- package/dist/cache/TokenCache.mjs +1 -1
- package/dist/config/Configuration.mjs +1 -1
- package/dist/controllers/ControllerFactory.mjs +1 -1
- package/dist/controllers/NestedAppAuthController.d.ts.map +1 -1
- package/dist/controllers/NestedAppAuthController.mjs +15 -15
- package/dist/controllers/NestedAppAuthController.mjs.map +1 -1
- package/dist/controllers/StandardController.d.ts.map +1 -1
- package/dist/controllers/StandardController.mjs +25 -51
- package/dist/controllers/StandardController.mjs.map +1 -1
- package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
- package/dist/crypto/BrowserCrypto.mjs +1 -1
- package/dist/crypto/CryptoOps.mjs +1 -1
- package/dist/crypto/PkceGenerator.mjs +1 -1
- package/dist/crypto/SignedHttpRequest.mjs +1 -1
- package/dist/custom-auth-path/app/PublicClientApplication.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthDOMHandler.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthExtensionHandler.mjs +1 -1
- package/dist/custom-auth-path/broker/nativeBroker/PlatformAuthProvider.mjs +1 -1
- package/dist/custom-auth-path/cache/AccountManager.mjs +1 -1
- package/dist/custom-auth-path/cache/AsyncMemoryStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/BrowserCacheManager.mjs +1 -1
- package/dist/custom-auth-path/cache/CacheHelpers.mjs +1 -1
- package/dist/custom-auth-path/cache/CacheKeys.mjs +1 -1
- package/dist/custom-auth-path/cache/CookieStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/DatabaseStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/EncryptedData.mjs +1 -1
- package/dist/custom-auth-path/cache/LocalStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/MemoryStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/SessionStorage.mjs +1 -1
- package/dist/custom-auth-path/cache/TokenCache.mjs +1 -1
- package/dist/custom-auth-path/config/Configuration.mjs +1 -1
- package/dist/custom-auth-path/controllers/ControllerFactory.mjs +1 -1
- package/dist/custom-auth-path/controllers/NestedAppAuthController.d.ts.map +1 -1
- package/dist/custom-auth-path/controllers/StandardController.d.ts.map +1 -1
- package/dist/custom-auth-path/controllers/StandardController.mjs +25 -51
- package/dist/custom-auth-path/controllers/StandardController.mjs.map +1 -1
- package/dist/custom-auth-path/crypto/BrowserCrypto.mjs +1 -1
- package/dist/custom-auth-path/crypto/CryptoOps.mjs +1 -1
- package/dist/custom-auth-path/crypto/PkceGenerator.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.d.ts +2 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.mjs +2 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthConstants.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/CustomAuthPublicClientApplication.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/controller/CustomAuthStandardController.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/CustomAuthAuthority.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts +2 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs +11 -3
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowErrorBase.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowResultBase.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/AuthFlowState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts +5 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.mjs +9 -2
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/result/AuthMethodRegistrationChallengeMethodResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/result/AuthMethodRegistrationSubmitChallengeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/jit/state/AuthMethodRegistrationState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +22 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts +36 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts +30 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts +7 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts +7 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts +59 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts +19 -0
- package/dist/custom-auth-path/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/error/CustomAuthApiError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/CustomAuthError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/HttpError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/HttpErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidArgumentError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/InvalidConfigurationErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/MethodNotImplementedError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/MsalCustomAuthError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/NoCachedAccountFoundError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/ParsedUrlErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UnexpectedError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UnsupportedEnvironmentError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UserAccountAttributeError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/error/UserAlreadySignedInError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInteractionClientBase.mjs +2 -2
- package/dist/custom-auth-path/custom_auth/core/interaction_client/CustomAuthInterationClientFactory.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/JitClient.d.ts +2 -8
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/JitClient.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/JitClient.mjs +4 -26
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/JitClient.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts +0 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts +2 -11
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/result/JitActionResult.mjs +2 -9
- package/dist/custom-auth-path/custom_auth/core/interaction_client/jit/result/JitActionResult.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/MfaClient.d.ts +21 -0
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/MfaClient.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts +14 -0
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts +23 -0
- package/dist/custom-auth-path/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts.map +1 -0
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/BaseApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts +1 -0
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.mjs +3 -2
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/RegisterApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/ResetPasswordApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts +7 -2
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.mjs +14 -3
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignInApiClient.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/SignupApiClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts +5 -0
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts +5 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs +4 -3
- package/dist/custom-auth-path/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/http_client/FetchHttpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/network_client/http_client/IHttpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.d.ts +4 -3
- package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs +4 -5
- package/dist/custom-auth-path/custom_auth/core/telemetry/PublicApiId.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/core/utils/ArgumentValidator.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/core/utils/UrlUtils.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/CustomAuthAccountData.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/error_type/GetAccountError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccessTokenResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/GetAccountResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/result/SignOutResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccessTokenState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/GetAccountState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/auth_flow/state/SignOutState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/get_account/interaction_client/CustomAuthSilentCacheClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/index.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/operating_context/CustomAuthOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/error_type/ResetPasswordError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordStartResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/result/ResetPasswordSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCodeRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/auth_flow/state/ResetPasswordState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/reset_password/interaction_client/ResetPasswordClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/SignInScenario.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/error_type/SignInError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/result/SignInSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs +13 -4
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInContinuationState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/auth_flow/state/SignInState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.d.ts +8 -6
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.mjs +51 -29
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/SignInClient.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts +6 -0
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.mjs +9 -2
- package/dist/custom-auth-path/custom_auth/sign_in/interaction_client/result/SignInActionResult.mjs.map +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/error_type/SignUpError.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResendCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitAttributesResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitCodeResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/result/SignUpSubmitPasswordResult.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpAttributesRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCodeRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpCompletedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpFailedState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpPasswordRequiredState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/auth_flow/state/SignUpState.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/SignUpClient.mjs +1 -1
- package/dist/custom-auth-path/custom_auth/sign_up/interaction_client/result/SignUpActionResult.mjs +1 -1
- package/dist/custom-auth-path/encode/Base64Decode.mjs +1 -1
- package/dist/custom-auth-path/encode/Base64Encode.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserAuthError.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserAuthErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserConfigurationAuthError.mjs +1 -1
- package/dist/custom-auth-path/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
- package/dist/custom-auth-path/error/NativeAuthError.d.ts.map +1 -1
- package/dist/custom-auth-path/error/NativeAuthError.mjs +3 -2
- package/dist/custom-auth-path/error/NativeAuthError.mjs.map +1 -1
- package/dist/custom-auth-path/error/NativeAuthErrorCodes.d.ts +1 -0
- package/dist/custom-auth-path/error/NativeAuthErrorCodes.d.ts.map +1 -1
- package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs +3 -2
- package/dist/custom-auth-path/error/NativeAuthErrorCodes.mjs.map +1 -1
- package/dist/custom-auth-path/event/EventHandler.mjs +1 -1
- package/dist/custom-auth-path/event/EventType.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/BaseInteractionClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs +2 -1
- package/dist/custom-auth-path/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
- package/dist/custom-auth-path/interaction_client/PopupClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/RedirectClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentAuthCodeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentCacheClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentIframeClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/SilentRefreshClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_client/StandardInteractionClient.mjs +1 -1
- package/dist/custom-auth-path/interaction_handler/InteractionHandler.mjs +1 -1
- package/dist/custom-auth-path/interaction_handler/SilentHandler.mjs +1 -1
- package/dist/custom-auth-path/navigation/NavigationClient.mjs +1 -1
- package/dist/custom-auth-path/network/FetchClient.mjs +1 -1
- package/dist/custom-auth-path/operatingcontext/BaseOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/operatingcontext/StandardOperatingContext.mjs +1 -1
- package/dist/custom-auth-path/packageMetadata.d.ts +1 -1
- package/dist/custom-auth-path/packageMetadata.mjs +2 -2
- package/dist/custom-auth-path/protocol/Authorize.mjs +1 -1
- package/dist/custom-auth-path/request/RequestHelpers.mjs +1 -1
- package/dist/custom-auth-path/response/ResponseHandler.mjs +1 -1
- package/dist/custom-auth-path/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/dist/custom-auth-path/utils/BrowserConstants.mjs +1 -1
- package/dist/custom-auth-path/utils/BrowserProtocolUtils.mjs +1 -1
- package/dist/custom-auth-path/utils/BrowserUtils.mjs +1 -1
- package/dist/custom-auth-path/utils/Helpers.mjs +1 -1
- package/dist/custom-auth-path/utils/MsalFrameStatsUtils.mjs +1 -1
- package/dist/custom_auth/CustomAuthConstants.d.ts +2 -1
- package/dist/custom_auth/CustomAuthConstants.d.ts.map +1 -1
- package/dist/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts +2 -1
- package/dist/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
- package/dist/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts +5 -0
- package/dist/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts.map +1 -1
- package/dist/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +22 -0
- package/dist/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts +36 -0
- package/dist/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts +30 -0
- package/dist/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts +7 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts +7 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts +59 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts.map +1 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts +19 -0
- package/dist/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts.map +1 -0
- package/dist/custom_auth/core/interaction_client/jit/JitClient.d.ts +2 -8
- package/dist/custom_auth/core/interaction_client/jit/JitClient.d.ts.map +1 -1
- package/dist/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts +0 -1
- package/dist/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts.map +1 -1
- package/dist/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts +2 -11
- package/dist/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts.map +1 -1
- package/dist/custom_auth/core/interaction_client/mfa/MfaClient.d.ts +21 -0
- package/dist/custom_auth/core/interaction_client/mfa/MfaClient.d.ts.map +1 -0
- package/dist/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts +14 -0
- package/dist/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts.map +1 -0
- package/dist/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts +23 -0
- package/dist/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts.map +1 -0
- package/dist/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts +1 -0
- package/dist/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts.map +1 -1
- package/dist/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts +7 -2
- package/dist/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts.map +1 -1
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts +5 -0
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts.map +1 -1
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts +5 -1
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts.map +1 -1
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
- package/dist/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
- package/dist/custom_auth/core/telemetry/PublicApiId.d.ts +4 -3
- package/dist/custom_auth/core/telemetry/PublicApiId.d.ts.map +1 -1
- package/dist/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
- package/dist/custom_auth/sign_in/interaction_client/SignInClient.d.ts +8 -6
- package/dist/custom_auth/sign_in/interaction_client/SignInClient.d.ts.map +1 -1
- package/dist/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts +6 -0
- package/dist/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts.map +1 -1
- package/dist/encode/Base64Decode.mjs +1 -1
- package/dist/encode/Base64Encode.mjs +1 -1
- package/dist/error/BrowserAuthError.mjs +1 -1
- package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
- package/dist/error/NativeAuthError.d.ts.map +1 -1
- package/dist/error/NativeAuthError.mjs +3 -2
- package/dist/error/NativeAuthError.mjs.map +1 -1
- package/dist/error/NativeAuthErrorCodes.d.ts +1 -0
- package/dist/error/NativeAuthErrorCodes.d.ts.map +1 -1
- package/dist/error/NativeAuthErrorCodes.mjs +3 -2
- package/dist/error/NativeAuthErrorCodes.mjs.map +1 -1
- package/dist/error/NestedAppAuthError.mjs +1 -1
- package/dist/event/EventHandler.mjs +1 -1
- package/dist/event/EventMessage.mjs +1 -1
- package/dist/event/EventType.mjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/interaction_client/BaseInteractionClient.mjs +1 -1
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
- package/dist/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/PlatformAuthInteractionClient.mjs +2 -1
- package/dist/interaction_client/PlatformAuthInteractionClient.mjs.map +1 -1
- package/dist/interaction_client/PopupClient.mjs +1 -1
- package/dist/interaction_client/RedirectClient.mjs +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.mjs +1 -1
- package/dist/interaction_client/SilentCacheClient.mjs +1 -1
- package/dist/interaction_client/SilentIframeClient.mjs +1 -1
- package/dist/interaction_client/SilentRefreshClient.mjs +1 -1
- package/dist/interaction_client/StandardInteractionClient.mjs +1 -1
- package/dist/interaction_handler/InteractionHandler.mjs +1 -1
- package/dist/interaction_handler/SilentHandler.mjs +1 -1
- package/dist/naa/BridgeError.mjs +1 -1
- package/dist/naa/BridgeProxy.mjs +1 -1
- package/dist/naa/BridgeStatusCode.mjs +1 -1
- package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
- package/dist/navigation/NavigationClient.mjs +1 -1
- package/dist/network/FetchClient.mjs +1 -1
- package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
- package/dist/operatingcontext/NestedAppOperatingContext.mjs +1 -1
- package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
- package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.mjs +2 -2
- package/dist/protocol/Authorize.mjs +1 -1
- package/dist/request/RequestHelpers.mjs +1 -1
- package/dist/response/ResponseHandler.mjs +1 -1
- package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/BrowserPerformanceClient.mjs +3 -3
- package/dist/telemetry/BrowserPerformanceClient.mjs.map +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
- package/dist/utils/BrowserConstants.mjs +1 -1
- package/dist/utils/BrowserProtocolUtils.mjs +1 -1
- package/dist/utils/BrowserUtils.mjs +1 -1
- package/dist/utils/Helpers.mjs +1 -1
- package/dist/utils/MsalFrameStatsUtils.mjs +1 -1
- package/lib/custom-auth-path/msal-custom-auth.cjs +234 -215
- package/lib/custom-auth-path/msal-custom-auth.cjs.map +1 -1
- package/lib/custom-auth-path/types/controllers/NestedAppAuthController.d.ts.map +1 -1
- package/lib/custom-auth-path/types/controllers/StandardController.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/CustomAuthConstants.d.ts +2 -1
- package/lib/custom-auth-path/types/custom_auth/CustomAuthConstants.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts +2 -1
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts +5 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +22 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts +36 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts +30 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts +7 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts +7 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts +59 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts +19 -0
- package/lib/custom-auth-path/types/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/JitClient.d.ts +2 -8
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/JitClient.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts +0 -1
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts +2 -11
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/MfaClient.d.ts +21 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/MfaClient.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts +14 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts +23 -0
- package/lib/custom-auth-path/types/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts.map +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts +7 -2
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts +5 -0
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts +5 -1
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
- package/lib/custom-auth-path/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/core/telemetry/PublicApiId.d.ts +4 -3
- package/lib/custom-auth-path/types/custom_auth/core/telemetry/PublicApiId.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/sign_in/interaction_client/SignInClient.d.ts +8 -6
- package/lib/custom-auth-path/types/custom_auth/sign_in/interaction_client/SignInClient.d.ts.map +1 -1
- package/lib/custom-auth-path/types/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts +6 -0
- package/lib/custom-auth-path/types/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts.map +1 -1
- package/lib/custom-auth-path/types/error/NativeAuthError.d.ts.map +1 -1
- package/lib/custom-auth-path/types/error/NativeAuthErrorCodes.d.ts +1 -0
- package/lib/custom-auth-path/types/error/NativeAuthErrorCodes.d.ts.map +1 -1
- package/lib/custom-auth-path/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/lib/custom-auth-path/types/packageMetadata.d.ts +1 -1
- package/lib/custom-auth-path/types/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/lib/msal-browser.cjs +137 -136
- package/lib/msal-browser.cjs.map +1 -1
- package/lib/msal-browser.js +137 -136
- package/lib/msal-browser.js.map +1 -1
- package/lib/msal-browser.min.js +60 -60
- package/lib/types/controllers/NestedAppAuthController.d.ts.map +1 -1
- package/lib/types/controllers/StandardController.d.ts.map +1 -1
- package/lib/types/custom_auth/CustomAuthConstants.d.ts +2 -1
- package/lib/types/custom_auth/CustomAuthConstants.d.ts.map +1 -1
- package/lib/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts +2 -1
- package/lib/types/custom_auth/core/auth_flow/AuthFlowErrorBase.d.ts.map +1 -1
- package/lib/types/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts +5 -0
- package/lib/types/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.d.ts.map +1 -1
- package/lib/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts +22 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/error_type/MfaError.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts +36 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts +30 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts +7 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts +7 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaFailedState.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts +59 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaState.d.ts.map +1 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts +19 -0
- package/lib/types/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.d.ts.map +1 -0
- package/lib/types/custom_auth/core/interaction_client/jit/JitClient.d.ts +2 -8
- package/lib/types/custom_auth/core/interaction_client/jit/JitClient.d.ts.map +1 -1
- package/lib/types/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts +0 -1
- package/lib/types/custom_auth/core/interaction_client/jit/parameter/JitParams.d.ts.map +1 -1
- package/lib/types/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts +2 -11
- package/lib/types/custom_auth/core/interaction_client/jit/result/JitActionResult.d.ts.map +1 -1
- package/lib/types/custom_auth/core/interaction_client/mfa/MfaClient.d.ts +21 -0
- package/lib/types/custom_auth/core/interaction_client/mfa/MfaClient.d.ts.map +1 -0
- package/lib/types/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts +14 -0
- package/lib/types/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.d.ts.map +1 -0
- package/lib/types/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts +23 -0
- package/lib/types/custom_auth/core/interaction_client/mfa/result/MfaActionResult.d.ts.map +1 -0
- package/lib/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts +1 -0
- package/lib/types/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.d.ts.map +1 -1
- package/lib/types/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts +7 -2
- package/lib/types/custom_auth/core/network_client/custom_auth_api/SignInApiClient.d.ts.map +1 -1
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts +5 -0
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.d.ts.map +1 -1
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts +5 -1
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.d.ts.map +1 -1
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts +1 -0
- package/lib/types/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.d.ts.map +1 -1
- package/lib/types/custom_auth/core/telemetry/PublicApiId.d.ts +4 -3
- package/lib/types/custom_auth/core/telemetry/PublicApiId.d.ts.map +1 -1
- package/lib/types/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.d.ts.map +1 -1
- package/lib/types/custom_auth/sign_in/interaction_client/SignInClient.d.ts +8 -6
- package/lib/types/custom_auth/sign_in/interaction_client/SignInClient.d.ts.map +1 -1
- package/lib/types/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts +6 -0
- package/lib/types/custom_auth/sign_in/interaction_client/result/SignInActionResult.d.ts.map +1 -1
- package/lib/types/error/NativeAuthError.d.ts.map +1 -1
- package/lib/types/error/NativeAuthErrorCodes.d.ts +1 -0
- package/lib/types/error/NativeAuthErrorCodes.d.ts.map +1 -1
- package/lib/types/interaction_client/PlatformAuthInteractionClient.d.ts.map +1 -1
- package/lib/types/packageMetadata.d.ts +1 -1
- package/lib/types/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/controllers/NestedAppAuthController.ts +40 -23
- package/src/controllers/StandardController.ts +98 -79
- package/src/custom_auth/CustomAuthConstants.ts +1 -0
- package/src/custom_auth/core/auth_flow/AuthFlowErrorBase.ts +15 -2
- package/src/custom_auth/core/auth_flow/jit/error_type/AuthMethodRegistrationError.ts +9 -1
- package/src/custom_auth/core/auth_flow/mfa/error_type/MfaError.ts +32 -0
- package/src/custom_auth/core/auth_flow/mfa/result/MfaRequestChallengeResult.ts +59 -0
- package/src/custom_auth/core/auth_flow/mfa/result/MfaSubmitChallengeResult.ts +52 -0
- package/src/custom_auth/core/auth_flow/mfa/state/MfaCompletedState.ts +11 -0
- package/src/custom_auth/core/auth_flow/mfa/state/MfaFailedState.ts +11 -0
- package/src/custom_auth/core/auth_flow/mfa/state/MfaState.ts +188 -0
- package/src/custom_auth/core/auth_flow/mfa/state/MfaStateParameters.ts +28 -0
- package/src/custom_auth/core/interaction_client/CustomAuthInteractionClientBase.ts +1 -1
- package/src/custom_auth/core/interaction_client/jit/JitClient.ts +1 -42
- package/src/custom_auth/core/interaction_client/jit/parameter/JitParams.ts +0 -2
- package/src/custom_auth/core/interaction_client/jit/result/JitActionResult.ts +2 -22
- package/src/custom_auth/core/interaction_client/mfa/MfaClient.ts +148 -0
- package/src/custom_auth/core/interaction_client/mfa/parameter/MfaClientParameters.ts +20 -0
- package/src/custom_auth/core/interaction_client/mfa/result/MfaActionResult.ts +48 -0
- package/src/custom_auth/core/network_client/custom_auth_api/CustomAuthApiEndpoint.ts +1 -0
- package/src/custom_auth/core/network_client/custom_auth_api/SignInApiClient.ts +27 -1
- package/src/custom_auth/core/network_client/custom_auth_api/types/ApiRequestTypes.ts +6 -0
- package/src/custom_auth/core/network_client/custom_auth_api/types/ApiResponseTypes.ts +6 -1
- package/src/custom_auth/core/network_client/custom_auth_api/types/ApiSuberrors.ts +1 -0
- package/src/custom_auth/core/telemetry/PublicApiId.ts +6 -3
- package/src/custom_auth/sign_in/auth_flow/state/SignInCodeRequiredState.ts +22 -12
- package/src/custom_auth/sign_in/interaction_client/SignInClient.ts +123 -41
- package/src/custom_auth/sign_in/interaction_client/result/SignInActionResult.ts +15 -0
- package/src/error/NativeAuthError.ts +1 -0
- package/src/error/NativeAuthErrorCodes.ts +1 -0
- package/src/interaction_client/PlatformAuthInteractionClient.ts +1 -0
- package/src/packageMetadata.ts +1 -1
- package/src/telemetry/BrowserPerformanceClient.ts +5 -2
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import {
|
|
7
|
+
MfaAwaitingStateParameters,
|
|
8
|
+
MfaStateParameters,
|
|
9
|
+
MfaVerificationRequiredStateParameters,
|
|
10
|
+
} from "./MfaStateParameters.js";
|
|
11
|
+
import { MfaSubmitChallengeResult } from "../result/MfaSubmitChallengeResult.js";
|
|
12
|
+
import { MfaRequestChallengeResult } from "../result/MfaRequestChallengeResult.js";
|
|
13
|
+
import {
|
|
14
|
+
MfaSubmitChallengeParams,
|
|
15
|
+
MfaRequestChallengeParams,
|
|
16
|
+
} from "../../../interaction_client/mfa/parameter/MfaClientParameters.js";
|
|
17
|
+
import { CustomAuthAccountData } from "../../../../get_account/auth_flow/CustomAuthAccountData.js";
|
|
18
|
+
import { MfaCompletedState } from "./MfaCompletedState.js";
|
|
19
|
+
import { ensureArgumentIsNotEmptyString } from "../../../utils/ArgumentValidator.js";
|
|
20
|
+
import { AuthenticationMethod } from "../../../network_client/custom_auth_api/types/ApiResponseTypes.js";
|
|
21
|
+
import { AuthFlowActionRequiredStateBase } from "../../AuthFlowState.js";
|
|
22
|
+
|
|
23
|
+
abstract class MfaState<
|
|
24
|
+
TParameters extends MfaStateParameters
|
|
25
|
+
> extends AuthFlowActionRequiredStateBase<TParameters> {
|
|
26
|
+
/**
|
|
27
|
+
* Requests an MFA challenge for a specific authentication method.
|
|
28
|
+
* @param authMethodId The authentication method ID to use for the challenge.
|
|
29
|
+
* @returns Promise that resolves to MfaRequestChallengeResult.
|
|
30
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
31
|
+
*/
|
|
32
|
+
async requestChallenge(
|
|
33
|
+
authMethodId: string
|
|
34
|
+
): Promise<MfaRequestChallengeResult> {
|
|
35
|
+
try {
|
|
36
|
+
ensureArgumentIsNotEmptyString("authMethodId", authMethodId);
|
|
37
|
+
|
|
38
|
+
this.stateParameters.logger.verbose(
|
|
39
|
+
`Requesting MFA challenge with authentication method - '${authMethodId}'.`,
|
|
40
|
+
this.stateParameters.correlationId
|
|
41
|
+
);
|
|
42
|
+
|
|
43
|
+
const requestParams: MfaRequestChallengeParams = {
|
|
44
|
+
correlationId: this.stateParameters.correlationId,
|
|
45
|
+
continuationToken: this.stateParameters.continuationToken ?? "",
|
|
46
|
+
challengeType:
|
|
47
|
+
this.stateParameters.config.customAuth.challengeTypes ?? [],
|
|
48
|
+
authMethodId: authMethodId,
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const result =
|
|
52
|
+
await this.stateParameters.mfaClient.requestChallenge(
|
|
53
|
+
requestParams
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
this.stateParameters.logger.verbose(
|
|
57
|
+
"MFA challenge requested successfully.",
|
|
58
|
+
this.stateParameters.correlationId
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
return new MfaRequestChallengeResult(
|
|
62
|
+
new MfaVerificationRequiredState({
|
|
63
|
+
correlationId: result.correlationId,
|
|
64
|
+
continuationToken: result.continuationToken,
|
|
65
|
+
config: this.stateParameters.config,
|
|
66
|
+
logger: this.stateParameters.logger,
|
|
67
|
+
mfaClient: this.stateParameters.mfaClient,
|
|
68
|
+
cacheClient: this.stateParameters.cacheClient,
|
|
69
|
+
challengeChannel: result.challengeChannel,
|
|
70
|
+
challengeTargetLabel: result.challengeTargetLabel,
|
|
71
|
+
codeLength: result.codeLength,
|
|
72
|
+
selectedAuthMethodId: authMethodId,
|
|
73
|
+
scopes: this.stateParameters.scopes ?? [],
|
|
74
|
+
})
|
|
75
|
+
);
|
|
76
|
+
} catch (error) {
|
|
77
|
+
this.stateParameters.logger.errorPii(
|
|
78
|
+
`Failed to request MFA challenge. Error: ${error}.`,
|
|
79
|
+
this.stateParameters.correlationId
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
return MfaRequestChallengeResult.createWithError(error);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* State indicating that MFA is required and awaiting user action.
|
|
89
|
+
* This state allows the developer to pause execution before sending the code to the user's email.
|
|
90
|
+
*/
|
|
91
|
+
export class MfaAwaitingState extends MfaState<MfaAwaitingStateParameters> {
|
|
92
|
+
/**
|
|
93
|
+
* Gets the available authentication methods for MFA.
|
|
94
|
+
* @returns Array of available authentication methods.
|
|
95
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
96
|
+
*/
|
|
97
|
+
getAuthMethods(): AuthenticationMethod[] {
|
|
98
|
+
return this.stateParameters.authMethods;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* State indicating that MFA verification is required.
|
|
104
|
+
* The challenge has been sent and the user needs to provide the code.
|
|
105
|
+
*/
|
|
106
|
+
export class MfaVerificationRequiredState extends MfaState<MfaVerificationRequiredStateParameters> {
|
|
107
|
+
/**
|
|
108
|
+
* Gets the length of the code that the user needs to provide.
|
|
109
|
+
* @returns The expected code length.
|
|
110
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
111
|
+
*/
|
|
112
|
+
getCodeLength(): number {
|
|
113
|
+
return this.stateParameters.codeLength;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Gets the channel through which the challenge was sent.
|
|
118
|
+
* @returns The challenge channel (e.g., "email").
|
|
119
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
120
|
+
*/
|
|
121
|
+
getChannel(): string {
|
|
122
|
+
return this.stateParameters.challengeChannel;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Gets the target label indicating where the challenge was sent.
|
|
127
|
+
* @returns The challenge target label (e.g., masked email address).
|
|
128
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
129
|
+
*/
|
|
130
|
+
getSentTo(): string {
|
|
131
|
+
return this.stateParameters.challengeTargetLabel;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Submits the MFA challenge (e.g., OTP code) to complete the authentication.
|
|
136
|
+
* @param challenge The challenge code (e.g., OTP code) entered by the user.
|
|
137
|
+
* @returns Promise that resolves to MfaSubmitChallengeResult.
|
|
138
|
+
* @warning This API is experimental. It may be changed in the future without notice. Do not use in production applications.
|
|
139
|
+
*/
|
|
140
|
+
async submitChallenge(
|
|
141
|
+
challenge: string
|
|
142
|
+
): Promise<MfaSubmitChallengeResult> {
|
|
143
|
+
try {
|
|
144
|
+
this.ensureCodeIsValid(challenge, this.getCodeLength());
|
|
145
|
+
|
|
146
|
+
this.stateParameters.logger.verbose(
|
|
147
|
+
"Submitting MFA challenge.",
|
|
148
|
+
this.stateParameters.correlationId
|
|
149
|
+
);
|
|
150
|
+
|
|
151
|
+
const submitParams: MfaSubmitChallengeParams = {
|
|
152
|
+
correlationId: this.stateParameters.correlationId,
|
|
153
|
+
continuationToken: this.stateParameters.continuationToken ?? "",
|
|
154
|
+
scopes: this.stateParameters.scopes ?? [],
|
|
155
|
+
challenge: challenge,
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
const result = await this.stateParameters.mfaClient.submitChallenge(
|
|
159
|
+
submitParams
|
|
160
|
+
);
|
|
161
|
+
|
|
162
|
+
this.stateParameters.logger.verbose(
|
|
163
|
+
"MFA challenge submitted successfully.",
|
|
164
|
+
this.stateParameters.correlationId
|
|
165
|
+
);
|
|
166
|
+
|
|
167
|
+
const accountInfo = new CustomAuthAccountData(
|
|
168
|
+
result.authenticationResult.account,
|
|
169
|
+
this.stateParameters.config,
|
|
170
|
+
this.stateParameters.cacheClient,
|
|
171
|
+
this.stateParameters.logger,
|
|
172
|
+
this.stateParameters.correlationId
|
|
173
|
+
);
|
|
174
|
+
|
|
175
|
+
return new MfaSubmitChallengeResult(
|
|
176
|
+
new MfaCompletedState(),
|
|
177
|
+
accountInfo
|
|
178
|
+
);
|
|
179
|
+
} catch (error) {
|
|
180
|
+
this.stateParameters.logger.errorPii(
|
|
181
|
+
`Failed to submit MFA challenge. Error: ${error}.`,
|
|
182
|
+
this.stateParameters.correlationId
|
|
183
|
+
);
|
|
184
|
+
|
|
185
|
+
return MfaSubmitChallengeResult.createWithError(error);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { AuthFlowActionRequiredStateParameters } from "../../AuthFlowState.js";
|
|
7
|
+
import { MfaClient } from "../../../interaction_client/mfa/MfaClient.js";
|
|
8
|
+
import { AuthenticationMethod } from "../../../network_client/custom_auth_api/types/ApiResponseTypes.js";
|
|
9
|
+
import { CustomAuthSilentCacheClient } from "../../../../get_account/interaction_client/CustomAuthSilentCacheClient.js";
|
|
10
|
+
|
|
11
|
+
export interface MfaStateParameters
|
|
12
|
+
extends AuthFlowActionRequiredStateParameters {
|
|
13
|
+
mfaClient: MfaClient;
|
|
14
|
+
cacheClient: CustomAuthSilentCacheClient;
|
|
15
|
+
scopes?: string[];
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface MfaVerificationRequiredStateParameters
|
|
19
|
+
extends MfaStateParameters {
|
|
20
|
+
challengeChannel: string;
|
|
21
|
+
challengeTargetLabel: string;
|
|
22
|
+
codeLength: number;
|
|
23
|
+
selectedAuthMethodId?: string;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface MfaAwaitingStateParameters extends MfaStateParameters {
|
|
27
|
+
authMethods: AuthenticationMethod[];
|
|
28
|
+
}
|
|
@@ -103,7 +103,7 @@ export abstract class CustomAuthInteractionClientBase extends StandardInteractio
|
|
|
103
103
|
|
|
104
104
|
const requestTimestamp = Math.round(new Date().getTime() / 1000.0);
|
|
105
105
|
|
|
106
|
-
// Save tokens and create authentication result
|
|
106
|
+
// Save tokens and create authentication result
|
|
107
107
|
const result =
|
|
108
108
|
await this.tokenResponseHandler.handleServerTokenResponse(
|
|
109
109
|
tokenResponse,
|
|
@@ -5,15 +5,12 @@
|
|
|
5
5
|
|
|
6
6
|
import { CustomAuthInteractionClientBase } from "../CustomAuthInteractionClientBase.js";
|
|
7
7
|
import {
|
|
8
|
-
JitGetAuthMethodsParams,
|
|
9
8
|
JitChallengeAuthMethodParams,
|
|
10
9
|
JitSubmitChallengeParams,
|
|
11
10
|
} from "./parameter/JitParams.js";
|
|
12
11
|
import {
|
|
13
|
-
JitGetAuthMethodsResult,
|
|
14
12
|
JitVerificationRequiredResult,
|
|
15
13
|
JitCompletedResult,
|
|
16
|
-
createJitGetAuthMethodsResult,
|
|
17
14
|
createJitVerificationRequiredResult,
|
|
18
15
|
createJitCompletedResult,
|
|
19
16
|
} from "./result/JitActionResult.js";
|
|
@@ -24,7 +21,6 @@ import {
|
|
|
24
21
|
} from "../../../CustomAuthConstants.js";
|
|
25
22
|
import * as PublicApiId from "../../telemetry/PublicApiId.js";
|
|
26
23
|
import {
|
|
27
|
-
RegisterIntrospectRequest,
|
|
28
24
|
RegisterChallengeRequest,
|
|
29
25
|
RegisterContinueRequest,
|
|
30
26
|
SignInContinuationTokenRequest,
|
|
@@ -34,43 +30,6 @@ import {
|
|
|
34
30
|
* JIT client for handling just-in-time authentication method registration flows.
|
|
35
31
|
*/
|
|
36
32
|
export class JitClient extends CustomAuthInteractionClientBase {
|
|
37
|
-
/**
|
|
38
|
-
* Gets available authentication methods for JIT registration.
|
|
39
|
-
* @param parameters The parameters for getting auth methods.
|
|
40
|
-
* @returns Promise that resolves to JitGetAuthMethodsResult.
|
|
41
|
-
*/
|
|
42
|
-
async getAuthMethods(
|
|
43
|
-
parameters: JitGetAuthMethodsParams
|
|
44
|
-
): Promise<JitGetAuthMethodsResult> {
|
|
45
|
-
const apiId = PublicApiId.JIT_GET_AUTH_METHODS;
|
|
46
|
-
const telemetryManager = this.initializeServerTelemetryManager(apiId);
|
|
47
|
-
|
|
48
|
-
this.logger.verbose(
|
|
49
|
-
"Calling introspect endpoint for getting auth methods.",
|
|
50
|
-
parameters.correlationId
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
const request: RegisterIntrospectRequest = {
|
|
54
|
-
continuation_token: parameters.continuationToken,
|
|
55
|
-
correlationId: parameters.correlationId,
|
|
56
|
-
telemetryManager: telemetryManager,
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
const introspectResponse =
|
|
60
|
-
await this.customAuthApiClient.registerApi.introspect(request);
|
|
61
|
-
|
|
62
|
-
this.logger.verbose(
|
|
63
|
-
"Introspect endpoint called for getting auth methods.",
|
|
64
|
-
parameters.correlationId
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
return createJitGetAuthMethodsResult({
|
|
68
|
-
correlationId: introspectResponse.correlation_id,
|
|
69
|
-
continuationToken: introspectResponse.continuation_token,
|
|
70
|
-
authMethods: introspectResponse.methods,
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
|
|
74
33
|
/**
|
|
75
34
|
* Challenges an authentication method for JIT registration.
|
|
76
35
|
* @param parameters The parameters for challenging the auth method.
|
|
@@ -195,7 +154,7 @@ export class JitClient extends CustomAuthInteractionClientBase {
|
|
|
195
154
|
const authResult = await this.handleTokenResponse(
|
|
196
155
|
tokenResponse,
|
|
197
156
|
scopes,
|
|
198
|
-
continueResponse.correlation_id
|
|
157
|
+
tokenResponse.correlation_id || continueResponse.correlation_id
|
|
199
158
|
);
|
|
200
159
|
|
|
201
160
|
return createJitCompletedResult({
|
|
@@ -10,8 +10,6 @@ export interface JitClientParametersBase {
|
|
|
10
10
|
continuationToken: string;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
export type JitGetAuthMethodsParams = JitClientParametersBase;
|
|
14
|
-
|
|
15
13
|
export interface JitChallengeAuthMethodParams extends JitClientParametersBase {
|
|
16
14
|
authMethod: AuthenticationMethod;
|
|
17
15
|
verificationContact: string;
|
|
@@ -4,25 +4,15 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { AuthenticationResult } from "../../../../../response/AuthenticationResult.js";
|
|
7
|
-
import { AuthenticationMethod } from "../../../network_client/custom_auth_api/types/ApiResponseTypes.js";
|
|
8
7
|
|
|
9
8
|
interface JitActionResult {
|
|
10
9
|
type: string;
|
|
11
10
|
correlationId: string;
|
|
12
11
|
}
|
|
13
12
|
|
|
14
|
-
interface
|
|
15
|
-
continuationToken: string;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface JitGetAuthMethodsResult extends JitContinuationTokenResult {
|
|
19
|
-
type: typeof JIT_GET_AUTH_METHODS_RESULT_TYPE;
|
|
20
|
-
authMethods: AuthenticationMethod[];
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface JitVerificationRequiredResult
|
|
24
|
-
extends JitContinuationTokenResult {
|
|
13
|
+
export interface JitVerificationRequiredResult extends JitActionResult {
|
|
25
14
|
type: typeof JIT_VERIFICATION_REQUIRED_RESULT_TYPE;
|
|
15
|
+
continuationToken: string;
|
|
26
16
|
challengeChannel: string;
|
|
27
17
|
challengeTargetLabel: string;
|
|
28
18
|
codeLength: number;
|
|
@@ -34,20 +24,10 @@ export interface JitCompletedResult extends JitActionResult {
|
|
|
34
24
|
}
|
|
35
25
|
|
|
36
26
|
// Result type constants
|
|
37
|
-
export const JIT_GET_AUTH_METHODS_RESULT_TYPE = "JitGetAuthMethodsResult";
|
|
38
27
|
export const JIT_VERIFICATION_REQUIRED_RESULT_TYPE =
|
|
39
28
|
"JitVerificationRequiredResult";
|
|
40
29
|
export const JIT_COMPLETED_RESULT_TYPE = "JitCompletedResult";
|
|
41
30
|
|
|
42
|
-
export function createJitGetAuthMethodsResult(
|
|
43
|
-
input: Omit<JitGetAuthMethodsResult, "type">
|
|
44
|
-
): JitGetAuthMethodsResult {
|
|
45
|
-
return {
|
|
46
|
-
type: JIT_GET_AUTH_METHODS_RESULT_TYPE,
|
|
47
|
-
...input,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
|
|
51
31
|
export function createJitVerificationRequiredResult(
|
|
52
32
|
input: Omit<JitVerificationRequiredResult, "type">
|
|
53
33
|
): JitVerificationRequiredResult {
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { CustomAuthInteractionClientBase } from "../CustomAuthInteractionClientBase.js";
|
|
7
|
+
import {
|
|
8
|
+
MfaRequestChallengeParams,
|
|
9
|
+
MfaSubmitChallengeParams,
|
|
10
|
+
} from "./parameter/MfaClientParameters.js";
|
|
11
|
+
import {
|
|
12
|
+
MfaVerificationRequiredResult,
|
|
13
|
+
MfaCompletedResult,
|
|
14
|
+
createMfaVerificationRequiredResult,
|
|
15
|
+
createMfaCompletedResult,
|
|
16
|
+
} from "./result/MfaActionResult.js";
|
|
17
|
+
import {
|
|
18
|
+
DefaultCustomAuthApiCodeLength,
|
|
19
|
+
ChallengeType,
|
|
20
|
+
GrantType,
|
|
21
|
+
} from "../../../CustomAuthConstants.js";
|
|
22
|
+
import * as PublicApiId from "../../telemetry/PublicApiId.js";
|
|
23
|
+
import {
|
|
24
|
+
SignInChallengeRequest,
|
|
25
|
+
SignInOobTokenRequest,
|
|
26
|
+
} from "../../network_client/custom_auth_api/types/ApiRequestTypes.js";
|
|
27
|
+
import { ensureArgumentIsNotEmptyString } from "../../utils/ArgumentValidator.js";
|
|
28
|
+
import { CustomAuthApiError } from "../../error/CustomAuthApiError.js";
|
|
29
|
+
import * as CustomAuthApiErrorCode from "../../network_client/custom_auth_api/types/ApiErrorCodes.js";
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* MFA client for handling multi-factor authentication flows.
|
|
33
|
+
*/
|
|
34
|
+
export class MfaClient extends CustomAuthInteractionClientBase {
|
|
35
|
+
/**
|
|
36
|
+
* Requests an MFA challenge to be sent to the user.
|
|
37
|
+
* @param parameters The parameters for requesting the challenge.
|
|
38
|
+
* @returns Promise that resolves to either MfaVerificationRequiredResult.
|
|
39
|
+
*/
|
|
40
|
+
async requestChallenge(
|
|
41
|
+
parameters: MfaRequestChallengeParams
|
|
42
|
+
): Promise<MfaVerificationRequiredResult> {
|
|
43
|
+
const apiId = PublicApiId.MFA_REQUEST_CHALLENGE;
|
|
44
|
+
const telemetryManager = this.initializeServerTelemetryManager(apiId);
|
|
45
|
+
|
|
46
|
+
this.logger.verbose(
|
|
47
|
+
"Calling challenge endpoint for MFA.",
|
|
48
|
+
parameters.correlationId
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
const challengeReq: SignInChallengeRequest = {
|
|
52
|
+
challenge_type: this.getChallengeTypes(parameters.challengeType),
|
|
53
|
+
continuation_token: parameters.continuationToken,
|
|
54
|
+
id: parameters.authMethodId,
|
|
55
|
+
correlationId: parameters.correlationId,
|
|
56
|
+
telemetryManager: telemetryManager,
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
const challengeResponse =
|
|
60
|
+
await this.customAuthApiClient.signInApi.requestChallenge(
|
|
61
|
+
challengeReq
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
this.logger.verbose(
|
|
65
|
+
"Challenge endpoint called for MFA.",
|
|
66
|
+
parameters.correlationId
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
if (challengeResponse.challenge_type === ChallengeType.OOB) {
|
|
70
|
+
// Verification required - code will be sent
|
|
71
|
+
return createMfaVerificationRequiredResult({
|
|
72
|
+
correlationId: challengeResponse.correlation_id,
|
|
73
|
+
continuationToken: challengeResponse.continuation_token ?? "",
|
|
74
|
+
challengeChannel: challengeResponse.challenge_channel ?? "",
|
|
75
|
+
challengeTargetLabel:
|
|
76
|
+
challengeResponse.challenge_target_label ?? "",
|
|
77
|
+
codeLength:
|
|
78
|
+
challengeResponse.code_length ??
|
|
79
|
+
DefaultCustomAuthApiCodeLength,
|
|
80
|
+
bindingMethod: challengeResponse.binding_method ?? "",
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
this.logger.error(
|
|
85
|
+
`Unsupported challenge type '${challengeResponse.challenge_type}' for MFA.`,
|
|
86
|
+
parameters.correlationId
|
|
87
|
+
);
|
|
88
|
+
|
|
89
|
+
throw new CustomAuthApiError(
|
|
90
|
+
CustomAuthApiErrorCode.UNSUPPORTED_CHALLENGE_TYPE,
|
|
91
|
+
`Unsupported challenge type '${challengeResponse.challenge_type}'.`,
|
|
92
|
+
challengeResponse.correlation_id
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Submits the MFA challenge response (e.g., OTP code).
|
|
98
|
+
* @param parameters The parameters for submitting the challenge.
|
|
99
|
+
* @returns Promise that resolves to MfaCompletedResult.
|
|
100
|
+
*/
|
|
101
|
+
async submitChallenge(
|
|
102
|
+
parameters: MfaSubmitChallengeParams
|
|
103
|
+
): Promise<MfaCompletedResult> {
|
|
104
|
+
ensureArgumentIsNotEmptyString(
|
|
105
|
+
"parameters.challenge",
|
|
106
|
+
parameters.challenge,
|
|
107
|
+
parameters.correlationId
|
|
108
|
+
);
|
|
109
|
+
|
|
110
|
+
const apiId = PublicApiId.MFA_SUBMIT_CHALLENGE;
|
|
111
|
+
const telemetryManager = this.initializeServerTelemetryManager(apiId);
|
|
112
|
+
const scopes = this.getScopes(parameters.scopes);
|
|
113
|
+
|
|
114
|
+
const request: SignInOobTokenRequest = {
|
|
115
|
+
continuation_token: parameters.continuationToken,
|
|
116
|
+
oob: parameters.challenge,
|
|
117
|
+
grant_type: GrantType.MFA_OOB,
|
|
118
|
+
scope: scopes.join(" "),
|
|
119
|
+
correlationId: parameters.correlationId,
|
|
120
|
+
telemetryManager: telemetryManager,
|
|
121
|
+
...(parameters.claims && {
|
|
122
|
+
claims: parameters.claims,
|
|
123
|
+
}),
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
this.logger.verbose(
|
|
127
|
+
"Calling token endpoint for MFA challenge submission.",
|
|
128
|
+
parameters.correlationId
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
const tokenResponse =
|
|
132
|
+
await this.customAuthApiClient.signInApi.requestTokensWithOob(
|
|
133
|
+
request
|
|
134
|
+
);
|
|
135
|
+
|
|
136
|
+
// Save tokens and create authentication result
|
|
137
|
+
const result = await this.handleTokenResponse(
|
|
138
|
+
tokenResponse,
|
|
139
|
+
scopes,
|
|
140
|
+
tokenResponse.correlation_id ?? parameters.correlationId
|
|
141
|
+
);
|
|
142
|
+
|
|
143
|
+
return createMfaCompletedResult({
|
|
144
|
+
correlationId: parameters.correlationId,
|
|
145
|
+
authenticationResult: result,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export interface MfaClientParametersBase {
|
|
7
|
+
correlationId: string;
|
|
8
|
+
continuationToken: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface MfaRequestChallengeParams extends MfaClientParametersBase {
|
|
12
|
+
challengeType: string[];
|
|
13
|
+
authMethodId: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface MfaSubmitChallengeParams extends MfaClientParametersBase {
|
|
17
|
+
challenge: string;
|
|
18
|
+
scopes: string[];
|
|
19
|
+
claims?: string;
|
|
20
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { AuthenticationResult } from "../../../../../response/AuthenticationResult.js";
|
|
7
|
+
|
|
8
|
+
interface MfaActionResult {
|
|
9
|
+
type: string;
|
|
10
|
+
correlationId: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface MfaVerificationRequiredResult extends MfaActionResult {
|
|
14
|
+
type: typeof MFA_VERIFICATION_REQUIRED_RESULT_TYPE;
|
|
15
|
+
continuationToken: string;
|
|
16
|
+
challengeChannel: string;
|
|
17
|
+
challengeTargetLabel: string;
|
|
18
|
+
codeLength: number;
|
|
19
|
+
bindingMethod: string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface MfaCompletedResult extends MfaActionResult {
|
|
23
|
+
type: typeof MFA_COMPLETED_RESULT_TYPE;
|
|
24
|
+
authenticationResult: AuthenticationResult;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Result type constants
|
|
28
|
+
export const MFA_VERIFICATION_REQUIRED_RESULT_TYPE =
|
|
29
|
+
"MfaVerificationRequiredResult";
|
|
30
|
+
export const MFA_COMPLETED_RESULT_TYPE = "MfaCompletedResult";
|
|
31
|
+
|
|
32
|
+
export function createMfaVerificationRequiredResult(
|
|
33
|
+
input: Omit<MfaVerificationRequiredResult, "type">
|
|
34
|
+
): MfaVerificationRequiredResult {
|
|
35
|
+
return {
|
|
36
|
+
type: MFA_VERIFICATION_REQUIRED_RESULT_TYPE,
|
|
37
|
+
...input,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function createMfaCompletedResult(
|
|
42
|
+
input: Omit<MfaCompletedResult, "type">
|
|
43
|
+
): MfaCompletedResult {
|
|
44
|
+
return {
|
|
45
|
+
type: MFA_COMPLETED_RESULT_TYPE,
|
|
46
|
+
...input,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
export const SIGNIN_INITIATE = "/oauth2/v2.0/initiate";
|
|
7
7
|
export const SIGNIN_CHALLENGE = "/oauth2/v2.0/challenge";
|
|
8
8
|
export const SIGNIN_TOKEN = "/oauth2/v2.0/token";
|
|
9
|
+
export const SIGNIN_INTROSPECT = "/oauth2/v2.0/introspect";
|
|
9
10
|
|
|
10
11
|
export const SIGNUP_START = "/signup/v1.0/start";
|
|
11
12
|
export const SIGNUP_CHALLENGE = "/signup/v1.0/challenge";
|
|
@@ -14,12 +14,14 @@ import {
|
|
|
14
14
|
SignInChallengeRequest,
|
|
15
15
|
SignInContinuationTokenRequest,
|
|
16
16
|
SignInInitiateRequest,
|
|
17
|
+
SignInIntrospectRequest,
|
|
17
18
|
SignInOobTokenRequest,
|
|
18
19
|
SignInPasswordTokenRequest,
|
|
19
20
|
} from "./types/ApiRequestTypes.js";
|
|
20
21
|
import {
|
|
21
22
|
SignInChallengeResponse,
|
|
22
23
|
SignInInitiateResponse,
|
|
24
|
+
SignInIntrospectResponse,
|
|
23
25
|
SignInTokenResponse,
|
|
24
26
|
} from "./types/ApiResponseTypes.js";
|
|
25
27
|
|
|
@@ -128,7 +130,7 @@ export class SignInApiClient extends BaseApiClient {
|
|
|
128
130
|
continuation_token: params.continuation_token,
|
|
129
131
|
scope: params.scope,
|
|
130
132
|
oob: params.oob,
|
|
131
|
-
grant_type:
|
|
133
|
+
grant_type: params.grant_type,
|
|
132
134
|
...(params.claims && { claims: params.claims }),
|
|
133
135
|
},
|
|
134
136
|
params.telemetryManager,
|
|
@@ -153,6 +155,30 @@ export class SignInApiClient extends BaseApiClient {
|
|
|
153
155
|
);
|
|
154
156
|
}
|
|
155
157
|
|
|
158
|
+
/**
|
|
159
|
+
* Requests available authentication methods for MFA
|
|
160
|
+
* @param continuationToken Token from previous response
|
|
161
|
+
*/
|
|
162
|
+
async requestAuthMethods(
|
|
163
|
+
params: SignInIntrospectRequest
|
|
164
|
+
): Promise<SignInIntrospectResponse> {
|
|
165
|
+
const result = await this.request<SignInIntrospectResponse>(
|
|
166
|
+
CustomAuthApiEndpoint.SIGNIN_INTROSPECT,
|
|
167
|
+
{
|
|
168
|
+
continuation_token: params.continuation_token,
|
|
169
|
+
},
|
|
170
|
+
params.telemetryManager,
|
|
171
|
+
params.correlationId
|
|
172
|
+
);
|
|
173
|
+
|
|
174
|
+
this.ensureContinuationTokenIsValid(
|
|
175
|
+
result.continuation_token,
|
|
176
|
+
params.correlationId
|
|
177
|
+
);
|
|
178
|
+
|
|
179
|
+
return result;
|
|
180
|
+
}
|
|
181
|
+
|
|
156
182
|
private async requestTokens(
|
|
157
183
|
requestData: Record<string, string | boolean>,
|
|
158
184
|
telemetryManager: ServerTelemetryManager,
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
import { GrantType } from "../../../../CustomAuthConstants.js";
|
|
6
7
|
import { ApiRequestBase } from "./ApiTypesBase.js";
|
|
7
8
|
|
|
8
9
|
/* Sign-in API request types */
|
|
@@ -29,12 +30,17 @@ export interface SignInPasswordTokenRequest extends SignInTokenRequestBase {
|
|
|
29
30
|
|
|
30
31
|
export interface SignInOobTokenRequest extends SignInTokenRequestBase {
|
|
31
32
|
oob: string;
|
|
33
|
+
grant_type: typeof GrantType.OOB | typeof GrantType.MFA_OOB;
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
export interface SignInContinuationTokenRequest extends SignInTokenRequestBase {
|
|
35
37
|
username?: string;
|
|
36
38
|
}
|
|
37
39
|
|
|
40
|
+
export interface SignInIntrospectRequest extends ApiRequestBase {
|
|
41
|
+
continuation_token: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
38
44
|
/* Sign-up API request types */
|
|
39
45
|
export interface SignUpStartRequest extends ApiRequestBase {
|
|
40
46
|
username: string;
|
|
@@ -42,7 +42,12 @@ export interface AuthenticationMethod {
|
|
|
42
42
|
id: string;
|
|
43
43
|
challenge_type: string;
|
|
44
44
|
challenge_channel: string;
|
|
45
|
-
login_hint
|
|
45
|
+
login_hint?: string;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export interface SignInIntrospectResponse extends ApiResponseBase {
|
|
49
|
+
continuation_token: string;
|
|
50
|
+
methods: AuthenticationMethod[];
|
|
46
51
|
}
|
|
47
52
|
|
|
48
53
|
/* Sign-up API response types */
|