@azure/msal-browser 3.4.0 → 3.5.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/app/IPublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientApplication.mjs +1 -1
- package/dist/app/PublicClientNext.mjs +1 -1
- package/dist/broker/nativeBroker/NativeMessageHandler.mjs +1 -1
- package/dist/broker/nativeBroker/NativeStatusCodes.mjs +1 -1
- package/dist/cache/AsyncMemoryStorage.mjs +1 -1
- package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
- package/dist/cache/BrowserCacheManager.mjs +8 -8
- package/dist/cache/BrowserCacheManager.mjs.map +1 -1
- package/dist/cache/BrowserStorage.mjs +1 -1
- package/dist/cache/CryptoKeyStore.mjs +1 -1
- package/dist/cache/DatabaseStorage.mjs +1 -1
- package/dist/cache/MemoryStorage.mjs +1 -1
- package/dist/cache/TokenCache.mjs +1 -1
- package/dist/config/Configuration.mjs +1 -1
- package/dist/controllers/ControllerFactory.mjs +1 -1
- package/dist/controllers/NestedAppAuthController.mjs +1 -1
- package/dist/controllers/StandardController.d.ts.map +1 -1
- package/dist/controllers/StandardController.mjs +23 -22
- package/dist/controllers/StandardController.mjs.map +1 -1
- package/dist/controllers/UnknownOperatingContextController.mjs +1 -1
- package/dist/crypto/BrowserCrypto.mjs +1 -1
- package/dist/crypto/CryptoOps.d.ts +2 -2
- package/dist/crypto/CryptoOps.d.ts.map +1 -1
- package/dist/crypto/CryptoOps.mjs +4 -3
- package/dist/crypto/CryptoOps.mjs.map +1 -1
- package/dist/crypto/PkceGenerator.mjs +1 -1
- package/dist/crypto/SignedHttpRequest.mjs +1 -1
- package/dist/encode/Base64Decode.mjs +1 -1
- package/dist/encode/Base64Encode.mjs +1 -1
- package/dist/error/BrowserAuthError.mjs +1 -1
- package/dist/error/BrowserAuthErrorCodes.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthError.mjs +1 -1
- package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +1 -1
- package/dist/error/NativeAuthError.mjs +1 -1
- package/dist/error/NativeAuthErrorCodes.mjs +1 -1
- package/dist/error/NestedAppAuthError.mjs +1 -1
- package/dist/event/EventHandler.mjs +1 -1
- package/dist/event/EventMessage.mjs +1 -1
- package/dist/event/EventType.mjs +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/interaction_client/BaseInteractionClient.d.ts +0 -1
- package/dist/interaction_client/BaseInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/BaseInteractionClient.mjs +2 -3
- package/dist/interaction_client/BaseInteractionClient.mjs.map +1 -1
- package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +1 -1
- package/dist/interaction_client/NativeInteractionClient.mjs +1 -1
- package/dist/interaction_client/PopupClient.d.ts +0 -10
- package/dist/interaction_client/PopupClient.d.ts.map +1 -1
- package/dist/interaction_client/PopupClient.mjs +22 -92
- package/dist/interaction_client/PopupClient.mjs.map +1 -1
- package/dist/interaction_client/RedirectClient.d.ts +3 -3
- package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
- package/dist/interaction_client/RedirectClient.mjs +51 -34
- package/dist/interaction_client/RedirectClient.mjs.map +1 -1
- package/dist/interaction_client/SilentAuthCodeClient.mjs +1 -1
- package/dist/interaction_client/SilentCacheClient.mjs +1 -1
- package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
- package/dist/interaction_client/SilentIframeClient.mjs +8 -17
- package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
- package/dist/interaction_client/SilentRefreshClient.mjs +1 -1
- package/dist/interaction_client/StandardInteractionClient.d.ts +1 -6
- package/dist/interaction_client/StandardInteractionClient.d.ts.map +1 -1
- package/dist/interaction_client/StandardInteractionClient.mjs +2 -24
- package/dist/interaction_client/StandardInteractionClient.mjs.map +1 -1
- package/dist/interaction_handler/InteractionHandler.d.ts +2 -2
- package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
- package/dist/interaction_handler/InteractionHandler.mjs +5 -9
- package/dist/interaction_handler/InteractionHandler.mjs.map +1 -1
- package/dist/interaction_handler/RedirectHandler.d.ts +2 -2
- package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
- package/dist/interaction_handler/RedirectHandler.mjs +4 -8
- package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
- package/dist/interaction_handler/SilentHandler.d.ts +2 -2
- package/dist/interaction_handler/SilentHandler.d.ts.map +1 -1
- package/dist/interaction_handler/SilentHandler.mjs +13 -7
- package/dist/interaction_handler/SilentHandler.mjs.map +1 -1
- package/dist/naa/BridgeError.mjs +1 -1
- package/dist/naa/BridgeProxy.mjs +1 -1
- package/dist/naa/BridgeStatusCode.mjs +1 -1
- package/dist/naa/mapping/NestedAppAuthAdapter.mjs +1 -1
- package/dist/navigation/NavigationClient.mjs +1 -1
- package/dist/network/FetchClient.mjs +1 -1
- package/dist/operatingcontext/BaseOperatingContext.mjs +1 -1
- package/dist/operatingcontext/StandardOperatingContext.mjs +1 -1
- package/dist/operatingcontext/TeamsAppOperatingContext.mjs +1 -1
- package/dist/operatingcontext/UnknownOperatingContext.mjs +1 -1
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.mjs +2 -2
- package/dist/response/ResponseHandler.d.ts +8 -0
- package/dist/response/ResponseHandler.d.ts.map +1 -0
- package/dist/response/ResponseHandler.mjs +46 -0
- package/dist/response/ResponseHandler.mjs.map +1 -0
- package/dist/telemetry/BrowserPerformanceClient.mjs +1 -1
- package/dist/telemetry/BrowserPerformanceMeasurement.mjs +1 -1
- package/dist/utils/BrowserConstants.mjs +1 -1
- package/dist/utils/BrowserProtocolUtils.d.ts +7 -14
- package/dist/utils/BrowserProtocolUtils.d.ts.map +1 -1
- package/dist/utils/BrowserProtocolUtils.mjs +17 -30
- package/dist/utils/BrowserProtocolUtils.mjs.map +1 -1
- package/dist/utils/BrowserUtils.mjs +1 -1
- package/lib/msal-browser.cjs +360 -490
- package/lib/msal-browser.cjs.map +1 -1
- package/lib/msal-browser.js +360 -490
- package/lib/msal-browser.js.map +1 -1
- package/lib/msal-browser.min.js +66 -65
- package/package.json +2 -2
- package/src/cache/BrowserCacheManager.ts +7 -10
- package/src/controllers/StandardController.ts +28 -39
- package/src/crypto/CryptoOps.ts +5 -3
- package/src/index.ts +1 -0
- package/src/interaction_client/BaseInteractionClient.ts +1 -2
- package/src/interaction_client/PopupClient.ts +34 -137
- package/src/interaction_client/RedirectClient.ts +71 -55
- package/src/interaction_client/SilentIframeClient.ts +16 -27
- package/src/interaction_client/StandardInteractionClient.ts +2 -48
- package/src/interaction_handler/InteractionHandler.ts +5 -8
- package/src/interaction_handler/RedirectHandler.ts +4 -8
- package/src/interaction_handler/SilentHandler.ts +12 -5
- package/src/packageMetadata.ts +1 -1
- package/src/response/ResponseHandler.ts +73 -0
- package/src/utils/BrowserProtocolUtils.ts +17 -36
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SilentIframeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentIframeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAGN,uBAAuB,
|
|
1
|
+
{"version":3,"file":"SilentIframeClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/SilentIframeClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EAGN,uBAAuB,EAGvB,kBAAkB,EAIrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKpE,OAAO,EAAmB,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAKxE,qBAAa,kBAAmB,SAAQ,yBAAyB;IAC7D,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,aAAa,EAAE,mBAAmB,CAAC;gBAGzC,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,mBAAmB,EAChC,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,iBAAiB,EACnC,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,kBAAkB,EACrC,iBAAiB,EAAE,mBAAmB,EACtC,oBAAoB,CAAC,EAAE,oBAAoB,EAC3C,aAAa,CAAC,EAAE,MAAM;IAiB1B;;;OAGG;IACG,YAAY,CACd,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,oBAAoB,CAAC;IA6EhC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IASvB;;;;;OAKG;cACa,iBAAiB,CAC7B,UAAU,EAAE,uBAAuB,EACnC,aAAa,EAAE,uBAAuB,GACvC,OAAO,CAAC,oBAAoB,CAAC;CAoInC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
|
-
import { PerformanceEvents, PromptValue, invokeAsync, AuthError,
|
|
3
|
+
import { PerformanceEvents, PromptValue, invokeAsync, AuthError, invoke, ProtocolUtils } from '@azure/msal-common';
|
|
4
4
|
import { StandardInteractionClient } from './StandardInteractionClient.mjs';
|
|
5
5
|
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
6
6
|
import { InteractionType } from '../utils/BrowserConstants.mjs';
|
|
@@ -9,7 +9,8 @@ import { NativeMessageHandler } from '../broker/nativeBroker/NativeMessageHandle
|
|
|
9
9
|
import { NativeInteractionClient } from './NativeInteractionClient.mjs';
|
|
10
10
|
import { InteractionHandler } from '../interaction_handler/InteractionHandler.mjs';
|
|
11
11
|
import { preconnect } from '../utils/BrowserUtils.mjs';
|
|
12
|
-
import {
|
|
12
|
+
import { deserializeResponse } from '../response/ResponseHandler.mjs';
|
|
13
|
+
import { silentPromptValueError, silentLogoutUnsupported, nativeConnectionNotEstablished } from '../error/BrowserAuthErrorCodes.mjs';
|
|
13
14
|
|
|
14
15
|
/*
|
|
15
16
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -86,20 +87,10 @@ class SilentIframeClient extends StandardInteractionClient {
|
|
|
86
87
|
const interactionHandler = new InteractionHandler(authClient, this.browserStorage, authCodeRequest, this.logger, this.performanceClient);
|
|
87
88
|
// Get the frame handle for the silent request
|
|
88
89
|
const msalFrame = await invokeAsync(initiateAuthRequest, PerformanceEvents.SilentHandlerInitiateAuthRequest, this.logger, this.performanceClient, correlationId)(navigateUrl, this.performanceClient, this.logger, correlationId, this.config.system.navigateFrameWait);
|
|
90
|
+
const responseType = this.config.auth.OIDCOptions.serverResponseType;
|
|
89
91
|
// Monitor the window for the hash. Return the string value and close the popup when the hash is received. Default timeout is 60 seconds.
|
|
90
|
-
const
|
|
91
|
-
|
|
92
|
-
// No hash is present
|
|
93
|
-
this.logger.error("The request has returned to the redirectUri but a hash is not present in the iframe. It's likely that the hash has been removed or the page has been redirected by code running on the redirectUri page.");
|
|
94
|
-
throw createBrowserAuthError(hashEmptyError);
|
|
95
|
-
}
|
|
96
|
-
else if (!UrlString.hashContainsKnownProperties(hash)) {
|
|
97
|
-
this.logger.error("A hash is present in the iframe but it does not contain known properties. It's likely that the hash has been replaced by code running on the redirectUri page.");
|
|
98
|
-
this.logger.errorPii(`The hash detected in the iframe is: ${hash}`);
|
|
99
|
-
throw createBrowserAuthError(hashDoesNotContainKnownProperties);
|
|
100
|
-
}
|
|
101
|
-
// Deserialize hash fragment response parameters.
|
|
102
|
-
const serverParams = UrlString.getDeserializedHash(hash);
|
|
92
|
+
const responseString = await invokeAsync(monitorIframeForHash, PerformanceEvents.SilentHandlerMonitorIframeForHash, this.logger, this.performanceClient, correlationId)(msalFrame, this.config.system.iframeHashTimeout, this.config.system.pollIntervalMilliseconds, this.performanceClient, this.logger, correlationId, responseType);
|
|
93
|
+
const serverParams = invoke(deserializeResponse, PerformanceEvents.DeserializeResponse, this.logger, this.performanceClient, this.correlationId)(responseString, responseType, this.logger);
|
|
103
94
|
if (serverParams.accountId) {
|
|
104
95
|
this.logger.verbose("Account id found in hash, calling WAM for token");
|
|
105
96
|
if (!this.nativeMessageHandler) {
|
|
@@ -114,7 +105,7 @@ class SilentIframeClient extends StandardInteractionClient {
|
|
|
114
105
|
});
|
|
115
106
|
}
|
|
116
107
|
// Handle response from hash string
|
|
117
|
-
return invokeAsync(interactionHandler.
|
|
108
|
+
return invokeAsync(interactionHandler.handleCodeResponse.bind(interactionHandler), PerformanceEvents.HandleCodeResponse, this.logger, this.performanceClient, correlationId)(serverParams, silentRequest);
|
|
118
109
|
}
|
|
119
110
|
}
|
|
120
111
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SilentIframeClient.mjs","sources":["../../src/interaction_client/SilentIframeClient.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SilentIframeClient.mjs","sources":["../../src/interaction_client/SilentIframeClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;AAKA;AAaA;AACA;AACA;AA0BQ,MAAA,kBAA4B,SAAA,yBACf,CAAA;AA0BjB,IAAA,WAAA,CAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA;;;AAGG,QAAA,IAAA,CAAA,aAAA,GAAA,iBAAA,CAAA;KACe;AA+ElB;;AAEG;AACH;AASA,IAAA,MAAA,YAAA,CAAA,OAAA,EAAA;;;;;AAKG,aAAA,CAAA,OAAA,CAAA,OAAA,IAAA,CAAA,OAAA,CAAA,OAAA,CAAA,QAAA,CAAA,EAAA;AACa,YAAA,IAAA,CAAA,MAAA,CAAA,OAAiB,CAC7B,qGAEO,CAAA,CAAA;AAoId,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { StandardInteractionClient } from './StandardInteractionClient.mjs';
|
|
4
4
|
import { PerformanceEvents, invokeAsync, RefreshTokenClient } from '@azure/msal-common';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ServerTelemetryManager, CommonAuthorizationCodeRequest, AuthorizationCodeClient, ClientConfiguration, Authority,
|
|
1
|
+
import { ServerTelemetryManager, CommonAuthorizationCodeRequest, AuthorizationCodeClient, ClientConfiguration, Authority, CommonEndSessionRequest, AccountInfo, AzureCloudOptions } from "@azure/msal-common";
|
|
2
2
|
import { BaseInteractionClient } from "./BaseInteractionClient";
|
|
3
3
|
import { AuthorizationUrlRequest } from "../request/AuthorizationUrlRequest";
|
|
4
4
|
import { InteractionType } from "../utils/BrowserConstants";
|
|
@@ -39,11 +39,6 @@ export declare abstract class StandardInteractionClient extends BaseInteractionC
|
|
|
39
39
|
* @param requestCorrelationId
|
|
40
40
|
*/
|
|
41
41
|
protected getClientConfiguration(serverTelemetryManager: ServerTelemetryManager, requestAuthority?: string, requestAzureCloudOptions?: AzureCloudOptions): Promise<ClientConfiguration>;
|
|
42
|
-
/**
|
|
43
|
-
* @param hash
|
|
44
|
-
* @param interactionType
|
|
45
|
-
*/
|
|
46
|
-
protected validateAndExtractStateFromHash(serverParams: ServerAuthorizationCodeResponse, interactionType: InteractionType, requestCorrelationId?: string): string;
|
|
47
42
|
/**
|
|
48
43
|
* Used to get a discovered version of the default authority.
|
|
49
44
|
* @param requestAuthority
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardInteractionClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,sBAAsB,EACtB,8BAA8B,EAE9B,uBAAuB,EACvB,mBAAmB,EAEnB,SAAS,
|
|
1
|
+
{"version":3,"file":"StandardInteractionClient.d.ts","sourceRoot":"","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,sBAAsB,EACtB,8BAA8B,EAE9B,uBAAuB,EACvB,mBAAmB,EAEnB,SAAS,EAGT,uBAAuB,EAIvB,WAAW,EACX,iBAAiB,EAIpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAoB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/D;;GAEG;AACH,8BAAsB,yBAA0B,SAAQ,qBAAqB;IACzE;;;OAGG;cACa,kCAAkC,CAC9C,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,8BAA8B,CAAC;IA0B1C;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAC7B,aAAa,CAAC,EAAE,iBAAiB,GAClC,uBAAuB;IA+F1B;;;;OAIG;IACH,SAAS,CAAC,8BAA8B,CACpC,OAAO,EAAE,WAAW,GACrB,MAAM,GAAG,IAAI;IAmBhB;;;;OAIG;cACa,oBAAoB,CAChC,sBAAsB,EAAE,sBAAsB,EAC9C,YAAY,CAAC,EAAE,MAAM,EACrB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,uBAAuB,CAAC;IAmBnC;;;;;OAKG;cACa,sBAAsB,CAClC,sBAAsB,EAAE,sBAAsB,EAC9C,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,mBAAmB,CAAC;IAiD/B;;;;OAIG;cACa,sBAAsB,CAClC,gBAAgB,CAAC,EAAE,MAAM,EACzB,wBAAwB,CAAC,EAAE,iBAAiB,GAC7C,OAAO,CAAC,SAAS,CAAC;IA0CrB;;;;OAIG;cACa,8BAA8B,CAC1C,OAAO,EAAE,eAAe,GAAG,YAAY,GAAG,gBAAgB,EAC1D,eAAe,EAAE,eAAe,GACjC,OAAO,CAAC,uBAAuB,CAAC;CAyDtC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { PerformanceEvents, invokeAsync, Constants, UrlString, AuthorizationCodeClient, Authority, AuthorityFactory, ProtocolUtils } from '@azure/msal-common';
|
|
4
4
|
import { BaseInteractionClient } from './BaseInteractionClient.mjs';
|
|
5
5
|
import { BrowserConstants } from '../utils/BrowserConstants.mjs';
|
|
6
6
|
import { version } from '../packageMetadata.mjs';
|
|
7
|
-
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
8
|
-
import { BrowserProtocolUtils } from '../utils/BrowserProtocolUtils.mjs';
|
|
9
7
|
import { getCurrentUri } from '../utils/BrowserUtils.mjs';
|
|
10
8
|
import { generatePkceCodes } from '../crypto/PkceGenerator.mjs';
|
|
11
9
|
import { createNewGuid } from '../crypto/BrowserCrypto.mjs';
|
|
12
|
-
import { noStateInHash, unableToParseState, stateInteractionTypeMismatch } from '../error/BrowserAuthErrorCodes.mjs';
|
|
13
10
|
|
|
14
11
|
/*
|
|
15
12
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -24,7 +21,7 @@ class StandardInteractionClient extends BaseInteractionClient {
|
|
|
24
21
|
* @param request
|
|
25
22
|
*/
|
|
26
23
|
async initializeAuthorizationCodeRequest(request) {
|
|
27
|
-
this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest,
|
|
24
|
+
this.performanceClient.addQueueMeasurement(PerformanceEvents.StandardInteractionClientInitializeAuthorizationCodeRequest, this.correlationId);
|
|
28
25
|
const generatedPkceParams = await invokeAsync(generatePkceCodes, PerformanceEvents.GeneratePkceCodes, this.logger, this.performanceClient, this.correlationId)(this.performanceClient, this.logger, this.correlationId);
|
|
29
26
|
const authCodeRequest = {
|
|
30
27
|
...request,
|
|
@@ -173,25 +170,6 @@ class StandardInteractionClient extends BaseInteractionClient {
|
|
|
173
170
|
telemetry: this.config.telemetry,
|
|
174
171
|
};
|
|
175
172
|
}
|
|
176
|
-
/**
|
|
177
|
-
* @param hash
|
|
178
|
-
* @param interactionType
|
|
179
|
-
*/
|
|
180
|
-
validateAndExtractStateFromHash(serverParams, interactionType, requestCorrelationId) {
|
|
181
|
-
this.logger.verbose("validateAndExtractStateFromHash called", requestCorrelationId);
|
|
182
|
-
if (!serverParams.state) {
|
|
183
|
-
throw createBrowserAuthError(noStateInHash);
|
|
184
|
-
}
|
|
185
|
-
const platformStateObj = BrowserProtocolUtils.extractBrowserRequestState(this.browserCrypto, serverParams.state);
|
|
186
|
-
if (!platformStateObj) {
|
|
187
|
-
throw createBrowserAuthError(unableToParseState);
|
|
188
|
-
}
|
|
189
|
-
if (platformStateObj.interactionType !== interactionType) {
|
|
190
|
-
throw createBrowserAuthError(stateInteractionTypeMismatch);
|
|
191
|
-
}
|
|
192
|
-
this.logger.verbose("Returning state from hash", requestCorrelationId);
|
|
193
|
-
return serverParams.state;
|
|
194
|
-
}
|
|
195
173
|
/**
|
|
196
174
|
* Used to get a discovered version of the default authority.
|
|
197
175
|
* @param requestAuthority
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardInteractionClient.mjs","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StandardInteractionClient.mjs","sources":["../../src/interaction_client/StandardInteractionClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;AAKA;AAoBA;AACA;AACA;AAcA;AACI;;;AAGG;;AA6BH;;;AAGG,QAAA,IAAA,CAAA,iBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,2DAAA,EAAA,IAAA,CAAA,aAAA,CAAA,CAAA;QACM,MAAC,4BACN,WAAgB,CAAA,iBAAiB,mBACX,CAAA,iBAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,aAAA,CAAA,CAAA,IAAA,CAAA,iBAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,aAAA,CAAA,CAAA;AA+F1B,QAAA,MAAA,eAAA,GAAA;;;;AAIG,YAAA,YAAA,EAAA,mBAAA,CAAA,QAAA;SACM,CAAA;AAqBT,QAAA,OAAA,CAAA,aAAA,GAAA,mBAAA,CAAA,SAAA,CAAA;;;;AAIG;AACa;AAuBhB;;;;;AAKG,YAAA,aAAA,EAAA,IAAA,CAAA,aAAA,IAAA,aAAA,EAAA;AACa,YAAA,GAAA,aAAA;AAqDhB,SAAA,CAAA;;;;AAIG;AACa,QAAA,IAAA,aAAA,EAAA;AA6ChB;;;;AAIG,oBAAA,IAAA,UAAA,EAAA;AACa,wBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAA8B,gFAEV,CAAA,CAAA;AA0DvC,wBAAA,kBAAA,CAAA,UAAA,GAAA,UAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuthorizationCodePayload, CommonAuthorizationCodeRequest, AuthorizationCodeClient, CcsCredential, Logger, IPerformanceClient } from "@azure/msal-common";
|
|
1
|
+
import { AuthorizationCodePayload, CommonAuthorizationCodeRequest, AuthorizationCodeClient, CcsCredential, Logger, IPerformanceClient, ServerAuthorizationCodeResponse } from "@azure/msal-common";
|
|
2
2
|
import { BrowserCacheManager } from "../cache/BrowserCacheManager";
|
|
3
3
|
import { AuthenticationResult } from "../response/AuthenticationResult";
|
|
4
4
|
import { AuthorizationUrlRequest } from "../request/AuthorizationUrlRequest";
|
|
@@ -16,7 +16,7 @@ export declare class InteractionHandler {
|
|
|
16
16
|
* Function to handle response parameters from hash.
|
|
17
17
|
* @param locationHash
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
handleCodeResponse(response: ServerAuthorizationCodeResponse, request: AuthorizationUrlRequest): Promise<AuthenticationResult>;
|
|
20
20
|
/**
|
|
21
21
|
* Process auth code response from AAD
|
|
22
22
|
* @param authCodeResponse
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/InteractionHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,aAAa,EACb,MAAM,EAEN,kBAAkB,
|
|
1
|
+
{"version":3,"file":"InteractionHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/InteractionHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,aAAa,EACb,MAAM,EAEN,kBAAkB,EAIlB,+BAA+B,EAClC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAKnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E;;GAEG;AACH,qBAAa,kBAAkB;IAC3B,SAAS,CAAC,UAAU,EAAE,uBAAuB,CAAC;IAC9C,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC9C,SAAS,CAAC,eAAe,EAAE,8BAA8B,CAAC;IAC1D,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;gBAG5C,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,kBAAkB;IASzC;;;OAGG;IACG,kBAAkB,CACpB,QAAQ,EAAE,+BAA+B,EACzC,OAAO,EAAE,uBAAuB,GACjC,OAAO,CAAC,oBAAoB,CAAC;IAmChC;;;;;;;OAOG;IACG,4BAA4B,CAC9B,gBAAgB,EAAE,wBAAwB,EAC1C,OAAO,EAAE,uBAAuB,EAChC,aAAa,GAAE,OAAc,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAoDhC;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAC1B,OAAO,EAAE,uBAAuB,GACjC,aAAa,GAAG,IAAI;CAe1B"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { PerformanceEvents, ServerError, invokeAsync, CcsCredentialType } from '@azure/msal-common';
|
|
4
4
|
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
5
|
-
import {
|
|
5
|
+
import { userCancelled } from '../error/BrowserAuthErrorCodes.mjs';
|
|
6
6
|
|
|
7
7
|
/*
|
|
8
8
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -23,15 +23,11 @@ class InteractionHandler {
|
|
|
23
23
|
* Function to handle response parameters from hash.
|
|
24
24
|
* @param locationHash
|
|
25
25
|
*/
|
|
26
|
-
async
|
|
27
|
-
this.performanceClient.addQueueMeasurement(PerformanceEvents.
|
|
28
|
-
// Check that location hash isn't empty.
|
|
29
|
-
if (!locationHash) {
|
|
30
|
-
throw createBrowserAuthError(hashEmptyError);
|
|
31
|
-
}
|
|
26
|
+
async handleCodeResponse(response, request) {
|
|
27
|
+
this.performanceClient.addQueueMeasurement(PerformanceEvents.HandleCodeResponse, request.correlationId);
|
|
32
28
|
let authCodeResponse;
|
|
33
29
|
try {
|
|
34
|
-
authCodeResponse = this.authModule.handleFragmentResponse(
|
|
30
|
+
authCodeResponse = this.authModule.handleFragmentResponse(response, request.state);
|
|
35
31
|
}
|
|
36
32
|
catch (e) {
|
|
37
33
|
if (e instanceof ServerError &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionHandler.mjs","sources":["../../src/interaction_handler/InteractionHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKA;
|
|
1
|
+
{"version":3,"file":"InteractionHandler.mjs","sources":["../../src/interaction_handler/InteractionHandler.ts"],"sourcesContent":[null],"names":["BrowserAuthErrorCodes.userCancelled"],"mappings":";;;;;;AAKA;AAcA;AAKA;AACA;AAIG;AACH;AACI;AACA,MAAS,kBAAiB,CAAA;AAC1B,IAAA,WAAU,CAAA,cAAiB,EAAA,WAAA,EAAA,eAAA,EAA+B,MAAA,EAAA,iBAAA,EAAA;AAC1D,QAAA,IAAA,CAAS,UAAS,GAAA,cAAO,CAAA;AACzB,QAAA,IAAA,CAAS,cAAC,GAAA,WAAmB,CAAA;AAGzB,QAAA,IAAA,CAAA,eAAA,kBAAuC,CAAA;AAa3C,QAAA,IAAA,CAAA,MAAA,GAAA,MAAA,CAAA;;;AAGG;AACG;AAsCN;;;;;;;AAOG,SAAA;AACG,QAAA,OAAA,CAAA,EAAA;AAwDN,YAAA,IAAA,CAAA,YAAA,WAAA;;AAEG;4CAEU,CAAuBA,aACpB,CAAA,CAAA;AAenB,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuthorizationCodeClient, CommonAuthorizationCodeRequest, Logger, IPerformanceClient, CcsCredential } from "@azure/msal-common";
|
|
1
|
+
import { AuthorizationCodeClient, CommonAuthorizationCodeRequest, Logger, IPerformanceClient, CcsCredential, ServerAuthorizationCodeResponse } from "@azure/msal-common";
|
|
2
2
|
import { BrowserCacheManager } from "../cache/BrowserCacheManager";
|
|
3
3
|
import { INavigationClient } from "../navigation/INavigationClient";
|
|
4
4
|
import { AuthenticationResult } from "../response/AuthenticationResult";
|
|
@@ -24,7 +24,7 @@ export declare class RedirectHandler {
|
|
|
24
24
|
* Handle authorization code response in the window.
|
|
25
25
|
* @param hash
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
handleCodeResponse(response: ServerAuthorizationCodeResponse, state: string): Promise<AuthenticationResult>;
|
|
28
28
|
/**
|
|
29
29
|
* Looks up ccs creds in the cache
|
|
30
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedirectHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/RedirectHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,MAAM,EAEN,kBAAkB,EAGlB,aAAa,
|
|
1
|
+
{"version":3,"file":"RedirectHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/RedirectHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,MAAM,EAEN,kBAAkB,EAGlB,aAAa,EAGb,+BAA+B,EAClC,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG;IACzB,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC;CACxD,CAAC;AAEF,qBAAa,eAAe;IACxB,UAAU,EAAE,uBAAuB,CAAC;IACpC,cAAc,EAAE,mBAAmB,CAAC;IACpC,eAAe,EAAE,8BAA8B,CAAC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,kBAAkB,CAAC;gBAGlC,cAAc,EAAE,uBAAuB,EACvC,WAAW,EAAE,mBAAmB,EAChC,eAAe,EAAE,8BAA8B,EAC/C,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,kBAAkB;IASzC;;;OAGG;IACG,mBAAmB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IA6EhB;;;OAGG;IACG,kBAAkB,CACpB,QAAQ,EAAE,+BAA+B,EACzC,KAAK,EAAE,MAAM,GACd,OAAO,CAAC,oBAAoB,CAAC;IAgFhC;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,aAAa,GAAG,IAAI;CAoBxD"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { createClientAuthError, ClientAuthErrorCodes, ServerError, invokeAsync, PerformanceEvents } from '@azure/msal-common';
|
|
4
4
|
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
5
5
|
import { TemporaryCacheKeys, ApiId } from '../utils/BrowserConstants.mjs';
|
|
6
|
-
import { emptyNavigateUri,
|
|
6
|
+
import { emptyNavigateUri, userCancelled } from '../error/BrowserAuthErrorCodes.mjs';
|
|
7
7
|
|
|
8
8
|
/*
|
|
9
9
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
@@ -71,12 +71,8 @@ class RedirectHandler {
|
|
|
71
71
|
* Handle authorization code response in the window.
|
|
72
72
|
* @param hash
|
|
73
73
|
*/
|
|
74
|
-
async
|
|
74
|
+
async handleCodeResponse(response, state) {
|
|
75
75
|
this.logger.verbose("RedirectHandler.handleCodeResponse called");
|
|
76
|
-
// Check that location hash isn't empty.
|
|
77
|
-
if (!locationHash) {
|
|
78
|
-
throw createBrowserAuthError(hashEmptyError);
|
|
79
|
-
}
|
|
80
76
|
// Interaction is completed - remove interaction status.
|
|
81
77
|
this.browserStorage.setInteractionInProgress(false);
|
|
82
78
|
// Handle code response.
|
|
@@ -87,7 +83,7 @@ class RedirectHandler {
|
|
|
87
83
|
}
|
|
88
84
|
let authCodeResponse;
|
|
89
85
|
try {
|
|
90
|
-
authCodeResponse = this.authModule.handleFragmentResponse(
|
|
86
|
+
authCodeResponse = this.authModule.handleFragmentResponse(response, requestState);
|
|
91
87
|
}
|
|
92
88
|
catch (e) {
|
|
93
89
|
if (e instanceof ServerError &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedirectHandler.mjs","sources":["../../src/interaction_handler/RedirectHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;
|
|
1
|
+
{"version":3,"file":"RedirectHandler.mjs","sources":["../../src/interaction_handler/RedirectHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;AAkBA;AACA;AAEA;AAKqB,MAAA,gBAAQ;IACzB,WAAkB,CAAA,cAAO,aAAa,EAAA,eAAe,EAAA,MAAA,EAAA,iBAAA,EAAA;QACvD,IAAA,CAAA,UAAA,GAAA,cAAA,CAAA;AAEF,QAAA,IAAA,CAAA,cAA4B,GAAA,WAAA,CAAA;QACd,IAAA,CAAA,iCAA0B,CAAA;QACtB,IAAA,CAAA,MAAA;QACC,IAAA,CAAA,sCAAgC;KACzC;;AAIF;AAaJ;;;AAGG,QAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,4CAAA,CAAA,CAAA;AACG;AAgFN,QAAA,IAAA,UAAA,EAAA;;;AAGG,gBAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,gFAAA,CAAA,CAAA;AACG,gBAAA,IAAA,CAAA,cACQ,CAAA,iBAAA,CAAA,kBACH,CAAA,UACR,EAAA,MAAQ,CAAA,iBAAA,EAAqB,IAAA,CAAA,CAAA;AAgFhC,aAAA;;AAEG,YAAA,IAAA,CAAA,cAAA,CAAA,iBAAA,CAAA,kBAAA,CAAA,cAAA,EAAA,IAAA,CAAA,eAAA,CAAA,aAAA,EAAA,IAAA,CAAA,CAAA;AACH,YAAA,IAAU,CAAA,cAAA,CAAA,gBAAuB,CAAA,IAAgB,CAAI,eAAA,CAAA,CAAA;AAoBxD,YAAA,IAAA,CAAA,MAAA,CAAA,OAAA,CAAA,CAAA,kDAAA,EAAA,UAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Logger, IPerformanceClient } from "@azure/msal-common";
|
|
1
|
+
import { Logger, IPerformanceClient, ServerResponseType } from "@azure/msal-common";
|
|
2
2
|
/**
|
|
3
3
|
* Creates a hidden iframe to given URL using user-requested scopes as an id.
|
|
4
4
|
* @param urlNavigate
|
|
@@ -10,5 +10,5 @@ export declare function initiateAuthRequest(requestUrl: string, performanceClien
|
|
|
10
10
|
* @param iframe
|
|
11
11
|
* @param timeout
|
|
12
12
|
*/
|
|
13
|
-
export declare function monitorIframeForHash(iframe: HTMLIFrameElement, timeout: number, pollIntervalMilliseconds: number, performanceClient: IPerformanceClient, logger: Logger, correlationId: string): Promise<string>;
|
|
13
|
+
export declare function monitorIframeForHash(iframe: HTMLIFrameElement, timeout: number, pollIntervalMilliseconds: number, performanceClient: IPerformanceClient, logger: Logger, correlationId: string, responseType: ServerResponseType): Promise<string>;
|
|
14
14
|
//# sourceMappingURL=SilentHandler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SilentHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/SilentHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,MAAM,EACN,kBAAkB,
|
|
1
|
+
{"version":3,"file":"SilentHandler.d.ts","sourceRoot":"","sources":["../../src/interaction_handler/SilentHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,MAAM,EACN,kBAAkB,EAIlB,kBAAkB,EACrB,MAAM,oBAAoB,CAAC;AAO5B;;;;GAIG;AACH,wBAAsB,mBAAmB,CACrC,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,MAAM,EACf,wBAAwB,EAAE,MAAM,EAChC,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,kBAAkB,GACjC,OAAO,CAAC,MAAM,CAAC,CA+DjB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
|
-
import { PerformanceEvents, invokeAsync, invoke } from '@azure/msal-common';
|
|
3
|
+
import { PerformanceEvents, invokeAsync, invoke, ServerResponseType } from '@azure/msal-common';
|
|
4
4
|
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
5
5
|
import { DEFAULT_IFRAME_TIMEOUT_MS } from '../config/Configuration.mjs';
|
|
6
6
|
import { emptyNavigateUri, monitorWindowTimeout } from '../error/BrowserAuthErrorCodes.mjs';
|
|
@@ -31,7 +31,7 @@ async function initiateAuthRequest(requestUrl, performanceClient, logger, correl
|
|
|
31
31
|
* @param iframe
|
|
32
32
|
* @param timeout
|
|
33
33
|
*/
|
|
34
|
-
async function monitorIframeForHash(iframe, timeout, pollIntervalMilliseconds, performanceClient, logger, correlationId) {
|
|
34
|
+
async function monitorIframeForHash(iframe, timeout, pollIntervalMilliseconds, performanceClient, logger, correlationId, responseType) {
|
|
35
35
|
performanceClient.addQueueMeasurement(PerformanceEvents.SilentHandlerMonitorIframeForHash, correlationId);
|
|
36
36
|
return new Promise((resolve, reject) => {
|
|
37
37
|
if (timeout < DEFAULT_IFRAME_TIMEOUT_MS) {
|
|
@@ -60,12 +60,18 @@ async function monitorIframeForHash(iframe, timeout, pollIntervalMilliseconds, p
|
|
|
60
60
|
if (!href || href === "about:blank") {
|
|
61
61
|
return;
|
|
62
62
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
let responseString = "";
|
|
64
|
+
if (contentWindow) {
|
|
65
|
+
if (responseType === ServerResponseType.QUERY) {
|
|
66
|
+
responseString = contentWindow.location.search;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
responseString = contentWindow.location.hash;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
66
72
|
window.clearTimeout(timeoutId);
|
|
67
73
|
window.clearInterval(intervalId);
|
|
68
|
-
resolve(
|
|
74
|
+
resolve(responseString);
|
|
69
75
|
}, pollIntervalMilliseconds);
|
|
70
76
|
}).finally(() => {
|
|
71
77
|
invoke(removeHiddenIframe, PerformanceEvents.RemoveHiddenIframe, logger, performanceClient, correlationId)(iframe);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SilentHandler.mjs","sources":["../../src/interaction_handler/SilentHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;
|
|
1
|
+
{"version":3,"file":"SilentHandler.mjs","sources":["../../src/interaction_handler/SilentHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;AAcA;;;AAwCA;;;;AAIG;AACH,eAAA,mBAA0C,CAAA,UAChC,mBACN,EAAA,MAAO,EAAE,aACe,EAAA,iBAAA,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/naa/BridgeError.mjs
CHANGED
package/dist/naa/BridgeProxy.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
import { TimeUtils, AuthToken, AuthError, InteractionRequiredAuthError, ServerError, ClientAuthError, ClientAuthErrorCodes } from '@azure/msal-common';
|
|
4
4
|
import { isBridgeError } from '../BridgeError.mjs';
|
package/dist/packageMetadata.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/*! @azure/msal-browser v3.
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
2
|
'use strict';
|
|
3
3
|
/* eslint-disable header/header */
|
|
4
4
|
const name = "@azure/msal-browser";
|
|
5
|
-
const version = "3.
|
|
5
|
+
const version = "3.5.0";
|
|
6
6
|
|
|
7
7
|
export { name, version };
|
|
8
8
|
//# sourceMappingURL=packageMetadata.mjs.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ICrypto, Logger, ServerAuthorizationCodeResponse } from "@azure/msal-common";
|
|
2
|
+
import { InteractionType } from "../utils/BrowserConstants";
|
|
3
|
+
export declare function deserializeResponse(responseString: string, responseLocation: string, logger: Logger): ServerAuthorizationCodeResponse;
|
|
4
|
+
/**
|
|
5
|
+
* Returns the interaction type that the response object belongs to
|
|
6
|
+
*/
|
|
7
|
+
export declare function validateInteractionType(response: ServerAuthorizationCodeResponse, browserCrypto: ICrypto, interactionType: InteractionType): void;
|
|
8
|
+
//# sourceMappingURL=ResponseHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResponseHandler.d.ts","sourceRoot":"","sources":["../../src/response/ResponseHandler.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,OAAO,EACP,MAAM,EACN,+BAA+B,EAElC,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,wBAAgB,mBAAmB,CAC/B,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,GACf,+BAA+B,CAuBjC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,+BAA+B,EACzC,aAAa,EAAE,OAAO,EACtB,eAAe,EAAE,eAAe,GACjC,IAAI,CAkBN"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/*! @azure/msal-browser v3.5.0 2023-11-07 */
|
|
2
|
+
'use strict';
|
|
3
|
+
import { UrlUtils } from '@azure/msal-common';
|
|
4
|
+
import { createBrowserAuthError } from '../error/BrowserAuthError.mjs';
|
|
5
|
+
import { extractBrowserRequestState } from '../utils/BrowserProtocolUtils.mjs';
|
|
6
|
+
import { hashEmptyError, hashDoesNotContainKnownProperties, noStateInHash, unableToParseState, stateInteractionTypeMismatch } from '../error/BrowserAuthErrorCodes.mjs';
|
|
7
|
+
|
|
8
|
+
/*
|
|
9
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
10
|
+
* Licensed under the MIT License.
|
|
11
|
+
*/
|
|
12
|
+
function deserializeResponse(responseString, responseLocation, logger) {
|
|
13
|
+
// Deserialize hash fragment response parameters.
|
|
14
|
+
const serverParams = UrlUtils.getDeserializedResponse(responseString);
|
|
15
|
+
if (!serverParams) {
|
|
16
|
+
if (!UrlUtils.stripLeadingHashOrQuery(responseString)) {
|
|
17
|
+
// Hash or Query string is empty
|
|
18
|
+
logger.error(`The request has returned to the redirectUri but a ${responseLocation} is not present. It's likely that the ${responseLocation} has been removed or the page has been redirected by code running on the redirectUri page.`);
|
|
19
|
+
throw createBrowserAuthError(hashEmptyError);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
logger.error(`A ${responseLocation} is present in the iframe but it does not contain known properties. It's likely that the ${responseLocation} has been replaced by code running on the redirectUri page.`);
|
|
23
|
+
logger.errorPii(`The ${responseLocation} detected is: ${responseString}`);
|
|
24
|
+
throw createBrowserAuthError(hashDoesNotContainKnownProperties);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return serverParams;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Returns the interaction type that the response object belongs to
|
|
31
|
+
*/
|
|
32
|
+
function validateInteractionType(response, browserCrypto, interactionType) {
|
|
33
|
+
if (!response.state) {
|
|
34
|
+
throw createBrowserAuthError(noStateInHash);
|
|
35
|
+
}
|
|
36
|
+
const platformStateObj = extractBrowserRequestState(browserCrypto, response.state);
|
|
37
|
+
if (!platformStateObj) {
|
|
38
|
+
throw createBrowserAuthError(unableToParseState);
|
|
39
|
+
}
|
|
40
|
+
if (platformStateObj.interactionType !== interactionType) {
|
|
41
|
+
throw createBrowserAuthError(stateInteractionTypeMismatch);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export { deserializeResponse, validateInteractionType };
|
|
46
|
+
//# sourceMappingURL=ResponseHandler.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResponseHandler.mjs","sources":["../../src/response/ResponseHandler.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAKA;AAWA;AAEA;AA6BA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,19 +1,12 @@
|
|
|
1
1
|
import { InteractionType } from "./BrowserConstants";
|
|
2
|
-
import { ICrypto
|
|
2
|
+
import { ICrypto } from "@azure/msal-common";
|
|
3
3
|
export type BrowserStateObject = {
|
|
4
4
|
interactionType: InteractionType;
|
|
5
5
|
};
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
static extractBrowserRequestState(browserCrypto: ICrypto, state: string): BrowserStateObject | null;
|
|
13
|
-
/**
|
|
14
|
-
* Parses properties of server response from url hash
|
|
15
|
-
* @param locationHash Hash from url
|
|
16
|
-
*/
|
|
17
|
-
static parseServerResponseFromHash(locationHash: string): ServerAuthorizationCodeResponse;
|
|
18
|
-
}
|
|
6
|
+
/**
|
|
7
|
+
* Extracts the BrowserStateObject from the state string.
|
|
8
|
+
* @param browserCrypto
|
|
9
|
+
* @param state
|
|
10
|
+
*/
|
|
11
|
+
export declare function extractBrowserRequestState(browserCrypto: ICrypto, state: string): BrowserStateObject | null;
|
|
19
12
|
//# sourceMappingURL=BrowserProtocolUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserProtocolUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BrowserProtocolUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACH,OAAO,
|
|
1
|
+
{"version":3,"file":"BrowserProtocolUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BrowserProtocolUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACH,OAAO,EAKV,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG;IAC7B,eAAe,EAAE,eAAe,CAAC;CACpC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,0BAA0B,CACtC,aAAa,EAAE,OAAO,EACtB,KAAK,EAAE,MAAM,GACd,kBAAkB,GAAG,IAAI,CAY3B"}
|