@aws-sdk/nested-clients 3.730.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/README.md +13 -0
- package/dist-cjs/index.js +2 -0
- package/dist-cjs/submodules/sso-oidc/auth/httpAuthSchemeProvider.js +56 -0
- package/dist-cjs/submodules/sso-oidc/endpoint/endpointResolver.js +18 -0
- package/dist-cjs/submodules/sso-oidc/endpoint/ruleset.js +106 -0
- package/dist-cjs/submodules/sso-oidc/index.js +804 -0
- package/dist-cjs/submodules/sso-oidc/runtimeConfig.browser.js +38 -0
- package/dist-cjs/submodules/sso-oidc/runtimeConfig.js +50 -0
- package/dist-cjs/submodules/sso-oidc/runtimeConfig.native.js +15 -0
- package/dist-cjs/submodules/sso-oidc/runtimeConfig.shared.js +40 -0
- package/dist-cjs/submodules/sts/STSClient.js +51 -0
- package/dist-cjs/submodules/sts/auth/httpAuthExtensionConfiguration.js +43 -0
- package/dist-cjs/submodules/sts/auth/httpAuthSchemeProvider.js +63 -0
- package/dist-cjs/submodules/sts/endpoint/EndpointParameters.js +20 -0
- package/dist-cjs/submodules/sts/endpoint/endpointResolver.js +18 -0
- package/dist-cjs/submodules/sts/endpoint/ruleset.js +145 -0
- package/dist-cjs/submodules/sts/index.js +950 -0
- package/dist-cjs/submodules/sts/runtimeConfig.browser.js +39 -0
- package/dist-cjs/submodules/sts/runtimeConfig.js +64 -0
- package/dist-cjs/submodules/sts/runtimeConfig.native.js +15 -0
- package/dist-cjs/submodules/sts/runtimeConfig.shared.js +40 -0
- package/dist-cjs/submodules/sts/runtimeExtensions.js +25 -0
- package/dist-es/index.js +1 -0
- package/dist-es/submodules/sso-oidc/SSOOIDC.js +9 -0
- package/dist-es/submodules/sso-oidc/SSOOIDCClient.js +47 -0
- package/dist-es/submodules/sso-oidc/auth/httpAuthExtensionConfiguration.js +38 -0
- package/dist-es/submodules/sso-oidc/auth/httpAuthSchemeProvider.js +50 -0
- package/dist-es/submodules/sso-oidc/commands/CreateTokenCommand.js +23 -0
- package/dist-es/submodules/sso-oidc/commands/index.js +1 -0
- package/dist-es/submodules/sso-oidc/endpoint/EndpointParameters.js +14 -0
- package/dist-es/submodules/sso-oidc/endpoint/endpointResolver.js +14 -0
- package/dist-es/submodules/sso-oidc/endpoint/ruleset.js +103 -0
- package/dist-es/submodules/sso-oidc/extensionConfiguration.js +1 -0
- package/dist-es/submodules/sso-oidc/index.js +5 -0
- package/dist-es/submodules/sso-oidc/models/SSOOIDCServiceException.js +8 -0
- package/dist-es/submodules/sso-oidc/models/index.js +1 -0
- package/dist-es/submodules/sso-oidc/models/models_0.js +190 -0
- package/dist-es/submodules/sso-oidc/protocols/Aws_restJson1.js +255 -0
- package/dist-es/submodules/sso-oidc/runtimeConfig.browser.js +33 -0
- package/dist-es/submodules/sso-oidc/runtimeConfig.js +45 -0
- package/dist-es/submodules/sso-oidc/runtimeConfig.native.js +11 -0
- package/dist-es/submodules/sso-oidc/runtimeConfig.shared.js +36 -0
- package/dist-es/submodules/sso-oidc/runtimeExtensions.js +21 -0
- package/dist-es/submodules/sts/STS.js +11 -0
- package/dist-es/submodules/sts/STSClient.js +47 -0
- package/dist-es/submodules/sts/auth/httpAuthExtensionConfiguration.js +38 -0
- package/dist-es/submodules/sts/auth/httpAuthSchemeProvider.js +56 -0
- package/dist-es/submodules/sts/commands/AssumeRoleCommand.js +23 -0
- package/dist-es/submodules/sts/commands/AssumeRoleWithWebIdentityCommand.js +23 -0
- package/dist-es/submodules/sts/commands/index.js +2 -0
- package/dist-es/submodules/sts/defaultRoleAssumers.js +22 -0
- package/dist-es/submodules/sts/defaultStsRoleAssumers.js +93 -0
- package/dist-es/submodules/sts/endpoint/EndpointParameters.js +16 -0
- package/dist-es/submodules/sts/endpoint/endpointResolver.js +14 -0
- package/dist-es/submodules/sts/endpoint/ruleset.js +142 -0
- package/dist-es/submodules/sts/extensionConfiguration.js +1 -0
- package/dist-es/submodules/sts/index.js +6 -0
- package/dist-es/submodules/sts/models/STSServiceException.js +8 -0
- package/dist-es/submodules/sts/models/index.js +1 -0
- package/dist-es/submodules/sts/models/models_0.js +102 -0
- package/dist-es/submodules/sts/protocols/Aws_query.js +528 -0
- package/dist-es/submodules/sts/runtimeConfig.browser.js +34 -0
- package/dist-es/submodules/sts/runtimeConfig.js +59 -0
- package/dist-es/submodules/sts/runtimeConfig.native.js +11 -0
- package/dist-es/submodules/sts/runtimeConfig.shared.js +36 -0
- package/dist-es/submodules/sts/runtimeExtensions.js +21 -0
- package/dist-types/index.d.ts +6 -0
- package/dist-types/submodules/sso-oidc/SSOOIDC.d.ts +54 -0
- package/dist-types/submodules/sso-oidc/SSOOIDCClient.d.ts +219 -0
- package/dist-types/submodules/sso-oidc/auth/httpAuthExtensionConfiguration.d.ts +29 -0
- package/dist-types/submodules/sso-oidc/auth/httpAuthSchemeProvider.d.ts +61 -0
- package/dist-types/submodules/sso-oidc/commands/CreateTokenCommand.d.ts +128 -0
- package/dist-types/submodules/sso-oidc/commands/index.d.ts +1 -0
- package/dist-types/submodules/sso-oidc/endpoint/EndpointParameters.d.ts +40 -0
- package/dist-types/submodules/sso-oidc/endpoint/endpointResolver.d.ts +5 -0
- package/dist-types/submodules/sso-oidc/endpoint/ruleset.d.ts +2 -0
- package/dist-types/submodules/sso-oidc/extensionConfiguration.d.ts +9 -0
- package/dist-types/submodules/sso-oidc/index.d.ts +50 -0
- package/dist-types/submodules/sso-oidc/models/SSOOIDCServiceException.d.ts +14 -0
- package/dist-types/submodules/sso-oidc/models/index.d.ts +1 -0
- package/dist-types/submodules/sso-oidc/models/models_0.d.ts +396 -0
- package/dist-types/submodules/sso-oidc/protocols/Aws_restJson1.d.ts +11 -0
- package/dist-types/submodules/sso-oidc/runtimeConfig.browser.d.ts +56 -0
- package/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +56 -0
- package/dist-types/submodules/sso-oidc/runtimeConfig.native.d.ts +55 -0
- package/dist-types/submodules/sso-oidc/runtimeConfig.shared.d.ts +32 -0
- package/dist-types/submodules/sso-oidc/runtimeExtensions.d.ts +17 -0
- package/dist-types/submodules/sts/STS.d.ts +27 -0
- package/dist-types/submodules/sts/STSClient.d.ts +192 -0
- package/dist-types/submodules/sts/auth/httpAuthExtensionConfiguration.d.ts +29 -0
- package/dist-types/submodules/sts/auth/httpAuthSchemeProvider.d.ts +71 -0
- package/dist-types/submodules/sts/commands/AssumeRoleCommand.d.ts +222 -0
- package/dist-types/submodules/sts/commands/AssumeRoleWithWebIdentityCommand.d.ts +254 -0
- package/dist-types/submodules/sts/commands/index.d.ts +2 -0
- package/dist-types/submodules/sts/defaultRoleAssumers.d.ts +23 -0
- package/dist-types/submodules/sts/defaultStsRoleAssumers.d.ts +43 -0
- package/dist-types/submodules/sts/endpoint/EndpointParameters.d.ts +46 -0
- package/dist-types/submodules/sts/endpoint/endpointResolver.d.ts +5 -0
- package/dist-types/submodules/sts/endpoint/ruleset.d.ts +2 -0
- package/dist-types/submodules/sts/extensionConfiguration.d.ts +9 -0
- package/dist-types/submodules/sts/index.d.ts +17 -0
- package/dist-types/submodules/sts/models/STSServiceException.d.ts +14 -0
- package/dist-types/submodules/sts/models/index.d.ts +1 -0
- package/dist-types/submodules/sts/models/models_0.d.ts +712 -0
- package/dist-types/submodules/sts/protocols/Aws_query.d.ts +20 -0
- package/dist-types/submodules/sts/runtimeConfig.browser.d.ts +58 -0
- package/dist-types/submodules/sts/runtimeConfig.d.ts +56 -0
- package/dist-types/submodules/sts/runtimeConfig.native.d.ts +57 -0
- package/dist-types/submodules/sts/runtimeConfig.shared.d.ts +32 -0
- package/dist-types/submodules/sts/runtimeExtensions.d.ts +17 -0
- package/dist-types/ts3.4/index.d.ts +1 -0
- package/dist-types/ts3.4/submodules/sso-oidc/SSOOIDC.d.ts +22 -0
- package/dist-types/ts3.4/submodules/sso-oidc/SSOOIDCClient.d.ts +121 -0
- package/dist-types/ts3.4/submodules/sso-oidc/auth/httpAuthExtensionConfiguration.d.ts +32 -0
- package/dist-types/ts3.4/submodules/sso-oidc/auth/httpAuthSchemeProvider.d.ts +44 -0
- package/dist-types/ts3.4/submodules/sso-oidc/commands/CreateTokenCommand.d.ts +43 -0
- package/dist-types/ts3.4/submodules/sso-oidc/commands/index.d.ts +1 -0
- package/dist-types/ts3.4/submodules/sso-oidc/endpoint/EndpointParameters.d.ts +51 -0
- package/dist-types/ts3.4/submodules/sso-oidc/endpoint/endpointResolver.d.ts +8 -0
- package/dist-types/ts3.4/submodules/sso-oidc/endpoint/ruleset.d.ts +2 -0
- package/dist-types/ts3.4/submodules/sso-oidc/extensionConfiguration.d.ts +9 -0
- package/dist-types/ts3.4/submodules/sso-oidc/index.d.ts +8 -0
- package/dist-types/ts3.4/submodules/sso-oidc/models/SSOOIDCServiceException.d.ts +9 -0
- package/dist-types/ts3.4/submodules/sso-oidc/models/index.d.ts +1 -0
- package/dist-types/ts3.4/submodules/sso-oidc/models/models_0.d.ts +123 -0
- package/dist-types/ts3.4/submodules/sso-oidc/protocols/Aws_restJson1.d.ts +17 -0
- package/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.browser.d.ts +116 -0
- package/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +113 -0
- package/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.native.d.ts +120 -0
- package/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.shared.d.ts +49 -0
- package/dist-types/ts3.4/submodules/sso-oidc/runtimeExtensions.d.ts +11 -0
- package/dist-types/ts3.4/submodules/sts/STS.d.ts +39 -0
- package/dist-types/ts3.4/submodules/sts/STSClient.d.ts +128 -0
- package/dist-types/ts3.4/submodules/sts/auth/httpAuthExtensionConfiguration.d.ts +32 -0
- package/dist-types/ts3.4/submodules/sts/auth/httpAuthSchemeProvider.d.ts +54 -0
- package/dist-types/ts3.4/submodules/sts/commands/AssumeRoleCommand.d.ts +47 -0
- package/dist-types/ts3.4/submodules/sts/commands/AssumeRoleWithWebIdentityCommand.d.ts +51 -0
- package/dist-types/ts3.4/submodules/sts/commands/index.d.ts +2 -0
- package/dist-types/ts3.4/submodules/sts/defaultRoleAssumers.d.ts +19 -0
- package/dist-types/ts3.4/submodules/sts/defaultStsRoleAssumers.d.ts +33 -0
- package/dist-types/ts3.4/submodules/sts/endpoint/EndpointParameters.d.ts +57 -0
- package/dist-types/ts3.4/submodules/sts/endpoint/endpointResolver.d.ts +8 -0
- package/dist-types/ts3.4/submodules/sts/endpoint/ruleset.d.ts +2 -0
- package/dist-types/ts3.4/submodules/sts/extensionConfiguration.d.ts +9 -0
- package/dist-types/ts3.4/submodules/sts/index.d.ts +9 -0
- package/dist-types/ts3.4/submodules/sts/models/STSServiceException.d.ts +9 -0
- package/dist-types/ts3.4/submodules/sts/models/index.d.ts +1 -0
- package/dist-types/ts3.4/submodules/sts/models/models_0.d.ts +123 -0
- package/dist-types/ts3.4/submodules/sts/protocols/Aws_query.d.ts +29 -0
- package/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +127 -0
- package/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +111 -0
- package/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +131 -0
- package/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +51 -0
- package/dist-types/ts3.4/submodules/sts/runtimeExtensions.d.ts +11 -0
- package/package.json +115 -0
- package/sso-oidc.d.ts +7 -0
- package/sso-oidc.js +5 -0
- package/sts.d.ts +7 -0
- package/sts.js +5 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {
|
|
2
|
+
const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;
|
|
3
|
+
let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;
|
|
4
|
+
let _credentials = runtimeConfig.credentials;
|
|
5
|
+
return {
|
|
6
|
+
setHttpAuthScheme(httpAuthScheme) {
|
|
7
|
+
const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);
|
|
8
|
+
if (index === -1) {
|
|
9
|
+
_httpAuthSchemes.push(httpAuthScheme);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
_httpAuthSchemes.splice(index, 1, httpAuthScheme);
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
httpAuthSchemes() {
|
|
16
|
+
return _httpAuthSchemes;
|
|
17
|
+
},
|
|
18
|
+
setHttpAuthSchemeProvider(httpAuthSchemeProvider) {
|
|
19
|
+
_httpAuthSchemeProvider = httpAuthSchemeProvider;
|
|
20
|
+
},
|
|
21
|
+
httpAuthSchemeProvider() {
|
|
22
|
+
return _httpAuthSchemeProvider;
|
|
23
|
+
},
|
|
24
|
+
setCredentials(credentials) {
|
|
25
|
+
_credentials = credentials;
|
|
26
|
+
},
|
|
27
|
+
credentials() {
|
|
28
|
+
return _credentials;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export const resolveHttpAuthRuntimeConfig = (config) => {
|
|
33
|
+
return {
|
|
34
|
+
httpAuthSchemes: config.httpAuthSchemes(),
|
|
35
|
+
httpAuthSchemeProvider: config.httpAuthSchemeProvider(),
|
|
36
|
+
credentials: config.credentials(),
|
|
37
|
+
};
|
|
38
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { resolveAwsSdkSigV4Config, } from "@aws-sdk/core";
|
|
2
|
+
import { getSmithyContext, normalizeProvider } from "@smithy/util-middleware";
|
|
3
|
+
import { STSClient } from "../STSClient";
|
|
4
|
+
export const defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {
|
|
5
|
+
return {
|
|
6
|
+
operation: getSmithyContext(context).operation,
|
|
7
|
+
region: (await normalizeProvider(config.region)()) ||
|
|
8
|
+
(() => {
|
|
9
|
+
throw new Error("expected `region` to be configured for `aws.auth#sigv4`");
|
|
10
|
+
})(),
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
function createAwsAuthSigv4HttpAuthOption(authParameters) {
|
|
14
|
+
return {
|
|
15
|
+
schemeId: "aws.auth#sigv4",
|
|
16
|
+
signingProperties: {
|
|
17
|
+
name: "sts",
|
|
18
|
+
region: authParameters.region,
|
|
19
|
+
},
|
|
20
|
+
propertiesExtractor: (config, context) => ({
|
|
21
|
+
signingProperties: {
|
|
22
|
+
config,
|
|
23
|
+
context,
|
|
24
|
+
},
|
|
25
|
+
}),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
function createSmithyApiNoAuthHttpAuthOption(authParameters) {
|
|
29
|
+
return {
|
|
30
|
+
schemeId: "smithy.api#noAuth",
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export const defaultSTSHttpAuthSchemeProvider = (authParameters) => {
|
|
34
|
+
const options = [];
|
|
35
|
+
switch (authParameters.operation) {
|
|
36
|
+
case "AssumeRoleWithWebIdentity": {
|
|
37
|
+
options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
default: {
|
|
41
|
+
options.push(createAwsAuthSigv4HttpAuthOption(authParameters));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return options;
|
|
45
|
+
};
|
|
46
|
+
export const resolveStsAuthConfig = (input) => ({
|
|
47
|
+
...input,
|
|
48
|
+
stsClientCtor: STSClient,
|
|
49
|
+
});
|
|
50
|
+
export const resolveHttpAuthSchemeConfig = (config) => {
|
|
51
|
+
const config_0 = resolveStsAuthConfig(config);
|
|
52
|
+
const config_1 = resolveAwsSdkSigV4Config(config_0);
|
|
53
|
+
return {
|
|
54
|
+
...config_1,
|
|
55
|
+
};
|
|
56
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
|
|
2
|
+
import { getSerdePlugin } from "@smithy/middleware-serde";
|
|
3
|
+
import { Command as $Command } from "@smithy/smithy-client";
|
|
4
|
+
import { commonParams } from "../endpoint/EndpointParameters";
|
|
5
|
+
import { AssumeRoleResponseFilterSensitiveLog } from "../models/models_0";
|
|
6
|
+
import { de_AssumeRoleCommand, se_AssumeRoleCommand } from "../protocols/Aws_query";
|
|
7
|
+
export { $Command };
|
|
8
|
+
export class AssumeRoleCommand extends $Command
|
|
9
|
+
.classBuilder()
|
|
10
|
+
.ep(commonParams)
|
|
11
|
+
.m(function (Command, cs, config, o) {
|
|
12
|
+
return [
|
|
13
|
+
getSerdePlugin(config, this.serialize, this.deserialize),
|
|
14
|
+
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
|
|
15
|
+
];
|
|
16
|
+
})
|
|
17
|
+
.s("AWSSecurityTokenServiceV20110615", "AssumeRole", {})
|
|
18
|
+
.n("STSClient", "AssumeRoleCommand")
|
|
19
|
+
.f(void 0, AssumeRoleResponseFilterSensitiveLog)
|
|
20
|
+
.ser(se_AssumeRoleCommand)
|
|
21
|
+
.de(de_AssumeRoleCommand)
|
|
22
|
+
.build() {
|
|
23
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
|
|
2
|
+
import { getSerdePlugin } from "@smithy/middleware-serde";
|
|
3
|
+
import { Command as $Command } from "@smithy/smithy-client";
|
|
4
|
+
import { commonParams } from "../endpoint/EndpointParameters";
|
|
5
|
+
import { AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog, } from "../models/models_0";
|
|
6
|
+
import { de_AssumeRoleWithWebIdentityCommand, se_AssumeRoleWithWebIdentityCommand } from "../protocols/Aws_query";
|
|
7
|
+
export { $Command };
|
|
8
|
+
export class AssumeRoleWithWebIdentityCommand extends $Command
|
|
9
|
+
.classBuilder()
|
|
10
|
+
.ep(commonParams)
|
|
11
|
+
.m(function (Command, cs, config, o) {
|
|
12
|
+
return [
|
|
13
|
+
getSerdePlugin(config, this.serialize, this.deserialize),
|
|
14
|
+
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
|
|
15
|
+
];
|
|
16
|
+
})
|
|
17
|
+
.s("AWSSecurityTokenServiceV20110615", "AssumeRoleWithWebIdentity", {})
|
|
18
|
+
.n("STSClient", "AssumeRoleWithWebIdentityCommand")
|
|
19
|
+
.f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog)
|
|
20
|
+
.ser(se_AssumeRoleWithWebIdentityCommand)
|
|
21
|
+
.de(de_AssumeRoleWithWebIdentityCommand)
|
|
22
|
+
.build() {
|
|
23
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { getDefaultRoleAssumer as StsGetDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity as StsGetDefaultRoleAssumerWithWebIdentity, } from "./defaultStsRoleAssumers";
|
|
2
|
+
import { STSClient } from "./STSClient";
|
|
3
|
+
const getCustomizableStsClientCtor = (baseCtor, customizations) => {
|
|
4
|
+
if (!customizations)
|
|
5
|
+
return baseCtor;
|
|
6
|
+
else
|
|
7
|
+
return class CustomizableSTSClient extends baseCtor {
|
|
8
|
+
constructor(config) {
|
|
9
|
+
super(config);
|
|
10
|
+
for (const customization of customizations) {
|
|
11
|
+
this.middlewareStack.use(customization);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export const getDefaultRoleAssumer = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));
|
|
17
|
+
export const getDefaultRoleAssumerWithWebIdentity = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));
|
|
18
|
+
export const decorateDefaultCredentialProvider = (provider) => (input) => provider({
|
|
19
|
+
roleAssumer: getDefaultRoleAssumer(input),
|
|
20
|
+
roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input),
|
|
21
|
+
...input,
|
|
22
|
+
});
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { setCredentialFeature } from "@aws-sdk/core/client";
|
|
2
|
+
import { AssumeRoleCommand } from "./commands/AssumeRoleCommand";
|
|
3
|
+
import { AssumeRoleWithWebIdentityCommand, } from "./commands/AssumeRoleWithWebIdentityCommand";
|
|
4
|
+
const ASSUME_ROLE_DEFAULT_REGION = "us-east-1";
|
|
5
|
+
const getAccountIdFromAssumedRoleUser = (assumedRoleUser) => {
|
|
6
|
+
if (typeof assumedRoleUser?.Arn === "string") {
|
|
7
|
+
const arnComponents = assumedRoleUser.Arn.split(":");
|
|
8
|
+
if (arnComponents.length > 4 && arnComponents[4] !== "") {
|
|
9
|
+
return arnComponents[4];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return undefined;
|
|
13
|
+
};
|
|
14
|
+
const resolveRegion = async (_region, _parentRegion, credentialProviderLogger) => {
|
|
15
|
+
const region = typeof _region === "function" ? await _region() : _region;
|
|
16
|
+
const parentRegion = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion;
|
|
17
|
+
credentialProviderLogger?.debug?.("@aws-sdk/client-sts::resolveRegion", "accepting first of:", `${region} (provider)`, `${parentRegion} (parent client)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`);
|
|
18
|
+
return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;
|
|
19
|
+
};
|
|
20
|
+
export const getDefaultRoleAssumer = (stsOptions, stsClientCtor) => {
|
|
21
|
+
let stsClient;
|
|
22
|
+
let closureSourceCreds;
|
|
23
|
+
return async (sourceCreds, params) => {
|
|
24
|
+
closureSourceCreds = sourceCreds;
|
|
25
|
+
if (!stsClient) {
|
|
26
|
+
const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;
|
|
27
|
+
const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);
|
|
28
|
+
const isCompatibleRequestHandler = !isH2(requestHandler);
|
|
29
|
+
stsClient = new stsClientCtor({
|
|
30
|
+
credentialDefaultProvider: () => async () => closureSourceCreds,
|
|
31
|
+
region: resolvedRegion,
|
|
32
|
+
requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,
|
|
33
|
+
logger: logger,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleCommand(params));
|
|
37
|
+
if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {
|
|
38
|
+
throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
|
|
39
|
+
}
|
|
40
|
+
const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);
|
|
41
|
+
const credentials = {
|
|
42
|
+
accessKeyId: Credentials.AccessKeyId,
|
|
43
|
+
secretAccessKey: Credentials.SecretAccessKey,
|
|
44
|
+
sessionToken: Credentials.SessionToken,
|
|
45
|
+
expiration: Credentials.Expiration,
|
|
46
|
+
...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),
|
|
47
|
+
...(accountId && { accountId }),
|
|
48
|
+
};
|
|
49
|
+
setCredentialFeature(credentials, "CREDENTIALS_STS_ASSUME_ROLE", "i");
|
|
50
|
+
return credentials;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
export const getDefaultRoleAssumerWithWebIdentity = (stsOptions, stsClientCtor) => {
|
|
54
|
+
let stsClient;
|
|
55
|
+
return async (params) => {
|
|
56
|
+
if (!stsClient) {
|
|
57
|
+
const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;
|
|
58
|
+
const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);
|
|
59
|
+
const isCompatibleRequestHandler = !isH2(requestHandler);
|
|
60
|
+
stsClient = new stsClientCtor({
|
|
61
|
+
region: resolvedRegion,
|
|
62
|
+
requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,
|
|
63
|
+
logger: logger,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));
|
|
67
|
+
if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {
|
|
68
|
+
throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);
|
|
69
|
+
}
|
|
70
|
+
const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);
|
|
71
|
+
const credentials = {
|
|
72
|
+
accessKeyId: Credentials.AccessKeyId,
|
|
73
|
+
secretAccessKey: Credentials.SecretAccessKey,
|
|
74
|
+
sessionToken: Credentials.SessionToken,
|
|
75
|
+
expiration: Credentials.Expiration,
|
|
76
|
+
...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),
|
|
77
|
+
...(accountId && { accountId }),
|
|
78
|
+
};
|
|
79
|
+
if (accountId) {
|
|
80
|
+
setCredentialFeature(credentials, "RESOLVED_ACCOUNT_ID", "T");
|
|
81
|
+
}
|
|
82
|
+
setCredentialFeature(credentials, "CREDENTIALS_STS_ASSUME_ROLE_WEB_ID", "k");
|
|
83
|
+
return credentials;
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
export const decorateDefaultCredentialProvider = (provider) => (input) => provider({
|
|
87
|
+
roleAssumer: getDefaultRoleAssumer(input, input.stsClientCtor),
|
|
88
|
+
roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input, input.stsClientCtor),
|
|
89
|
+
...input,
|
|
90
|
+
});
|
|
91
|
+
const isH2 = (requestHandler) => {
|
|
92
|
+
return requestHandler?.metadata?.handlerProtocol === "h2";
|
|
93
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const resolveClientEndpointParameters = (options) => {
|
|
2
|
+
return {
|
|
3
|
+
...options,
|
|
4
|
+
useDualstackEndpoint: options.useDualstackEndpoint ?? false,
|
|
5
|
+
useFipsEndpoint: options.useFipsEndpoint ?? false,
|
|
6
|
+
useGlobalEndpoint: options.useGlobalEndpoint ?? false,
|
|
7
|
+
defaultSigningName: "sts",
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export const commonParams = {
|
|
11
|
+
UseGlobalEndpoint: { type: "builtInParams", name: "useGlobalEndpoint" },
|
|
12
|
+
UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
|
|
13
|
+
Endpoint: { type: "builtInParams", name: "endpoint" },
|
|
14
|
+
Region: { type: "builtInParams", name: "region" },
|
|
15
|
+
UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
|
|
16
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { awsEndpointFunctions } from "@aws-sdk/util-endpoints";
|
|
2
|
+
import { customEndpointFunctions, EndpointCache, resolveEndpoint } from "@smithy/util-endpoints";
|
|
3
|
+
import { ruleSet } from "./ruleset";
|
|
4
|
+
const cache = new EndpointCache({
|
|
5
|
+
size: 50,
|
|
6
|
+
params: ["Endpoint", "Region", "UseDualStack", "UseFIPS", "UseGlobalEndpoint"],
|
|
7
|
+
});
|
|
8
|
+
export const defaultEndpointResolver = (endpointParams, context = {}) => {
|
|
9
|
+
return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {
|
|
10
|
+
endpointParams: endpointParams,
|
|
11
|
+
logger: context.logger,
|
|
12
|
+
}));
|
|
13
|
+
};
|
|
14
|
+
customEndpointFunctions.aws = awsEndpointFunctions;
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
const F = "required", G = "type", H = "fn", I = "argv", J = "ref";
|
|
2
|
+
const a = false, b = true, c = "booleanEquals", d = "stringEquals", e = "sigv4", f = "sts", g = "us-east-1", h = "endpoint", i = "https://sts.{Region}.{PartitionResult#dnsSuffix}", j = "tree", k = "error", l = "getAttr", m = { [F]: false, [G]: "String" }, n = { [F]: true, default: false, [G]: "Boolean" }, o = { [J]: "Endpoint" }, p = { [H]: "isSet", [I]: [{ [J]: "Region" }] }, q = { [J]: "Region" }, r = { [H]: "aws.partition", [I]: [q], assign: "PartitionResult" }, s = { [J]: "UseFIPS" }, t = { [J]: "UseDualStack" }, u = {
|
|
3
|
+
url: "https://sts.amazonaws.com",
|
|
4
|
+
properties: { authSchemes: [{ name: e, signingName: f, signingRegion: g }] },
|
|
5
|
+
headers: {},
|
|
6
|
+
}, v = {}, w = { conditions: [{ [H]: d, [I]: [q, "aws-global"] }], [h]: u, [G]: h }, x = { [H]: c, [I]: [s, true] }, y = { [H]: c, [I]: [t, true] }, z = { [H]: l, [I]: [{ [J]: "PartitionResult" }, "supportsFIPS"] }, A = { [J]: "PartitionResult" }, B = { [H]: c, [I]: [true, { [H]: l, [I]: [A, "supportsDualStack"] }] }, C = [{ [H]: "isSet", [I]: [o] }], D = [x], E = [y];
|
|
7
|
+
const _data = {
|
|
8
|
+
version: "1.0",
|
|
9
|
+
parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n },
|
|
10
|
+
rules: [
|
|
11
|
+
{
|
|
12
|
+
conditions: [
|
|
13
|
+
{ [H]: c, [I]: [{ [J]: "UseGlobalEndpoint" }, b] },
|
|
14
|
+
{ [H]: "not", [I]: C },
|
|
15
|
+
p,
|
|
16
|
+
r,
|
|
17
|
+
{ [H]: c, [I]: [s, a] },
|
|
18
|
+
{ [H]: c, [I]: [t, a] },
|
|
19
|
+
],
|
|
20
|
+
rules: [
|
|
21
|
+
{ conditions: [{ [H]: d, [I]: [q, "ap-northeast-1"] }], endpoint: u, [G]: h },
|
|
22
|
+
{ conditions: [{ [H]: d, [I]: [q, "ap-south-1"] }], endpoint: u, [G]: h },
|
|
23
|
+
{ conditions: [{ [H]: d, [I]: [q, "ap-southeast-1"] }], endpoint: u, [G]: h },
|
|
24
|
+
{ conditions: [{ [H]: d, [I]: [q, "ap-southeast-2"] }], endpoint: u, [G]: h },
|
|
25
|
+
w,
|
|
26
|
+
{ conditions: [{ [H]: d, [I]: [q, "ca-central-1"] }], endpoint: u, [G]: h },
|
|
27
|
+
{ conditions: [{ [H]: d, [I]: [q, "eu-central-1"] }], endpoint: u, [G]: h },
|
|
28
|
+
{ conditions: [{ [H]: d, [I]: [q, "eu-north-1"] }], endpoint: u, [G]: h },
|
|
29
|
+
{ conditions: [{ [H]: d, [I]: [q, "eu-west-1"] }], endpoint: u, [G]: h },
|
|
30
|
+
{ conditions: [{ [H]: d, [I]: [q, "eu-west-2"] }], endpoint: u, [G]: h },
|
|
31
|
+
{ conditions: [{ [H]: d, [I]: [q, "eu-west-3"] }], endpoint: u, [G]: h },
|
|
32
|
+
{ conditions: [{ [H]: d, [I]: [q, "sa-east-1"] }], endpoint: u, [G]: h },
|
|
33
|
+
{ conditions: [{ [H]: d, [I]: [q, g] }], endpoint: u, [G]: h },
|
|
34
|
+
{ conditions: [{ [H]: d, [I]: [q, "us-east-2"] }], endpoint: u, [G]: h },
|
|
35
|
+
{ conditions: [{ [H]: d, [I]: [q, "us-west-1"] }], endpoint: u, [G]: h },
|
|
36
|
+
{ conditions: [{ [H]: d, [I]: [q, "us-west-2"] }], endpoint: u, [G]: h },
|
|
37
|
+
{
|
|
38
|
+
endpoint: {
|
|
39
|
+
url: i,
|
|
40
|
+
properties: { authSchemes: [{ name: e, signingName: f, signingRegion: "{Region}" }] },
|
|
41
|
+
headers: v,
|
|
42
|
+
},
|
|
43
|
+
[G]: h,
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
[G]: j,
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
conditions: C,
|
|
50
|
+
rules: [
|
|
51
|
+
{ conditions: D, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [G]: k },
|
|
52
|
+
{ conditions: E, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [G]: k },
|
|
53
|
+
{ endpoint: { url: o, properties: v, headers: v }, [G]: h },
|
|
54
|
+
],
|
|
55
|
+
[G]: j,
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
conditions: [p],
|
|
59
|
+
rules: [
|
|
60
|
+
{
|
|
61
|
+
conditions: [r],
|
|
62
|
+
rules: [
|
|
63
|
+
{
|
|
64
|
+
conditions: [x, y],
|
|
65
|
+
rules: [
|
|
66
|
+
{
|
|
67
|
+
conditions: [{ [H]: c, [I]: [b, z] }, B],
|
|
68
|
+
rules: [
|
|
69
|
+
{
|
|
70
|
+
endpoint: {
|
|
71
|
+
url: "https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
|
|
72
|
+
properties: v,
|
|
73
|
+
headers: v,
|
|
74
|
+
},
|
|
75
|
+
[G]: h,
|
|
76
|
+
},
|
|
77
|
+
],
|
|
78
|
+
[G]: j,
|
|
79
|
+
},
|
|
80
|
+
{ error: "FIPS and DualStack are enabled, but this partition does not support one or both", [G]: k },
|
|
81
|
+
],
|
|
82
|
+
[G]: j,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
conditions: D,
|
|
86
|
+
rules: [
|
|
87
|
+
{
|
|
88
|
+
conditions: [{ [H]: c, [I]: [z, b] }],
|
|
89
|
+
rules: [
|
|
90
|
+
{
|
|
91
|
+
conditions: [{ [H]: d, [I]: [{ [H]: l, [I]: [A, "name"] }, "aws-us-gov"] }],
|
|
92
|
+
endpoint: { url: "https://sts.{Region}.amazonaws.com", properties: v, headers: v },
|
|
93
|
+
[G]: h,
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
endpoint: {
|
|
97
|
+
url: "https://sts-fips.{Region}.{PartitionResult#dnsSuffix}",
|
|
98
|
+
properties: v,
|
|
99
|
+
headers: v,
|
|
100
|
+
},
|
|
101
|
+
[G]: h,
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
[G]: j,
|
|
105
|
+
},
|
|
106
|
+
{ error: "FIPS is enabled but this partition does not support FIPS", [G]: k },
|
|
107
|
+
],
|
|
108
|
+
[G]: j,
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
conditions: E,
|
|
112
|
+
rules: [
|
|
113
|
+
{
|
|
114
|
+
conditions: [B],
|
|
115
|
+
rules: [
|
|
116
|
+
{
|
|
117
|
+
endpoint: {
|
|
118
|
+
url: "https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}",
|
|
119
|
+
properties: v,
|
|
120
|
+
headers: v,
|
|
121
|
+
},
|
|
122
|
+
[G]: h,
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
[G]: j,
|
|
126
|
+
},
|
|
127
|
+
{ error: "DualStack is enabled but this partition does not support DualStack", [G]: k },
|
|
128
|
+
],
|
|
129
|
+
[G]: j,
|
|
130
|
+
},
|
|
131
|
+
w,
|
|
132
|
+
{ endpoint: { url: i, properties: v, headers: v }, [G]: h },
|
|
133
|
+
],
|
|
134
|
+
[G]: j,
|
|
135
|
+
},
|
|
136
|
+
],
|
|
137
|
+
[G]: j,
|
|
138
|
+
},
|
|
139
|
+
{ error: "Invalid Configuration: Missing Region", [G]: k },
|
|
140
|
+
],
|
|
141
|
+
};
|
|
142
|
+
export const ruleSet = _data;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ServiceException as __ServiceException, } from "@smithy/smithy-client";
|
|
2
|
+
export { __ServiceException };
|
|
3
|
+
export class STSServiceException extends __ServiceException {
|
|
4
|
+
constructor(options) {
|
|
5
|
+
super(options);
|
|
6
|
+
Object.setPrototypeOf(this, STSServiceException.prototype);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./models_0";
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { SENSITIVE_STRING } from "@smithy/smithy-client";
|
|
2
|
+
import { STSServiceException as __BaseException } from "./STSServiceException";
|
|
3
|
+
export const CredentialsFilterSensitiveLog = (obj) => ({
|
|
4
|
+
...obj,
|
|
5
|
+
...(obj.SecretAccessKey && { SecretAccessKey: SENSITIVE_STRING }),
|
|
6
|
+
});
|
|
7
|
+
export const AssumeRoleResponseFilterSensitiveLog = (obj) => ({
|
|
8
|
+
...obj,
|
|
9
|
+
...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),
|
|
10
|
+
});
|
|
11
|
+
export class ExpiredTokenException extends __BaseException {
|
|
12
|
+
name = "ExpiredTokenException";
|
|
13
|
+
$fault = "client";
|
|
14
|
+
constructor(opts) {
|
|
15
|
+
super({
|
|
16
|
+
name: "ExpiredTokenException",
|
|
17
|
+
$fault: "client",
|
|
18
|
+
...opts,
|
|
19
|
+
});
|
|
20
|
+
Object.setPrototypeOf(this, ExpiredTokenException.prototype);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export class MalformedPolicyDocumentException extends __BaseException {
|
|
24
|
+
name = "MalformedPolicyDocumentException";
|
|
25
|
+
$fault = "client";
|
|
26
|
+
constructor(opts) {
|
|
27
|
+
super({
|
|
28
|
+
name: "MalformedPolicyDocumentException",
|
|
29
|
+
$fault: "client",
|
|
30
|
+
...opts,
|
|
31
|
+
});
|
|
32
|
+
Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export class PackedPolicyTooLargeException extends __BaseException {
|
|
36
|
+
name = "PackedPolicyTooLargeException";
|
|
37
|
+
$fault = "client";
|
|
38
|
+
constructor(opts) {
|
|
39
|
+
super({
|
|
40
|
+
name: "PackedPolicyTooLargeException",
|
|
41
|
+
$fault: "client",
|
|
42
|
+
...opts,
|
|
43
|
+
});
|
|
44
|
+
Object.setPrototypeOf(this, PackedPolicyTooLargeException.prototype);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export class RegionDisabledException extends __BaseException {
|
|
48
|
+
name = "RegionDisabledException";
|
|
49
|
+
$fault = "client";
|
|
50
|
+
constructor(opts) {
|
|
51
|
+
super({
|
|
52
|
+
name: "RegionDisabledException",
|
|
53
|
+
$fault: "client",
|
|
54
|
+
...opts,
|
|
55
|
+
});
|
|
56
|
+
Object.setPrototypeOf(this, RegionDisabledException.prototype);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
export class IDPRejectedClaimException extends __BaseException {
|
|
60
|
+
name = "IDPRejectedClaimException";
|
|
61
|
+
$fault = "client";
|
|
62
|
+
constructor(opts) {
|
|
63
|
+
super({
|
|
64
|
+
name: "IDPRejectedClaimException",
|
|
65
|
+
$fault: "client",
|
|
66
|
+
...opts,
|
|
67
|
+
});
|
|
68
|
+
Object.setPrototypeOf(this, IDPRejectedClaimException.prototype);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
export class InvalidIdentityTokenException extends __BaseException {
|
|
72
|
+
name = "InvalidIdentityTokenException";
|
|
73
|
+
$fault = "client";
|
|
74
|
+
constructor(opts) {
|
|
75
|
+
super({
|
|
76
|
+
name: "InvalidIdentityTokenException",
|
|
77
|
+
$fault: "client",
|
|
78
|
+
...opts,
|
|
79
|
+
});
|
|
80
|
+
Object.setPrototypeOf(this, InvalidIdentityTokenException.prototype);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
export const AssumeRoleWithWebIdentityRequestFilterSensitiveLog = (obj) => ({
|
|
84
|
+
...obj,
|
|
85
|
+
...(obj.WebIdentityToken && { WebIdentityToken: SENSITIVE_STRING }),
|
|
86
|
+
});
|
|
87
|
+
export const AssumeRoleWithWebIdentityResponseFilterSensitiveLog = (obj) => ({
|
|
88
|
+
...obj,
|
|
89
|
+
...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),
|
|
90
|
+
});
|
|
91
|
+
export class IDPCommunicationErrorException extends __BaseException {
|
|
92
|
+
name = "IDPCommunicationErrorException";
|
|
93
|
+
$fault = "client";
|
|
94
|
+
constructor(opts) {
|
|
95
|
+
super({
|
|
96
|
+
name: "IDPCommunicationErrorException",
|
|
97
|
+
$fault: "client",
|
|
98
|
+
...opts,
|
|
99
|
+
});
|
|
100
|
+
Object.setPrototypeOf(this, IDPCommunicationErrorException.prototype);
|
|
101
|
+
}
|
|
102
|
+
}
|