@azure/msal-common 14.0.3 → 14.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account/AccountInfo.d.ts +32 -32
- package/dist/account/AuthToken.d.ts +17 -17
- package/dist/account/AuthToken.d.ts.map +1 -1
- package/dist/account/AuthToken.mjs +60 -59
- package/dist/account/AuthToken.mjs.map +1 -1
- package/dist/account/CcsCredential.d.ts +9 -9
- package/dist/account/CcsCredential.mjs +8 -8
- package/dist/account/ClientCredentials.d.ts +14 -14
- package/dist/account/ClientInfo.d.ts +19 -19
- package/dist/account/ClientInfo.d.ts.map +1 -1
- package/dist/account/ClientInfo.mjs +39 -38
- package/dist/account/ClientInfo.mjs.map +1 -1
- package/dist/account/TokenClaims.d.ts +65 -65
- package/dist/authority/Authority.d.ts +235 -235
- package/dist/authority/Authority.d.ts.map +1 -1
- package/dist/authority/Authority.mjs +743 -765
- package/dist/authority/Authority.mjs.map +1 -1
- package/dist/authority/AuthorityFactory.d.ts +31 -31
- package/dist/authority/AuthorityFactory.d.ts.map +1 -1
- package/dist/authority/AuthorityFactory.mjs +52 -50
- package/dist/authority/AuthorityFactory.mjs.map +1 -1
- package/dist/authority/AuthorityMetadata.d.ts +623 -623
- package/dist/authority/AuthorityMetadata.mjs +884 -884
- package/dist/authority/AuthorityOptions.d.ts +21 -21
- package/dist/authority/AuthorityOptions.mjs +18 -18
- package/dist/authority/AuthorityType.d.ts +10 -10
- package/dist/authority/AuthorityType.mjs +13 -13
- package/dist/authority/AzureRegion.d.ts +1 -1
- package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
- package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
- package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
- package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
- package/dist/authority/ImdsOptions.d.ts +5 -5
- package/dist/authority/OIDCOptions.d.ts +8 -8
- package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
- package/dist/authority/OpenIdConfigResponse.mjs +10 -10
- package/dist/authority/ProtocolMode.d.ts +8 -8
- package/dist/authority/ProtocolMode.mjs +11 -11
- package/dist/authority/RegionDiscovery.d.ts +32 -30
- package/dist/authority/RegionDiscovery.d.ts.map +1 -1
- package/dist/authority/RegionDiscovery.mjs +107 -108
- package/dist/authority/RegionDiscovery.mjs.map +1 -1
- package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
- package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
- package/dist/cache/CacheManager.d.ts +446 -446
- package/dist/cache/CacheManager.d.ts.map +1 -1
- package/dist/cache/CacheManager.mjs +1000 -1024
- package/dist/cache/CacheManager.mjs.map +1 -1
- package/dist/cache/entities/AccessTokenEntity.d.ts +56 -56
- package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -1
- package/dist/cache/entities/AccessTokenEntity.mjs +111 -110
- package/dist/cache/entities/AccessTokenEntity.mjs.map +1 -1
- package/dist/cache/entities/AccountEntity.d.ts +101 -101
- package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
- package/dist/cache/entities/AccountEntity.mjs +222 -221
- package/dist/cache/entities/AccountEntity.mjs.map +1 -1
- package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
- package/dist/cache/entities/AppMetadataEntity.mjs +66 -66
- package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -48
- package/dist/cache/entities/AuthorityMetadataEntity.mjs +78 -78
- package/dist/cache/entities/CacheRecord.d.ts +14 -14
- package/dist/cache/entities/CacheRecord.mjs +14 -14
- package/dist/cache/entities/CredentialEntity.d.ts +88 -88
- package/dist/cache/entities/CredentialEntity.d.ts.map +1 -1
- package/dist/cache/entities/CredentialEntity.mjs +138 -137
- package/dist/cache/entities/CredentialEntity.mjs.map +1 -1
- package/dist/cache/entities/IdTokenEntity.d.ts +34 -34
- package/dist/cache/entities/IdTokenEntity.mjs +56 -56
- package/dist/cache/entities/RefreshTokenEntity.d.ts +36 -36
- package/dist/cache/entities/RefreshTokenEntity.mjs +59 -59
- package/dist/cache/entities/ServerTelemetryEntity.d.ts +12 -12
- package/dist/cache/entities/ServerTelemetryEntity.mjs +27 -27
- package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
- package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
- package/dist/cache/interface/ICacheManager.d.ts +166 -166
- package/dist/cache/interface/ICachePlugin.d.ts +5 -5
- package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
- package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
- package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
- package/dist/cache/utils/CacheTypes.d.ts +69 -69
- package/dist/client/AuthorizationCodeClient.d.ts +73 -73
- package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
- package/dist/client/AuthorizationCodeClient.mjs +411 -410
- package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
- package/dist/client/BaseClient.d.ts +51 -51
- package/dist/client/BaseClient.d.ts.map +1 -1
- package/dist/client/BaseClient.mjs +100 -99
- package/dist/client/BaseClient.mjs.map +1 -1
- package/dist/client/RefreshTokenClient.d.ts +35 -35
- package/dist/client/RefreshTokenClient.d.ts.map +1 -1
- package/dist/client/RefreshTokenClient.mjs +185 -234
- package/dist/client/RefreshTokenClient.mjs.map +1 -1
- package/dist/client/SilentFlowClient.d.ts +26 -25
- package/dist/client/SilentFlowClient.d.ts.map +1 -1
- package/dist/client/SilentFlowClient.mjs +127 -103
- package/dist/client/SilentFlowClient.mjs.map +1 -1
- package/dist/config/AppTokenProvider.d.ts +38 -38
- package/dist/config/ClientConfiguration.d.ts +150 -150
- package/dist/config/ClientConfiguration.d.ts.map +1 -1
- package/dist/config/ClientConfiguration.mjs +99 -100
- package/dist/config/ClientConfiguration.mjs.map +1 -1
- package/dist/crypto/ICrypto.d.ts +62 -62
- package/dist/crypto/ICrypto.d.ts.map +1 -1
- package/dist/crypto/ICrypto.mjs +35 -43
- package/dist/crypto/ICrypto.mjs.map +1 -1
- package/dist/crypto/IGuidGenerator.d.ts +4 -4
- package/dist/crypto/JoseHeader.d.ts +22 -22
- package/dist/crypto/JoseHeader.d.ts.map +1 -1
- package/dist/crypto/JoseHeader.mjs +39 -38
- package/dist/crypto/JoseHeader.mjs.map +1 -1
- package/dist/crypto/PopTokenGenerator.d.ts +60 -59
- package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
- package/dist/crypto/PopTokenGenerator.mjs +83 -83
- package/dist/crypto/PopTokenGenerator.mjs.map +1 -1
- package/dist/crypto/SignedHttpRequest.d.ts +11 -11
- package/dist/error/AuthError.d.ts +44 -47
- package/dist/error/AuthError.d.ts.map +1 -1
- package/dist/error/AuthError.mjs +50 -52
- package/dist/error/AuthError.mjs.map +1 -1
- package/dist/error/AuthErrorCodes.d.ts +6 -0
- package/dist/error/AuthErrorCodes.d.ts.map +1 -0
- package/dist/error/AuthErrorCodes.mjs +14 -0
- package/dist/error/AuthErrorCodes.mjs.map +1 -0
- package/dist/error/ClientAuthError.d.ts +232 -412
- package/dist/error/ClientAuthError.d.ts.map +1 -1
- package/dist/error/ClientAuthError.mjs +248 -520
- package/dist/error/ClientAuthError.mjs.map +1 -1
- package/dist/error/ClientAuthErrorCodes.d.ts +44 -0
- package/dist/error/ClientAuthErrorCodes.d.ts.map +1 -0
- package/dist/error/ClientAuthErrorCodes.mjs +52 -0
- package/dist/error/ClientAuthErrorCodes.mjs.map +1 -0
- package/dist/error/ClientConfigurationError.d.ts +128 -222
- package/dist/error/ClientConfigurationError.d.ts.map +1 -1
- package/dist/error/ClientConfigurationError.mjs +140 -281
- package/dist/error/ClientConfigurationError.mjs.map +1 -1
- package/dist/error/ClientConfigurationErrorCodes.d.ts +23 -0
- package/dist/error/ClientConfigurationErrorCodes.d.ts.map +1 -0
- package/dist/error/ClientConfigurationErrorCodes.mjs +31 -0
- package/dist/error/ClientConfigurationErrorCodes.mjs.map +1 -0
- package/dist/error/InteractionRequiredAuthError.d.ts +57 -59
- package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
- package/dist/error/InteractionRequiredAuthError.mjs +80 -79
- package/dist/error/InteractionRequiredAuthError.mjs.map +1 -1
- package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +6 -0
- package/dist/error/InteractionRequiredAuthErrorCodes.d.ts.map +1 -0
- package/dist/error/InteractionRequiredAuthErrorCodes.mjs +16 -0
- package/dist/error/InteractionRequiredAuthErrorCodes.mjs.map +1 -0
- package/dist/error/JoseHeaderError.d.ts +15 -28
- package/dist/error/JoseHeaderError.d.ts.map +1 -1
- package/dist/error/JoseHeaderError.mjs +24 -40
- package/dist/error/JoseHeaderError.mjs.map +1 -1
- package/dist/error/JoseHeaderErrorCodes.d.ts +3 -0
- package/dist/error/JoseHeaderErrorCodes.d.ts.map +1 -0
- package/dist/error/JoseHeaderErrorCodes.mjs +11 -0
- package/dist/error/JoseHeaderErrorCodes.mjs.map +1 -0
- package/dist/error/ServerError.d.ts +7 -7
- package/dist/error/ServerError.mjs +14 -14
- package/dist/index.cjs +8715 -9047
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +96 -96
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +13 -5
- package/dist/index.mjs.map +1 -1
- package/dist/logger/Logger.d.ts +95 -95
- package/dist/logger/Logger.mjs +188 -188
- package/dist/network/INetworkModule.d.ts +29 -29
- package/dist/network/INetworkModule.d.ts.map +1 -1
- package/dist/network/INetworkModule.mjs +14 -15
- package/dist/network/INetworkModule.mjs.map +1 -1
- package/dist/network/NetworkManager.d.ts +33 -33
- package/dist/network/NetworkManager.d.ts.map +1 -1
- package/dist/network/NetworkManager.mjs +36 -35
- package/dist/network/NetworkManager.mjs.map +1 -1
- package/dist/network/RequestThumbprint.d.ts +16 -16
- package/dist/network/ThrottlingUtils.d.ts +42 -42
- package/dist/network/ThrottlingUtils.mjs +95 -95
- package/dist/packageMetadata.d.ts +2 -2
- package/dist/packageMetadata.mjs +3 -3
- package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
- package/dist/request/AuthenticationHeaderParser.d.ts.map +1 -1
- package/dist/request/AuthenticationHeaderParser.mjs +58 -57
- package/dist/request/AuthenticationHeaderParser.mjs.map +1 -1
- package/dist/request/BaseAuthRequest.d.ts +40 -40
- package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
- package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
- package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
- package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
- package/dist/request/CommonEndSessionRequest.d.ts +21 -21
- package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
- package/dist/request/CommonRefreshTokenRequest.d.ts +19 -19
- package/dist/request/CommonSilentFlowRequest.d.ts +18 -18
- package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
- package/dist/request/NativeRequest.d.ts +19 -19
- package/dist/request/NativeSignOutRequest.d.ts +5 -5
- package/dist/request/RequestParameterBuilder.d.ts +217 -217
- package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
- package/dist/request/RequestParameterBuilder.mjs +383 -382
- package/dist/request/RequestParameterBuilder.mjs.map +1 -1
- package/dist/request/RequestValidator.d.ts +33 -33
- package/dist/request/RequestValidator.d.ts.map +1 -1
- package/dist/request/RequestValidator.mjs +83 -82
- package/dist/request/RequestValidator.mjs.map +1 -1
- package/dist/request/ScopeSet.d.ts +88 -88
- package/dist/request/ScopeSet.d.ts.map +1 -1
- package/dist/request/ScopeSet.mjs +201 -199
- package/dist/request/ScopeSet.mjs.map +1 -1
- package/dist/request/StoreInCache.d.ts +8 -8
- package/dist/response/AuthenticationResult.d.ts +41 -41
- package/dist/response/AuthorizationCodePayload.d.ts +13 -13
- package/dist/response/DeviceCodeResponse.d.ts +25 -25
- package/dist/response/ExternalTokenResponse.d.ts +15 -15
- package/dist/response/IMDSBadResponse.d.ts +4 -4
- package/dist/response/ResponseHandler.d.ts +67 -67
- package/dist/response/ResponseHandler.d.ts.map +1 -1
- package/dist/response/ResponseHandler.mjs +314 -313
- package/dist/response/ResponseHandler.mjs.map +1 -1
- package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
- package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
- package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
- package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
- package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
- package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/performance/PerformanceClient.mjs +409 -408
- package/dist/telemetry/performance/PerformanceClient.mjs.map +1 -1
- package/dist/telemetry/performance/PerformanceEvent.d.ts +433 -433
- package/dist/telemetry/performance/PerformanceEvent.mjs +234 -234
- package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
- package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
- package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
- package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
- package/dist/telemetry/server/ServerTelemetryManager.mjs +197 -197
- package/dist/telemetry/server/ServerTelemetryManager.mjs.map +1 -1
- package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
- package/dist/url/IUri.d.ts +12 -12
- package/dist/url/UrlString.d.ts +83 -83
- package/dist/url/UrlString.d.ts.map +1 -1
- package/dist/url/UrlString.mjs +283 -281
- package/dist/url/UrlString.mjs.map +1 -1
- package/dist/utils/Constants.d.ts +366 -363
- package/dist/utils/Constants.d.ts.map +1 -1
- package/dist/utils/Constants.mjs +376 -368
- package/dist/utils/Constants.mjs.map +1 -1
- package/dist/utils/FunctionWrappers.d.ts +27 -27
- package/dist/utils/FunctionWrappers.mjs +85 -85
- package/dist/utils/MsalTypes.d.ts +6 -6
- package/dist/utils/ProtocolUtils.d.ts +42 -42
- package/dist/utils/ProtocolUtils.d.ts.map +1 -1
- package/dist/utils/ProtocolUtils.mjs +71 -70
- package/dist/utils/ProtocolUtils.mjs.map +1 -1
- package/dist/utils/StringUtils.d.ts +40 -40
- package/dist/utils/StringUtils.mjs +95 -95
- package/dist/utils/TimeUtils.d.ts +27 -27
- package/dist/utils/TimeUtils.mjs +45 -45
- package/package.json +1 -1
- package/src/account/AuthToken.ts +8 -7
- package/src/account/ClientInfo.ts +9 -6
- package/src/authority/Authority.ts +76 -94
- package/src/authority/AuthorityFactory.ts +21 -9
- package/src/authority/RegionDiscovery.ts +21 -18
- package/src/cache/CacheManager.ts +37 -77
- package/src/cache/entities/AccessTokenEntity.ts +7 -2
- package/src/cache/entities/AccountEntity.ts +7 -2
- package/src/cache/entities/CredentialEntity.ts +7 -2
- package/src/client/AuthorizationCodeClient.ts +32 -10
- package/src/client/BaseClient.ts +7 -4
- package/src/client/RefreshTokenClient.ts +81 -124
- package/src/client/SilentFlowClient.ts +72 -19
- package/src/config/ClientConfiguration.ts +6 -7
- package/src/crypto/ICrypto.ts +13 -28
- package/src/crypto/JoseHeader.ts +6 -3
- package/src/crypto/PopTokenGenerator.ts +10 -5
- package/src/error/AuthError.ts +24 -26
- package/src/error/AuthErrorCodes.ts +10 -0
- package/src/error/ClientAuthError.ts +227 -632
- package/src/error/ClientAuthErrorCodes.ts +51 -0
- package/src/error/ClientConfigurationError.ts +146 -332
- package/src/error/ClientConfigurationErrorCodes.ts +28 -0
- package/src/error/InteractionRequiredAuthError.ts +60 -55
- package/src/error/InteractionRequiredAuthErrorCodes.ts +13 -0
- package/src/error/JoseHeaderError.ts +11 -31
- package/src/error/JoseHeaderErrorCodes.ts +7 -0
- package/src/index.ts +12 -1
- package/src/network/INetworkModule.ts +10 -7
- package/src/network/NetworkManager.ts +5 -5
- package/src/request/AuthenticationHeaderParser.ts +11 -8
- package/src/request/RequestParameterBuilder.ts +10 -3
- package/src/request/RequestValidator.ts +19 -6
- package/src/request/ScopeSet.ts +23 -7
- package/src/response/ResponseHandler.ts +37 -17
- package/src/telemetry/performance/PerformanceClient.ts +2 -1
- package/src/telemetry/server/ServerTelemetryManager.ts +1 -1
- package/src/url/UrlString.ts +26 -16
- package/src/utils/Constants.ts +11 -3
- package/src/utils/ProtocolUtils.ts +8 -12
|
@@ -26,9 +26,11 @@ import { AccountEntity } from "./entities/AccountEntity";
|
|
|
26
26
|
import { AccessTokenEntity } from "./entities/AccessTokenEntity";
|
|
27
27
|
import { IdTokenEntity } from "./entities/IdTokenEntity";
|
|
28
28
|
import { RefreshTokenEntity } from "./entities/RefreshTokenEntity";
|
|
29
|
-
import { AuthError } from "../error/AuthError";
|
|
30
29
|
import { ICacheManager } from "./interface/ICacheManager";
|
|
31
|
-
import {
|
|
30
|
+
import {
|
|
31
|
+
createClientAuthError,
|
|
32
|
+
ClientAuthErrorCodes,
|
|
33
|
+
} from "../error/ClientAuthError";
|
|
32
34
|
import { AccountInfo } from "../account/AccountInfo";
|
|
33
35
|
import { AppMetadataEntity } from "./entities/AppMetadataEntity";
|
|
34
36
|
import { ServerTelemetryEntity } from "./entities/ServerTelemetryEntity";
|
|
@@ -288,7 +290,9 @@ export abstract class CacheManager implements ICacheManager {
|
|
|
288
290
|
storeInCache?: StoreInCache
|
|
289
291
|
): Promise<void> {
|
|
290
292
|
if (!cacheRecord) {
|
|
291
|
-
throw
|
|
293
|
+
throw createClientAuthError(
|
|
294
|
+
ClientAuthErrorCodes.invalidCacheRecord
|
|
295
|
+
);
|
|
292
296
|
}
|
|
293
297
|
|
|
294
298
|
if (!!cacheRecord.account) {
|
|
@@ -777,7 +781,9 @@ export abstract class CacheManager implements ICacheManager {
|
|
|
777
781
|
try {
|
|
778
782
|
await this.cryptoImpl.removeTokenBindingKey(kid);
|
|
779
783
|
} catch (error) {
|
|
780
|
-
throw
|
|
784
|
+
throw createClientAuthError(
|
|
785
|
+
ClientAuthErrorCodes.bindingKeyNotRemoved
|
|
786
|
+
);
|
|
781
787
|
}
|
|
782
788
|
}
|
|
783
789
|
}
|
|
@@ -1256,7 +1262,9 @@ export abstract class CacheManager implements ICacheManager {
|
|
|
1256
1262
|
if (numAppMetadata < 1) {
|
|
1257
1263
|
return null;
|
|
1258
1264
|
} else if (numAppMetadata > 1) {
|
|
1259
|
-
throw
|
|
1265
|
+
throw createClientAuthError(
|
|
1266
|
+
ClientAuthErrorCodes.multipleMatchingAppMetadata
|
|
1267
|
+
);
|
|
1260
1268
|
}
|
|
1261
1269
|
|
|
1262
1270
|
return appMetadataEntries[0] as AppMetadataEntity;
|
|
@@ -1497,123 +1505,75 @@ export abstract class CacheManager implements ICacheManager {
|
|
|
1497
1505
|
/** @internal */
|
|
1498
1506
|
export class DefaultStorageClass extends CacheManager {
|
|
1499
1507
|
setAccount(): void {
|
|
1500
|
-
|
|
1501
|
-
"Storage interface - setAccount() has not been implemented for the cacheStorage interface.";
|
|
1502
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1508
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1503
1509
|
}
|
|
1504
1510
|
getAccount(): AccountEntity {
|
|
1505
|
-
|
|
1506
|
-
"Storage interface - getAccount() has not been implemented for the cacheStorage interface.";
|
|
1507
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1511
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1508
1512
|
}
|
|
1509
1513
|
setIdTokenCredential(): void {
|
|
1510
|
-
|
|
1511
|
-
"Storage interface - setIdTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1512
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1514
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1513
1515
|
}
|
|
1514
1516
|
getIdTokenCredential(): IdTokenEntity {
|
|
1515
|
-
|
|
1516
|
-
"Storage interface - getIdTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1517
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1517
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1518
1518
|
}
|
|
1519
1519
|
setAccessTokenCredential(): void {
|
|
1520
|
-
|
|
1521
|
-
"Storage interface - setAccessTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1522
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1520
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1523
1521
|
}
|
|
1524
1522
|
getAccessTokenCredential(): AccessTokenEntity {
|
|
1525
|
-
|
|
1526
|
-
"Storage interface - getAccessTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1527
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1523
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1528
1524
|
}
|
|
1529
1525
|
setRefreshTokenCredential(): void {
|
|
1530
|
-
|
|
1531
|
-
"Storage interface - setRefreshTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1532
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1526
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1533
1527
|
}
|
|
1534
1528
|
getRefreshTokenCredential(): RefreshTokenEntity {
|
|
1535
|
-
|
|
1536
|
-
"Storage interface - getRefreshTokenCredential() has not been implemented for the cacheStorage interface.";
|
|
1537
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1529
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1538
1530
|
}
|
|
1539
1531
|
setAppMetadata(): void {
|
|
1540
|
-
|
|
1541
|
-
"Storage interface - setAppMetadata() has not been implemented for the cacheStorage interface.";
|
|
1542
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1532
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1543
1533
|
}
|
|
1544
1534
|
getAppMetadata(): AppMetadataEntity {
|
|
1545
|
-
|
|
1546
|
-
"Storage interface - getAppMetadata() has not been implemented for the cacheStorage interface.";
|
|
1547
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1535
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1548
1536
|
}
|
|
1549
1537
|
setServerTelemetry(): void {
|
|
1550
|
-
|
|
1551
|
-
"Storage interface - setServerTelemetry() has not been implemented for the cacheStorage interface.";
|
|
1552
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1538
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1553
1539
|
}
|
|
1554
1540
|
getServerTelemetry(): ServerTelemetryEntity {
|
|
1555
|
-
|
|
1556
|
-
"Storage interface - getServerTelemetry() has not been implemented for the cacheStorage interface.";
|
|
1557
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1541
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1558
1542
|
}
|
|
1559
1543
|
setAuthorityMetadata(): void {
|
|
1560
|
-
|
|
1561
|
-
"Storage interface - setAuthorityMetadata() has not been implemented for the cacheStorage interface.";
|
|
1562
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1544
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1563
1545
|
}
|
|
1564
1546
|
getAuthorityMetadata(): AuthorityMetadataEntity | null {
|
|
1565
|
-
|
|
1566
|
-
"Storage interface - getAuthorityMetadata() has not been implemented for the cacheStorage interface.";
|
|
1567
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1547
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1568
1548
|
}
|
|
1569
1549
|
getAuthorityMetadataKeys(): Array<string> {
|
|
1570
|
-
|
|
1571
|
-
"Storage interface - getAuthorityMetadataKeys() has not been implemented for the cacheStorage interface.";
|
|
1572
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1550
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1573
1551
|
}
|
|
1574
1552
|
setThrottlingCache(): void {
|
|
1575
|
-
|
|
1576
|
-
"Storage interface - setThrottlingCache() has not been implemented for the cacheStorage interface.";
|
|
1577
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1553
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1578
1554
|
}
|
|
1579
1555
|
getThrottlingCache(): ThrottlingEntity {
|
|
1580
|
-
|
|
1581
|
-
"Storage interface - getThrottlingCache() has not been implemented for the cacheStorage interface.";
|
|
1582
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1556
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1583
1557
|
}
|
|
1584
1558
|
removeItem(): boolean {
|
|
1585
|
-
|
|
1586
|
-
"Storage interface - removeItem() has not been implemented for the cacheStorage interface.";
|
|
1587
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1559
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1588
1560
|
}
|
|
1589
1561
|
containsKey(): boolean {
|
|
1590
|
-
|
|
1591
|
-
"Storage interface - containsKey() has not been implemented for the cacheStorage interface.";
|
|
1592
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1562
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1593
1563
|
}
|
|
1594
1564
|
getKeys(): string[] {
|
|
1595
|
-
|
|
1596
|
-
"Storage interface - getKeys() has not been implemented for the cacheStorage interface.";
|
|
1597
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1565
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1598
1566
|
}
|
|
1599
1567
|
getAccountKeys(): string[] {
|
|
1600
|
-
|
|
1601
|
-
"Storage interface - getAccountKeys() has not been implemented for the cacheStorage interface.";
|
|
1602
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1568
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1603
1569
|
}
|
|
1604
1570
|
getTokenKeys(): TokenKeys {
|
|
1605
|
-
|
|
1606
|
-
"Storage interface - getTokenKeys() has not been implemented for the cacheStorage interface.";
|
|
1607
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1571
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1608
1572
|
}
|
|
1609
1573
|
async clear(): Promise<void> {
|
|
1610
|
-
|
|
1611
|
-
"Storage interface - clear() has not been implemented for the cacheStorage interface.";
|
|
1612
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1574
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1613
1575
|
}
|
|
1614
1576
|
updateCredentialCacheKey(): string {
|
|
1615
|
-
|
|
1616
|
-
"Storage interface - updateCredentialCacheKey() has not been implemented for the cacheStorage interface.";
|
|
1617
|
-
throw AuthError.createUnexpectedError(notImplErr);
|
|
1577
|
+
throw createClientAuthError(ClientAuthErrorCodes.methodNotImplemented);
|
|
1618
1578
|
}
|
|
1619
1579
|
}
|
|
@@ -8,7 +8,10 @@ import { CredentialType, AuthenticationScheme } from "../../utils/Constants";
|
|
|
8
8
|
import { TimeUtils } from "../../utils/TimeUtils";
|
|
9
9
|
import { ICrypto } from "../../crypto/ICrypto";
|
|
10
10
|
import { TokenClaims } from "../../account/TokenClaims";
|
|
11
|
-
import {
|
|
11
|
+
import {
|
|
12
|
+
createClientAuthError,
|
|
13
|
+
ClientAuthErrorCodes,
|
|
14
|
+
} from "../../error/ClientAuthError";
|
|
12
15
|
import { extractTokenClaims } from "../../account/AuthToken";
|
|
13
16
|
|
|
14
17
|
/**
|
|
@@ -125,7 +128,9 @@ export class AccessTokenEntity extends CredentialEntity {
|
|
|
125
128
|
cryptoUtils.base64Decode
|
|
126
129
|
);
|
|
127
130
|
if (!tokenClaims?.cnf?.kid) {
|
|
128
|
-
throw
|
|
131
|
+
throw createClientAuthError(
|
|
132
|
+
ClientAuthErrorCodes.tokenClaimsCnfRequiredForSignedJwt
|
|
133
|
+
);
|
|
129
134
|
}
|
|
130
135
|
atEntity.keyId = tokenClaims.cnf.kid;
|
|
131
136
|
break;
|
|
@@ -8,7 +8,10 @@ import { Authority } from "../../authority/Authority";
|
|
|
8
8
|
import { ICrypto } from "../../crypto/ICrypto";
|
|
9
9
|
import { buildClientInfo } from "../../account/ClientInfo";
|
|
10
10
|
import { AccountInfo } from "../../account/AccountInfo";
|
|
11
|
-
import {
|
|
11
|
+
import {
|
|
12
|
+
createClientAuthError,
|
|
13
|
+
ClientAuthErrorCodes,
|
|
14
|
+
} from "../../error/ClientAuthError";
|
|
12
15
|
import { AuthorityType } from "../../authority/AuthorityType";
|
|
13
16
|
import { Logger } from "../../logger/Logger";
|
|
14
17
|
import { TokenClaims } from "../../account/TokenClaims";
|
|
@@ -140,7 +143,9 @@ export class AccountEntity {
|
|
|
140
143
|
(authority && authority.getPreferredCache());
|
|
141
144
|
|
|
142
145
|
if (!env) {
|
|
143
|
-
throw
|
|
146
|
+
throw createClientAuthError(
|
|
147
|
+
ClientAuthErrorCodes.invalidCacheEnvironment
|
|
148
|
+
);
|
|
144
149
|
}
|
|
145
150
|
|
|
146
151
|
account.environment = env;
|
|
@@ -10,7 +10,10 @@ import {
|
|
|
10
10
|
Constants,
|
|
11
11
|
AuthenticationScheme,
|
|
12
12
|
} from "../../utils/Constants";
|
|
13
|
-
import {
|
|
13
|
+
import {
|
|
14
|
+
ClientAuthErrorCodes,
|
|
15
|
+
createClientAuthError,
|
|
16
|
+
} from "../../error/ClientAuthError";
|
|
14
17
|
|
|
15
18
|
/**
|
|
16
19
|
* Base type for credentials to be stored in the cache: eg: ACCESS_TOKEN, ID_TOKEN etc
|
|
@@ -107,7 +110,9 @@ export class CredentialEntity {
|
|
|
107
110
|
case CredentialType.REFRESH_TOKEN:
|
|
108
111
|
return CacheType.REFRESH_TOKEN;
|
|
109
112
|
default: {
|
|
110
|
-
throw
|
|
113
|
+
throw createClientAuthError(
|
|
114
|
+
ClientAuthErrorCodes.unexpectedCredentialType
|
|
115
|
+
);
|
|
111
116
|
}
|
|
112
117
|
}
|
|
113
118
|
}
|
|
@@ -25,7 +25,10 @@ import { NetworkResponse } from "../network/NetworkManager";
|
|
|
25
25
|
import { ResponseHandler } from "../response/ResponseHandler";
|
|
26
26
|
import { AuthenticationResult } from "../response/AuthenticationResult";
|
|
27
27
|
import { StringUtils } from "../utils/StringUtils";
|
|
28
|
-
import {
|
|
28
|
+
import {
|
|
29
|
+
ClientAuthErrorCodes,
|
|
30
|
+
createClientAuthError,
|
|
31
|
+
} from "../error/ClientAuthError";
|
|
29
32
|
import { UrlString } from "../url/UrlString";
|
|
30
33
|
import { ServerAuthorizationCodeResponse } from "../response/ServerAuthorizationCodeResponse";
|
|
31
34
|
import { CommonEndSessionRequest } from "../request/CommonEndSessionRequest";
|
|
@@ -39,7 +42,10 @@ import {
|
|
|
39
42
|
buildClientInfo,
|
|
40
43
|
} from "../account/ClientInfo";
|
|
41
44
|
import { CcsCredentialType, CcsCredential } from "../account/CcsCredential";
|
|
42
|
-
import {
|
|
45
|
+
import {
|
|
46
|
+
createClientConfigurationError,
|
|
47
|
+
ClientConfigurationErrorCodes,
|
|
48
|
+
} from "../error/ClientConfigurationError";
|
|
43
49
|
import { RequestValidator } from "../request/RequestValidator";
|
|
44
50
|
import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
|
|
45
51
|
import { PerformanceEvents } from "../telemetry/performance/PerformanceEvent";
|
|
@@ -110,7 +116,9 @@ export class AuthorizationCodeClient extends BaseClient {
|
|
|
110
116
|
);
|
|
111
117
|
|
|
112
118
|
if (!request.code) {
|
|
113
|
-
throw
|
|
119
|
+
throw createClientAuthError(
|
|
120
|
+
ClientAuthErrorCodes.requestCannotBeMade
|
|
121
|
+
);
|
|
114
122
|
}
|
|
115
123
|
|
|
116
124
|
const reqTimestamp = TimeUtils.nowSeconds();
|
|
@@ -192,7 +200,9 @@ export class AuthorizationCodeClient extends BaseClient {
|
|
|
192
200
|
|
|
193
201
|
// throw when there is no auth code in the response
|
|
194
202
|
if (!serverParams.code) {
|
|
195
|
-
throw
|
|
203
|
+
throw createClientAuthError(
|
|
204
|
+
ClientAuthErrorCodes.authorizationCodeMissingFromServerResponse
|
|
205
|
+
);
|
|
196
206
|
}
|
|
197
207
|
return {
|
|
198
208
|
...serverParams,
|
|
@@ -209,7 +219,9 @@ export class AuthorizationCodeClient extends BaseClient {
|
|
|
209
219
|
getLogoutUri(logoutRequest: CommonEndSessionRequest): string {
|
|
210
220
|
// Throw error if logoutRequest is null/undefined
|
|
211
221
|
if (!logoutRequest) {
|
|
212
|
-
throw
|
|
222
|
+
throw createClientConfigurationError(
|
|
223
|
+
ClientConfigurationErrorCodes.logoutRequestEmpty
|
|
224
|
+
);
|
|
213
225
|
}
|
|
214
226
|
const queryString = this.createLogoutUrlQueryString(logoutRequest);
|
|
215
227
|
|
|
@@ -371,18 +383,22 @@ export class AuthorizationCodeClient extends BaseClient {
|
|
|
371
383
|
this.performanceClient
|
|
372
384
|
);
|
|
373
385
|
|
|
374
|
-
|
|
386
|
+
const reqCnfData = await invokeAsync(
|
|
387
|
+
popTokenGenerator.generateCnf.bind(popTokenGenerator),
|
|
375
388
|
PerformanceEvents.PopTokenGenerateCnf,
|
|
389
|
+
this.logger,
|
|
390
|
+
this.performanceClient,
|
|
376
391
|
request.correlationId
|
|
377
|
-
);
|
|
378
|
-
const reqCnfData = await popTokenGenerator.generateCnf(request);
|
|
392
|
+
)(request, this.logger);
|
|
379
393
|
// SPA PoP requires full Base64Url encoded req_cnf string (unhashed)
|
|
380
394
|
parameterBuilder.addPopToken(reqCnfData.reqCnfString);
|
|
381
395
|
} else if (request.authenticationScheme === AuthenticationScheme.SSH) {
|
|
382
396
|
if (request.sshJwk) {
|
|
383
397
|
parameterBuilder.addSshJwk(request.sshJwk);
|
|
384
398
|
} else {
|
|
385
|
-
throw
|
|
399
|
+
throw createClientConfigurationError(
|
|
400
|
+
ClientConfigurationErrorCodes.missingSshJwk
|
|
401
|
+
);
|
|
386
402
|
}
|
|
387
403
|
}
|
|
388
404
|
|
|
@@ -652,7 +668,13 @@ export class AuthorizationCodeClient extends BaseClient {
|
|
|
652
668
|
this.cryptoUtils
|
|
653
669
|
);
|
|
654
670
|
// to reduce the URL length, it is recommended to send the hash of the req_cnf instead of the whole string
|
|
655
|
-
const reqCnfData = await
|
|
671
|
+
const reqCnfData = await invokeAsync(
|
|
672
|
+
popTokenGenerator.generateCnf.bind(popTokenGenerator),
|
|
673
|
+
PerformanceEvents.PopTokenGenerateCnf,
|
|
674
|
+
this.logger,
|
|
675
|
+
this.performanceClient,
|
|
676
|
+
request.correlationId
|
|
677
|
+
)(request, this.logger);
|
|
656
678
|
parameterBuilder.addPopToken(reqCnfData.reqCnfHash);
|
|
657
679
|
}
|
|
658
680
|
}
|
package/src/client/BaseClient.ts
CHANGED
|
@@ -19,7 +19,10 @@ import { CacheManager } from "../cache/CacheManager";
|
|
|
19
19
|
import { ServerTelemetryManager } from "../telemetry/server/ServerTelemetryManager";
|
|
20
20
|
import { RequestThumbprint } from "../network/RequestThumbprint";
|
|
21
21
|
import { version, name } from "../packageMetadata";
|
|
22
|
-
import {
|
|
22
|
+
import {
|
|
23
|
+
createClientAuthError,
|
|
24
|
+
ClientAuthErrorCodes,
|
|
25
|
+
} from "../error/ClientAuthError";
|
|
23
26
|
import { CcsCredential, CcsCredentialType } from "../account/CcsCredential";
|
|
24
27
|
import { buildClientInfoFromHomeAccountId } from "../account/ClientInfo";
|
|
25
28
|
import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
|
|
@@ -144,7 +147,7 @@ export abstract class BaseClient {
|
|
|
144
147
|
correlationId: string
|
|
145
148
|
): Promise<NetworkResponse<ServerAuthorizationTokenResponse>> {
|
|
146
149
|
this.performanceClient?.addQueueMeasurement(
|
|
147
|
-
PerformanceEvents.
|
|
150
|
+
PerformanceEvents.BaseClientExecutePostToTokenEndpoint,
|
|
148
151
|
correlationId
|
|
149
152
|
);
|
|
150
153
|
const response =
|
|
@@ -180,8 +183,8 @@ export abstract class BaseClient {
|
|
|
180
183
|
*/
|
|
181
184
|
updateAuthority(updatedAuthority: Authority): void {
|
|
182
185
|
if (!updatedAuthority.discoveryComplete()) {
|
|
183
|
-
throw
|
|
184
|
-
|
|
186
|
+
throw createClientAuthError(
|
|
187
|
+
ClientAuthErrorCodes.endpointResolutionError
|
|
185
188
|
);
|
|
186
189
|
}
|
|
187
190
|
this.authority = updatedAuthority;
|