@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,33 +1,32 @@
1
- import { TokenClaims } from "./TokenClaims";
2
- /**
3
- * Account object with the following signature:
4
- * - homeAccountId - Home account identifier for this account object
5
- * - environment - Entity which issued the token represented by the domain of the issuer (e.g. login.microsoftonline.com)
6
- * - tenantId - Full tenant or organizational id that this account belongs to
7
- * - username - preferred_username claim of the id_token that represents this account
8
- * - localAccountId - Local, tenant-specific account identifer for this account object, usually used in legacy cases
9
- * - name - Full name for the account, including given name and family name
10
- * - idToken - raw ID token
11
- * - idTokenClaims - Object contains claims from ID token
12
- * - localAccountId - The user's account ID
13
- * - nativeAccountId - The user's native account ID
14
- */
15
- export type AccountInfo = {
16
- homeAccountId: string;
17
- environment: string;
18
- tenantId: string;
19
- username: string;
20
- localAccountId: string;
21
- name?: string;
22
- idToken?: string;
23
- idTokenClaims?: TokenClaims & {
24
- [key: string]: string | number | string[] | object | undefined | unknown;
25
- };
26
- nativeAccountId?: string;
27
- authorityType?: string;
28
- };
29
- export type ActiveAccountFilters = {
30
- homeAccountId: string;
31
- localAccountId: string;
32
- };
1
+ import { TokenClaims } from "./TokenClaims";
2
+ /**
3
+ * Account object with the following signature:
4
+ * - homeAccountId - Home account identifier for this account object
5
+ * - environment - Entity which issued the token represented by the domain of the issuer (e.g. login.microsoftonline.com)
6
+ * - tenantId - Full tenant or organizational id that this account belongs to
7
+ * - username - preferred_username claim of the id_token that represents this account
8
+ * - localAccountId - Local, tenant-specific account identifer for this account object, usually used in legacy cases
9
+ * - name - Full name for the account, including given name and family name
10
+ * - idToken - raw ID token
11
+ * - idTokenClaims - Object contains claims from ID token
12
+ * - nativeAccountId - The user's native account ID
13
+ */
14
+ export type AccountInfo = {
15
+ homeAccountId: string;
16
+ environment: string;
17
+ tenantId: string;
18
+ username: string;
19
+ localAccountId: string;
20
+ name?: string;
21
+ idToken?: string;
22
+ idTokenClaims?: TokenClaims & {
23
+ [key: string]: string | number | string[] | object | undefined | unknown;
24
+ };
25
+ nativeAccountId?: string;
26
+ authorityType?: string;
27
+ };
28
+ export type ActiveAccountFilters = {
29
+ homeAccountId: string;
30
+ localAccountId: string;
31
+ };
33
32
  //# sourceMappingURL=AccountInfo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccountInfo.d.ts","sourceRoot":"","sources":["../../src/account/AccountInfo.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,WAAW,GAAG;QAC1B,CAAC,GAAG,EAAE,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,EAAE,GACR,MAAM,GACN,SAAS,GACT,OAAO,CAAC;KACjB,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"AccountInfo.d.ts","sourceRoot":"","sources":["../../src/account/AccountInfo.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,WAAW,GAAG;QAC1B,CAAC,GAAG,EAAE,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,EAAE,GACR,MAAM,GACN,SAAS,GACT,OAAO,CAAC;KACjB,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAC"}
@@ -1,18 +1,18 @@
1
- import { TokenClaims } from "./TokenClaims";
2
- /**
3
- * Extract token by decoding the rawToken
4
- *
5
- * @param encodedToken
6
- */
7
- export declare function extractTokenClaims(encodedToken: string, base64Decode: (input: string) => string): TokenClaims;
8
- /**
9
- * decode a JWT
10
- *
11
- * @param authToken
12
- */
13
- export declare function getJWSPayload(authToken: string): string;
14
- /**
15
- * Determine if the token's max_age has transpired
16
- */
17
- export declare function checkMaxAge(authTime: number, maxAge: number): void;
1
+ import { TokenClaims } from "./TokenClaims";
2
+ /**
3
+ * Extract token by decoding the rawToken
4
+ *
5
+ * @param encodedToken
6
+ */
7
+ export declare function extractTokenClaims(encodedToken: string, base64Decode: (input: string) => string): TokenClaims;
8
+ /**
9
+ * decode a JWT
10
+ *
11
+ * @param authToken
12
+ */
13
+ export declare function getJWSPayload(authToken: string): string;
14
+ /**
15
+ * Determine if the token's max_age has transpired
16
+ */
17
+ export declare function checkMaxAge(authTime: number, maxAge: number): void;
18
18
  //# sourceMappingURL=AuthToken.d.ts.map
@@ -1,65 +1,65 @@
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 { createClientAuthError } from '../error/ClientAuthError.mjs';
4
4
  import { tokenParsingError, nullOrEmptyToken, maxAgeTranspired } from '../error/ClientAuthErrorCodes.mjs';
5
5
 
6
- /*
7
- * Copyright (c) Microsoft Corporation. All rights reserved.
8
- * Licensed under the MIT License.
9
- */
10
- /**
11
- * Extract token by decoding the rawToken
12
- *
13
- * @param encodedToken
14
- */
15
- function extractTokenClaims(encodedToken, base64Decode) {
16
- const jswPayload = getJWSPayload(encodedToken);
17
- // token will be decoded to get the username
18
- try {
19
- // base64Decode() should throw an error if there is an issue
20
- const base64Decoded = base64Decode(jswPayload);
21
- return JSON.parse(base64Decoded);
22
- }
23
- catch (err) {
24
- throw createClientAuthError(tokenParsingError);
25
- }
26
- }
27
- /**
28
- * decode a JWT
29
- *
30
- * @param authToken
31
- */
32
- function getJWSPayload(authToken) {
33
- if (!authToken) {
34
- throw createClientAuthError(nullOrEmptyToken);
35
- }
36
- const tokenPartsRegex = /^([^\.\s]*)\.([^\.\s]+)\.([^\.\s]*)$/;
37
- const matches = tokenPartsRegex.exec(authToken);
38
- if (!matches || matches.length < 4) {
39
- throw createClientAuthError(tokenParsingError);
40
- }
41
- /**
42
- * const crackedToken = {
43
- * header: matches[1],
44
- * JWSPayload: matches[2],
45
- * JWSSig: matches[3],
46
- * };
47
- */
48
- return matches[2];
49
- }
50
- /**
51
- * Determine if the token's max_age has transpired
52
- */
53
- function checkMaxAge(authTime, maxAge) {
54
- /*
55
- * per https://openid.net/specs/openid-connect-core-1_0.html#AuthRequest
56
- * To force an immediate re-authentication: If an app requires that a user re-authenticate prior to access,
57
- * provide a value of 0 for the max_age parameter and the AS will force a fresh login.
58
- */
59
- const fiveMinuteSkew = 300000; // five minutes in milliseconds
60
- if (maxAge === 0 || Date.now() - fiveMinuteSkew > authTime + maxAge) {
61
- throw createClientAuthError(maxAgeTranspired);
62
- }
6
+ /*
7
+ * Copyright (c) Microsoft Corporation. All rights reserved.
8
+ * Licensed under the MIT License.
9
+ */
10
+ /**
11
+ * Extract token by decoding the rawToken
12
+ *
13
+ * @param encodedToken
14
+ */
15
+ function extractTokenClaims(encodedToken, base64Decode) {
16
+ const jswPayload = getJWSPayload(encodedToken);
17
+ // token will be decoded to get the username
18
+ try {
19
+ // base64Decode() should throw an error if there is an issue
20
+ const base64Decoded = base64Decode(jswPayload);
21
+ return JSON.parse(base64Decoded);
22
+ }
23
+ catch (err) {
24
+ throw createClientAuthError(tokenParsingError);
25
+ }
26
+ }
27
+ /**
28
+ * decode a JWT
29
+ *
30
+ * @param authToken
31
+ */
32
+ function getJWSPayload(authToken) {
33
+ if (!authToken) {
34
+ throw createClientAuthError(nullOrEmptyToken);
35
+ }
36
+ const tokenPartsRegex = /^([^\.\s]*)\.([^\.\s]+)\.([^\.\s]*)$/;
37
+ const matches = tokenPartsRegex.exec(authToken);
38
+ if (!matches || matches.length < 4) {
39
+ throw createClientAuthError(tokenParsingError);
40
+ }
41
+ /**
42
+ * const crackedToken = {
43
+ * header: matches[1],
44
+ * JWSPayload: matches[2],
45
+ * JWSSig: matches[3],
46
+ * };
47
+ */
48
+ return matches[2];
49
+ }
50
+ /**
51
+ * Determine if the token's max_age has transpired
52
+ */
53
+ function checkMaxAge(authTime, maxAge) {
54
+ /*
55
+ * per https://openid.net/specs/openid-connect-core-1_0.html#AuthRequest
56
+ * To force an immediate re-authentication: If an app requires that a user re-authenticate prior to access,
57
+ * provide a value of 0 for the max_age parameter and the AS will force a fresh login.
58
+ */
59
+ const fiveMinuteSkew = 300000; // five minutes in milliseconds
60
+ if (maxAge === 0 || Date.now() - fiveMinuteSkew > authTime + maxAge) {
61
+ throw createClientAuthError(maxAgeTranspired);
62
+ }
63
63
  }
64
64
 
65
65
  export { checkMaxAge, extractTokenClaims, getJWSPayload };
@@ -1,10 +1,10 @@
1
- export type CcsCredential = {
2
- credential: string;
3
- type: CcsCredentialType;
4
- };
5
- export declare const CcsCredentialType: {
6
- readonly HOME_ACCOUNT_ID: "home_account_id";
7
- readonly UPN: "UPN";
8
- };
9
- export type CcsCredentialType = (typeof CcsCredentialType)[keyof typeof CcsCredentialType];
1
+ export type CcsCredential = {
2
+ credential: string;
3
+ type: CcsCredentialType;
4
+ };
5
+ export declare const CcsCredentialType: {
6
+ readonly HOME_ACCOUNT_ID: "home_account_id";
7
+ readonly UPN: "UPN";
8
+ };
9
+ export type CcsCredentialType = (typeof CcsCredentialType)[keyof typeof CcsCredentialType];
10
10
  //# sourceMappingURL=CcsCredential.d.ts.map
@@ -1,12 +1,12 @@
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
- const CcsCredentialType = {
8
- HOME_ACCOUNT_ID: "home_account_id",
9
- UPN: "UPN",
3
+ /*
4
+ * Copyright (c) Microsoft Corporation. All rights reserved.
5
+ * Licensed under the MIT License.
6
+ */
7
+ const CcsCredentialType = {
8
+ HOME_ACCOUNT_ID: "home_account_id",
9
+ UPN: "UPN",
10
10
  };
11
11
 
12
12
  export { CcsCredentialType };
@@ -1,15 +1,15 @@
1
- /**
2
- * Client Assertion credential for Confidential Clients
3
- */
4
- export type ClientAssertion = {
5
- assertion: string;
6
- assertionType: string;
7
- };
8
- /**
9
- * Client Credentials set for Confidential Clients
10
- */
11
- export type ClientCredentials = {
12
- clientSecret?: string;
13
- clientAssertion?: ClientAssertion;
14
- };
1
+ /**
2
+ * Client Assertion credential for Confidential Clients
3
+ */
4
+ export type ClientAssertion = {
5
+ assertion: string;
6
+ assertionType: string;
7
+ };
8
+ /**
9
+ * Client Credentials set for Confidential Clients
10
+ */
11
+ export type ClientCredentials = {
12
+ clientSecret?: string;
13
+ clientAssertion?: ClientAssertion;
14
+ };
15
15
  //# sourceMappingURL=ClientCredentials.d.ts.map
@@ -1,20 +1,20 @@
1
- import { ICrypto } from "../crypto/ICrypto";
2
- /**
3
- * Client info object which consists of two IDs. Need to add more info here.
4
- */
5
- export type ClientInfo = {
6
- uid: string;
7
- utid: string;
8
- };
9
- /**
10
- * Function to build a client info object from server clientInfo string
11
- * @param rawClientInfo
12
- * @param crypto
13
- */
14
- export declare function buildClientInfo(rawClientInfo: string, crypto: ICrypto): ClientInfo;
15
- /**
16
- * Function to build a client info object from cached homeAccountId string
17
- * @param homeAccountId
18
- */
19
- export declare function buildClientInfoFromHomeAccountId(homeAccountId: string): ClientInfo;
1
+ import { ICrypto } from "../crypto/ICrypto";
2
+ /**
3
+ * Client info object which consists of two IDs. Need to add more info here.
4
+ */
5
+ export type ClientInfo = {
6
+ uid: string;
7
+ utid: string;
8
+ };
9
+ /**
10
+ * Function to build a client info object from server clientInfo string
11
+ * @param rawClientInfo
12
+ * @param crypto
13
+ */
14
+ export declare function buildClientInfo(rawClientInfo: string, crypto: ICrypto): ClientInfo;
15
+ /**
16
+ * Function to build a client info object from cached homeAccountId string
17
+ * @param homeAccountId
18
+ */
19
+ export declare function buildClientInfoFromHomeAccountId(homeAccountId: string): ClientInfo;
20
20
  //# sourceMappingURL=ClientInfo.d.ts.map
@@ -1,45 +1,45 @@
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 { createClientAuthError } from '../error/ClientAuthError.mjs';
4
4
  import { Separators, Constants } from '../utils/Constants.mjs';
5
5
  import { clientInfoEmptyError, clientInfoDecodingError } from '../error/ClientAuthErrorCodes.mjs';
6
6
 
7
- /*
8
- * Copyright (c) Microsoft Corporation. All rights reserved.
9
- * Licensed under the MIT License.
10
- */
11
- /**
12
- * Function to build a client info object from server clientInfo string
13
- * @param rawClientInfo
14
- * @param crypto
15
- */
16
- function buildClientInfo(rawClientInfo, crypto) {
17
- if (!rawClientInfo) {
18
- throw createClientAuthError(clientInfoEmptyError);
19
- }
20
- try {
21
- const decodedClientInfo = crypto.base64Decode(rawClientInfo);
22
- return JSON.parse(decodedClientInfo);
23
- }
24
- catch (e) {
25
- throw createClientAuthError(clientInfoDecodingError);
26
- }
27
- }
28
- /**
29
- * Function to build a client info object from cached homeAccountId string
30
- * @param homeAccountId
31
- */
32
- function buildClientInfoFromHomeAccountId(homeAccountId) {
33
- if (!homeAccountId) {
34
- throw createClientAuthError(clientInfoDecodingError);
35
- }
36
- const clientInfoParts = homeAccountId.split(Separators.CLIENT_INFO_SEPARATOR, 2);
37
- return {
38
- uid: clientInfoParts[0],
39
- utid: clientInfoParts.length < 2
40
- ? Constants.EMPTY_STRING
41
- : clientInfoParts[1],
42
- };
7
+ /*
8
+ * Copyright (c) Microsoft Corporation. All rights reserved.
9
+ * Licensed under the MIT License.
10
+ */
11
+ /**
12
+ * Function to build a client info object from server clientInfo string
13
+ * @param rawClientInfo
14
+ * @param crypto
15
+ */
16
+ function buildClientInfo(rawClientInfo, crypto) {
17
+ if (!rawClientInfo) {
18
+ throw createClientAuthError(clientInfoEmptyError);
19
+ }
20
+ try {
21
+ const decodedClientInfo = crypto.base64Decode(rawClientInfo);
22
+ return JSON.parse(decodedClientInfo);
23
+ }
24
+ catch (e) {
25
+ throw createClientAuthError(clientInfoDecodingError);
26
+ }
27
+ }
28
+ /**
29
+ * Function to build a client info object from cached homeAccountId string
30
+ * @param homeAccountId
31
+ */
32
+ function buildClientInfoFromHomeAccountId(homeAccountId) {
33
+ if (!homeAccountId) {
34
+ throw createClientAuthError(clientInfoDecodingError);
35
+ }
36
+ const clientInfoParts = homeAccountId.split(Separators.CLIENT_INFO_SEPARATOR, 2);
37
+ return {
38
+ uid: clientInfoParts[0],
39
+ utid: clientInfoParts.length < 2
40
+ ? Constants.EMPTY_STRING
41
+ : clientInfoParts[1],
42
+ };
43
43
  }
44
44
 
45
45
  export { buildClientInfo, buildClientInfoFromHomeAccountId };
@@ -1,66 +1,66 @@
1
- /**
2
- * Type which describes Id Token claims known by MSAL.
3
- */
4
- export type TokenClaims = {
5
- /**
6
- * Audience
7
- */
8
- aud?: string;
9
- /**
10
- * Issuer
11
- */
12
- iss?: string;
13
- /**
14
- * Issued at
15
- */
16
- iat?: number;
17
- /**
18
- * Not valid before
19
- */
20
- nbf?: number;
21
- /**
22
- * Immutable object identifier, this ID uniquely identifies the user across applications
23
- */
24
- oid?: string;
25
- /**
26
- * Immutable subject identifier, this is a pairwise identifier - it is unique to a particular application ID
27
- */
28
- sub?: string;
29
- /**
30
- * Users' tenant or '9188040d-6c67-4c5b-b112-36a304b66dad' for personal accounts.
31
- */
32
- tid?: string;
33
- ver?: string;
34
- upn?: string;
35
- preferred_username?: string;
36
- login_hint?: string;
37
- emails?: string[];
38
- name?: string;
39
- nonce?: string;
40
- /**
41
- * Expiration
42
- */
43
- exp?: number;
44
- home_oid?: string;
45
- sid?: string;
46
- cloud_instance_host_name?: string;
47
- cnf?: {
48
- kid: string;
49
- };
50
- x5c_ca?: string[];
51
- ts?: number;
52
- at?: string;
53
- u?: string;
54
- p?: string;
55
- m?: string;
56
- roles?: string[];
57
- amr?: string[];
58
- idp?: string;
59
- auth_time?: number;
60
- /**
61
- * Region of the resource tenant
62
- */
63
- tenant_region_scope?: string;
64
- tenant_region_sub_scope?: string;
65
- };
1
+ /**
2
+ * Type which describes Id Token claims known by MSAL.
3
+ */
4
+ export type TokenClaims = {
5
+ /**
6
+ * Audience
7
+ */
8
+ aud?: string;
9
+ /**
10
+ * Issuer
11
+ */
12
+ iss?: string;
13
+ /**
14
+ * Issued at
15
+ */
16
+ iat?: number;
17
+ /**
18
+ * Not valid before
19
+ */
20
+ nbf?: number;
21
+ /**
22
+ * Immutable object identifier, this ID uniquely identifies the user across applications
23
+ */
24
+ oid?: string;
25
+ /**
26
+ * Immutable subject identifier, this is a pairwise identifier - it is unique to a particular application ID
27
+ */
28
+ sub?: string;
29
+ /**
30
+ * Users' tenant or '9188040d-6c67-4c5b-b112-36a304b66dad' for personal accounts.
31
+ */
32
+ tid?: string;
33
+ ver?: string;
34
+ upn?: string;
35
+ preferred_username?: string;
36
+ login_hint?: string;
37
+ emails?: string[];
38
+ name?: string;
39
+ nonce?: string;
40
+ /**
41
+ * Expiration
42
+ */
43
+ exp?: number;
44
+ home_oid?: string;
45
+ sid?: string;
46
+ cloud_instance_host_name?: string;
47
+ cnf?: {
48
+ kid: string;
49
+ };
50
+ x5c_ca?: string[];
51
+ ts?: number;
52
+ at?: string;
53
+ u?: string;
54
+ p?: string;
55
+ m?: string;
56
+ roles?: string[];
57
+ amr?: string[];
58
+ idp?: string;
59
+ auth_time?: number;
60
+ /**
61
+ * Region of the resource tenant
62
+ */
63
+ tenant_region_scope?: string;
64
+ tenant_region_sub_scope?: string;
65
+ };
66
66
  //# sourceMappingURL=TokenClaims.d.ts.map