@azure/msal-common 12.1.0 → 13.1.0
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/_virtual/_tslib.js +1 -1
- package/dist/account/AuthToken.js +1 -1
- package/dist/account/CcsCredential.js +1 -1
- package/dist/account/ClientInfo.js +1 -1
- package/dist/authority/Authority.d.ts +13 -0
- package/dist/authority/Authority.d.ts.map +1 -1
- package/dist/authority/Authority.js +66 -31
- package/dist/authority/Authority.js.map +1 -1
- package/dist/authority/AuthorityFactory.js +1 -1
- package/dist/authority/AuthorityMetadata.js +1 -1
- package/dist/authority/AuthorityOptions.js +1 -1
- package/dist/authority/AuthorityType.js +1 -1
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.js +1 -1
- package/dist/authority/CloudInstanceDiscoveryResponse.js +1 -1
- package/dist/authority/OpenIdConfigResponse.js +1 -1
- package/dist/authority/ProtocolMode.js +1 -1
- package/dist/authority/RegionDiscovery.js +1 -1
- package/dist/cache/CacheManager.js +1 -1
- package/dist/cache/entities/AccessTokenEntity.js +1 -1
- package/dist/cache/entities/AccountEntity.js +1 -1
- package/dist/cache/entities/AppMetadataEntity.js +1 -1
- package/dist/cache/entities/AuthorityMetadataEntity.js +1 -1
- package/dist/cache/entities/CacheRecord.js +1 -1
- package/dist/cache/entities/CredentialEntity.js +1 -1
- package/dist/cache/entities/IdTokenEntity.js +1 -1
- package/dist/cache/entities/RefreshTokenEntity.js +1 -1
- package/dist/cache/entities/ServerTelemetryEntity.js +1 -1
- package/dist/cache/entities/ThrottlingEntity.js +1 -1
- package/dist/cache/persistence/TokenCacheContext.js +1 -1
- package/dist/client/AuthorizationCodeClient.js +2 -2
- package/dist/client/AuthorizationCodeClient.js.map +1 -1
- package/dist/client/BaseClient.js +1 -1
- package/dist/client/ClientCredentialClient.js +1 -1
- package/dist/client/DeviceCodeClient.js +1 -1
- package/dist/client/OnBehalfOfClient.js +1 -1
- package/dist/client/RefreshTokenClient.js +1 -1
- package/dist/client/SilentFlowClient.js +1 -1
- package/dist/client/UsernamePasswordClient.js +1 -1
- package/dist/config/ClientConfiguration.js +1 -1
- package/dist/crypto/ICrypto.js +1 -1
- package/dist/crypto/JoseHeader.js +1 -1
- package/dist/crypto/PopTokenGenerator.js +1 -1
- package/dist/error/AuthError.js +1 -1
- package/dist/error/ClientAuthError.js +1 -1
- package/dist/error/ClientConfigurationError.d.ts +8 -0
- package/dist/error/ClientConfigurationError.d.ts.map +1 -1
- package/dist/error/ClientConfigurationError.js +11 -1
- package/dist/error/ClientConfigurationError.js.map +1 -1
- package/dist/error/InteractionRequiredAuthError.js +1 -1
- package/dist/error/JoseHeaderError.js +1 -1
- package/dist/error/ServerError.js +1 -1
- package/dist/index.cjs.js +77 -32
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/logger/Logger.js +1 -1
- package/dist/network/INetworkModule.js +1 -1
- package/dist/network/NetworkManager.js +1 -1
- package/dist/network/ThrottlingUtils.js +1 -1
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.js +2 -2
- package/dist/packageMetadata.js.map +1 -1
- package/dist/request/AuthenticationHeaderParser.js +1 -1
- package/dist/request/RequestParameterBuilder.js +1 -1
- package/dist/request/RequestValidator.js +1 -1
- package/dist/request/ScopeSet.js +1 -1
- package/dist/response/ResponseHandler.js +1 -1
- package/dist/telemetry/performance/PerformanceClient.js +1 -1
- package/dist/telemetry/performance/PerformanceEvent.js +1 -1
- package/dist/telemetry/performance/StubPerformanceClient.js +1 -1
- package/dist/telemetry/server/ServerTelemetryManager.js +1 -1
- package/dist/url/UrlString.js +1 -1
- package/dist/utils/Constants.js +1 -1
- package/dist/utils/ProtocolUtils.js +1 -1
- package/dist/utils/StringUtils.js +1 -1
- package/dist/utils/TimeUtils.js +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-common
|
|
1
|
+
/*! @azure/msal-common v13.1.0 2023-06-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { __awaiter, __generator, __assign, __extends } from '../_virtual/_tslib.js';
|
|
4
4
|
import { Separators, CredentialType, AuthenticationScheme, THE_FAMILY_ID, APP_METADATA, AUTHORITY_METADATA_CONSTANTS } from '../utils/Constants.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-common
|
|
1
|
+
/*! @azure/msal-common v13.1.0 2023-06-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { CredentialType, CacheType, Separators, Constants, AuthenticationScheme } from '../../utils/Constants.js';
|
|
4
4
|
import { ClientAuthError } from '../../error/ClientAuthError.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-common
|
|
1
|
+
/*! @azure/msal-common v13.1.0 2023-06-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { __extends, __awaiter, __generator, __assign, __spreadArrays } from '../_virtual/_tslib.js';
|
|
4
4
|
import { BaseClient } from './BaseClient.js';
|
|
@@ -444,7 +444,7 @@ var AuthorizationCodeClient = /** @class */ (function (_super) {
|
|
|
444
444
|
return [4 /*yield*/, popTokenGenerator.generateCnf(request)];
|
|
445
445
|
case 1:
|
|
446
446
|
reqCnfData = _b.sent();
|
|
447
|
-
parameterBuilder.addPopToken(reqCnfData.
|
|
447
|
+
parameterBuilder.addPopToken(reqCnfData.reqCnfString);
|
|
448
448
|
_b.label = 2;
|
|
449
449
|
case 2: return [2 /*return*/, parameterBuilder.createQueryString()];
|
|
450
450
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthorizationCodeClient.js","sources":["../../src/client/AuthorizationCodeClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { BaseClient } from \"./BaseClient\";\nimport { CommonAuthorizationUrlRequest } from \"../request/CommonAuthorizationUrlRequest\";\nimport { CommonAuthorizationCodeRequest } from \"../request/CommonAuthorizationCodeRequest\";\nimport { Authority } from \"../authority/Authority\";\nimport { RequestParameterBuilder } from \"../request/RequestParameterBuilder\";\nimport { GrantType, AuthenticationScheme, PromptValue, Separators, AADServerParamKeys, HeaderNames } from \"../utils/Constants\";\nimport { ClientConfiguration } from \"../config/ClientConfiguration\";\nimport { ServerAuthorizationTokenResponse } from \"../response/ServerAuthorizationTokenResponse\";\nimport { NetworkResponse } from \"../network/NetworkManager\";\nimport { ResponseHandler } from \"../response/ResponseHandler\";\nimport { AuthenticationResult } from \"../response/AuthenticationResult\";\nimport { StringUtils } from \"../utils/StringUtils\";\nimport { ClientAuthError } from \"../error/ClientAuthError\";\nimport { UrlString } from \"../url/UrlString\";\nimport { ServerAuthorizationCodeResponse } from \"../response/ServerAuthorizationCodeResponse\";\nimport { CommonEndSessionRequest } from \"../request/CommonEndSessionRequest\";\nimport { PopTokenGenerator } from \"../crypto/PopTokenGenerator\";\nimport { RequestThumbprint } from \"../network/RequestThumbprint\";\nimport { AuthorizationCodePayload } from \"../response/AuthorizationCodePayload\";\nimport { TimeUtils } from \"../utils/TimeUtils\";\nimport { AccountInfo } from \"../account/AccountInfo\";\nimport { buildClientInfoFromHomeAccountId, buildClientInfo } from \"../account/ClientInfo\";\nimport { CcsCredentialType, CcsCredential } from \"../account/CcsCredential\";\nimport { ClientConfigurationError } from \"../error/ClientConfigurationError\";\nimport { RequestValidator } from \"../request/RequestValidator\";\nimport { IPerformanceClient } from \"../telemetry/performance/IPerformanceClient\";\nimport { PerformanceEvents } from \"../telemetry/performance/PerformanceEvent\";\n\n/**\n * Oauth2.0 Authorization Code client\n */\nexport class AuthorizationCodeClient extends BaseClient {\n // Flag to indicate if client is for hybrid spa auth code redemption\n protected includeRedirectUri: boolean = true;\n\n constructor(configuration: ClientConfiguration, performanceClient?: IPerformanceClient) {\n super(configuration, performanceClient);\n }\n\n /**\n * Creates the URL of the authorization request letting the user input credentials and consent to the\n * application. The URL target the /authorize endpoint of the authority configured in the\n * application object.\n *\n * Once the user inputs their credentials and consents, the authority will send a response to the redirect URI\n * sent in the request and should contain an authorization code, which can then be used to acquire tokens via\n * acquireToken(AuthorizationCodeRequest)\n * @param request\n */\n async getAuthCodeUrl(request: CommonAuthorizationUrlRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.GetAuthCodeUrl, request.correlationId);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientCreateQueryString, request.correlationId);\n const queryString = await this.createAuthCodeUrlQueryString(request);\n\n return UrlString.appendQueryString(this.authority.authorizationEndpoint, queryString);\n }\n\n /**\n * API to acquire a token in exchange of 'authorization_code` acquired by the user in the first leg of the\n * authorization_code_grant\n * @param request\n */\n async acquireToken(request: CommonAuthorizationCodeRequest, authCodePayload?: AuthorizationCodePayload): Promise<AuthenticationResult> {\n if (!request || !request.code) {\n throw ClientAuthError.createTokenRequestCannotBeMadeError();\n }\n\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientAcquireToken, request.correlationId);\n \n // @ts-ignore\n const atsMeasurement = this.performanceClient?.startMeasurement(\"AuthCodeClientAcquireToken\", request.correlationId);\n this.logger.info(\"in acquireToken call in auth-code client\");\n\n const reqTimestamp = TimeUtils.nowSeconds();\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientExecuteTokenRequest, request.correlationId);\n const response = await this.executeTokenRequest(this.authority, request);\n\n // Retrieve requestId from response headers\n const requestId = response.headers?.[HeaderNames.X_MS_REQUEST_ID];\n const httpVerAuthority = response.headers?.[HeaderNames.X_MS_HTTP_VERSION];\n if(httpVerAuthority)\n {\n atsMeasurement?.addStaticFields({\n httpVerAuthority\n });\n }\n const responseHandler = new ResponseHandler(\n this.config.authOptions.clientId,\n this.cacheManager,\n this.cryptoUtils,\n this.logger,\n this.config.serializableCache,\n this.config.persistencePlugin,\n this.performanceClient\n );\n\n // Validate response. This function throws a server error if an error is returned by the server.\n responseHandler.validateTokenResponse(response.body);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.HandleServerTokenResponse, request.correlationId);\n return responseHandler.handleServerTokenResponse(\n response.body,\n this.authority,\n reqTimestamp,\n request,\n authCodePayload,\n undefined,\n undefined,\n undefined,\n requestId\n ).then((result: AuthenticationResult) => {\n atsMeasurement?.endMeasurement({\n success: true\n });\n return result;\n })\n .catch((error) => {\n this.logger.verbose(\"Error in fetching token in ACC\", request.correlationId);\n atsMeasurement?.endMeasurement({\n errorCode: error.errorCode,\n subErrorCode: error.subError,\n success: false\n });\n throw error;\n });\n }\n\n /**\n * Handles the hash fragment response from public client code request. Returns a code response used by\n * the client to exchange for a token in acquireToken.\n * @param hashFragment\n */\n handleFragmentResponse(hashFragment: string, cachedState: string): AuthorizationCodePayload {\n // Handle responses.\n const responseHandler = new ResponseHandler(this.config.authOptions.clientId, this.cacheManager, this.cryptoUtils, this.logger, null, null);\n\n // Deserialize hash fragment response parameters.\n const hashUrlString = new UrlString(hashFragment);\n // Deserialize hash fragment response parameters.\n const serverParams: ServerAuthorizationCodeResponse = UrlString.getDeserializedHash(hashUrlString.getHash());\n\n // Get code response\n responseHandler.validateServerAuthorizationCodeResponse(serverParams, cachedState, this.cryptoUtils);\n\n // throw when there is no auth code in the response\n if (!serverParams.code) {\n throw ClientAuthError.createNoAuthCodeInServerResponseError();\n }\n return {\n ...serverParams,\n // Code param is optional in ServerAuthorizationCodeResponse but required in AuthorizationCodePaylod\n code: serverParams.code\n };\n }\n\n /**\n * Used to log out the current user, and redirect the user to the postLogoutRedirectUri.\n * Default behaviour is to redirect the user to `window.location.href`.\n * @param authorityUri\n */\n getLogoutUri(logoutRequest: CommonEndSessionRequest): string {\n // Throw error if logoutRequest is null/undefined\n if (!logoutRequest) {\n throw ClientConfigurationError.createEmptyLogoutRequestError();\n }\n const queryString = this.createLogoutUrlQueryString(logoutRequest);\n\n // Construct logout URI\n return UrlString.appendQueryString(this.authority.endSessionEndpoint, queryString);\n }\n\n /**\n * Executes POST request to token endpoint\n * @param authority\n * @param request\n */\n private async executeTokenRequest(authority: Authority, request: CommonAuthorizationCodeRequest): Promise<NetworkResponse<ServerAuthorizationTokenResponse>> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientExecuteTokenRequest, request.correlationId);\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientCreateTokenRequestBody, request.correlationId);\n \n const queryParametersString = this.createTokenQueryParameters(request);\n const endpoint = UrlString.appendQueryString(authority.tokenEndpoint, queryParametersString);\n \n const requestBody = await this.createTokenRequestBody(request);\n \n let ccsCredential: CcsCredential | undefined = undefined;\n if (request.clientInfo) {\n try {\n const clientInfo = buildClientInfo(request.clientInfo, this.cryptoUtils);\n ccsCredential = {\n credential: `${clientInfo.uid}${Separators.CLIENT_INFO_SEPARATOR}${clientInfo.utid}`,\n type: CcsCredentialType.HOME_ACCOUNT_ID\n };\n } catch (e) {\n this.logger.verbose(\"Could not parse client info for CCS Header: \" + e);\n }\n }\n const headers: Record<string, string> = this.createTokenRequestHeaders(ccsCredential || request.ccsCredential);\n\n const thumbprint: RequestThumbprint = {\n clientId: this.config.authOptions.clientId,\n authority: authority.canonicalAuthority,\n scopes: request.scopes,\n claims: request.claims,\n authenticationScheme: request.authenticationScheme,\n resourceRequestMethod: request.resourceRequestMethod,\n resourceRequestUri: request.resourceRequestUri,\n shrClaims: request.shrClaims,\n sshKid: request.sshKid\n };\n\n return this.executePostToTokenEndpoint(endpoint, requestBody, headers, thumbprint);\n }\n\n /**\n * Generates a map for all the params to be sent to the service\n * @param request\n */\n private async createTokenRequestBody(request: CommonAuthorizationCodeRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientCreateTokenRequestBody, request.correlationId);\n\n const parameterBuilder = new RequestParameterBuilder();\n\n parameterBuilder.addClientId(this.config.authOptions.clientId);\n\n /*\n * For hybrid spa flow, there will be a code but no verifier\n * In this scenario, don't include redirect uri as auth code will not be bound to redirect URI\n */\n if (!this.includeRedirectUri) {\n // Just validate\n RequestValidator.validateRedirectUri(request.redirectUri);\n } else {\n // Validate and include redirect uri\n parameterBuilder.addRedirectUri(request.redirectUri);\n }\n\n // Add scope array, parameter builder will add default scopes and dedupe\n parameterBuilder.addScopes(request.scopes);\n\n // add code: user set, not validated\n parameterBuilder.addAuthorizationCode(request.code);\n\n // Add library metadata\n parameterBuilder.addLibraryInfo(this.config.libraryInfo);\n parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);\n parameterBuilder.addThrottling();\n\n if (this.serverTelemetryManager) {\n parameterBuilder.addServerTelemetry(this.serverTelemetryManager);\n }\n\n // add code_verifier if passed\n if (request.codeVerifier) {\n parameterBuilder.addCodeVerifier(request.codeVerifier);\n }\n\n if (this.config.clientCredentials.clientSecret) {\n parameterBuilder.addClientSecret(this.config.clientCredentials.clientSecret);\n }\n\n if (this.config.clientCredentials.clientAssertion) {\n const clientAssertion = this.config.clientCredentials.clientAssertion;\n parameterBuilder.addClientAssertion(clientAssertion.assertion);\n parameterBuilder.addClientAssertionType(clientAssertion.assertionType);\n }\n\n parameterBuilder.addGrantType(GrantType.AUTHORIZATION_CODE_GRANT);\n parameterBuilder.addClientInfo();\n\n if (request.authenticationScheme === AuthenticationScheme.POP) {\n const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils, this.performanceClient);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);\n const reqCnfData = await popTokenGenerator.generateCnf(request);\n // SPA PoP requires full Base64Url encoded req_cnf string (unhashed)\n parameterBuilder.addPopToken(reqCnfData.reqCnfString);\n } else if (request.authenticationScheme === AuthenticationScheme.SSH) {\n if (request.sshJwk) {\n parameterBuilder.addSshJwk(request.sshJwk);\n } else {\n throw ClientConfigurationError.createMissingSshJwkError();\n }\n }\n\n const correlationId = request.correlationId || this.config.cryptoInterface.createNewGuid();\n parameterBuilder.addCorrelationId(correlationId);\n\n if (!StringUtils.isEmptyObj(request.claims) || this.config.authOptions.clientCapabilities && this.config.authOptions.clientCapabilities.length > 0) {\n parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);\n }\n\n let ccsCred: CcsCredential | undefined = undefined;\n if (request.clientInfo) {\n try {\n const clientInfo = buildClientInfo(request.clientInfo, this.cryptoUtils);\n ccsCred = {\n credential: `${clientInfo.uid}${Separators.CLIENT_INFO_SEPARATOR}${clientInfo.utid}`,\n type: CcsCredentialType.HOME_ACCOUNT_ID\n };\n } catch (e) {\n this.logger.verbose(\"Could not parse client info for CCS Header: \" + e);\n }\n } else {\n ccsCred = request.ccsCredential;\n }\n\n // Adds these as parameters in the request instead of headers to prevent CORS preflight request\n if (this.config.systemOptions.preventCorsPreflight && ccsCred) {\n switch (ccsCred.type) {\n case CcsCredentialType.HOME_ACCOUNT_ID:\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(ccsCred.credential);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"Could not parse home account ID for CCS Header: \" + e);\n }\n break;\n case CcsCredentialType.UPN:\n parameterBuilder.addCcsUpn(ccsCred.credential);\n break;\n }\n }\n\n if (request.tokenBodyParameters) {\n parameterBuilder.addExtraQueryParameters(request.tokenBodyParameters);\n }\n\n // Add hybrid spa parameters if not already provided\n if (request.enableSpaAuthorizationCode && (!request.tokenBodyParameters || !request.tokenBodyParameters[AADServerParamKeys.RETURN_SPA_CODE])) {\n parameterBuilder.addExtraQueryParameters({\n [AADServerParamKeys.RETURN_SPA_CODE]: \"1\"\n });\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * This API validates the `AuthorizationCodeUrlRequest` and creates a URL\n * @param request\n */\n private async createAuthCodeUrlQueryString(request: CommonAuthorizationUrlRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientCreateQueryString, request.correlationId);\n\n const parameterBuilder = new RequestParameterBuilder();\n\n parameterBuilder.addClientId(this.config.authOptions.clientId);\n\n const requestScopes = [...request.scopes || [], ...request.extraScopesToConsent || []];\n parameterBuilder.addScopes(requestScopes);\n\n // validate the redirectUri (to be a non null value)\n parameterBuilder.addRedirectUri(request.redirectUri);\n\n // generate the correlationId if not set by the user and add\n const correlationId = request.correlationId || this.config.cryptoInterface.createNewGuid();\n parameterBuilder.addCorrelationId(correlationId);\n\n // add response_mode. If not passed in it defaults to query.\n parameterBuilder.addResponseMode(request.responseMode);\n\n // add response_type = code\n parameterBuilder.addResponseTypeCode();\n\n // add library info parameters\n parameterBuilder.addLibraryInfo(this.config.libraryInfo);\n parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);\n\n // add client_info=1\n parameterBuilder.addClientInfo();\n\n if (request.codeChallenge && request.codeChallengeMethod) {\n parameterBuilder.addCodeChallengeParams(request.codeChallenge, request.codeChallengeMethod);\n }\n\n if (request.prompt) {\n parameterBuilder.addPrompt(request.prompt);\n }\n\n if (request.domainHint) {\n parameterBuilder.addDomainHint(request.domainHint);\n }\n\n // Add sid or loginHint with preference for login_hint claim (in request) -> sid -> loginHint (upn/email) -> username of AccountInfo object\n if (request.prompt !== PromptValue.SELECT_ACCOUNT) {\n // AAD will throw if prompt=select_account is passed with an account hint\n if (request.sid && request.prompt === PromptValue.NONE) {\n // SessionID is only used in silent calls\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is none, adding sid from request\");\n parameterBuilder.addSid(request.sid);\n } else if (request.account) {\n const accountSid = this.extractAccountSid(request.account);\n const accountLoginHintClaim = this.extractLoginHint(request.account);\n // If login_hint claim is present, use it over sid/username\n if (accountLoginHintClaim) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: login_hint claim present on account\");\n parameterBuilder.addLoginHint(accountLoginHintClaim);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n } else if (accountSid && request.prompt === PromptValue.NONE) {\n /*\n * If account and loginHint are provided, we will check account first for sid before adding loginHint\n * SessionId is only used in silent calls\n */\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is none, adding sid from account\");\n parameterBuilder.addSid(accountSid);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n } else if (request.loginHint) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Adding login_hint from request\");\n parameterBuilder.addLoginHint(request.loginHint);\n parameterBuilder.addCcsUpn(request.loginHint);\n } else if (request.account.username) {\n // Fallback to account username if provided\n this.logger.verbose(\"createAuthCodeUrlQueryString: Adding login_hint from account\");\n parameterBuilder.addLoginHint(request.account.username);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n }\n } else if (request.loginHint) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: No account, adding login_hint from request\");\n parameterBuilder.addLoginHint(request.loginHint);\n parameterBuilder.addCcsUpn(request.loginHint);\n }\n } else {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is select_account, ignoring account hints\");\n }\n\n if (request.nonce) {\n parameterBuilder.addNonce(request.nonce);\n }\n\n if (request.state) {\n parameterBuilder.addState(request.state);\n }\n\n if (!StringUtils.isEmpty(request.claims) || this.config.authOptions.clientCapabilities && this.config.authOptions.clientCapabilities.length > 0) {\n parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);\n }\n\n if (request.extraQueryParameters) {\n parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);\n }\n\n if (request.nativeBroker) {\n // signal ests that this is a WAM call\n parameterBuilder.addNativeBroker();\n\n // pass the req_cnf for POP\n if (request.authenticationScheme === AuthenticationScheme.POP) {\n const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils);\n // to reduce the URL length, it is recommended to send the hash of the req_cnf instead of the whole string\n const reqCnfData = await popTokenGenerator.generateCnf(request);\n parameterBuilder.addPopToken(reqCnfData.reqCnfHash);\n }\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * This API validates the `EndSessionRequest` and creates a URL\n * @param request\n */\n private createLogoutUrlQueryString(request: CommonEndSessionRequest): string {\n const parameterBuilder = new RequestParameterBuilder();\n\n if (request.postLogoutRedirectUri) {\n parameterBuilder.addPostLogoutRedirectUri(request.postLogoutRedirectUri);\n }\n\n if (request.correlationId) {\n parameterBuilder.addCorrelationId(request.correlationId);\n }\n\n if (request.idTokenHint) {\n parameterBuilder.addIdTokenHint(request.idTokenHint);\n }\n\n if (request.state) {\n parameterBuilder.addState(request.state);\n }\n\n if (request.logoutHint) {\n parameterBuilder.addLogoutHint(request.logoutHint);\n }\n\n if (request.extraQueryParameters) {\n parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * Helper to get sid from account. Returns null if idTokenClaims are not present or sid is not present.\n * @param account\n */\n private extractAccountSid(account: AccountInfo): string | null {\n return account.idTokenClaims?.sid || null;\n }\n\n private extractLoginHint(account: AccountInfo): string | null {\n return account.idTokenClaims?.login_hint || null;\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;AAGG;AA8BH;;AAEG;AACH,IAAA,uBAAA,kBAAA,UAAA,MAAA,EAAA;IAA6C,SAAU,CAAA,uBAAA,EAAA,MAAA,CAAA,CAAA;IAInD,SAAY,uBAAA,CAAA,aAAkC,EAAE,iBAAsC,EAAA;AAAtF,QAAA,IAAA,KAAA,GACI,MAAM,CAAA,IAAA,CAAA,IAAA,EAAA,aAAa,EAAE,iBAAiB,CAAC,IAC1C,IAAA,CAAA;;QAJS,KAAkB,CAAA,kBAAA,GAAY,IAAI,CAAC;;KAI5C;AAED;;;;;;;;;AASG;IACG,uBAAc,CAAA,SAAA,CAAA,cAAA,GAApB,UAAqB,OAAsC,EAAA;;;;;;;AACvD,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAErG,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC,iBAAiB,CAAC,2BAA2B,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAC1F,wBAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAA,CAAA;;AAA9D,wBAAA,WAAW,GAAG,EAAgD,CAAA,IAAA,EAAA,CAAA;AAEpE,wBAAA,OAAA,CAAA,CAAA,aAAO,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC,CAAA;;;;AACzF,KAAA,CAAA;AAED;;;;AAIG;AACG,IAAA,uBAAA,CAAA,SAAA,CAAA,YAAY,GAAlB,UAAmB,OAAuC,EAAE,eAA0C,EAAA;;;;;;;;AAClG,wBAAA,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;AAC3B,4BAAA,MAAM,eAAe,CAAC,mCAAmC,EAAE,CAAC;AAC/D,yBAAA;AAED,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAGvG,wBAAA,cAAc,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,gBAAgB,CAAC,4BAA4B,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;AACrH,wBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;AAEvD,wBAAA,YAAY,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;AAC5C,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC,iBAAiB,CAAC,6BAA6B,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;wBAC/F,OAAM,CAAA,CAAA,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA,CAAA;;AAAlE,wBAAA,QAAQ,GAAG,EAAuD,CAAA,IAAA,EAAA,CAAA;wBAGlE,SAAS,GAAA,CAAA,EAAA,GAAG,QAAQ,CAAC,OAAO,0CAAG,WAAW,CAAC,eAAe,CAAC,CAAC;wBAC5D,gBAAgB,GAAA,CAAA,EAAA,GAAG,QAAQ,CAAC,OAAO,0CAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAC3E,wBAAA,IAAG,gBAAgB,EACnB;AACI,4BAAA,cAAc,aAAd,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAd,cAAc,CAAE,eAAe,CAAC;AAC5B,gCAAA,gBAAgB,EAAA,gBAAA;6BACnB,CAAE,CAAA;AACN,yBAAA;AACK,wBAAA,eAAe,GAAG,IAAI,eAAe,CACvC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAChC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAC7B,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAC7B,IAAI,CAAC,iBAAiB,CACzB,CAAC;;AAGF,wBAAA,eAAe,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAErD,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAC5G,wBAAA,OAAA,CAAA,CAAA,aAAO,eAAe,CAAC,yBAAyB,CAC5C,QAAQ,CAAC,IAAI,EACb,IAAI,CAAC,SAAS,EACd,YAAY,EACZ,OAAO,EACP,eAAe,EACf,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,CACZ,CAAC,IAAI,CAAC,UAAC,MAA4B,EAAA;AAChC,gCAAA,cAAc,aAAd,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAd,cAAc,CAAE,cAAc,CAAC;AAC3B,oCAAA,OAAO,EAAE,IAAI;iCAChB,CAAE,CAAA;AACH,gCAAA,OAAO,MAAM,CAAC;AAClB,6BAAC,CAAC;iCACG,KAAK,CAAC,UAAC,KAAK,EAAA;gCACT,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gCAAgC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;AAC7E,gCAAA,cAAc,aAAd,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAd,cAAc,CAAE,cAAc,CAAC;oCAC3B,SAAS,EAAE,KAAK,CAAC,SAAS;oCAC1B,YAAY,EAAE,KAAK,CAAC,QAAQ;AAC5B,oCAAA,OAAO,EAAE,KAAK;iCACjB,CAAE,CAAA;AACH,gCAAA,MAAM,KAAK,CAAC;AAChB,6BAAC,CAAC,CAAC,CAAA;;;;AACV,KAAA,CAAA;AAED;;;;AAIG;AACH,IAAA,uBAAA,CAAA,SAAA,CAAA,sBAAsB,GAAtB,UAAuB,YAAoB,EAAE,WAAmB,EAAA;;AAE5D,QAAA,IAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;AAG5I,QAAA,IAAM,aAAa,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;;QAElD,IAAM,YAAY,GAAoC,SAAS,CAAC,mBAAmB,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;;QAG7G,eAAe,CAAC,uCAAuC,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;;AAGrG,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;AACpB,YAAA,MAAM,eAAe,CAAC,qCAAqC,EAAE,CAAC;AACjE,SAAA;AACD,QAAA,OAAA,QAAA,CAAA,QAAA,CAAA,EAAA,EACO,YAAY,CAAA,EAAA;;AAEf,YAAA,IAAI,EAAE,YAAY,CAAC,IAAI,EACzB,CAAA,CAAA;KACL,CAAA;AAED;;;;AAIG;IACH,uBAAY,CAAA,SAAA,CAAA,YAAA,GAAZ,UAAa,aAAsC,EAAA;;QAE/C,IAAI,CAAC,aAAa,EAAE;AAChB,YAAA,MAAM,wBAAwB,CAAC,6BAA6B,EAAE,CAAC;AAClE,SAAA;QACD,IAAM,WAAW,GAAG,IAAI,CAAC,0BAA0B,CAAC,aAAa,CAAC,CAAC;;AAGnE,QAAA,OAAO,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;KACtF,CAAA;AAED;;;;AAIG;AACW,IAAA,uBAAA,CAAA,SAAA,CAAA,mBAAmB,GAAjC,UAAkC,SAAoB,EAAE,OAAuC,EAAA;;;;;;;AAC3F,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,iBAAiB,CAAC,6BAA6B,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AACpH,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC,iBAAiB,CAAC,gCAAgC,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAE7G,wBAAA,qBAAqB,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;wBACjE,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;AAEzE,wBAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAA,CAAA;;AAAxD,wBAAA,WAAW,GAAG,EAA0C,CAAA,IAAA,EAAA,CAAA;wBAE1D,aAAa,GAA8B,SAAS,CAAC;wBACzD,IAAI,OAAO,CAAC,UAAU,EAAE;4BACpB,IAAI;gCACM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AACzE,gCAAA,aAAa,GAAG;AACZ,oCAAA,UAAU,EAAE,EAAA,GAAG,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,qBAAqB,GAAG,UAAU,CAAC,IAAM;oCACpF,IAAI,EAAE,iBAAiB,CAAC,eAAe;iCAC1C,CAAC;AACL,6BAAA;AAAC,4BAAA,OAAO,CAAC,EAAE;gCACR,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,GAAG,CAAC,CAAC,CAAC;AAC3E,6BAAA;AACJ,yBAAA;wBACK,OAAO,GAA2B,IAAI,CAAC,yBAAyB,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;AAEzG,wBAAA,UAAU,GAAsB;AAClC,4BAAA,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ;4BAC1C,SAAS,EAAE,SAAS,CAAC,kBAAkB;4BACvC,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,MAAM,EAAE,OAAO,CAAC,MAAM;4BACtB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;4BAClD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;4BACpD,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;4BAC9C,SAAS,EAAE,OAAO,CAAC,SAAS;4BAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;yBACzB,CAAC;AAEF,wBAAA,OAAA,CAAA,CAAA,aAAO,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;;;;AACtF,KAAA,CAAA;AAED;;;AAGG;IACW,uBAAsB,CAAA,SAAA,CAAA,sBAAA,GAApC,UAAqC,OAAuC,EAAA;;;;;;;;AACxE,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,iBAAiB,CAAC,gCAAgC,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAEjH,wBAAA,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAC;wBAEvD,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAE/D;;;AAGG;AACH,wBAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;;AAE1B,4BAAA,gBAAgB,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AAC7D,yBAAA;AAAM,6BAAA;;AAEH,4BAAA,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACxD,yBAAA;;AAGD,wBAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;AAG3C,wBAAA,gBAAgB,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;wBAGpD,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;wBACzD,gBAAgB,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAC5E,gBAAgB,CAAC,aAAa,EAAE,CAAC;wBAEjC,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC7B,4BAAA,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACpE,yBAAA;;wBAGD,IAAI,OAAO,CAAC,YAAY,EAAE;AACtB,4BAAA,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AAC1D,yBAAA;AAED,wBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,YAAY,EAAE;4BAC5C,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;AAChF,yBAAA;AAED,wBAAA,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,eAAe,EAAE;4BACzC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC;AACtE,4BAAA,gBAAgB,CAAC,kBAAkB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;AAC/D,4BAAA,gBAAgB,CAAC,sBAAsB,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;AAC1E,yBAAA;AAED,wBAAA,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;wBAClE,gBAAgB,CAAC,aAAa,EAAE,CAAC;8BAE7B,OAAO,CAAC,oBAAoB,KAAK,oBAAoB,CAAC,GAAG,CAAA,EAAzD,OAAyD,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;AACnD,wBAAA,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAE1F,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AACnF,wBAAA,OAAA,CAAA,CAAA,YAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA,CAAA;;AAAzD,wBAAA,UAAU,GAAG,EAA4C,CAAA,IAAA,EAAA,CAAA;;AAE/D,wBAAA,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;;;AACnD,wBAAA,IAAI,OAAO,CAAC,oBAAoB,KAAK,oBAAoB,CAAC,GAAG,EAAE;4BAClE,IAAI,OAAO,CAAC,MAAM,EAAE;AAChB,gCAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC9C,6BAAA;AAAM,iCAAA;AACH,gCAAA,MAAM,wBAAwB,CAAC,wBAAwB,EAAE,CAAC;AAC7D,6BAAA;AACJ,yBAAA;;;AAEK,wBAAA,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;AAC3F,wBAAA,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAEjD,wBAAA,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;AAChJ,4BAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC1F,yBAAA;wBAEG,OAAO,GAA8B,SAAS,CAAC;wBACnD,IAAI,OAAO,CAAC,UAAU,EAAE;4BACpB,IAAI;gCACM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AACzE,gCAAA,OAAO,GAAG;AACN,oCAAA,UAAU,EAAE,EAAA,GAAG,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,qBAAqB,GAAG,UAAU,CAAC,IAAM;oCACpF,IAAI,EAAE,iBAAiB,CAAC,eAAe;iCAC1C,CAAC;AACL,6BAAA;AAAC,4BAAA,OAAO,CAAC,EAAE;gCACR,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,GAAG,CAAC,CAAC,CAAC;AAC3E,6BAAA;AACJ,yBAAA;AAAM,6BAAA;AACH,4BAAA,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;AACnC,yBAAA;;wBAGD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,IAAI,OAAO,EAAE;4BAC3D,QAAQ,OAAO,CAAC,IAAI;gCAChB,KAAK,iBAAiB,CAAC,eAAe;oCAClC,IAAI;AACM,wCAAA,UAAU,GAAG,gCAAgC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACxE,wCAAA,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC1C,qCAAA;AAAC,oCAAA,OAAO,CAAC,EAAE;wCACR,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,kDAAkD,GAAG,CAAC,CAAC,CAAC;AAC/E,qCAAA;oCACD,MAAM;gCACV,KAAK,iBAAiB,CAAC,GAAG;AACtB,oCAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oCAC/C,MAAM;AACb,6BAAA;AACJ,yBAAA;wBAED,IAAI,OAAO,CAAC,mBAAmB,EAAE;AAC7B,4BAAA,gBAAgB,CAAC,uBAAuB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AACzE,yBAAA;;wBAGD,IAAI,OAAO,CAAC,0BAA0B,KAAK,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,EAAE;AAC1I,4BAAA,gBAAgB,CAAC,uBAAuB,EAAA,EAAA,GAAA,EAAA;AACpC,gCAAA,EAAA,CAAC,kBAAkB,CAAC,eAAe,CAAA,GAAG,GAAG;oCAC3C,CAAC;AACN,yBAAA;AAED,wBAAA,OAAA,CAAA,CAAA,aAAO,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAA;;;;AAC/C,KAAA,CAAA;AAED;;;AAGG;IACW,uBAA4B,CAAA,SAAA,CAAA,4BAAA,GAA1C,UAA2C,OAAsC,EAAA;;;;;;;AAC7E,wBAAA,CAAA,EAAA,GAAA,IAAI,CAAC,iBAAiB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC,iBAAiB,CAAC,2BAA2B,EAAE,OAAO,CAAC,aAAa,CAAE,CAAA;AAE5G,wBAAA,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAC;wBAEvD,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAEzD,wBAAA,aAAa,GAAO,cAAA,CAAA,OAAO,CAAC,MAAM,IAAI,EAAE,EAAK,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;AACvF,wBAAA,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;;AAG1C,wBAAA,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AAG/C,wBAAA,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;AAC3F,wBAAA,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;;AAGjD,wBAAA,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;;wBAGvD,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;;wBAGvC,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;wBACzD,gBAAgB,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;;wBAG5E,gBAAgB,CAAC,aAAa,EAAE,CAAC;AAEjC,wBAAA,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,mBAAmB,EAAE;4BACtD,gBAAgB,CAAC,sBAAsB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC/F,yBAAA;wBAED,IAAI,OAAO,CAAC,MAAM,EAAE;AAChB,4BAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC9C,yBAAA;wBAED,IAAI,OAAO,CAAC,UAAU,EAAE;AACpB,4BAAA,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACtD,yBAAA;;AAGD,wBAAA,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC,cAAc,EAAE;;4BAE/C,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC,IAAI,EAAE;;AAEpD,gCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uEAAuE,CAAC,CAAC;AAC7F,gCAAA,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxC,6BAAA;iCAAM,IAAI,OAAO,CAAC,OAAO,EAAE;gCAClB,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gCACrD,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;AAErE,gCAAA,IAAI,qBAAqB,EAAE;AACvB,oCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mEAAmE,CAAC,CAAC;AACzF,oCAAA,gBAAgB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;oCACrD,IAAI;wCACM,UAAU,GAAG,gCAAgC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AACnF,wCAAA,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC1C,qCAAA;AAAC,oCAAA,OAAO,CAAC,EAAE;AACR,wCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC;AACvG,qCAAA;AACJ,iCAAA;qCAAM,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,CAAC,IAAI,EAAE;AAC1D;;;AAGG;AACH,oCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uEAAuE,CAAC,CAAC;AAC7F,oCAAA,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oCACpC,IAAI;wCACM,UAAU,GAAG,gCAAgC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AACnF,wCAAA,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC1C,qCAAA;AAAC,oCAAA,OAAO,CAAC,EAAE;AACR,wCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC;AACvG,qCAAA;AACJ,iCAAA;qCAAM,IAAI,OAAO,CAAC,SAAS,EAAE;AAC1B,oCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8DAA8D,CAAC,CAAC;AACpF,oCAAA,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjD,oCAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjD,iCAAA;AAAM,qCAAA,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE;;AAEjC,oCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8DAA8D,CAAC,CAAC;oCACpF,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oCACxD,IAAI;wCACM,UAAU,GAAG,gCAAgC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AACnF,wCAAA,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC1C,qCAAA;AAAC,oCAAA,OAAO,CAAC,EAAE;AACR,wCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8EAA8E,CAAC,CAAC;AACvG,qCAAA;AACJ,iCAAA;AACJ,6BAAA;iCAAM,IAAI,OAAO,CAAC,SAAS,EAAE;AAC1B,gCAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,0EAA0E,CAAC,CAAC;AAChG,gCAAA,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjD,gCAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjD,6BAAA;AACJ,yBAAA;AAAM,6BAAA;AACH,4BAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gFAAgF,CAAC,CAAC;AACzG,yBAAA;wBAED,IAAI,OAAO,CAAC,KAAK,EAAE;AACf,4BAAA,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5C,yBAAA;wBAED,IAAI,OAAO,CAAC,KAAK,EAAE;AACf,4BAAA,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5C,yBAAA;AAED,wBAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;AAC7I,4BAAA,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC1F,yBAAA;wBAED,IAAI,OAAO,CAAC,oBAAoB,EAAE;AAC9B,4BAAA,gBAAgB,CAAC,uBAAuB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC1E,yBAAA;6BAEG,OAAO,CAAC,YAAY,EAApB,OAAoB,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;;wBAEpB,gBAAgB,CAAC,eAAe,EAAE,CAAC;8BAG/B,OAAO,CAAC,oBAAoB,KAAK,oBAAoB,CAAC,GAAG,CAAA,EAAzD,OAAyD,CAAA,CAAA,YAAA,CAAA,CAAA,CAAA;wBACnD,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAE/C,wBAAA,OAAA,CAAA,CAAA,YAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA,CAAA;;AAAzD,wBAAA,UAAU,GAAG,EAA4C,CAAA,IAAA,EAAA,CAAA;AAC/D,wBAAA,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;;AAI5D,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAA;;;;AAC/C,KAAA,CAAA;AAED;;;AAGG;IACK,uBAA0B,CAAA,SAAA,CAAA,0BAAA,GAAlC,UAAmC,OAAgC,EAAA;AAC/D,QAAA,IAAM,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAEvD,IAAI,OAAO,CAAC,qBAAqB,EAAE;AAC/B,YAAA,gBAAgB,CAAC,wBAAwB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAC5E,SAAA;QAED,IAAI,OAAO,CAAC,aAAa,EAAE;AACvB,YAAA,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAC5D,SAAA;QAED,IAAI,OAAO,CAAC,WAAW,EAAE;AACrB,YAAA,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACxD,SAAA;QAED,IAAI,OAAO,CAAC,KAAK,EAAE;AACf,YAAA,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5C,SAAA;QAED,IAAI,OAAO,CAAC,UAAU,EAAE;AACpB,YAAA,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACtD,SAAA;QAED,IAAI,OAAO,CAAC,oBAAoB,EAAE;AAC9B,YAAA,gBAAgB,CAAC,uBAAuB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC1E,SAAA;AAED,QAAA,OAAO,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;KAC/C,CAAA;AAED;;;AAGG;IACK,uBAAiB,CAAA,SAAA,CAAA,iBAAA,GAAzB,UAA0B,OAAoB,EAAA;;QAC1C,OAAO,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,aAAa,0CAAE,GAAG,KAAI,IAAI,CAAC;KAC7C,CAAA;IAEO,uBAAgB,CAAA,SAAA,CAAA,gBAAA,GAAxB,UAAyB,OAAoB,EAAA;;QACzC,OAAO,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,aAAa,0CAAE,UAAU,KAAI,IAAI,CAAC;KACpD,CAAA;IACL,OAAC,uBAAA,CAAA;AAAD,CAxeA,CAA6C,UAAU,CAwetD;;;;"}
|
|
1
|
+
{"version":3,"file":"AuthorizationCodeClient.js","sources":["../../src/client/AuthorizationCodeClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { BaseClient } from \"./BaseClient\";\nimport { CommonAuthorizationUrlRequest } from \"../request/CommonAuthorizationUrlRequest\";\nimport { CommonAuthorizationCodeRequest } from \"../request/CommonAuthorizationCodeRequest\";\nimport { Authority } from \"../authority/Authority\";\nimport { RequestParameterBuilder } from \"../request/RequestParameterBuilder\";\nimport { GrantType, AuthenticationScheme, PromptValue, Separators, AADServerParamKeys, HeaderNames } from \"../utils/Constants\";\nimport { ClientConfiguration } from \"../config/ClientConfiguration\";\nimport { ServerAuthorizationTokenResponse } from \"../response/ServerAuthorizationTokenResponse\";\nimport { NetworkResponse } from \"../network/NetworkManager\";\nimport { ResponseHandler } from \"../response/ResponseHandler\";\nimport { AuthenticationResult } from \"../response/AuthenticationResult\";\nimport { StringUtils } from \"../utils/StringUtils\";\nimport { ClientAuthError } from \"../error/ClientAuthError\";\nimport { UrlString } from \"../url/UrlString\";\nimport { ServerAuthorizationCodeResponse } from \"../response/ServerAuthorizationCodeResponse\";\nimport { CommonEndSessionRequest } from \"../request/CommonEndSessionRequest\";\nimport { PopTokenGenerator } from \"../crypto/PopTokenGenerator\";\nimport { RequestThumbprint } from \"../network/RequestThumbprint\";\nimport { AuthorizationCodePayload } from \"../response/AuthorizationCodePayload\";\nimport { TimeUtils } from \"../utils/TimeUtils\";\nimport { AccountInfo } from \"../account/AccountInfo\";\nimport { buildClientInfoFromHomeAccountId, buildClientInfo } from \"../account/ClientInfo\";\nimport { CcsCredentialType, CcsCredential } from \"../account/CcsCredential\";\nimport { ClientConfigurationError } from \"../error/ClientConfigurationError\";\nimport { RequestValidator } from \"../request/RequestValidator\";\nimport { IPerformanceClient } from \"../telemetry/performance/IPerformanceClient\";\nimport { PerformanceEvents } from \"../telemetry/performance/PerformanceEvent\";\n\n/**\n * Oauth2.0 Authorization Code client\n */\nexport class AuthorizationCodeClient extends BaseClient {\n // Flag to indicate if client is for hybrid spa auth code redemption\n protected includeRedirectUri: boolean = true;\n\n constructor(configuration: ClientConfiguration, performanceClient?: IPerformanceClient) {\n super(configuration, performanceClient);\n }\n\n /**\n * Creates the URL of the authorization request letting the user input credentials and consent to the\n * application. The URL target the /authorize endpoint of the authority configured in the\n * application object.\n *\n * Once the user inputs their credentials and consents, the authority will send a response to the redirect URI\n * sent in the request and should contain an authorization code, which can then be used to acquire tokens via\n * acquireToken(AuthorizationCodeRequest)\n * @param request\n */\n async getAuthCodeUrl(request: CommonAuthorizationUrlRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.GetAuthCodeUrl, request.correlationId);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientCreateQueryString, request.correlationId);\n const queryString = await this.createAuthCodeUrlQueryString(request);\n\n return UrlString.appendQueryString(this.authority.authorizationEndpoint, queryString);\n }\n\n /**\n * API to acquire a token in exchange of 'authorization_code` acquired by the user in the first leg of the\n * authorization_code_grant\n * @param request\n */\n async acquireToken(request: CommonAuthorizationCodeRequest, authCodePayload?: AuthorizationCodePayload): Promise<AuthenticationResult> {\n if (!request || !request.code) {\n throw ClientAuthError.createTokenRequestCannotBeMadeError();\n }\n\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientAcquireToken, request.correlationId);\n \n // @ts-ignore\n const atsMeasurement = this.performanceClient?.startMeasurement(\"AuthCodeClientAcquireToken\", request.correlationId);\n this.logger.info(\"in acquireToken call in auth-code client\");\n\n const reqTimestamp = TimeUtils.nowSeconds();\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientExecuteTokenRequest, request.correlationId);\n const response = await this.executeTokenRequest(this.authority, request);\n\n // Retrieve requestId from response headers\n const requestId = response.headers?.[HeaderNames.X_MS_REQUEST_ID];\n const httpVerAuthority = response.headers?.[HeaderNames.X_MS_HTTP_VERSION];\n if(httpVerAuthority)\n {\n atsMeasurement?.addStaticFields({\n httpVerAuthority\n });\n }\n const responseHandler = new ResponseHandler(\n this.config.authOptions.clientId,\n this.cacheManager,\n this.cryptoUtils,\n this.logger,\n this.config.serializableCache,\n this.config.persistencePlugin,\n this.performanceClient\n );\n\n // Validate response. This function throws a server error if an error is returned by the server.\n responseHandler.validateTokenResponse(response.body);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.HandleServerTokenResponse, request.correlationId);\n return responseHandler.handleServerTokenResponse(\n response.body,\n this.authority,\n reqTimestamp,\n request,\n authCodePayload,\n undefined,\n undefined,\n undefined,\n requestId\n ).then((result: AuthenticationResult) => {\n atsMeasurement?.endMeasurement({\n success: true\n });\n return result;\n })\n .catch((error) => {\n this.logger.verbose(\"Error in fetching token in ACC\", request.correlationId);\n atsMeasurement?.endMeasurement({\n errorCode: error.errorCode,\n subErrorCode: error.subError,\n success: false\n });\n throw error;\n });\n }\n\n /**\n * Handles the hash fragment response from public client code request. Returns a code response used by\n * the client to exchange for a token in acquireToken.\n * @param hashFragment\n */\n handleFragmentResponse(hashFragment: string, cachedState: string): AuthorizationCodePayload {\n // Handle responses.\n const responseHandler = new ResponseHandler(this.config.authOptions.clientId, this.cacheManager, this.cryptoUtils, this.logger, null, null);\n\n // Deserialize hash fragment response parameters.\n const hashUrlString = new UrlString(hashFragment);\n // Deserialize hash fragment response parameters.\n const serverParams: ServerAuthorizationCodeResponse = UrlString.getDeserializedHash(hashUrlString.getHash());\n\n // Get code response\n responseHandler.validateServerAuthorizationCodeResponse(serverParams, cachedState, this.cryptoUtils);\n\n // throw when there is no auth code in the response\n if (!serverParams.code) {\n throw ClientAuthError.createNoAuthCodeInServerResponseError();\n }\n return {\n ...serverParams,\n // Code param is optional in ServerAuthorizationCodeResponse but required in AuthorizationCodePaylod\n code: serverParams.code\n };\n }\n\n /**\n * Used to log out the current user, and redirect the user to the postLogoutRedirectUri.\n * Default behaviour is to redirect the user to `window.location.href`.\n * @param authorityUri\n */\n getLogoutUri(logoutRequest: CommonEndSessionRequest): string {\n // Throw error if logoutRequest is null/undefined\n if (!logoutRequest) {\n throw ClientConfigurationError.createEmptyLogoutRequestError();\n }\n const queryString = this.createLogoutUrlQueryString(logoutRequest);\n\n // Construct logout URI\n return UrlString.appendQueryString(this.authority.endSessionEndpoint, queryString);\n }\n\n /**\n * Executes POST request to token endpoint\n * @param authority\n * @param request\n */\n private async executeTokenRequest(authority: Authority, request: CommonAuthorizationCodeRequest): Promise<NetworkResponse<ServerAuthorizationTokenResponse>> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientExecuteTokenRequest, request.correlationId);\n this.performanceClient?.setPreQueueTime(PerformanceEvents.AuthClientCreateTokenRequestBody, request.correlationId);\n \n const queryParametersString = this.createTokenQueryParameters(request);\n const endpoint = UrlString.appendQueryString(authority.tokenEndpoint, queryParametersString);\n \n const requestBody = await this.createTokenRequestBody(request);\n \n let ccsCredential: CcsCredential | undefined = undefined;\n if (request.clientInfo) {\n try {\n const clientInfo = buildClientInfo(request.clientInfo, this.cryptoUtils);\n ccsCredential = {\n credential: `${clientInfo.uid}${Separators.CLIENT_INFO_SEPARATOR}${clientInfo.utid}`,\n type: CcsCredentialType.HOME_ACCOUNT_ID\n };\n } catch (e) {\n this.logger.verbose(\"Could not parse client info for CCS Header: \" + e);\n }\n }\n const headers: Record<string, string> = this.createTokenRequestHeaders(ccsCredential || request.ccsCredential);\n\n const thumbprint: RequestThumbprint = {\n clientId: this.config.authOptions.clientId,\n authority: authority.canonicalAuthority,\n scopes: request.scopes,\n claims: request.claims,\n authenticationScheme: request.authenticationScheme,\n resourceRequestMethod: request.resourceRequestMethod,\n resourceRequestUri: request.resourceRequestUri,\n shrClaims: request.shrClaims,\n sshKid: request.sshKid\n };\n\n return this.executePostToTokenEndpoint(endpoint, requestBody, headers, thumbprint);\n }\n\n /**\n * Generates a map for all the params to be sent to the service\n * @param request\n */\n private async createTokenRequestBody(request: CommonAuthorizationCodeRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientCreateTokenRequestBody, request.correlationId);\n\n const parameterBuilder = new RequestParameterBuilder();\n\n parameterBuilder.addClientId(this.config.authOptions.clientId);\n\n /*\n * For hybrid spa flow, there will be a code but no verifier\n * In this scenario, don't include redirect uri as auth code will not be bound to redirect URI\n */\n if (!this.includeRedirectUri) {\n // Just validate\n RequestValidator.validateRedirectUri(request.redirectUri);\n } else {\n // Validate and include redirect uri\n parameterBuilder.addRedirectUri(request.redirectUri);\n }\n\n // Add scope array, parameter builder will add default scopes and dedupe\n parameterBuilder.addScopes(request.scopes);\n\n // add code: user set, not validated\n parameterBuilder.addAuthorizationCode(request.code);\n\n // Add library metadata\n parameterBuilder.addLibraryInfo(this.config.libraryInfo);\n parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);\n parameterBuilder.addThrottling();\n\n if (this.serverTelemetryManager) {\n parameterBuilder.addServerTelemetry(this.serverTelemetryManager);\n }\n\n // add code_verifier if passed\n if (request.codeVerifier) {\n parameterBuilder.addCodeVerifier(request.codeVerifier);\n }\n\n if (this.config.clientCredentials.clientSecret) {\n parameterBuilder.addClientSecret(this.config.clientCredentials.clientSecret);\n }\n\n if (this.config.clientCredentials.clientAssertion) {\n const clientAssertion = this.config.clientCredentials.clientAssertion;\n parameterBuilder.addClientAssertion(clientAssertion.assertion);\n parameterBuilder.addClientAssertionType(clientAssertion.assertionType);\n }\n\n parameterBuilder.addGrantType(GrantType.AUTHORIZATION_CODE_GRANT);\n parameterBuilder.addClientInfo();\n\n if (request.authenticationScheme === AuthenticationScheme.POP) {\n const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils, this.performanceClient);\n\n this.performanceClient?.setPreQueueTime(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);\n const reqCnfData = await popTokenGenerator.generateCnf(request);\n // SPA PoP requires full Base64Url encoded req_cnf string (unhashed)\n parameterBuilder.addPopToken(reqCnfData.reqCnfString);\n } else if (request.authenticationScheme === AuthenticationScheme.SSH) {\n if (request.sshJwk) {\n parameterBuilder.addSshJwk(request.sshJwk);\n } else {\n throw ClientConfigurationError.createMissingSshJwkError();\n }\n }\n\n const correlationId = request.correlationId || this.config.cryptoInterface.createNewGuid();\n parameterBuilder.addCorrelationId(correlationId);\n\n if (!StringUtils.isEmptyObj(request.claims) || this.config.authOptions.clientCapabilities && this.config.authOptions.clientCapabilities.length > 0) {\n parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);\n }\n\n let ccsCred: CcsCredential | undefined = undefined;\n if (request.clientInfo) {\n try {\n const clientInfo = buildClientInfo(request.clientInfo, this.cryptoUtils);\n ccsCred = {\n credential: `${clientInfo.uid}${Separators.CLIENT_INFO_SEPARATOR}${clientInfo.utid}`,\n type: CcsCredentialType.HOME_ACCOUNT_ID\n };\n } catch (e) {\n this.logger.verbose(\"Could not parse client info for CCS Header: \" + e);\n }\n } else {\n ccsCred = request.ccsCredential;\n }\n\n // Adds these as parameters in the request instead of headers to prevent CORS preflight request\n if (this.config.systemOptions.preventCorsPreflight && ccsCred) {\n switch (ccsCred.type) {\n case CcsCredentialType.HOME_ACCOUNT_ID:\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(ccsCred.credential);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"Could not parse home account ID for CCS Header: \" + e);\n }\n break;\n case CcsCredentialType.UPN:\n parameterBuilder.addCcsUpn(ccsCred.credential);\n break;\n }\n }\n\n if (request.tokenBodyParameters) {\n parameterBuilder.addExtraQueryParameters(request.tokenBodyParameters);\n }\n\n // Add hybrid spa parameters if not already provided\n if (request.enableSpaAuthorizationCode && (!request.tokenBodyParameters || !request.tokenBodyParameters[AADServerParamKeys.RETURN_SPA_CODE])) {\n parameterBuilder.addExtraQueryParameters({\n [AADServerParamKeys.RETURN_SPA_CODE]: \"1\"\n });\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * This API validates the `AuthorizationCodeUrlRequest` and creates a URL\n * @param request\n */\n private async createAuthCodeUrlQueryString(request: CommonAuthorizationUrlRequest): Promise<string> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.AuthClientCreateQueryString, request.correlationId);\n\n const parameterBuilder = new RequestParameterBuilder();\n\n parameterBuilder.addClientId(this.config.authOptions.clientId);\n\n const requestScopes = [...request.scopes || [], ...request.extraScopesToConsent || []];\n parameterBuilder.addScopes(requestScopes);\n\n // validate the redirectUri (to be a non null value)\n parameterBuilder.addRedirectUri(request.redirectUri);\n\n // generate the correlationId if not set by the user and add\n const correlationId = request.correlationId || this.config.cryptoInterface.createNewGuid();\n parameterBuilder.addCorrelationId(correlationId);\n\n // add response_mode. If not passed in it defaults to query.\n parameterBuilder.addResponseMode(request.responseMode);\n\n // add response_type = code\n parameterBuilder.addResponseTypeCode();\n\n // add library info parameters\n parameterBuilder.addLibraryInfo(this.config.libraryInfo);\n parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);\n\n // add client_info=1\n parameterBuilder.addClientInfo();\n\n if (request.codeChallenge && request.codeChallengeMethod) {\n parameterBuilder.addCodeChallengeParams(request.codeChallenge, request.codeChallengeMethod);\n }\n\n if (request.prompt) {\n parameterBuilder.addPrompt(request.prompt);\n }\n\n if (request.domainHint) {\n parameterBuilder.addDomainHint(request.domainHint);\n }\n\n // Add sid or loginHint with preference for login_hint claim (in request) -> sid -> loginHint (upn/email) -> username of AccountInfo object\n if (request.prompt !== PromptValue.SELECT_ACCOUNT) {\n // AAD will throw if prompt=select_account is passed with an account hint\n if (request.sid && request.prompt === PromptValue.NONE) {\n // SessionID is only used in silent calls\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is none, adding sid from request\");\n parameterBuilder.addSid(request.sid);\n } else if (request.account) {\n const accountSid = this.extractAccountSid(request.account);\n const accountLoginHintClaim = this.extractLoginHint(request.account);\n // If login_hint claim is present, use it over sid/username\n if (accountLoginHintClaim) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: login_hint claim present on account\");\n parameterBuilder.addLoginHint(accountLoginHintClaim);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n } else if (accountSid && request.prompt === PromptValue.NONE) {\n /*\n * If account and loginHint are provided, we will check account first for sid before adding loginHint\n * SessionId is only used in silent calls\n */\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is none, adding sid from account\");\n parameterBuilder.addSid(accountSid);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n } else if (request.loginHint) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Adding login_hint from request\");\n parameterBuilder.addLoginHint(request.loginHint);\n parameterBuilder.addCcsUpn(request.loginHint);\n } else if (request.account.username) {\n // Fallback to account username if provided\n this.logger.verbose(\"createAuthCodeUrlQueryString: Adding login_hint from account\");\n parameterBuilder.addLoginHint(request.account.username);\n try {\n const clientInfo = buildClientInfoFromHomeAccountId(request.account.homeAccountId);\n parameterBuilder.addCcsOid(clientInfo);\n } catch (e) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Could not parse home account ID for CCS Header\");\n }\n }\n } else if (request.loginHint) {\n this.logger.verbose(\"createAuthCodeUrlQueryString: No account, adding login_hint from request\");\n parameterBuilder.addLoginHint(request.loginHint);\n parameterBuilder.addCcsUpn(request.loginHint);\n }\n } else {\n this.logger.verbose(\"createAuthCodeUrlQueryString: Prompt is select_account, ignoring account hints\");\n }\n\n if (request.nonce) {\n parameterBuilder.addNonce(request.nonce);\n }\n\n if (request.state) {\n parameterBuilder.addState(request.state);\n }\n\n if (!StringUtils.isEmpty(request.claims) || this.config.authOptions.clientCapabilities && this.config.authOptions.clientCapabilities.length > 0) {\n parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);\n }\n\n if (request.extraQueryParameters) {\n parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);\n }\n\n if (request.nativeBroker) {\n // signal ests that this is a WAM call\n parameterBuilder.addNativeBroker();\n\n // pass the req_cnf for POP\n if (request.authenticationScheme === AuthenticationScheme.POP) {\n const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils);\n // to reduce the URL length, it is recommended to send the short form of the req_cnf\n const reqCnfData = await popTokenGenerator.generateCnf(request);\n parameterBuilder.addPopToken(reqCnfData.reqCnfString);\n }\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * This API validates the `EndSessionRequest` and creates a URL\n * @param request\n */\n private createLogoutUrlQueryString(request: CommonEndSessionRequest): string {\n const parameterBuilder = new RequestParameterBuilder();\n\n if (request.postLogoutRedirectUri) {\n parameterBuilder.addPostLogoutRedirectUri(request.postLogoutRedirectUri);\n }\n\n if (request.correlationId) {\n parameterBuilder.addCorrelationId(request.correlationId);\n }\n\n if (request.idTokenHint) {\n parameterBuilder.addIdTokenHint(request.idTokenHint);\n }\n\n if (request.state) {\n parameterBuilder.addState(request.state);\n }\n\n if (request.logoutHint) {\n parameterBuilder.addLogoutHint(request.logoutHint);\n }\n\n if (request.extraQueryParameters) {\n parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);\n }\n\n return parameterBuilder.createQueryString();\n }\n\n /**\n * Helper to get sid from account. Returns null if idTokenClaims are not present or sid is not present.\n * @param account\n */\n private extractAccountSid(account: AccountInfo): string | null {\n return account.idTokenClaims?.sid || null;\n }\n\n private extractLoginHint(account: AccountInfo): string | null {\n return account.idTokenClaims?.login_hint || null;\n }\n}\n"],"names":[],"mappings":"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"}
|
package/dist/crypto/ICrypto.js
CHANGED
package/dist/error/AuthError.js
CHANGED
|
@@ -95,6 +95,10 @@ export declare const ClientConfigurationErrorMessage: {
|
|
|
95
95
|
code: string;
|
|
96
96
|
desc: string;
|
|
97
97
|
};
|
|
98
|
+
authorityMismatch: {
|
|
99
|
+
code: string;
|
|
100
|
+
desc: string;
|
|
101
|
+
};
|
|
98
102
|
};
|
|
99
103
|
/**
|
|
100
104
|
* Error thrown when there is an error in configuration of the MSAL.js library.
|
|
@@ -195,5 +199,9 @@ export declare class ClientConfigurationError extends ClientAuthError {
|
|
|
195
199
|
* Throws error when a provided header is invalid in any way
|
|
196
200
|
*/
|
|
197
201
|
static createInvalidAuthenticationHeaderError(invalidHeaderName: string, details: string): ClientConfigurationError;
|
|
202
|
+
/**
|
|
203
|
+
* Create an error when the authority provided in request does not match authority provided in account or MSAL.js configuration.
|
|
204
|
+
*/
|
|
205
|
+
static createAuthorityMismatchError(): ClientConfigurationError;
|
|
198
206
|
}
|
|
199
207
|
//# sourceMappingURL=ClientConfigurationError.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientConfigurationError.d.ts","sourceRoot":"","sources":["../../src/error/ClientConfigurationError.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,+BAA+B
|
|
1
|
+
{"version":3,"file":"ClientConfigurationError.d.ts","sourceRoot":"","sources":["../../src/error/ClientConfigurationError.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiG3C,CAAC;AAEF;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,eAAe;gBAE7C,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;IAMpD;;OAEG;IACH,MAAM,CAAC,2BAA2B,IAAI,wBAAwB;IAK9D;;OAEG;IACH,MAAM,CAAC,qCAAqC,IAAI,wBAAwB;IAKxE;;OAEG;IACH,MAAM,CAAC,+BAA+B,CAAC,uBAAuB,EAAE,MAAM,GAAG,wBAAwB;IAKjG;;;OAGG;IACH,MAAM,CAAC,+BAA+B,CAAC,SAAS,EAAE,MAAM,GAAG,wBAAwB;IAKnF;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,wBAAwB;IAK3E;;;OAGG;IACH,MAAM,CAAC,mBAAmB,IAAI,wBAAwB;IAKtD;;;OAGG;IACH,MAAM,CAAC,2BAA2B,IAAI,wBAAwB;IAK9D;;;OAGG;IACH,MAAM,CAAC,8BAA8B,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,wBAAwB;IAK3F;;;OAGG;IACH,MAAM,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,wBAAwB;IAK9E;;OAEG;IACH,MAAM,CAAC,+BAA+B,IAAI,wBAAwB;IAKlE;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,wBAAwB;IAOhE;;OAEG;IACH,MAAM,CAAC,4BAA4B,IAAI,wBAAwB;IAO/D;;OAEG;IACH,MAAM,CAAC,qCAAqC,IAAI,wBAAwB;IAOxE;;OAEG;IACH,MAAM,CAAC,qCAAqC,IAAI,wBAAwB;IAOxE;;OAEG;IACH,MAAM,CAAC,wCAAwC,IAAI,wBAAwB;IAK3E;;OAEG;IACH,MAAM,CAAC,mCAAmC,IAAI,wBAAwB;IAKtE;;OAEG;IACH,MAAM,CAAC,6BAA6B,IAAI,wBAAwB;IAKhE;;OAEG;IACH,MAAM,CAAC,oCAAoC,IAAI,wBAAwB;IAKvE;;OAEG;IACH,MAAM,CAAC,wBAAwB,IAAI,wBAAwB;IAK3D;;OAEG;IACH,MAAM,CAAC,wBAAwB,IAAI,wBAAwB;IAK3D;;OAEG;IACH,MAAM,CAAC,4CAA4C,IAAI,wBAAwB;IAK/E;;OAEG;IACH,MAAM,CAAC,sCAAsC,CAAC,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,wBAAwB;IAKnH;;OAEG;IACH,MAAM,CAAC,4BAA4B,IAAI,wBAAwB;CAGlE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-common
|
|
1
|
+
/*! @azure/msal-common v13.1.0 2023-06-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { __extends } from '../_virtual/_tslib.js';
|
|
4
4
|
import { ClientAuthError } from './ClientAuthError.js';
|
|
@@ -102,6 +102,10 @@ var ClientConfigurationErrorMessage = {
|
|
|
102
102
|
invalidAuthenticationHeader: {
|
|
103
103
|
code: "invalid_authentication_header",
|
|
104
104
|
desc: "Invalid authentication header provided"
|
|
105
|
+
},
|
|
106
|
+
authorityMismatch: {
|
|
107
|
+
code: "authority_mismatch",
|
|
108
|
+
desc: "Authority mismatch error. Authority provided in login request or PublicClientApplication config does not match the environment of the provided account. Please use a matching account or make an interactive request to login to this authority."
|
|
105
109
|
}
|
|
106
110
|
};
|
|
107
111
|
/**
|
|
@@ -253,6 +257,12 @@ var ClientConfigurationError = /** @class */ (function (_super) {
|
|
|
253
257
|
ClientConfigurationError.createInvalidAuthenticationHeaderError = function (invalidHeaderName, details) {
|
|
254
258
|
return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthenticationHeader.code, ClientConfigurationErrorMessage.invalidAuthenticationHeader.desc + ". Invalid header: " + invalidHeaderName + ". Details: " + details);
|
|
255
259
|
};
|
|
260
|
+
/**
|
|
261
|
+
* Create an error when the authority provided in request does not match authority provided in account or MSAL.js configuration.
|
|
262
|
+
*/
|
|
263
|
+
ClientConfigurationError.createAuthorityMismatchError = function () {
|
|
264
|
+
return new ClientConfigurationError(ClientConfigurationErrorMessage.authorityMismatch.code, ClientConfigurationErrorMessage.authorityMismatch.desc);
|
|
265
|
+
};
|
|
256
266
|
return ClientConfigurationError;
|
|
257
267
|
}(ClientAuthError));
|
|
258
268
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientConfigurationError.js","sources":["../../src/error/ClientConfigurationError.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ClientAuthError } from \"./ClientAuthError\";\n\n/**\n * ClientConfigurationErrorMessage class containing string constants used by error codes and messages.\n */\nexport const ClientConfigurationErrorMessage = {\n redirectUriNotSet: {\n code: \"redirect_uri_empty\",\n desc: \"A redirect URI is required for all calls, and none has been set.\"\n },\n postLogoutUriNotSet: {\n code: \"post_logout_uri_empty\",\n desc: \"A post logout redirect has not been set.\"\n },\n claimsRequestParsingError: {\n code: \"claims_request_parsing_error\",\n desc: \"Could not parse the given claims request object.\"\n },\n authorityUriInsecure: {\n code: \"authority_uri_insecure\",\n desc: \"Authority URIs must use https. Please see here for valid authority configuration options: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-js-initializing-client-applications#configuration-options\"\n },\n urlParseError: {\n code: \"url_parse_error\",\n desc: \"URL could not be parsed into appropriate segments.\"\n },\n urlEmptyError: {\n code: \"empty_url_error\",\n desc: \"URL was empty or null.\"\n },\n emptyScopesError: {\n code: \"empty_input_scopes_error\",\n desc: \"Scopes cannot be passed as null, undefined or empty array because they are required to obtain an access token.\"\n },\n nonArrayScopesError: {\n code: \"nonarray_input_scopes_error\",\n desc: \"Scopes cannot be passed as non-array.\"\n },\n clientIdSingleScopeError: {\n code: \"clientid_input_scopes_error\",\n desc: \"Client ID can only be provided as a single scope.\"\n },\n invalidPrompt: {\n code: \"invalid_prompt_value\",\n desc: \"Supported prompt values are 'login', 'select_account', 'consent', 'create', 'none' and 'no_session'. Please see here for valid configuration options: https://azuread.github.io/microsoft-authentication-library-for-js/ref/modules/_azure_msal_common.html#commonauthorizationurlrequest\",\n },\n invalidClaimsRequest: {\n code: \"invalid_claims\",\n desc: \"Given claims parameter must be a stringified JSON object.\"\n },\n tokenRequestEmptyError: {\n code: \"token_request_empty\",\n desc: \"Token request was empty and not found in cache.\"\n },\n logoutRequestEmptyError: {\n code: \"logout_request_empty\",\n desc: \"The logout request was null or undefined.\"\n },\n invalidCodeChallengeMethod: {\n code: \"invalid_code_challenge_method\",\n desc: \"code_challenge_method passed is invalid. Valid values are \\\"plain\\\" and \\\"S256\\\".\"\n },\n invalidCodeChallengeParams: {\n code: \"pkce_params_missing\",\n desc: \"Both params: code_challenge and code_challenge_method are to be passed if to be sent in the request\"\n },\n invalidCloudDiscoveryMetadata: {\n code: \"invalid_cloud_discovery_metadata\",\n desc: \"Invalid cloudDiscoveryMetadata provided. Must be a stringified JSON object containing tenant_discovery_endpoint and metadata fields\"\n },\n invalidAuthorityMetadata: {\n code: \"invalid_authority_metadata\",\n desc: \"Invalid authorityMetadata provided. Must by a stringified JSON object containing authorization_endpoint, token_endpoint, issuer fields.\"\n },\n untrustedAuthority: {\n code: \"untrusted_authority\",\n desc: \"The provided authority is not a trusted authority. Please include this authority in the knownAuthorities config parameter.\"\n },\n invalidAzureCloudInstance: {\n code: \"invalid_azure_cloud_instance\",\n desc: \"Invalid AzureCloudInstance provided. Please refer MSAL JS docs: aks.ms/msaljs/azure_cloud_instance for valid values\"\n },\n missingSshJwk: {\n code: \"missing_ssh_jwk\",\n desc: \"Missing sshJwk in SSH certificate request. A stringified JSON Web Key is required when using the SSH authentication scheme.\"\n },\n missingSshKid: {\n code: \"missing_ssh_kid\",\n desc: \"Missing sshKid in SSH certificate request. A string that uniquely identifies the public SSH key is required when using the SSH authentication scheme.\"\n },\n missingNonceAuthenticationHeader: {\n code: \"missing_nonce_authentication_header\",\n desc: \"Unable to find an authentication header containing server nonce. Either the Authentication-Info or WWW-Authenticate headers must be present in order to obtain a server nonce.\"\n },\n invalidAuthenticationHeader: {\n code: \"invalid_authentication_header\",\n desc: \"Invalid authentication header provided\"\n }\n};\n\n/**\n * Error thrown when there is an error in configuration of the MSAL.js library.\n */\nexport class ClientConfigurationError extends ClientAuthError {\n\n constructor(errorCode: string, errorMessage?: string) {\n super(errorCode, errorMessage);\n this.name = \"ClientConfigurationError\";\n Object.setPrototypeOf(this, ClientConfigurationError.prototype);\n }\n\n /**\n * Creates an error thrown when the redirect uri is empty (not set by caller)\n */\n static createRedirectUriEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.redirectUriNotSet.code,\n ClientConfigurationErrorMessage.redirectUriNotSet.desc);\n }\n\n /**\n * Creates an error thrown when the post-logout redirect uri is empty (not set by caller)\n */\n static createPostLogoutRedirectUriEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.postLogoutUriNotSet.code,\n ClientConfigurationErrorMessage.postLogoutUriNotSet.desc);\n }\n\n /**\n * Creates an error thrown when the claims request could not be successfully parsed\n */\n static createClaimsRequestParsingError(claimsRequestParseError: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.claimsRequestParsingError.code,\n `${ClientConfigurationErrorMessage.claimsRequestParsingError.desc} Given value: ${claimsRequestParseError}`);\n }\n\n /**\n * Creates an error thrown if authority uri is given an insecure protocol.\n * @param urlString\n */\n static createInsecureAuthorityUriError(urlString: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.authorityUriInsecure.code,\n `${ClientConfigurationErrorMessage.authorityUriInsecure.desc} Given URI: ${urlString}`);\n }\n\n /**\n * Creates an error thrown if URL string does not parse into separate segments.\n * @param urlString\n */\n static createUrlParseError(urlParseError: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.urlParseError.code,\n `${ClientConfigurationErrorMessage.urlParseError.desc} Given Error: ${urlParseError}`);\n }\n\n /**\n * Creates an error thrown if URL string is empty or null.\n * @param urlString\n */\n static createUrlEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.urlEmptyError.code,\n ClientConfigurationErrorMessage.urlEmptyError.desc);\n }\n\n /**\n * Error thrown when scopes are empty.\n * @param scopesValue\n */\n static createEmptyScopesArrayError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.emptyScopesError.code,\n `${ClientConfigurationErrorMessage.emptyScopesError.desc}`);\n }\n\n /**\n * Error thrown when client id scope is not provided as single scope.\n * @param inputScopes\n */\n static createClientIdSingleScopeError(inputScopes: Array<string>): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.clientIdSingleScopeError.code,\n `${ClientConfigurationErrorMessage.clientIdSingleScopeError.desc} Given Scopes: ${inputScopes}`);\n }\n\n /**\n * Error thrown when prompt is not an allowed type.\n * @param promptValue\n */\n static createInvalidPromptError(promptValue: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidPrompt.code,\n `${ClientConfigurationErrorMessage.invalidPrompt.desc} Given value: ${promptValue}`);\n }\n\n /**\n * Creates error thrown when claims parameter is not a stringified JSON object\n */\n static createInvalidClaimsRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidClaimsRequest.code,\n ClientConfigurationErrorMessage.invalidClaimsRequest.desc);\n }\n\n /**\n * Throws error when token request is empty and nothing cached in storage.\n */\n static createEmptyLogoutRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.logoutRequestEmptyError.code,\n ClientConfigurationErrorMessage.logoutRequestEmptyError.desc\n );\n }\n\n /**\n * Throws error when token request is empty and nothing cached in storage.\n */\n static createEmptyTokenRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.tokenRequestEmptyError.code,\n ClientConfigurationErrorMessage.tokenRequestEmptyError.desc\n );\n }\n\n /**\n * Throws error when an invalid code_challenge_method is passed by the user\n */\n static createInvalidCodeChallengeMethodError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.invalidCodeChallengeMethod.code,\n ClientConfigurationErrorMessage.invalidCodeChallengeMethod.desc\n );\n }\n\n /**\n * Throws error when both params: code_challenge and code_challenge_method are not passed together\n */\n static createInvalidCodeChallengeParamsError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.invalidCodeChallengeParams.code,\n ClientConfigurationErrorMessage.invalidCodeChallengeParams.desc\n );\n }\n\n /**\n * Throws an error when the user passes invalid cloudDiscoveryMetadata\n */\n static createInvalidCloudDiscoveryMetadataError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidCloudDiscoveryMetadata.code,\n ClientConfigurationErrorMessage.invalidCloudDiscoveryMetadata.desc);\n }\n\n /**\n * Throws an error when the user passes invalid cloudDiscoveryMetadata\n */\n static createInvalidAuthorityMetadataError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthorityMetadata.code,\n ClientConfigurationErrorMessage.invalidAuthorityMetadata.desc);\n }\n\n /**\n * Throws error when provided authority is not a member of the trusted host list\n */\n static createUntrustedAuthorityError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.untrustedAuthority.code,\n ClientConfigurationErrorMessage.untrustedAuthority.desc);\n }\n\n /**\n * Throws error when the AzureCloudInstance is set to an invalid value\n */\n static createInvalidAzureCloudInstanceError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAzureCloudInstance.code,\n ClientConfigurationErrorMessage.invalidAzureCloudInstance.desc);\n }\n\n /**\n * Throws an error when the authentication scheme is set to SSH but the SSH public key is omitted from the request\n */\n static createMissingSshJwkError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingSshJwk.code,\n ClientConfigurationErrorMessage.missingSshJwk.desc);\n }\n\n /**\n * Throws an error when the authentication scheme is set to SSH but the SSH public key ID is omitted from the request\n */\n static createMissingSshKidError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingSshKid.code,\n ClientConfigurationErrorMessage.missingSshKid.desc);\n }\n\n /**\n * Throws error when provided headers don't contain a header that a server nonce can be extracted from\n */\n static createMissingNonceAuthenticationHeadersError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingNonceAuthenticationHeader.code,\n ClientConfigurationErrorMessage.missingNonceAuthenticationHeader.desc);\n }\n\n /**\n * Throws error when a provided header is invalid in any way\n */\n static createInvalidAuthenticationHeaderError(invalidHeaderName: string, details: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthenticationHeader.code,\n `${ClientConfigurationErrorMessage.invalidAuthenticationHeader.desc}. Invalid header: ${invalidHeaderName}. Details: ${details}`);\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ClientConfigurationError.js","sources":["../../src/error/ClientConfigurationError.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ClientAuthError } from \"./ClientAuthError\";\n\n/**\n * ClientConfigurationErrorMessage class containing string constants used by error codes and messages.\n */\nexport const ClientConfigurationErrorMessage = {\n redirectUriNotSet: {\n code: \"redirect_uri_empty\",\n desc: \"A redirect URI is required for all calls, and none has been set.\"\n },\n postLogoutUriNotSet: {\n code: \"post_logout_uri_empty\",\n desc: \"A post logout redirect has not been set.\"\n },\n claimsRequestParsingError: {\n code: \"claims_request_parsing_error\",\n desc: \"Could not parse the given claims request object.\"\n },\n authorityUriInsecure: {\n code: \"authority_uri_insecure\",\n desc: \"Authority URIs must use https. Please see here for valid authority configuration options: https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-js-initializing-client-applications#configuration-options\"\n },\n urlParseError: {\n code: \"url_parse_error\",\n desc: \"URL could not be parsed into appropriate segments.\"\n },\n urlEmptyError: {\n code: \"empty_url_error\",\n desc: \"URL was empty or null.\"\n },\n emptyScopesError: {\n code: \"empty_input_scopes_error\",\n desc: \"Scopes cannot be passed as null, undefined or empty array because they are required to obtain an access token.\"\n },\n nonArrayScopesError: {\n code: \"nonarray_input_scopes_error\",\n desc: \"Scopes cannot be passed as non-array.\"\n },\n clientIdSingleScopeError: {\n code: \"clientid_input_scopes_error\",\n desc: \"Client ID can only be provided as a single scope.\"\n },\n invalidPrompt: {\n code: \"invalid_prompt_value\",\n desc: \"Supported prompt values are 'login', 'select_account', 'consent', 'create', 'none' and 'no_session'. Please see here for valid configuration options: https://azuread.github.io/microsoft-authentication-library-for-js/ref/modules/_azure_msal_common.html#commonauthorizationurlrequest\",\n },\n invalidClaimsRequest: {\n code: \"invalid_claims\",\n desc: \"Given claims parameter must be a stringified JSON object.\"\n },\n tokenRequestEmptyError: {\n code: \"token_request_empty\",\n desc: \"Token request was empty and not found in cache.\"\n },\n logoutRequestEmptyError: {\n code: \"logout_request_empty\",\n desc: \"The logout request was null or undefined.\"\n },\n invalidCodeChallengeMethod: {\n code: \"invalid_code_challenge_method\",\n desc: \"code_challenge_method passed is invalid. Valid values are \\\"plain\\\" and \\\"S256\\\".\"\n },\n invalidCodeChallengeParams: {\n code: \"pkce_params_missing\",\n desc: \"Both params: code_challenge and code_challenge_method are to be passed if to be sent in the request\"\n },\n invalidCloudDiscoveryMetadata: {\n code: \"invalid_cloud_discovery_metadata\",\n desc: \"Invalid cloudDiscoveryMetadata provided. Must be a stringified JSON object containing tenant_discovery_endpoint and metadata fields\"\n },\n invalidAuthorityMetadata: {\n code: \"invalid_authority_metadata\",\n desc: \"Invalid authorityMetadata provided. Must by a stringified JSON object containing authorization_endpoint, token_endpoint, issuer fields.\"\n },\n untrustedAuthority: {\n code: \"untrusted_authority\",\n desc: \"The provided authority is not a trusted authority. Please include this authority in the knownAuthorities config parameter.\"\n },\n invalidAzureCloudInstance: {\n code: \"invalid_azure_cloud_instance\",\n desc: \"Invalid AzureCloudInstance provided. Please refer MSAL JS docs: aks.ms/msaljs/azure_cloud_instance for valid values\"\n },\n missingSshJwk: {\n code: \"missing_ssh_jwk\",\n desc: \"Missing sshJwk in SSH certificate request. A stringified JSON Web Key is required when using the SSH authentication scheme.\"\n },\n missingSshKid: {\n code: \"missing_ssh_kid\",\n desc: \"Missing sshKid in SSH certificate request. A string that uniquely identifies the public SSH key is required when using the SSH authentication scheme.\"\n },\n missingNonceAuthenticationHeader: {\n code: \"missing_nonce_authentication_header\",\n desc: \"Unable to find an authentication header containing server nonce. Either the Authentication-Info or WWW-Authenticate headers must be present in order to obtain a server nonce.\"\n },\n invalidAuthenticationHeader: {\n code: \"invalid_authentication_header\",\n desc: \"Invalid authentication header provided\"\n },\n authorityMismatch: {\n code: \"authority_mismatch\",\n desc: \"Authority mismatch error. Authority provided in login request or PublicClientApplication config does not match the environment of the provided account. Please use a matching account or make an interactive request to login to this authority.\"\n }\n};\n\n/**\n * Error thrown when there is an error in configuration of the MSAL.js library.\n */\nexport class ClientConfigurationError extends ClientAuthError {\n\n constructor(errorCode: string, errorMessage?: string) {\n super(errorCode, errorMessage);\n this.name = \"ClientConfigurationError\";\n Object.setPrototypeOf(this, ClientConfigurationError.prototype);\n }\n\n /**\n * Creates an error thrown when the redirect uri is empty (not set by caller)\n */\n static createRedirectUriEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.redirectUriNotSet.code,\n ClientConfigurationErrorMessage.redirectUriNotSet.desc);\n }\n\n /**\n * Creates an error thrown when the post-logout redirect uri is empty (not set by caller)\n */\n static createPostLogoutRedirectUriEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.postLogoutUriNotSet.code,\n ClientConfigurationErrorMessage.postLogoutUriNotSet.desc);\n }\n\n /**\n * Creates an error thrown when the claims request could not be successfully parsed\n */\n static createClaimsRequestParsingError(claimsRequestParseError: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.claimsRequestParsingError.code,\n `${ClientConfigurationErrorMessage.claimsRequestParsingError.desc} Given value: ${claimsRequestParseError}`);\n }\n\n /**\n * Creates an error thrown if authority uri is given an insecure protocol.\n * @param urlString\n */\n static createInsecureAuthorityUriError(urlString: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.authorityUriInsecure.code,\n `${ClientConfigurationErrorMessage.authorityUriInsecure.desc} Given URI: ${urlString}`);\n }\n\n /**\n * Creates an error thrown if URL string does not parse into separate segments.\n * @param urlString\n */\n static createUrlParseError(urlParseError: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.urlParseError.code,\n `${ClientConfigurationErrorMessage.urlParseError.desc} Given Error: ${urlParseError}`);\n }\n\n /**\n * Creates an error thrown if URL string is empty or null.\n * @param urlString\n */\n static createUrlEmptyError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.urlEmptyError.code,\n ClientConfigurationErrorMessage.urlEmptyError.desc);\n }\n\n /**\n * Error thrown when scopes are empty.\n * @param scopesValue\n */\n static createEmptyScopesArrayError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.emptyScopesError.code,\n `${ClientConfigurationErrorMessage.emptyScopesError.desc}`);\n }\n\n /**\n * Error thrown when client id scope is not provided as single scope.\n * @param inputScopes\n */\n static createClientIdSingleScopeError(inputScopes: Array<string>): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.clientIdSingleScopeError.code,\n `${ClientConfigurationErrorMessage.clientIdSingleScopeError.desc} Given Scopes: ${inputScopes}`);\n }\n\n /**\n * Error thrown when prompt is not an allowed type.\n * @param promptValue\n */\n static createInvalidPromptError(promptValue: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidPrompt.code,\n `${ClientConfigurationErrorMessage.invalidPrompt.desc} Given value: ${promptValue}`);\n }\n\n /**\n * Creates error thrown when claims parameter is not a stringified JSON object\n */\n static createInvalidClaimsRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidClaimsRequest.code,\n ClientConfigurationErrorMessage.invalidClaimsRequest.desc);\n }\n\n /**\n * Throws error when token request is empty and nothing cached in storage.\n */\n static createEmptyLogoutRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.logoutRequestEmptyError.code,\n ClientConfigurationErrorMessage.logoutRequestEmptyError.desc\n );\n }\n\n /**\n * Throws error when token request is empty and nothing cached in storage.\n */\n static createEmptyTokenRequestError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.tokenRequestEmptyError.code,\n ClientConfigurationErrorMessage.tokenRequestEmptyError.desc\n );\n }\n\n /**\n * Throws error when an invalid code_challenge_method is passed by the user\n */\n static createInvalidCodeChallengeMethodError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.invalidCodeChallengeMethod.code,\n ClientConfigurationErrorMessage.invalidCodeChallengeMethod.desc\n );\n }\n\n /**\n * Throws error when both params: code_challenge and code_challenge_method are not passed together\n */\n static createInvalidCodeChallengeParamsError(): ClientConfigurationError {\n return new ClientConfigurationError(\n ClientConfigurationErrorMessage.invalidCodeChallengeParams.code,\n ClientConfigurationErrorMessage.invalidCodeChallengeParams.desc\n );\n }\n\n /**\n * Throws an error when the user passes invalid cloudDiscoveryMetadata\n */\n static createInvalidCloudDiscoveryMetadataError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidCloudDiscoveryMetadata.code,\n ClientConfigurationErrorMessage.invalidCloudDiscoveryMetadata.desc);\n }\n\n /**\n * Throws an error when the user passes invalid cloudDiscoveryMetadata\n */\n static createInvalidAuthorityMetadataError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthorityMetadata.code,\n ClientConfigurationErrorMessage.invalidAuthorityMetadata.desc);\n }\n\n /**\n * Throws error when provided authority is not a member of the trusted host list\n */\n static createUntrustedAuthorityError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.untrustedAuthority.code,\n ClientConfigurationErrorMessage.untrustedAuthority.desc);\n }\n\n /**\n * Throws error when the AzureCloudInstance is set to an invalid value\n */\n static createInvalidAzureCloudInstanceError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAzureCloudInstance.code,\n ClientConfigurationErrorMessage.invalidAzureCloudInstance.desc);\n }\n\n /**\n * Throws an error when the authentication scheme is set to SSH but the SSH public key is omitted from the request\n */\n static createMissingSshJwkError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingSshJwk.code,\n ClientConfigurationErrorMessage.missingSshJwk.desc);\n }\n\n /**\n * Throws an error when the authentication scheme is set to SSH but the SSH public key ID is omitted from the request\n */\n static createMissingSshKidError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingSshKid.code,\n ClientConfigurationErrorMessage.missingSshKid.desc);\n }\n\n /**\n * Throws error when provided headers don't contain a header that a server nonce can be extracted from\n */\n static createMissingNonceAuthenticationHeadersError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.missingNonceAuthenticationHeader.code,\n ClientConfigurationErrorMessage.missingNonceAuthenticationHeader.desc);\n }\n\n /**\n * Throws error when a provided header is invalid in any way\n */\n static createInvalidAuthenticationHeaderError(invalidHeaderName: string, details: string): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.invalidAuthenticationHeader.code,\n `${ClientConfigurationErrorMessage.invalidAuthenticationHeader.desc}. Invalid header: ${invalidHeaderName}. Details: ${details}`);\n }\n \n /**\n * Create an error when the authority provided in request does not match authority provided in account or MSAL.js configuration.\n */\n static createAuthorityMismatchError(): ClientConfigurationError {\n return new ClientConfigurationError(ClientConfigurationErrorMessage.authorityMismatch.code, ClientConfigurationErrorMessage.authorityMismatch.desc);\n }\n}\n"],"names":[],"mappings":"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"}
|