@azure/msal-common 14.1.0-alpha.0 → 14.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.
Files changed (205) hide show
  1. package/dist/account/AccountInfo.d.ts +31 -32
  2. package/dist/account/AccountInfo.d.ts.map +1 -1
  3. package/dist/account/AuthToken.d.ts +17 -17
  4. package/dist/account/AuthToken.mjs +58 -58
  5. package/dist/account/CcsCredential.d.ts +9 -9
  6. package/dist/account/CcsCredential.mjs +8 -8
  7. package/dist/account/ClientCredentials.d.ts +14 -14
  8. package/dist/account/ClientInfo.d.ts +19 -19
  9. package/dist/account/ClientInfo.mjs +37 -37
  10. package/dist/account/TokenClaims.d.ts +65 -65
  11. package/dist/authority/Authority.d.ts +235 -235
  12. package/dist/authority/Authority.mjs +738 -738
  13. package/dist/authority/AuthorityFactory.d.ts +31 -31
  14. package/dist/authority/AuthorityFactory.mjs +47 -47
  15. package/dist/authority/AuthorityMetadata.d.ts +623 -623
  16. package/dist/authority/AuthorityMetadata.mjs +884 -884
  17. package/dist/authority/AuthorityOptions.d.ts +21 -21
  18. package/dist/authority/AuthorityOptions.mjs +18 -18
  19. package/dist/authority/AuthorityType.d.ts +10 -10
  20. package/dist/authority/AuthorityType.mjs +13 -13
  21. package/dist/authority/AzureRegion.d.ts +1 -1
  22. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  23. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  24. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  25. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
  26. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  27. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
  28. package/dist/authority/ImdsOptions.d.ts +5 -5
  29. package/dist/authority/OIDCOptions.d.ts +8 -8
  30. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  31. package/dist/authority/OpenIdConfigResponse.mjs +10 -10
  32. package/dist/authority/ProtocolMode.d.ts +8 -8
  33. package/dist/authority/ProtocolMode.mjs +11 -11
  34. package/dist/authority/RegionDiscovery.d.ts +32 -32
  35. package/dist/authority/RegionDiscovery.mjs +106 -106
  36. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  37. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  38. package/dist/cache/CacheManager.d.ts +464 -446
  39. package/dist/cache/CacheManager.d.ts.map +1 -1
  40. package/dist/cache/CacheManager.mjs +1049 -998
  41. package/dist/cache/CacheManager.mjs.map +1 -1
  42. package/dist/cache/entities/AccessTokenEntity.d.ts +56 -56
  43. package/dist/cache/entities/AccessTokenEntity.mjs +109 -109
  44. package/dist/cache/entities/AccountEntity.d.ts +101 -101
  45. package/dist/cache/entities/AccountEntity.mjs +220 -220
  46. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  47. package/dist/cache/entities/AppMetadataEntity.mjs +66 -66
  48. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -48
  49. package/dist/cache/entities/AuthorityMetadataEntity.mjs +78 -78
  50. package/dist/cache/entities/CacheRecord.d.ts +14 -14
  51. package/dist/cache/entities/CacheRecord.mjs +14 -14
  52. package/dist/cache/entities/CredentialEntity.d.ts +88 -88
  53. package/dist/cache/entities/CredentialEntity.mjs +136 -136
  54. package/dist/cache/entities/IdTokenEntity.d.ts +34 -34
  55. package/dist/cache/entities/IdTokenEntity.mjs +56 -56
  56. package/dist/cache/entities/RefreshTokenEntity.d.ts +36 -36
  57. package/dist/cache/entities/RefreshTokenEntity.mjs +59 -59
  58. package/dist/cache/entities/ServerTelemetryEntity.d.ts +12 -12
  59. package/dist/cache/entities/ServerTelemetryEntity.mjs +27 -27
  60. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  61. package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
  62. package/dist/cache/interface/ICacheManager.d.ts +166 -166
  63. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  64. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  65. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  66. package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
  67. package/dist/cache/utils/CacheTypes.d.ts +66 -69
  68. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  69. package/dist/client/AuthorizationCodeClient.d.ts +73 -73
  70. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  71. package/dist/client/AuthorizationCodeClient.mjs +408 -407
  72. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  73. package/dist/client/BaseClient.d.ts +51 -51
  74. package/dist/client/BaseClient.mjs +98 -98
  75. package/dist/client/RefreshTokenClient.d.ts +35 -35
  76. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  77. package/dist/client/RefreshTokenClient.mjs +187 -179
  78. package/dist/client/RefreshTokenClient.mjs.map +1 -1
  79. package/dist/client/SilentFlowClient.d.ts +26 -26
  80. package/dist/client/SilentFlowClient.mjs +123 -123
  81. package/dist/config/AppTokenProvider.d.ts +38 -38
  82. package/dist/config/ClientConfiguration.d.ts +150 -150
  83. package/dist/config/ClientConfiguration.mjs +97 -97
  84. package/dist/crypto/ICrypto.d.ts +58 -62
  85. package/dist/crypto/ICrypto.d.ts.map +1 -1
  86. package/dist/crypto/ICrypto.mjs +30 -33
  87. package/dist/crypto/ICrypto.mjs.map +1 -1
  88. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  89. package/dist/crypto/JoseHeader.d.ts +22 -22
  90. package/dist/crypto/JoseHeader.mjs +37 -37
  91. package/dist/crypto/PopTokenGenerator.d.ts +60 -60
  92. package/dist/crypto/PopTokenGenerator.mjs +82 -82
  93. package/dist/crypto/SignedHttpRequest.d.ts +11 -11
  94. package/dist/error/AuthError.d.ts +44 -44
  95. package/dist/error/AuthError.mjs +46 -46
  96. package/dist/error/AuthErrorCodes.d.ts +5 -5
  97. package/dist/error/AuthErrorCodes.mjs +9 -9
  98. package/dist/error/ClientAuthError.d.ts +232 -232
  99. package/dist/error/ClientAuthError.mjs +244 -244
  100. package/dist/error/ClientAuthErrorCodes.d.ts +43 -43
  101. package/dist/error/ClientAuthErrorCodes.mjs +47 -47
  102. package/dist/error/ClientConfigurationError.d.ts +128 -128
  103. package/dist/error/ClientConfigurationError.mjs +135 -135
  104. package/dist/error/ClientConfigurationErrorCodes.d.ts +22 -22
  105. package/dist/error/ClientConfigurationErrorCodes.mjs +26 -26
  106. package/dist/error/InteractionRequiredAuthError.d.ts +57 -57
  107. package/dist/error/InteractionRequiredAuthError.mjs +76 -76
  108. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +5 -5
  109. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +11 -11
  110. package/dist/error/JoseHeaderError.d.ts +15 -15
  111. package/dist/error/JoseHeaderError.mjs +22 -22
  112. package/dist/error/JoseHeaderErrorCodes.d.ts +2 -2
  113. package/dist/error/JoseHeaderErrorCodes.mjs +6 -6
  114. package/dist/error/ServerError.d.ts +7 -7
  115. package/dist/error/ServerError.mjs +14 -14
  116. package/dist/index.cjs +8672 -8608
  117. package/dist/index.cjs.map +1 -1
  118. package/dist/index.d.ts +96 -96
  119. package/dist/index.d.ts.map +1 -1
  120. package/dist/index.mjs +1 -1
  121. package/dist/logger/Logger.d.ts +95 -95
  122. package/dist/logger/Logger.mjs +188 -188
  123. package/dist/network/INetworkModule.d.ts +29 -29
  124. package/dist/network/INetworkModule.mjs +12 -12
  125. package/dist/network/NetworkManager.d.ts +33 -33
  126. package/dist/network/NetworkManager.mjs +34 -34
  127. package/dist/network/RequestThumbprint.d.ts +16 -16
  128. package/dist/network/ThrottlingUtils.d.ts +42 -42
  129. package/dist/network/ThrottlingUtils.mjs +95 -95
  130. package/dist/packageMetadata.d.ts +2 -2
  131. package/dist/packageMetadata.mjs +4 -4
  132. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  133. package/dist/request/AuthenticationHeaderParser.mjs +55 -55
  134. package/dist/request/BaseAuthRequest.d.ts +40 -40
  135. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  136. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  137. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  138. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  139. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  140. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  141. package/dist/request/CommonRefreshTokenRequest.d.ts +22 -19
  142. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  143. package/dist/request/CommonSilentFlowRequest.d.ts +20 -18
  144. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  145. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  146. package/dist/request/NativeRequest.d.ts +19 -19
  147. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  148. package/dist/request/RequestParameterBuilder.d.ts +217 -217
  149. package/dist/request/RequestParameterBuilder.mjs +381 -381
  150. package/dist/request/RequestValidator.d.ts +33 -33
  151. package/dist/request/RequestValidator.mjs +81 -81
  152. package/dist/request/ScopeSet.d.ts +88 -88
  153. package/dist/request/ScopeSet.mjs +197 -197
  154. package/dist/request/StoreInCache.d.ts +8 -8
  155. package/dist/response/AuthenticationResult.d.ts +41 -41
  156. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  157. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  158. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  159. package/dist/response/IMDSBadResponse.d.ts +4 -4
  160. package/dist/response/ResponseHandler.d.ts +67 -67
  161. package/dist/response/ResponseHandler.mjs +311 -311
  162. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  163. package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
  164. package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
  165. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  166. package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
  167. package/dist/telemetry/performance/PerformanceClient.mjs +409 -409
  168. package/dist/telemetry/performance/PerformanceEvent.d.ts +441 -433
  169. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  170. package/dist/telemetry/performance/PerformanceEvent.mjs +242 -234
  171. package/dist/telemetry/performance/PerformanceEvent.mjs.map +1 -1
  172. package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
  173. package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
  174. package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
  175. package/dist/telemetry/server/ServerTelemetryManager.mjs +197 -197
  176. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  177. package/dist/url/IUri.d.ts +12 -12
  178. package/dist/url/UrlString.d.ts +83 -83
  179. package/dist/url/UrlString.mjs +279 -279
  180. package/dist/utils/Constants.d.ts +366 -366
  181. package/dist/utils/Constants.mjs +376 -376
  182. package/dist/utils/FunctionWrappers.d.ts +27 -27
  183. package/dist/utils/FunctionWrappers.d.ts.map +1 -1
  184. package/dist/utils/FunctionWrappers.mjs +84 -85
  185. package/dist/utils/FunctionWrappers.mjs.map +1 -1
  186. package/dist/utils/MsalTypes.d.ts +6 -6
  187. package/dist/utils/ProtocolUtils.d.ts +42 -42
  188. package/dist/utils/ProtocolUtils.mjs +69 -69
  189. package/dist/utils/StringUtils.d.ts +40 -40
  190. package/dist/utils/StringUtils.mjs +95 -95
  191. package/dist/utils/TimeUtils.d.ts +27 -27
  192. package/dist/utils/TimeUtils.mjs +45 -45
  193. package/package.json +1 -1
  194. package/src/account/AccountInfo.ts +0 -1
  195. package/src/cache/CacheManager.ts +96 -18
  196. package/src/cache/utils/CacheTypes.ts +6 -6
  197. package/src/client/AuthorizationCodeClient.ts +3 -1
  198. package/src/client/RefreshTokenClient.ts +19 -2
  199. package/src/crypto/ICrypto.ts +0 -7
  200. package/src/index.ts +1 -0
  201. package/src/packageMetadata.ts +1 -1
  202. package/src/request/CommonRefreshTokenRequest.ts +3 -0
  203. package/src/request/CommonSilentFlowRequest.ts +2 -0
  204. package/src/telemetry/performance/PerformanceEvent.ts +9 -0
  205. package/src/utils/FunctionWrappers.ts +0 -1
@@ -1,61 +1,61 @@
1
- import { ICrypto, SignedHttpRequestParameters } from "./ICrypto";
2
- import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
3
- import { Logger } from "../logger/Logger";
4
- /**
5
- * See eSTS docs for more info.
6
- * - A kid element, with the value containing an RFC 7638-compliant JWK thumbprint that is base64 encoded.
7
- * - xms_ksl element, representing the storage location of the key's secret component on the client device. One of two values:
8
- * - sw: software storage
9
- * - uhw: hardware storage
10
- */
11
- type ReqCnf = {
12
- kid: string;
13
- xms_ksl: KeyLocation;
14
- };
15
- export type ReqCnfData = {
16
- kid: string;
17
- reqCnfString: string;
18
- reqCnfHash: string;
19
- };
20
- declare const KeyLocation: {
21
- readonly SW: "sw";
22
- readonly UHW: "uhw";
23
- };
24
- export type KeyLocation = (typeof KeyLocation)[keyof typeof KeyLocation];
25
- /** @internal */
26
- export declare class PopTokenGenerator {
27
- private cryptoUtils;
28
- private performanceClient?;
29
- constructor(cryptoUtils: ICrypto, performanceClient?: IPerformanceClient);
30
- /**
31
- * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
32
- * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
33
- * @param request
34
- * @returns
35
- */
36
- generateCnf(request: SignedHttpRequestParameters, logger: Logger): Promise<ReqCnfData>;
37
- /**
38
- * Generates key_id for a SHR token request
39
- * @param request
40
- * @returns
41
- */
42
- generateKid(request: SignedHttpRequestParameters): Promise<ReqCnf>;
43
- /**
44
- * Signs the POP access_token with the local generated key-pair
45
- * @param accessToken
46
- * @param request
47
- * @returns
48
- */
49
- signPopToken(accessToken: string, keyId: string, request: SignedHttpRequestParameters): Promise<string>;
50
- /**
51
- * Utility function to generate the signed JWT for an access_token
52
- * @param payload
53
- * @param kid
54
- * @param request
55
- * @param claims
56
- * @returns
57
- */
58
- signPayload(payload: string, keyId: string, request: SignedHttpRequestParameters, claims?: object): Promise<string>;
59
- }
60
- export {};
1
+ import { ICrypto, SignedHttpRequestParameters } from "./ICrypto";
2
+ import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
3
+ import { Logger } from "../logger/Logger";
4
+ /**
5
+ * See eSTS docs for more info.
6
+ * - A kid element, with the value containing an RFC 7638-compliant JWK thumbprint that is base64 encoded.
7
+ * - xms_ksl element, representing the storage location of the key's secret component on the client device. One of two values:
8
+ * - sw: software storage
9
+ * - uhw: hardware storage
10
+ */
11
+ type ReqCnf = {
12
+ kid: string;
13
+ xms_ksl: KeyLocation;
14
+ };
15
+ export type ReqCnfData = {
16
+ kid: string;
17
+ reqCnfString: string;
18
+ reqCnfHash: string;
19
+ };
20
+ declare const KeyLocation: {
21
+ readonly SW: "sw";
22
+ readonly UHW: "uhw";
23
+ };
24
+ export type KeyLocation = (typeof KeyLocation)[keyof typeof KeyLocation];
25
+ /** @internal */
26
+ export declare class PopTokenGenerator {
27
+ private cryptoUtils;
28
+ private performanceClient?;
29
+ constructor(cryptoUtils: ICrypto, performanceClient?: IPerformanceClient);
30
+ /**
31
+ * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
32
+ * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
33
+ * @param request
34
+ * @returns
35
+ */
36
+ generateCnf(request: SignedHttpRequestParameters, logger: Logger): Promise<ReqCnfData>;
37
+ /**
38
+ * Generates key_id for a SHR token request
39
+ * @param request
40
+ * @returns
41
+ */
42
+ generateKid(request: SignedHttpRequestParameters): Promise<ReqCnf>;
43
+ /**
44
+ * Signs the POP access_token with the local generated key-pair
45
+ * @param accessToken
46
+ * @param request
47
+ * @returns
48
+ */
49
+ signPopToken(accessToken: string, keyId: string, request: SignedHttpRequestParameters): Promise<string>;
50
+ /**
51
+ * Utility function to generate the signed JWT for an access_token
52
+ * @param payload
53
+ * @param kid
54
+ * @param request
55
+ * @param claims
56
+ * @returns
57
+ */
58
+ signPayload(payload: string, keyId: string, request: SignedHttpRequestParameters, claims?: object): Promise<string>;
59
+ }
60
+ export {};
61
61
  //# sourceMappingURL=PopTokenGenerator.d.ts.map
@@ -1,91 +1,91 @@
1
- /*! @azure/msal-common v14.1.0-alpha.0 2023-09-20 */
1
+ /*! @azure/msal-common v14.1.0 2023-10-05 */
2
2
  'use strict';
3
3
  import { TimeUtils } from '../utils/TimeUtils.mjs';
4
4
  import { UrlString } from '../url/UrlString.mjs';
5
5
  import { PerformanceEvents } from '../telemetry/performance/PerformanceEvent.mjs';
6
6
  import { invokeAsync } from '../utils/FunctionWrappers.mjs';
7
7
 
8
- /*
9
- * Copyright (c) Microsoft Corporation. All rights reserved.
10
- * Licensed under the MIT License.
11
- */
12
- const KeyLocation = {
13
- SW: "sw",
14
- UHW: "uhw",
15
- };
16
- /** @internal */
17
- class PopTokenGenerator {
18
- constructor(cryptoUtils, performanceClient) {
19
- this.cryptoUtils = cryptoUtils;
20
- this.performanceClient = performanceClient;
21
- }
22
- /**
23
- * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
24
- * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
25
- * @param request
26
- * @returns
27
- */
28
- async generateCnf(request, logger) {
29
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);
30
- const reqCnf = await invokeAsync(this.generateKid.bind(this), PerformanceEvents.PopTokenGenerateCnf, logger, this.performanceClient, request.correlationId)(request);
31
- const reqCnfString = this.cryptoUtils.base64Encode(JSON.stringify(reqCnf));
32
- return {
33
- kid: reqCnf.kid,
34
- reqCnfString,
35
- reqCnfHash: await this.cryptoUtils.hashString(reqCnfString),
36
- };
37
- }
38
- /**
39
- * Generates key_id for a SHR token request
40
- * @param request
41
- * @returns
42
- */
43
- async generateKid(request) {
44
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
45
- const kidThumbprint = await this.cryptoUtils.getPublicKeyThumbprint(request);
46
- return {
47
- kid: kidThumbprint,
48
- xms_ksl: KeyLocation.SW,
49
- };
50
- }
51
- /**
52
- * Signs the POP access_token with the local generated key-pair
53
- * @param accessToken
54
- * @param request
55
- * @returns
56
- */
57
- async signPopToken(accessToken, keyId, request) {
58
- return this.signPayload(accessToken, keyId, request);
59
- }
60
- /**
61
- * Utility function to generate the signed JWT for an access_token
62
- * @param payload
63
- * @param kid
64
- * @param request
65
- * @param claims
66
- * @returns
67
- */
68
- async signPayload(payload, keyId, request, claims) {
69
- // Deconstruct request to extract SHR parameters
70
- const { resourceRequestMethod, resourceRequestUri, shrClaims, shrNonce, } = request;
71
- const resourceUrlString = resourceRequestUri
72
- ? new UrlString(resourceRequestUri)
73
- : undefined;
74
- const resourceUrlComponents = resourceUrlString?.getUrlComponents();
75
- return await this.cryptoUtils.signJwt({
76
- at: payload,
77
- ts: TimeUtils.nowSeconds(),
78
- m: resourceRequestMethod?.toUpperCase(),
79
- u: resourceUrlComponents?.HostNameAndPort,
80
- nonce: shrNonce || this.cryptoUtils.createNewGuid(),
81
- p: resourceUrlComponents?.AbsolutePath,
82
- q: resourceUrlComponents?.QueryString
83
- ? [[], resourceUrlComponents.QueryString]
84
- : undefined,
85
- client_claims: shrClaims || undefined,
86
- ...claims,
87
- }, keyId, request.correlationId);
88
- }
8
+ /*
9
+ * Copyright (c) Microsoft Corporation. All rights reserved.
10
+ * Licensed under the MIT License.
11
+ */
12
+ const KeyLocation = {
13
+ SW: "sw",
14
+ UHW: "uhw",
15
+ };
16
+ /** @internal */
17
+ class PopTokenGenerator {
18
+ constructor(cryptoUtils, performanceClient) {
19
+ this.cryptoUtils = cryptoUtils;
20
+ this.performanceClient = performanceClient;
21
+ }
22
+ /**
23
+ * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
24
+ * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
25
+ * @param request
26
+ * @returns
27
+ */
28
+ async generateCnf(request, logger) {
29
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);
30
+ const reqCnf = await invokeAsync(this.generateKid.bind(this), PerformanceEvents.PopTokenGenerateCnf, logger, this.performanceClient, request.correlationId)(request);
31
+ const reqCnfString = this.cryptoUtils.base64Encode(JSON.stringify(reqCnf));
32
+ return {
33
+ kid: reqCnf.kid,
34
+ reqCnfString,
35
+ reqCnfHash: await this.cryptoUtils.hashString(reqCnfString),
36
+ };
37
+ }
38
+ /**
39
+ * Generates key_id for a SHR token request
40
+ * @param request
41
+ * @returns
42
+ */
43
+ async generateKid(request) {
44
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
45
+ const kidThumbprint = await this.cryptoUtils.getPublicKeyThumbprint(request);
46
+ return {
47
+ kid: kidThumbprint,
48
+ xms_ksl: KeyLocation.SW,
49
+ };
50
+ }
51
+ /**
52
+ * Signs the POP access_token with the local generated key-pair
53
+ * @param accessToken
54
+ * @param request
55
+ * @returns
56
+ */
57
+ async signPopToken(accessToken, keyId, request) {
58
+ return this.signPayload(accessToken, keyId, request);
59
+ }
60
+ /**
61
+ * Utility function to generate the signed JWT for an access_token
62
+ * @param payload
63
+ * @param kid
64
+ * @param request
65
+ * @param claims
66
+ * @returns
67
+ */
68
+ async signPayload(payload, keyId, request, claims) {
69
+ // Deconstruct request to extract SHR parameters
70
+ const { resourceRequestMethod, resourceRequestUri, shrClaims, shrNonce, } = request;
71
+ const resourceUrlString = resourceRequestUri
72
+ ? new UrlString(resourceRequestUri)
73
+ : undefined;
74
+ const resourceUrlComponents = resourceUrlString?.getUrlComponents();
75
+ return await this.cryptoUtils.signJwt({
76
+ at: payload,
77
+ ts: TimeUtils.nowSeconds(),
78
+ m: resourceRequestMethod?.toUpperCase(),
79
+ u: resourceUrlComponents?.HostNameAndPort,
80
+ nonce: shrNonce || this.cryptoUtils.createNewGuid(),
81
+ p: resourceUrlComponents?.AbsolutePath,
82
+ q: resourceUrlComponents?.QueryString
83
+ ? [[], resourceUrlComponents.QueryString]
84
+ : undefined,
85
+ client_claims: shrClaims || undefined,
86
+ ...claims,
87
+ }, keyId, request.correlationId);
88
+ }
89
89
  }
90
90
 
91
91
  export { PopTokenGenerator };
@@ -1,12 +1,12 @@
1
- export type SignedHttpRequest = {
2
- at?: string;
3
- cnf?: object;
4
- m?: string;
5
- u?: string;
6
- p?: string;
7
- q?: [Array<string>, string];
8
- ts?: number;
9
- nonce?: string;
10
- client_claims?: string;
11
- };
1
+ export type SignedHttpRequest = {
2
+ at?: string;
3
+ cnf?: object;
4
+ m?: string;
5
+ u?: string;
6
+ p?: string;
7
+ q?: [Array<string>, string];
8
+ ts?: number;
9
+ nonce?: string;
10
+ client_claims?: string;
11
+ };
12
12
  //# sourceMappingURL=SignedHttpRequest.d.ts.map
@@ -1,45 +1,45 @@
1
- import * as AuthErrorCodes from "./AuthErrorCodes";
2
- export { AuthErrorCodes };
3
- export declare const AuthErrorMessages: {
4
- unexpected_error: string;
5
- post_request_failed: string;
6
- };
7
- /**
8
- * AuthErrorMessage class containing string constants used by error codes and messages.
9
- * @deprecated Use AuthErrorCodes instead
10
- */
11
- export declare const AuthErrorMessage: {
12
- unexpectedError: {
13
- code: string;
14
- desc: string;
15
- };
16
- postRequestFailed: {
17
- code: string;
18
- desc: string;
19
- };
20
- };
21
- /**
22
- * General error class thrown by the MSAL.js library.
23
- */
24
- export declare class AuthError extends Error {
25
- /**
26
- * Short string denoting error
27
- */
28
- errorCode: string;
29
- /**
30
- * Detailed description of error
31
- */
32
- errorMessage: string;
33
- /**
34
- * Describes the subclass of an error
35
- */
36
- subError: string;
37
- /**
38
- * CorrelationId associated with the error
39
- */
40
- correlationId: string;
41
- constructor(errorCode?: string, errorMessage?: string, suberror?: string);
42
- setCorrelationId(correlationId: string): void;
43
- }
44
- export declare function createAuthError(code: string, additionalMessage?: string): AuthError;
1
+ import * as AuthErrorCodes from "./AuthErrorCodes";
2
+ export { AuthErrorCodes };
3
+ export declare const AuthErrorMessages: {
4
+ unexpected_error: string;
5
+ post_request_failed: string;
6
+ };
7
+ /**
8
+ * AuthErrorMessage class containing string constants used by error codes and messages.
9
+ * @deprecated Use AuthErrorCodes instead
10
+ */
11
+ export declare const AuthErrorMessage: {
12
+ unexpectedError: {
13
+ code: string;
14
+ desc: string;
15
+ };
16
+ postRequestFailed: {
17
+ code: string;
18
+ desc: string;
19
+ };
20
+ };
21
+ /**
22
+ * General error class thrown by the MSAL.js library.
23
+ */
24
+ export declare class AuthError extends Error {
25
+ /**
26
+ * Short string denoting error
27
+ */
28
+ errorCode: string;
29
+ /**
30
+ * Detailed description of error
31
+ */
32
+ errorMessage: string;
33
+ /**
34
+ * Describes the subclass of an error
35
+ */
36
+ subError: string;
37
+ /**
38
+ * CorrelationId associated with the error
39
+ */
40
+ correlationId: string;
41
+ constructor(errorCode?: string, errorMessage?: string, suberror?: string);
42
+ setCorrelationId(correlationId: string): void;
43
+ }
44
+ export declare function createAuthError(code: string, additionalMessage?: string): AuthError;
45
45
  //# sourceMappingURL=AuthError.d.ts.map
@@ -1,55 +1,55 @@
1
- /*! @azure/msal-common v14.1.0-alpha.0 2023-09-20 */
1
+ /*! @azure/msal-common v14.1.0 2023-10-05 */
2
2
  'use strict';
3
3
  import { Constants } from '../utils/Constants.mjs';
4
4
  import { unexpectedError, postRequestFailed } from './AuthErrorCodes.mjs';
5
5
  import * as AuthErrorCodes from './AuthErrorCodes.mjs';
6
6
  export { AuthErrorCodes };
7
7
 
8
- /*
9
- * Copyright (c) Microsoft Corporation. All rights reserved.
10
- * Licensed under the MIT License.
11
- */
12
- const AuthErrorMessages = {
13
- [unexpectedError]: "Unexpected error in authentication.",
14
- [postRequestFailed]: "Post request failed from the network, could be a 4xx/5xx or a network unavailability. Please check the exact error code for details.",
15
- };
16
- /**
17
- * AuthErrorMessage class containing string constants used by error codes and messages.
18
- * @deprecated Use AuthErrorCodes instead
19
- */
20
- const AuthErrorMessage = {
21
- unexpectedError: {
22
- code: unexpectedError,
23
- desc: AuthErrorMessages[unexpectedError],
24
- },
25
- postRequestFailed: {
26
- code: postRequestFailed,
27
- desc: AuthErrorMessages[postRequestFailed],
28
- },
29
- };
30
- /**
31
- * General error class thrown by the MSAL.js library.
32
- */
33
- class AuthError extends Error {
34
- constructor(errorCode, errorMessage, suberror) {
35
- const errorString = errorMessage
36
- ? `${errorCode}: ${errorMessage}`
37
- : errorCode;
38
- super(errorString);
39
- Object.setPrototypeOf(this, AuthError.prototype);
40
- this.errorCode = errorCode || Constants.EMPTY_STRING;
41
- this.errorMessage = errorMessage || Constants.EMPTY_STRING;
42
- this.subError = suberror || Constants.EMPTY_STRING;
43
- this.name = "AuthError";
44
- }
45
- setCorrelationId(correlationId) {
46
- this.correlationId = correlationId;
47
- }
48
- }
49
- function createAuthError(code, additionalMessage) {
50
- return new AuthError(code, additionalMessage
51
- ? `${AuthErrorMessages[code]} ${additionalMessage}`
52
- : AuthErrorMessages[code]);
8
+ /*
9
+ * Copyright (c) Microsoft Corporation. All rights reserved.
10
+ * Licensed under the MIT License.
11
+ */
12
+ const AuthErrorMessages = {
13
+ [unexpectedError]: "Unexpected error in authentication.",
14
+ [postRequestFailed]: "Post request failed from the network, could be a 4xx/5xx or a network unavailability. Please check the exact error code for details.",
15
+ };
16
+ /**
17
+ * AuthErrorMessage class containing string constants used by error codes and messages.
18
+ * @deprecated Use AuthErrorCodes instead
19
+ */
20
+ const AuthErrorMessage = {
21
+ unexpectedError: {
22
+ code: unexpectedError,
23
+ desc: AuthErrorMessages[unexpectedError],
24
+ },
25
+ postRequestFailed: {
26
+ code: postRequestFailed,
27
+ desc: AuthErrorMessages[postRequestFailed],
28
+ },
29
+ };
30
+ /**
31
+ * General error class thrown by the MSAL.js library.
32
+ */
33
+ class AuthError extends Error {
34
+ constructor(errorCode, errorMessage, suberror) {
35
+ const errorString = errorMessage
36
+ ? `${errorCode}: ${errorMessage}`
37
+ : errorCode;
38
+ super(errorString);
39
+ Object.setPrototypeOf(this, AuthError.prototype);
40
+ this.errorCode = errorCode || Constants.EMPTY_STRING;
41
+ this.errorMessage = errorMessage || Constants.EMPTY_STRING;
42
+ this.subError = suberror || Constants.EMPTY_STRING;
43
+ this.name = "AuthError";
44
+ }
45
+ setCorrelationId(correlationId) {
46
+ this.correlationId = correlationId;
47
+ }
48
+ }
49
+ function createAuthError(code, additionalMessage) {
50
+ return new AuthError(code, additionalMessage
51
+ ? `${AuthErrorMessages[code]} ${additionalMessage}`
52
+ : AuthErrorMessages[code]);
53
53
  }
54
54
 
55
55
  export { AuthError, AuthErrorMessage, AuthErrorMessages, createAuthError };
@@ -1,6 +1,6 @@
1
- /**
2
- * AuthErrorMessage class containing string constants used by error codes and messages.
3
- */
4
- export declare const unexpectedError = "unexpected_error";
5
- export declare const postRequestFailed = "post_request_failed";
1
+ /**
2
+ * AuthErrorMessage class containing string constants used by error codes and messages.
3
+ */
4
+ export declare const unexpectedError = "unexpected_error";
5
+ export declare const postRequestFailed = "post_request_failed";
6
6
  //# sourceMappingURL=AuthErrorCodes.d.ts.map
@@ -1,13 +1,13 @@
1
- /*! @azure/msal-common v14.1.0-alpha.0 2023-09-20 */
1
+ /*! @azure/msal-common v14.1.0 2023-10-05 */
2
2
  'use strict';
3
- /*
4
- * Copyright (c) Microsoft Corporation. All rights reserved.
5
- * Licensed under the MIT License.
6
- */
7
- /**
8
- * AuthErrorMessage class containing string constants used by error codes and messages.
9
- */
10
- const unexpectedError = "unexpected_error";
3
+ /*
4
+ * Copyright (c) Microsoft Corporation. All rights reserved.
5
+ * Licensed under the MIT License.
6
+ */
7
+ /**
8
+ * AuthErrorMessage class containing string constants used by error codes and messages.
9
+ */
10
+ const unexpectedError = "unexpected_error";
11
11
  const postRequestFailed = "post_request_failed";
12
12
 
13
13
  export { postRequestFailed, unexpectedError };