@azure/msal-common 14.0.0-alpha.1 → 14.0.0-beta.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 (187) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +62 -62
  3. package/dist/account/AccountInfo.d.ts +31 -31
  4. package/dist/account/AuthToken.d.ts +20 -20
  5. package/dist/account/AuthToken.js +48 -48
  6. package/dist/account/CcsCredential.d.ts +9 -8
  7. package/dist/account/CcsCredential.d.ts.map +1 -1
  8. package/dist/account/CcsCredential.js +9 -10
  9. package/dist/account/CcsCredential.js.map +1 -1
  10. package/dist/account/ClientCredentials.d.ts +14 -14
  11. package/dist/account/ClientInfo.d.ts +19 -19
  12. package/dist/account/ClientInfo.js +37 -37
  13. package/dist/account/DecodedAuthToken.d.ts +8 -8
  14. package/dist/account/TokenClaims.d.ts +65 -65
  15. package/dist/authority/Authority.d.ts +228 -215
  16. package/dist/authority/Authority.d.ts.map +1 -1
  17. package/dist/authority/Authority.js +716 -682
  18. package/dist/authority/Authority.js.map +1 -1
  19. package/dist/authority/AuthorityFactory.d.ts +30 -30
  20. package/dist/authority/AuthorityFactory.js +47 -47
  21. package/dist/authority/AuthorityMetadata.d.ts +622 -622
  22. package/dist/authority/AuthorityMetadata.js +876 -876
  23. package/dist/authority/AuthorityOptions.d.ts +19 -18
  24. package/dist/authority/AuthorityOptions.d.ts.map +1 -1
  25. package/dist/authority/AuthorityOptions.js +19 -20
  26. package/dist/authority/AuthorityOptions.js.map +1 -1
  27. package/dist/authority/AuthorityType.d.ts +10 -9
  28. package/dist/authority/AuthorityType.d.ts.map +1 -1
  29. package/dist/authority/AuthorityType.js +14 -15
  30. package/dist/authority/AuthorityType.js.map +1 -1
  31. package/dist/authority/AzureRegion.d.ts +1 -1
  32. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  33. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  34. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  35. package/dist/authority/CloudInstanceDiscoveryErrorResponse.js +8 -8
  36. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  37. package/dist/authority/CloudInstanceDiscoveryResponse.js +8 -8
  38. package/dist/authority/ImdsOptions.d.ts +5 -5
  39. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  40. package/dist/authority/OpenIdConfigResponse.js +10 -10
  41. package/dist/authority/ProtocolMode.d.ts +8 -7
  42. package/dist/authority/ProtocolMode.d.ts.map +1 -1
  43. package/dist/authority/ProtocolMode.js +12 -13
  44. package/dist/authority/ProtocolMode.js.map +1 -1
  45. package/dist/authority/RegionDiscovery.d.ts +30 -30
  46. package/dist/authority/RegionDiscovery.js +108 -108
  47. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  48. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  49. package/dist/cache/CacheManager.d.ts +443 -443
  50. package/dist/cache/CacheManager.js +1011 -1011
  51. package/dist/cache/entities/AccessTokenEntity.d.ts +56 -56
  52. package/dist/cache/entities/AccessTokenEntity.js +111 -111
  53. package/dist/cache/entities/AccountEntity.d.ts +99 -99
  54. package/dist/cache/entities/AccountEntity.js +248 -248
  55. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  56. package/dist/cache/entities/AppMetadataEntity.js +66 -66
  57. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +47 -47
  58. package/dist/cache/entities/AuthorityMetadataEntity.js +77 -77
  59. package/dist/cache/entities/CacheRecord.d.ts +13 -13
  60. package/dist/cache/entities/CacheRecord.js +13 -13
  61. package/dist/cache/entities/CredentialEntity.d.ts +88 -88
  62. package/dist/cache/entities/CredentialEntity.js +136 -136
  63. package/dist/cache/entities/IdTokenEntity.d.ts +34 -34
  64. package/dist/cache/entities/IdTokenEntity.js +56 -56
  65. package/dist/cache/entities/RefreshTokenEntity.d.ts +36 -36
  66. package/dist/cache/entities/RefreshTokenEntity.js +59 -59
  67. package/dist/cache/entities/ServerTelemetryEntity.d.ts +12 -12
  68. package/dist/cache/entities/ServerTelemetryEntity.js +27 -27
  69. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  70. package/dist/cache/entities/ThrottlingEntity.js +23 -23
  71. package/dist/cache/interface/ICacheManager.d.ts +165 -165
  72. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  73. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  74. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  75. package/dist/cache/persistence/TokenCacheContext.js +25 -25
  76. package/dist/cache/utils/CacheTypes.d.ts +62 -62
  77. package/dist/client/AuthorizationCodeClient.d.ts +71 -71
  78. package/dist/client/AuthorizationCodeClient.js +433 -433
  79. package/dist/client/BaseClient.d.ts +50 -50
  80. package/dist/client/BaseClient.js +92 -92
  81. package/dist/client/RefreshTokenClient.d.ts +34 -34
  82. package/dist/client/RefreshTokenClient.js +239 -239
  83. package/dist/client/SilentFlowClient.d.ts +24 -24
  84. package/dist/client/SilentFlowClient.js +94 -94
  85. package/dist/config/AppTokenProvider.d.ts +38 -38
  86. package/dist/config/ClientConfiguration.d.ts +133 -133
  87. package/dist/config/ClientConfiguration.js +88 -88
  88. package/dist/crypto/ICrypto.d.ts +62 -62
  89. package/dist/crypto/ICrypto.js +42 -42
  90. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  91. package/dist/crypto/JoseHeader.d.ts +21 -21
  92. package/dist/crypto/JoseHeader.js +36 -36
  93. package/dist/crypto/PopTokenGenerator.d.ts +58 -57
  94. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
  95. package/dist/crypto/PopTokenGenerator.js +82 -83
  96. package/dist/crypto/PopTokenGenerator.js.map +1 -1
  97. package/dist/crypto/SignedHttpRequest.d.ts +11 -11
  98. package/dist/error/AuthError.d.ts +47 -47
  99. package/dist/error/AuthError.js +51 -51
  100. package/dist/error/ClientAuthError.d.ts +412 -412
  101. package/dist/error/ClientAuthError.js +519 -519
  102. package/dist/error/ClientConfigurationError.d.ts +206 -198
  103. package/dist/error/ClientConfigurationError.d.ts.map +1 -1
  104. package/dist/error/ClientConfigurationError.js +259 -249
  105. package/dist/error/ClientConfigurationError.js.map +1 -1
  106. package/dist/error/InteractionRequiredAuthError.d.ts +59 -59
  107. package/dist/error/InteractionRequiredAuthError.js +78 -78
  108. package/dist/error/JoseHeaderError.d.ts +28 -28
  109. package/dist/error/JoseHeaderError.js +39 -39
  110. package/dist/error/ServerError.d.ts +7 -7
  111. package/dist/error/ServerError.js +14 -14
  112. package/dist/index.cjs.js +8826 -8813
  113. package/dist/index.cjs.js.map +1 -1
  114. package/dist/index.d.ts +93 -93
  115. package/dist/index.js +1 -1
  116. package/dist/logger/Logger.d.ts +95 -95
  117. package/dist/logger/Logger.js +197 -197
  118. package/dist/network/INetworkModule.d.ts +29 -29
  119. package/dist/network/INetworkModule.js +14 -14
  120. package/dist/network/NetworkManager.d.ts +32 -32
  121. package/dist/network/NetworkManager.js +33 -33
  122. package/dist/network/RequestThumbprint.d.ts +16 -16
  123. package/dist/network/ThrottlingUtils.d.ts +41 -41
  124. package/dist/network/ThrottlingUtils.js +94 -94
  125. package/dist/packageMetadata.d.ts +2 -2
  126. package/dist/packageMetadata.d.ts.map +1 -1
  127. package/dist/packageMetadata.js +4 -4
  128. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  129. package/dist/request/AuthenticationHeaderParser.js +55 -55
  130. package/dist/request/BaseAuthRequest.d.ts +37 -37
  131. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  132. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  133. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  134. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  135. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  136. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  137. package/dist/request/CommonRefreshTokenRequest.d.ts +19 -19
  138. package/dist/request/CommonSilentFlowRequest.d.ts +18 -18
  139. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  140. package/dist/request/NativeRequest.d.ts +19 -19
  141. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  142. package/dist/request/RequestParameterBuilder.d.ts +216 -216
  143. package/dist/request/RequestParameterBuilder.js +374 -374
  144. package/dist/request/RequestValidator.d.ts +33 -33
  145. package/dist/request/RequestValidator.js +82 -83
  146. package/dist/request/RequestValidator.js.map +1 -1
  147. package/dist/request/ScopeSet.d.ts +88 -88
  148. package/dist/request/ScopeSet.js +197 -197
  149. package/dist/response/AuthenticationResult.d.ts +39 -39
  150. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  151. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  152. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  153. package/dist/response/IMDSBadResponse.d.ts +4 -4
  154. package/dist/response/ResponseHandler.d.ts +72 -72
  155. package/dist/response/ResponseHandler.js +300 -300
  156. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  157. package/dist/response/ServerAuthorizationTokenResponse.d.ts +44 -44
  158. package/dist/telemetry/performance/IPerformanceClient.d.ts +42 -42
  159. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  160. package/dist/telemetry/performance/PerformanceClient.d.ts +189 -189
  161. package/dist/telemetry/performance/PerformanceClient.js +406 -406
  162. package/dist/telemetry/performance/PerformanceEvent.d.ts +441 -439
  163. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  164. package/dist/telemetry/performance/PerformanceEvent.js +225 -227
  165. package/dist/telemetry/performance/PerformanceEvent.js.map +1 -1
  166. package/dist/telemetry/performance/StubPerformanceClient.d.ts +15 -19
  167. package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -1
  168. package/dist/telemetry/performance/StubPerformanceClient.js +22 -36
  169. package/dist/telemetry/performance/StubPerformanceClient.js.map +1 -1
  170. package/dist/telemetry/server/ServerTelemetryManager.d.ts +65 -65
  171. package/dist/telemetry/server/ServerTelemetryManager.js +196 -196
  172. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  173. package/dist/url/IUri.d.ts +12 -12
  174. package/dist/url/UrlString.d.ts +70 -70
  175. package/dist/url/UrlString.js +242 -242
  176. package/dist/utils/Constants.d.ts +345 -331
  177. package/dist/utils/Constants.d.ts.map +1 -1
  178. package/dist/utils/Constants.js +353 -373
  179. package/dist/utils/Constants.js.map +1 -1
  180. package/dist/utils/MsalTypes.d.ts +6 -6
  181. package/dist/utils/ProtocolUtils.d.ts +42 -42
  182. package/dist/utils/ProtocolUtils.js +71 -71
  183. package/dist/utils/StringUtils.d.ts +53 -53
  184. package/dist/utils/StringUtils.js +124 -124
  185. package/dist/utils/TimeUtils.d.ts +27 -27
  186. package/dist/utils/TimeUtils.js +45 -45
  187. package/package.json +86 -79
@@ -1,143 +1,143 @@
1
- /*! @azure/msal-common v14.0.0-alpha.1 2023-05-08 */
1
+ /*! @azure/msal-common v14.0.0-beta.0 2023-06-19 */
2
2
  'use strict';
3
3
  import { CredentialType, CacheType, Separators, Constants, AuthenticationScheme } from '../../utils/Constants.js';
4
4
  import { ClientAuthError } from '../../error/ClientAuthError.js';
5
5
 
6
- /*
7
- * Copyright (c) Microsoft Corporation. All rights reserved.
8
- * Licensed under the MIT License.
9
- */
10
- /**
11
- * Base type for credentials to be stored in the cache: eg: ACCESS_TOKEN, ID_TOKEN etc
12
- *
13
- * Key:Value Schema:
14
- *
15
- * Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>-<requestedClaims*>-<scheme*>
16
- *
17
- * Value Schema:
18
- * {
19
- * homeAccountId: home account identifier for the auth scheme,
20
- * environment: entity that issued the token, represented as a full host
21
- * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
22
- * clientId: client ID of the application
23
- * secret: Actual credential as a string
24
- * familyId: Family ID identifier, usually only used for refresh tokens
25
- * realm: Full tenant or organizational identifier that the account belongs to
26
- * target: Permissions that are included in the token, or for refresh tokens, the resource identifier.
27
- * tokenType: Matches the authentication scheme for which the token was issued (i.e. Bearer or pop)
28
- * requestedClaimsHash: Matches the SHA 256 hash of the claims object included in the token request
29
- * userAssertionHash: Matches the SHA 256 hash of the obo_assertion for the OBO flow
30
- * }
31
- */
32
- class CredentialEntity {
33
- /**
34
- * Generate Account Id key component as per the schema: <home_account_id>-<environment>
35
- */
36
- generateAccountId() {
37
- return CredentialEntity.generateAccountIdForCacheKey(this.homeAccountId, this.environment);
38
- }
39
- /**
40
- * Generate Credential Id key component as per the schema: <credential_type>-<client_id>-<realm>
41
- */
42
- generateCredentialId() {
43
- return CredentialEntity.generateCredentialIdForCacheKey(this.credentialType, this.clientId, this.realm, this.familyId);
44
- }
45
- /**
46
- * Generate target key component as per schema: <target>
47
- */
48
- generateTarget() {
49
- return CredentialEntity.generateTargetForCacheKey(this.target);
50
- }
51
- /**
52
- * generates credential key
53
- */
54
- generateCredentialKey() {
55
- return CredentialEntity.generateCredentialCacheKey(this.homeAccountId, this.environment, this.credentialType, this.clientId, this.realm, this.target, this.familyId, this.tokenType, this.requestedClaimsHash);
56
- }
57
- /**
58
- * returns the type of the cache (in this case credential)
59
- */
60
- generateType() {
61
- switch (this.credentialType) {
62
- case CredentialType.ID_TOKEN:
63
- return CacheType.ID_TOKEN;
64
- case CredentialType.ACCESS_TOKEN:
65
- case CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME:
66
- return CacheType.ACCESS_TOKEN;
67
- case CredentialType.REFRESH_TOKEN:
68
- return CacheType.REFRESH_TOKEN;
69
- default: {
70
- throw ClientAuthError.createUnexpectedCredentialTypeError();
71
- }
72
- }
73
- }
74
- /**
75
- * generates credential key
76
- * <home_account_id*>-\<environment>-<credential_type>-<client_id>-<realm\*>-<target\*>-<scheme\*>
77
- */
78
- static generateCredentialCacheKey(homeAccountId, environment, credentialType, clientId, realm, target, familyId, tokenType, requestedClaimsHash) {
79
- const credentialKey = [
80
- this.generateAccountIdForCacheKey(homeAccountId, environment),
81
- this.generateCredentialIdForCacheKey(credentialType, clientId, realm, familyId),
82
- this.generateTargetForCacheKey(target),
83
- this.generateClaimsHashForCacheKey(requestedClaimsHash),
84
- this.generateSchemeForCacheKey(tokenType),
85
- ];
86
- return credentialKey.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
87
- }
88
- /**
89
- * generates Account Id for keys
90
- * @param homeAccountId
91
- * @param environment
92
- */
93
- static generateAccountIdForCacheKey(homeAccountId, environment) {
94
- const accountId = [homeAccountId, environment];
95
- return accountId.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
96
- }
97
- /**
98
- * Generates Credential Id for keys
99
- * @param credentialType
100
- * @param realm
101
- * @param clientId
102
- * @param familyId
103
- */
104
- static generateCredentialIdForCacheKey(credentialType, clientId, realm, familyId) {
105
- const clientOrFamilyId = credentialType === CredentialType.REFRESH_TOKEN
106
- ? familyId || clientId
107
- : clientId;
108
- const credentialId = [
109
- credentialType,
110
- clientOrFamilyId,
111
- realm || Constants.EMPTY_STRING,
112
- ];
113
- return credentialId.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
114
- }
115
- /**
116
- * Generate target key component as per schema: <target>
117
- */
118
- static generateTargetForCacheKey(scopes) {
119
- return (scopes || Constants.EMPTY_STRING).toLowerCase();
120
- }
121
- /**
122
- * Generate requested claims key component as per schema: <requestedClaims>
123
- */
124
- static generateClaimsHashForCacheKey(requestedClaimsHash) {
125
- return (requestedClaimsHash || Constants.EMPTY_STRING).toLowerCase();
126
- }
127
- /**
128
- * Generate scheme key componenet as per schema: <scheme>
129
- */
130
- static generateSchemeForCacheKey(tokenType) {
131
- /*
132
- * PoP Tokens and SSH certs include scheme in cache key
133
- * Cast to lowercase to handle "bearer" from ADFS
134
- */
135
- return tokenType &&
136
- tokenType.toLowerCase() !==
137
- AuthenticationScheme.BEARER.toLowerCase()
138
- ? tokenType.toLowerCase()
139
- : Constants.EMPTY_STRING;
140
- }
6
+ /*
7
+ * Copyright (c) Microsoft Corporation. All rights reserved.
8
+ * Licensed under the MIT License.
9
+ */
10
+ /**
11
+ * Base type for credentials to be stored in the cache: eg: ACCESS_TOKEN, ID_TOKEN etc
12
+ *
13
+ * Key:Value Schema:
14
+ *
15
+ * Key: <home_account_id*>-<environment>-<credential_type>-<client_id>-<realm*>-<target*>-<requestedClaims*>-<scheme*>
16
+ *
17
+ * Value Schema:
18
+ * {
19
+ * homeAccountId: home account identifier for the auth scheme,
20
+ * environment: entity that issued the token, represented as a full host
21
+ * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
22
+ * clientId: client ID of the application
23
+ * secret: Actual credential as a string
24
+ * familyId: Family ID identifier, usually only used for refresh tokens
25
+ * realm: Full tenant or organizational identifier that the account belongs to
26
+ * target: Permissions that are included in the token, or for refresh tokens, the resource identifier.
27
+ * tokenType: Matches the authentication scheme for which the token was issued (i.e. Bearer or pop)
28
+ * requestedClaimsHash: Matches the SHA 256 hash of the claims object included in the token request
29
+ * userAssertionHash: Matches the SHA 256 hash of the obo_assertion for the OBO flow
30
+ * }
31
+ */
32
+ class CredentialEntity {
33
+ /**
34
+ * Generate Account Id key component as per the schema: <home_account_id>-<environment>
35
+ */
36
+ generateAccountId() {
37
+ return CredentialEntity.generateAccountIdForCacheKey(this.homeAccountId, this.environment);
38
+ }
39
+ /**
40
+ * Generate Credential Id key component as per the schema: <credential_type>-<client_id>-<realm>
41
+ */
42
+ generateCredentialId() {
43
+ return CredentialEntity.generateCredentialIdForCacheKey(this.credentialType, this.clientId, this.realm, this.familyId);
44
+ }
45
+ /**
46
+ * Generate target key component as per schema: <target>
47
+ */
48
+ generateTarget() {
49
+ return CredentialEntity.generateTargetForCacheKey(this.target);
50
+ }
51
+ /**
52
+ * generates credential key
53
+ */
54
+ generateCredentialKey() {
55
+ return CredentialEntity.generateCredentialCacheKey(this.homeAccountId, this.environment, this.credentialType, this.clientId, this.realm, this.target, this.familyId, this.tokenType, this.requestedClaimsHash);
56
+ }
57
+ /**
58
+ * returns the type of the cache (in this case credential)
59
+ */
60
+ generateType() {
61
+ switch (this.credentialType) {
62
+ case CredentialType.ID_TOKEN:
63
+ return CacheType.ID_TOKEN;
64
+ case CredentialType.ACCESS_TOKEN:
65
+ case CredentialType.ACCESS_TOKEN_WITH_AUTH_SCHEME:
66
+ return CacheType.ACCESS_TOKEN;
67
+ case CredentialType.REFRESH_TOKEN:
68
+ return CacheType.REFRESH_TOKEN;
69
+ default: {
70
+ throw ClientAuthError.createUnexpectedCredentialTypeError();
71
+ }
72
+ }
73
+ }
74
+ /**
75
+ * generates credential key
76
+ * <home_account_id*>-\<environment>-<credential_type>-<client_id>-<realm\*>-<target\*>-<scheme\*>
77
+ */
78
+ static generateCredentialCacheKey(homeAccountId, environment, credentialType, clientId, realm, target, familyId, tokenType, requestedClaimsHash) {
79
+ const credentialKey = [
80
+ this.generateAccountIdForCacheKey(homeAccountId, environment),
81
+ this.generateCredentialIdForCacheKey(credentialType, clientId, realm, familyId),
82
+ this.generateTargetForCacheKey(target),
83
+ this.generateClaimsHashForCacheKey(requestedClaimsHash),
84
+ this.generateSchemeForCacheKey(tokenType),
85
+ ];
86
+ return credentialKey.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
87
+ }
88
+ /**
89
+ * generates Account Id for keys
90
+ * @param homeAccountId
91
+ * @param environment
92
+ */
93
+ static generateAccountIdForCacheKey(homeAccountId, environment) {
94
+ const accountId = [homeAccountId, environment];
95
+ return accountId.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
96
+ }
97
+ /**
98
+ * Generates Credential Id for keys
99
+ * @param credentialType
100
+ * @param realm
101
+ * @param clientId
102
+ * @param familyId
103
+ */
104
+ static generateCredentialIdForCacheKey(credentialType, clientId, realm, familyId) {
105
+ const clientOrFamilyId = credentialType === CredentialType.REFRESH_TOKEN
106
+ ? familyId || clientId
107
+ : clientId;
108
+ const credentialId = [
109
+ credentialType,
110
+ clientOrFamilyId,
111
+ realm || Constants.EMPTY_STRING,
112
+ ];
113
+ return credentialId.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();
114
+ }
115
+ /**
116
+ * Generate target key component as per schema: <target>
117
+ */
118
+ static generateTargetForCacheKey(scopes) {
119
+ return (scopes || Constants.EMPTY_STRING).toLowerCase();
120
+ }
121
+ /**
122
+ * Generate requested claims key component as per schema: <requestedClaims>
123
+ */
124
+ static generateClaimsHashForCacheKey(requestedClaimsHash) {
125
+ return (requestedClaimsHash || Constants.EMPTY_STRING).toLowerCase();
126
+ }
127
+ /**
128
+ * Generate scheme key componenet as per schema: <scheme>
129
+ */
130
+ static generateSchemeForCacheKey(tokenType) {
131
+ /*
132
+ * PoP Tokens and SSH certs include scheme in cache key
133
+ * Cast to lowercase to handle "bearer" from ADFS
134
+ */
135
+ return tokenType &&
136
+ tokenType.toLowerCase() !==
137
+ AuthenticationScheme.BEARER.toLowerCase()
138
+ ? tokenType.toLowerCase()
139
+ : Constants.EMPTY_STRING;
140
+ }
141
141
  }
142
142
 
143
143
  export { CredentialEntity };
@@ -1,35 +1,35 @@
1
- import { CredentialEntity } from "./CredentialEntity";
2
- /**
3
- * ID_TOKEN Cache
4
- *
5
- * Key:Value Schema:
6
- *
7
- * Key Example: uid.utid-login.microsoftonline.com-idtoken-clientId-contoso.com-
8
- *
9
- * Value Schema:
10
- * {
11
- * homeAccountId: home account identifier for the auth scheme,
12
- * environment: entity that issued the token, represented as a full host
13
- * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
14
- * clientId: client ID of the application
15
- * secret: Actual credential as a string
16
- * realm: Full tenant or organizational identifier that the account belongs to
17
- * }
18
- */
19
- export declare class IdTokenEntity extends CredentialEntity {
20
- realm: string;
21
- /**
22
- * Create IdTokenEntity
23
- * @param homeAccountId
24
- * @param authenticationResult
25
- * @param clientId
26
- * @param authority
27
- */
28
- static createIdTokenEntity(homeAccountId: string, environment: string, idToken: string, clientId: string, tenantId: string): IdTokenEntity;
29
- /**
30
- * Validates an entity: checks for all expected params
31
- * @param entity
32
- */
33
- static isIdTokenEntity(entity: object): boolean;
34
- }
1
+ import { CredentialEntity } from "./CredentialEntity";
2
+ /**
3
+ * ID_TOKEN Cache
4
+ *
5
+ * Key:Value Schema:
6
+ *
7
+ * Key Example: uid.utid-login.microsoftonline.com-idtoken-clientId-contoso.com-
8
+ *
9
+ * Value Schema:
10
+ * {
11
+ * homeAccountId: home account identifier for the auth scheme,
12
+ * environment: entity that issued the token, represented as a full host
13
+ * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
14
+ * clientId: client ID of the application
15
+ * secret: Actual credential as a string
16
+ * realm: Full tenant or organizational identifier that the account belongs to
17
+ * }
18
+ */
19
+ export declare class IdTokenEntity extends CredentialEntity {
20
+ realm: string;
21
+ /**
22
+ * Create IdTokenEntity
23
+ * @param homeAccountId
24
+ * @param authenticationResult
25
+ * @param clientId
26
+ * @param authority
27
+ */
28
+ static createIdTokenEntity(homeAccountId: string, environment: string, idToken: string, clientId: string, tenantId: string): IdTokenEntity;
29
+ /**
30
+ * Validates an entity: checks for all expected params
31
+ * @param entity
32
+ */
33
+ static isIdTokenEntity(entity: object): boolean;
34
+ }
35
35
  //# sourceMappingURL=IdTokenEntity.d.ts.map
@@ -1,63 +1,63 @@
1
- /*! @azure/msal-common v14.0.0-alpha.1 2023-05-08 */
1
+ /*! @azure/msal-common v14.0.0-beta.0 2023-06-19 */
2
2
  'use strict';
3
3
  import { CredentialEntity } from './CredentialEntity.js';
4
4
  import { CredentialType } from '../../utils/Constants.js';
5
5
 
6
- /*
7
- * Copyright (c) Microsoft Corporation. All rights reserved.
8
- * Licensed under the MIT License.
9
- */
10
- /**
11
- * ID_TOKEN Cache
12
- *
13
- * Key:Value Schema:
14
- *
15
- * Key Example: uid.utid-login.microsoftonline.com-idtoken-clientId-contoso.com-
16
- *
17
- * Value Schema:
18
- * {
19
- * homeAccountId: home account identifier for the auth scheme,
20
- * environment: entity that issued the token, represented as a full host
21
- * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
22
- * clientId: client ID of the application
23
- * secret: Actual credential as a string
24
- * realm: Full tenant or organizational identifier that the account belongs to
25
- * }
26
- */
27
- class IdTokenEntity extends CredentialEntity {
28
- /**
29
- * Create IdTokenEntity
30
- * @param homeAccountId
31
- * @param authenticationResult
32
- * @param clientId
33
- * @param authority
34
- */
35
- static createIdTokenEntity(homeAccountId, environment, idToken, clientId, tenantId) {
36
- const idTokenEntity = new IdTokenEntity();
37
- idTokenEntity.credentialType = CredentialType.ID_TOKEN;
38
- idTokenEntity.homeAccountId = homeAccountId;
39
- idTokenEntity.environment = environment;
40
- idTokenEntity.clientId = clientId;
41
- idTokenEntity.secret = idToken;
42
- idTokenEntity.realm = tenantId;
43
- return idTokenEntity;
44
- }
45
- /**
46
- * Validates an entity: checks for all expected params
47
- * @param entity
48
- */
49
- static isIdTokenEntity(entity) {
50
- if (!entity) {
51
- return false;
52
- }
53
- return (entity.hasOwnProperty("homeAccountId") &&
54
- entity.hasOwnProperty("environment") &&
55
- entity.hasOwnProperty("credentialType") &&
56
- entity.hasOwnProperty("realm") &&
57
- entity.hasOwnProperty("clientId") &&
58
- entity.hasOwnProperty("secret") &&
59
- entity["credentialType"] === CredentialType.ID_TOKEN);
60
- }
6
+ /*
7
+ * Copyright (c) Microsoft Corporation. All rights reserved.
8
+ * Licensed under the MIT License.
9
+ */
10
+ /**
11
+ * ID_TOKEN Cache
12
+ *
13
+ * Key:Value Schema:
14
+ *
15
+ * Key Example: uid.utid-login.microsoftonline.com-idtoken-clientId-contoso.com-
16
+ *
17
+ * Value Schema:
18
+ * {
19
+ * homeAccountId: home account identifier for the auth scheme,
20
+ * environment: entity that issued the token, represented as a full host
21
+ * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
22
+ * clientId: client ID of the application
23
+ * secret: Actual credential as a string
24
+ * realm: Full tenant or organizational identifier that the account belongs to
25
+ * }
26
+ */
27
+ class IdTokenEntity extends CredentialEntity {
28
+ /**
29
+ * Create IdTokenEntity
30
+ * @param homeAccountId
31
+ * @param authenticationResult
32
+ * @param clientId
33
+ * @param authority
34
+ */
35
+ static createIdTokenEntity(homeAccountId, environment, idToken, clientId, tenantId) {
36
+ const idTokenEntity = new IdTokenEntity();
37
+ idTokenEntity.credentialType = CredentialType.ID_TOKEN;
38
+ idTokenEntity.homeAccountId = homeAccountId;
39
+ idTokenEntity.environment = environment;
40
+ idTokenEntity.clientId = clientId;
41
+ idTokenEntity.secret = idToken;
42
+ idTokenEntity.realm = tenantId;
43
+ return idTokenEntity;
44
+ }
45
+ /**
46
+ * Validates an entity: checks for all expected params
47
+ * @param entity
48
+ */
49
+ static isIdTokenEntity(entity) {
50
+ if (!entity) {
51
+ return false;
52
+ }
53
+ return (entity.hasOwnProperty("homeAccountId") &&
54
+ entity.hasOwnProperty("environment") &&
55
+ entity.hasOwnProperty("credentialType") &&
56
+ entity.hasOwnProperty("realm") &&
57
+ entity.hasOwnProperty("clientId") &&
58
+ entity.hasOwnProperty("secret") &&
59
+ entity["credentialType"] === CredentialType.ID_TOKEN);
60
+ }
61
61
  }
62
62
 
63
63
  export { IdTokenEntity };
@@ -1,37 +1,37 @@
1
- import { CredentialEntity } from "./CredentialEntity";
2
- /**
3
- * REFRESH_TOKEN Cache
4
- *
5
- * Key:Value Schema:
6
- *
7
- * Key Example: uid.utid-login.microsoftonline.com-refreshtoken-clientId--
8
- *
9
- * Value:
10
- * {
11
- * homeAccountId: home account identifier for the auth scheme,
12
- * environment: entity that issued the token, represented as a full host
13
- * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
14
- * clientId: client ID of the application
15
- * secret: Actual credential as a string
16
- * familyId: Family ID identifier, '1' represents Microsoft Family
17
- * realm: Full tenant or organizational identifier that the account belongs to
18
- * target: Permissions that are included in the token, or for refresh tokens, the resource identifier.
19
- * }
20
- */
21
- export declare class RefreshTokenEntity extends CredentialEntity {
22
- familyId?: string;
23
- /**
24
- * Create RefreshTokenEntity
25
- * @param homeAccountId
26
- * @param authenticationResult
27
- * @param clientId
28
- * @param authority
29
- */
30
- static createRefreshTokenEntity(homeAccountId: string, environment: string, refreshToken: string, clientId: string, familyId?: string, userAssertionHash?: string): RefreshTokenEntity;
31
- /**
32
- * Validates an entity: checks for all expected params
33
- * @param entity
34
- */
35
- static isRefreshTokenEntity(entity: object): boolean;
36
- }
1
+ import { CredentialEntity } from "./CredentialEntity";
2
+ /**
3
+ * REFRESH_TOKEN Cache
4
+ *
5
+ * Key:Value Schema:
6
+ *
7
+ * Key Example: uid.utid-login.microsoftonline.com-refreshtoken-clientId--
8
+ *
9
+ * Value:
10
+ * {
11
+ * homeAccountId: home account identifier for the auth scheme,
12
+ * environment: entity that issued the token, represented as a full host
13
+ * credentialType: Type of credential as a string, can be one of the following: RefreshToken, AccessToken, IdToken, Password, Cookie, Certificate, Other
14
+ * clientId: client ID of the application
15
+ * secret: Actual credential as a string
16
+ * familyId: Family ID identifier, '1' represents Microsoft Family
17
+ * realm: Full tenant or organizational identifier that the account belongs to
18
+ * target: Permissions that are included in the token, or for refresh tokens, the resource identifier.
19
+ * }
20
+ */
21
+ export declare class RefreshTokenEntity extends CredentialEntity {
22
+ familyId?: string;
23
+ /**
24
+ * Create RefreshTokenEntity
25
+ * @param homeAccountId
26
+ * @param authenticationResult
27
+ * @param clientId
28
+ * @param authority
29
+ */
30
+ static createRefreshTokenEntity(homeAccountId: string, environment: string, refreshToken: string, clientId: string, familyId?: string, userAssertionHash?: string): RefreshTokenEntity;
31
+ /**
32
+ * Validates an entity: checks for all expected params
33
+ * @param entity
34
+ */
35
+ static isRefreshTokenEntity(entity: object): boolean;
36
+ }
37
37
  //# sourceMappingURL=RefreshTokenEntity.d.ts.map