Skip to content

Commit 088ccf7

Browse files
committed
feat(client-sts): export role assumers for non-sts clients
1 parent 7226996 commit 088ccf7

File tree

4 files changed

+17
-13
lines changed

4 files changed

+17
-13
lines changed

clients/client-sts/STSClient.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import {
3030
} from "@aws-sdk/middleware-host-header";
3131
import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
3232
import { RetryInputConfig, RetryResolvedConfig, getRetryPlugin, resolveRetryConfig } from "@aws-sdk/middleware-retry";
33-
// import { AwsAuthInputConfig, AwsAuthResolvedConfig, resolveAwsAuthConfig } from "@aws-sdk/middleware-signing";
3433
import { StsAuthInputConfig, StsAuthResolvedConfig, resolveStsAuthConfig } from "@aws-sdk/middleware-sdk-sts";
3534
import {
3635
UserAgentInputConfig,
@@ -181,7 +180,6 @@ export type STSClientConfig = Partial<__SmithyConfiguration<__HttpHandlerOptions
181180
EndpointsInputConfig &
182181
RetryInputConfig &
183182
HostHeaderInputConfig &
184-
// AwsAuthInputConfig &
185183
StsAuthInputConfig &
186184
UserAgentInputConfig;
187185

@@ -191,7 +189,6 @@ export type STSClientResolvedConfig = __SmithyResolvedConfiguration<__HttpHandle
191189
EndpointsResolvedConfig &
192190
RetryResolvedConfig &
193191
HostHeaderResolvedConfig &
194-
// AwsAuthResolvedConfig &
195192
StsAuthResolvedConfig &
196193
UserAgentResolvedConfig;
197194

@@ -219,7 +216,6 @@ export class STSClient extends __Client<
219216
let _config_2 = resolveEndpointsConfig(_config_1);
220217
let _config_3 = resolveRetryConfig(_config_2);
221218
let _config_4 = resolveHostHeaderConfig(_config_3);
222-
// let _config_5 = resolveAwsAuthConfig(_config_4);
223219
let _config_5 = resolveStsAuthConfig(_config_4, STSClient);
224220
let _config_6 = resolveUserAgentConfig(_config_5);
225221
super(_config_6);

clients/client-sts/defaultRoleAssumers.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,27 @@ import {
77
} from "./defaultStsRoleAssumers";
88
import { STSClient, STSClientConfig } from "./STSClient";
99

10-
export const getDefaultRoleAssumer = (stsOptions: Pick<STSClientConfig, "logger" | "region">): RoleAssumer =>
10+
/**
11+
* The default role assumer that used by credential providers when sts:AssumeRole API is needed.
12+
*/
13+
export const getDefaultRoleAssumer = (stsOptions: Pick<STSClientConfig, "logger" | "region"> = {}): RoleAssumer =>
1114
StsGetDefaultRoleAssumer(stsOptions, STSClient);
1215

16+
/**
17+
* The default role assumer that used by credential providers when sts:AssumeRoleWithWebIdentity API is needed.
18+
*/
1319
export const getDefaultRoleAssumerWithWebIdentity = (
14-
stsOptions: Pick<STSClientConfig, "logger" | "region">
20+
stsOptions: Pick<STSClientConfig, "logger" | "region"> = {}
1521
): RoleAssumerWithWebIdentity => StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, STSClient);
1622

23+
/**
24+
* The default credential providers depend STS client to assume role with desired API: sts:assumeRole,
25+
* sts:assumeRoleWithWebIdentity, etc. This function decorates the default credential provider with role assumers which
26+
* encapsulates the process of calling STS commands. This can only be imported by AWS client packages to avoid circular
27+
* dependencies.
28+
*
29+
* @internal
30+
*/
1731
export const decorateDefaultCredentialProvider = (provider: DefaultCredentialProvider): DefaultCredentialProvider => (
1832
input: any
1933
) =>

clients/client-sts/package.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,5 @@
8989
"type": "git",
9090
"url": "https://github.com/aws/aws-sdk-js-v3.git",
9191
"directory": "clients/client-sts"
92-
},
93-
"exports": {
94-
"./defaultRoleAssumers": {
95-
"import": "./dist/es/defaultRoleAssumers.js",
96-
"require": "./dist/cjs/defaultRoleAssumers.js"
97-
}
9892
}
9993
}

clients/client-sts/runtimeConfig.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import packageInfo from "./package.json";
22

3+
import { decorateDefaultCredentialProvider } from "./defaultRoleAssumers";
34
import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } from "@aws-sdk/config-resolver";
4-
import { decorateDefaultCredentialProvider } from "./defaultStsRoleAssumers";
55
import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node";
66
import { Hash } from "@aws-sdk/hash-node";
77
import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS } from "@aws-sdk/middleware-retry";

0 commit comments

Comments
 (0)