@aws-sdk/credential-providers 3.159.0 → 3.162.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/CHANGELOG.md +27 -0
- package/README.md +29 -0
- package/dist-cjs/fromIni.js +2 -2
- package/dist-cjs/fromNodeProviderChain.js +2 -2
- package/dist-cjs/fromTemporaryCredentials.js +5 -0
- package/dist-cjs/fromTokenFile.js +1 -1
- package/dist-cjs/fromWebToken.js +1 -1
- package/dist-es/fromIni.js +1 -1
- package/dist-es/fromNodeProviderChain.js +1 -1
- package/dist-es/fromTemporaryCredentials.js +25 -9
- package/dist-es/fromTokenFile.js +1 -1
- package/dist-es/fromWebToken.js +1 -1
- package/dist-types/fromIni.d.ts +5 -1
- package/dist-types/fromNodeProviderChain.d.ts +5 -1
- package/dist-types/fromTemporaryCredentials.d.ts +5 -1
- package/dist-types/fromTokenFile.d.ts +5 -1
- package/dist-types/fromWebToken.d.ts +5 -1
- package/dist-types/ts3.4/fromIni.d.ts +2 -1
- package/dist-types/ts3.4/fromNodeProviderChain.d.ts +2 -1
- package/dist-types/ts3.4/fromTemporaryCredentials.d.ts +2 -1
- package/dist-types/ts3.4/fromTokenFile.d.ts +2 -1
- package/dist-types/ts3.4/fromWebToken.d.ts +2 -1
- package/package.json +15 -15
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.162.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.161.0...v3.162.0) (2022-08-31)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @aws-sdk/credential-providers
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [3.161.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.160.0...v3.161.0) (2022-08-30)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **credential-providers:** support custom middleware for sts client ([#3887](https://github.com/aws/aws-sdk-js-v3/issues/3887)) ([072dea3](https://github.com/aws/aws-sdk-js-v3/commit/072dea35d610fdea8db4e0ac7233a0f8a8317a5e))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# [3.160.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.159.0...v3.160.0) (2022-08-29)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @aws-sdk/credential-providers
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
# [3.159.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.158.0...v3.159.0) (2022-08-26)
|
|
7
34
|
|
|
8
35
|
**Note:** Version bump only for package @aws-sdk/credential-providers
|
package/README.md
CHANGED
|
@@ -650,6 +650,35 @@ const credentialProvider = fromNodeProviderChain({
|
|
|
650
650
|
});
|
|
651
651
|
```
|
|
652
652
|
|
|
653
|
+
## Add Custom Headers to STS assume-role calls
|
|
654
|
+
|
|
655
|
+
You can specify the plugins--groups of middleware, to inject to the STS client.
|
|
656
|
+
For example, you can inject custom headers to each STS assume-role calls. It's
|
|
657
|
+
available in [`fromTemporaryCredentials()`](#fromtemporarycredentials),
|
|
658
|
+
[`fromWebToken()`](#fromwebtoken), [`fromTokenFile()`](#fromtokenfile), [`fromIni()`](#fromini).
|
|
659
|
+
|
|
660
|
+
Code example:
|
|
661
|
+
|
|
662
|
+
```javascript
|
|
663
|
+
const addConfusedDeputyMiddleware = (next) => (args) => {
|
|
664
|
+
args.request.headers["x-amz-source-account"] = account;
|
|
665
|
+
args.request.headers["x-amz-source-arn"] = sourceArn;
|
|
666
|
+
return next(args);
|
|
667
|
+
};
|
|
668
|
+
const confusedDeputyPlugin = {
|
|
669
|
+
applyToStack: (stack) => {
|
|
670
|
+
stack.add(addConfusedDeputyMiddleware, { step: "finalizeRequest" });
|
|
671
|
+
},
|
|
672
|
+
};
|
|
673
|
+
const provider = fromTemporaryCredentials({
|
|
674
|
+
// Required. Options passed to STS AssumeRole operation.
|
|
675
|
+
params: {
|
|
676
|
+
RoleArn: "arn:aws:iam::1234567890:role/Role",
|
|
677
|
+
},
|
|
678
|
+
clientPlugins: [confusedDeputyPlugin],
|
|
679
|
+
});
|
|
680
|
+
```
|
|
681
|
+
|
|
653
682
|
[getcredentialsforidentity_api]: https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html
|
|
654
683
|
[getid_api]: https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetId.html
|
|
655
684
|
[assumerole_api]: https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html
|
package/dist-cjs/fromIni.js
CHANGED
|
@@ -7,8 +7,8 @@ const fromIni = (init = {}) => {
|
|
|
7
7
|
var _a, _b;
|
|
8
8
|
return (0, credential_provider_ini_1.fromIni)({
|
|
9
9
|
...init,
|
|
10
|
-
roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumer)(init.clientConfig),
|
|
11
|
-
roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig),
|
|
10
|
+
roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumer)(init.clientConfig, init.clientPlugins),
|
|
11
|
+
roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig, init.clientPlugins),
|
|
12
12
|
});
|
|
13
13
|
};
|
|
14
14
|
exports.fromIni = fromIni;
|
|
@@ -7,8 +7,8 @@ const fromNodeProviderChain = (init = {}) => {
|
|
|
7
7
|
var _a, _b;
|
|
8
8
|
return (0, credential_provider_node_1.defaultProvider)({
|
|
9
9
|
...init,
|
|
10
|
-
roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumer)(init.clientConfig),
|
|
11
|
-
roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig),
|
|
10
|
+
roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumer)(init.clientConfig, init.clientPlugins),
|
|
11
|
+
roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig, init.clientPlugins),
|
|
12
12
|
});
|
|
13
13
|
};
|
|
14
14
|
exports.fromNodeProviderChain = fromNodeProviderChain;
|
|
@@ -16,6 +16,11 @@ const fromTemporaryCredentials = (options) => {
|
|
|
16
16
|
}
|
|
17
17
|
if (!stsClient)
|
|
18
18
|
stsClient = new client_sts_1.STSClient({ ...options.clientConfig, credentials: options.masterCredentials });
|
|
19
|
+
if (options.clientPlugins) {
|
|
20
|
+
for (const plugin of options.clientPlugins) {
|
|
21
|
+
stsClient.middlewareStack.use(plugin);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
19
24
|
const { Credentials } = await stsClient.send(new client_sts_1.AssumeRoleCommand(params));
|
|
20
25
|
if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {
|
|
21
26
|
throw new property_provider_1.CredentialsProviderError(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);
|
|
@@ -7,7 +7,7 @@ const fromTokenFile = (init = {}) => {
|
|
|
7
7
|
var _a;
|
|
8
8
|
return (0, credential_provider_web_identity_1.fromTokenFile)({
|
|
9
9
|
...init,
|
|
10
|
-
roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig),
|
|
10
|
+
roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig, init.clientPlugins),
|
|
11
11
|
});
|
|
12
12
|
};
|
|
13
13
|
exports.fromTokenFile = fromTokenFile;
|
package/dist-cjs/fromWebToken.js
CHANGED
|
@@ -7,7 +7,7 @@ const fromWebToken = (init) => {
|
|
|
7
7
|
var _a;
|
|
8
8
|
return (0, credential_provider_web_identity_1.fromWebToken)({
|
|
9
9
|
...init,
|
|
10
|
-
roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig),
|
|
10
|
+
roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : (0, client_sts_1.getDefaultRoleAssumerWithWebIdentity)(init.clientConfig, init.clientPlugins),
|
|
11
11
|
});
|
|
12
12
|
};
|
|
13
13
|
exports.fromWebToken = fromWebToken;
|
package/dist-es/fromIni.js
CHANGED
|
@@ -4,5 +4,5 @@ import { fromIni as _fromIni } from "@aws-sdk/credential-provider-ini";
|
|
|
4
4
|
export var fromIni = function (init) {
|
|
5
5
|
var _a, _b;
|
|
6
6
|
if (init === void 0) { init = {}; }
|
|
7
|
-
return _fromIni(__assign(__assign({}, init), { roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : getDefaultRoleAssumer(init.clientConfig), roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : getDefaultRoleAssumerWithWebIdentity(init.clientConfig) }));
|
|
7
|
+
return _fromIni(__assign(__assign({}, init), { roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : getDefaultRoleAssumer(init.clientConfig, init.clientPlugins), roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : getDefaultRoleAssumerWithWebIdentity(init.clientConfig, init.clientPlugins) }));
|
|
8
8
|
};
|
|
@@ -4,5 +4,5 @@ import { defaultProvider } from "@aws-sdk/credential-provider-node";
|
|
|
4
4
|
export var fromNodeProviderChain = function (init) {
|
|
5
5
|
var _a, _b;
|
|
6
6
|
if (init === void 0) { init = {}; }
|
|
7
|
-
return defaultProvider(__assign(__assign({}, init), { roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : getDefaultRoleAssumer(init.clientConfig), roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : getDefaultRoleAssumerWithWebIdentity(init.clientConfig) }));
|
|
7
|
+
return defaultProvider(__assign(__assign({}, init), { roleAssumer: (_a = init.roleAssumer) !== null && _a !== void 0 ? _a : getDefaultRoleAssumer(init.clientConfig, init.clientPlugins), roleAssumerWithWebIdentity: (_b = init.roleAssumerWithWebIdentity) !== null && _b !== void 0 ? _b : getDefaultRoleAssumerWithWebIdentity(init.clientConfig, init.clientPlugins) }));
|
|
8
8
|
};
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { __assign, __awaiter, __generator } from "tslib";
|
|
1
|
+
import { __assign, __awaiter, __generator, __values } from "tslib";
|
|
2
2
|
import { AssumeRoleCommand, STSClient } from "@aws-sdk/client-sts";
|
|
3
3
|
import { CredentialsProviderError } from "@aws-sdk/property-provider";
|
|
4
4
|
export var fromTemporaryCredentials = function (options) {
|
|
5
5
|
var stsClient;
|
|
6
6
|
return function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
7
|
-
var params, _a, Credentials;
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
var params, _a, _b, _c, plugin, Credentials;
|
|
8
|
+
var e_1, _d;
|
|
9
|
+
var _e;
|
|
10
|
+
return __generator(this, function (_f) {
|
|
11
|
+
switch (_f.label) {
|
|
11
12
|
case 0:
|
|
12
|
-
params = __assign(__assign({}, options.params), { RoleSessionName: (
|
|
13
|
+
params = __assign(__assign({}, options.params), { RoleSessionName: (_e = options.params.RoleSessionName) !== null && _e !== void 0 ? _e : "aws-sdk-js-" + Date.now() });
|
|
13
14
|
if (!(params === null || params === void 0 ? void 0 : params.SerialNumber)) return [3, 2];
|
|
14
15
|
if (!options.mfaCodeProvider) {
|
|
15
16
|
throw new CredentialsProviderError("Temporary credential requires multi-factor authentication," + " but no MFA code callback was provided.", false);
|
|
@@ -17,14 +18,29 @@ export var fromTemporaryCredentials = function (options) {
|
|
|
17
18
|
_a = params;
|
|
18
19
|
return [4, options.mfaCodeProvider(params === null || params === void 0 ? void 0 : params.SerialNumber)];
|
|
19
20
|
case 1:
|
|
20
|
-
_a.TokenCode =
|
|
21
|
-
|
|
21
|
+
_a.TokenCode = _f.sent();
|
|
22
|
+
_f.label = 2;
|
|
22
23
|
case 2:
|
|
23
24
|
if (!stsClient)
|
|
24
25
|
stsClient = new STSClient(__assign(__assign({}, options.clientConfig), { credentials: options.masterCredentials }));
|
|
26
|
+
if (options.clientPlugins) {
|
|
27
|
+
try {
|
|
28
|
+
for (_b = __values(options.clientPlugins), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
29
|
+
plugin = _c.value;
|
|
30
|
+
stsClient.middlewareStack.use(plugin);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
34
|
+
finally {
|
|
35
|
+
try {
|
|
36
|
+
if (_c && !_c.done && (_d = _b.return)) _d.call(_b);
|
|
37
|
+
}
|
|
38
|
+
finally { if (e_1) throw e_1.error; }
|
|
39
|
+
}
|
|
40
|
+
}
|
|
25
41
|
return [4, stsClient.send(new AssumeRoleCommand(params))];
|
|
26
42
|
case 3:
|
|
27
|
-
Credentials = (
|
|
43
|
+
Credentials = (_f.sent()).Credentials;
|
|
28
44
|
if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {
|
|
29
45
|
throw new CredentialsProviderError("Invalid response from STS.assumeRole call with role ".concat(params.RoleArn));
|
|
30
46
|
}
|
package/dist-es/fromTokenFile.js
CHANGED
|
@@ -4,5 +4,5 @@ import { fromTokenFile as _fromTokenFile, } from "@aws-sdk/credential-provider-w
|
|
|
4
4
|
export var fromTokenFile = function (init) {
|
|
5
5
|
var _a;
|
|
6
6
|
if (init === void 0) { init = {}; }
|
|
7
|
-
return _fromTokenFile(__assign(__assign({}, init), { roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : getDefaultRoleAssumerWithWebIdentity(init.clientConfig) }));
|
|
7
|
+
return _fromTokenFile(__assign(__assign({}, init), { roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : getDefaultRoleAssumerWithWebIdentity(init.clientConfig, init.clientPlugins) }));
|
|
8
8
|
};
|
package/dist-es/fromWebToken.js
CHANGED
|
@@ -3,5 +3,5 @@ import { getDefaultRoleAssumerWithWebIdentity } from "@aws-sdk/client-sts";
|
|
|
3
3
|
import { fromWebToken as _fromWebToken, } from "@aws-sdk/credential-provider-web-identity";
|
|
4
4
|
export var fromWebToken = function (init) {
|
|
5
5
|
var _a;
|
|
6
|
-
return _fromWebToken(__assign(__assign({}, init), { roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : getDefaultRoleAssumerWithWebIdentity(init.clientConfig) }));
|
|
6
|
+
return _fromWebToken(__assign(__assign({}, init), { roleAssumerWithWebIdentity: (_a = init.roleAssumerWithWebIdentity) !== null && _a !== void 0 ? _a : getDefaultRoleAssumerWithWebIdentity(init.clientConfig, init.clientPlugins) }));
|
|
7
7
|
};
|
package/dist-types/fromIni.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromIniInit as _FromIniInit } from "@aws-sdk/credential-provider-ini";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromIniInit extends _FromIniInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Creates a credential provider function that reads from a shared credentials file at `~/.aws/credentials` and a
|
|
@@ -36,6 +37,9 @@ export interface FromIniInit extends _FromIniInit {
|
|
|
36
37
|
* },
|
|
37
38
|
* // Optional. Custom STS client configurations overriding the default ones.
|
|
38
39
|
* clientConfig: { region },
|
|
40
|
+
* // Optional. Custom STS client middleware plugin to modify the client default behavior.
|
|
41
|
+
* // e.g. adding custom headers.
|
|
42
|
+
* clientPlugins: [addFooHeadersPlugin],
|
|
39
43
|
* }),
|
|
40
44
|
* });
|
|
41
45
|
* ```
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { DefaultProviderInit } from "@aws-sdk/credential-provider-node";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface fromNodeProviderChainInit extends DefaultProviderInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* This is the same credential provider as {@link defaultProvider|the default provider for Node.js SDK},
|
|
@@ -23,6 +24,9 @@ export interface fromNodeProviderChainInit extends DefaultProviderInit {
|
|
|
23
24
|
*
|
|
24
25
|
* // Optional. Custom STS client configurations overriding the default ones.
|
|
25
26
|
* clientConfig: { region },
|
|
27
|
+
* // Optional. Custom STS client middleware plugin to modify the client default behavior.
|
|
28
|
+
* // e.g. adding custom headers.
|
|
29
|
+
* clientPlugins: [addFooHeadersPlugin],
|
|
26
30
|
* })
|
|
27
31
|
* ```
|
|
28
32
|
*/
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { AssumeRoleCommandInput, STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
|
-
import { CredentialProvider, Credentials } from "@aws-sdk/types";
|
|
2
|
+
import { CredentialProvider, Credentials, Pluggable } from "@aws-sdk/types";
|
|
3
3
|
export interface FromTemporaryCredentialsOptions {
|
|
4
4
|
params: Omit<AssumeRoleCommandInput, "RoleSessionName"> & {
|
|
5
5
|
RoleSessionName?: string;
|
|
6
6
|
};
|
|
7
7
|
masterCredentials?: Credentials | CredentialProvider;
|
|
8
8
|
clientConfig?: STSClientConfig;
|
|
9
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
9
10
|
mfaCodeProvider?: (mfaSerial: string) => Promise<string>;
|
|
10
11
|
}
|
|
11
12
|
/**
|
|
@@ -36,6 +37,9 @@ export interface FromTemporaryCredentialsOptions {
|
|
|
36
37
|
* },
|
|
37
38
|
* // Optional. Custom STS client configurations overriding the default ones.
|
|
38
39
|
* clientConfig: { region },
|
|
40
|
+
* // Optional. Custom STS client middleware plugin to modify the client default behavior.
|
|
41
|
+
* // e.g. adding custom headers.
|
|
42
|
+
* clientPlugins: [addFooHeadersPlugin],
|
|
39
43
|
* // Optional. A function that returns a promise fulfilled with an MFA token code for the provided MFA Serial code.
|
|
40
44
|
* // Required if `params` has `SerialNumber` config.
|
|
41
45
|
* mfaCodeProvider: async mfaSerial => {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromTokenFileInit as _FromTokenFileInit } from "@aws-sdk/credential-provider-web-identity";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromTokenFileInit extends _FromTokenFileInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Creates a credential provider function that reads OIDC token from given file, then call STS.AssumeRoleWithWebIdentity
|
|
@@ -25,6 +26,9 @@ export interface FromTokenFileInit extends _FromTokenFileInit {
|
|
|
25
26
|
* credentials: fromTokenFile({
|
|
26
27
|
* // Optional. STS client config to make the assume role request.
|
|
27
28
|
* clientConfig: { region }
|
|
29
|
+
* // Optional. Custom STS client middleware plugin to modify the client default behavior.
|
|
30
|
+
* // e.g. adding custom headers.
|
|
31
|
+
* clientPlugins: [addFooHeadersPlugin],
|
|
28
32
|
* });
|
|
29
33
|
* });
|
|
30
34
|
* ```
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromWebTokenInit as _FromWebTokenInit } from "@aws-sdk/credential-provider-web-identity";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromWebTokenInit extends _FromWebTokenInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Creates a credential provider function that gets credentials calling STS
|
|
@@ -21,6 +22,9 @@ export interface FromWebTokenInit extends _FromWebTokenInit {
|
|
|
21
22
|
* webIdentityToken: await openIdProvider()
|
|
22
23
|
* // Optional. Custom STS client configurations overriding the default ones.
|
|
23
24
|
* clientConfig: { region }
|
|
25
|
+
* // Optional. Custom STS client middleware plugin to modify the client default behavior.
|
|
26
|
+
* // e.g. adding custom headers.
|
|
27
|
+
* clientPlugins: [addFooHeadersPlugin],
|
|
24
28
|
* // Optional. A function that assumes a role with web identity and returns a promise fulfilled with credentials for
|
|
25
29
|
* // the assumed role.
|
|
26
30
|
* roleAssumerWithWebIdentity,
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromIniInit as _FromIniInit } from "@aws-sdk/credential-provider-ini";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromIniInit extends _FromIniInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
export declare const fromIni: (init?: FromIniInit) => CredentialProvider;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { DefaultProviderInit } from "@aws-sdk/credential-provider-node";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface fromNodeProviderChainInit extends DefaultProviderInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
export declare const fromNodeProviderChain: (init?: fromNodeProviderChainInit) => CredentialProvider;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { AssumeRoleCommandInput, STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
|
-
import { CredentialProvider, Credentials } from "@aws-sdk/types";
|
|
2
|
+
import { CredentialProvider, Credentials, Pluggable } from "@aws-sdk/types";
|
|
3
3
|
export interface FromTemporaryCredentialsOptions {
|
|
4
4
|
params: Pick<AssumeRoleCommandInput, Exclude<keyof AssumeRoleCommandInput, "RoleSessionName">> & {
|
|
5
5
|
RoleSessionName?: string;
|
|
6
6
|
};
|
|
7
7
|
masterCredentials?: Credentials | CredentialProvider;
|
|
8
8
|
clientConfig?: STSClientConfig;
|
|
9
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
9
10
|
mfaCodeProvider?: (mfaSerial: string) => Promise<string>;
|
|
10
11
|
}
|
|
11
12
|
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromTokenFileInit as _FromTokenFileInit } from "@aws-sdk/credential-provider-web-identity";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromTokenFileInit extends _FromTokenFileInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
export declare const fromTokenFile: (init?: FromTokenFileInit) => CredentialProvider;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { STSClientConfig } from "@aws-sdk/client-sts";
|
|
2
2
|
import { FromWebTokenInit as _FromWebTokenInit } from "@aws-sdk/credential-provider-web-identity";
|
|
3
|
-
import { CredentialProvider } from "@aws-sdk/types";
|
|
3
|
+
import { CredentialProvider, Pluggable } from "@aws-sdk/types";
|
|
4
4
|
export interface FromWebTokenInit extends _FromWebTokenInit {
|
|
5
5
|
clientConfig?: STSClientConfig;
|
|
6
|
+
clientPlugins?: Pluggable<any, any>[];
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
export declare const fromWebToken: (init: FromWebTokenInit) => CredentialProvider;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/credential-providers",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.162.0",
|
|
4
4
|
"description": "A collection of credential providers, without requiring service clients like STS, Cognito",
|
|
5
5
|
"main": "./dist-cjs/index.js",
|
|
6
6
|
"module": "./dist-es/index.js",
|
|
@@ -26,20 +26,20 @@
|
|
|
26
26
|
},
|
|
27
27
|
"license": "Apache-2.0",
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@aws-sdk/client-cognito-identity": "3.
|
|
30
|
-
"@aws-sdk/client-sso": "3.
|
|
31
|
-
"@aws-sdk/client-sts": "3.
|
|
32
|
-
"@aws-sdk/credential-provider-cognito-identity": "3.
|
|
33
|
-
"@aws-sdk/credential-provider-env": "3.
|
|
34
|
-
"@aws-sdk/credential-provider-imds": "3.
|
|
35
|
-
"@aws-sdk/credential-provider-ini": "3.
|
|
36
|
-
"@aws-sdk/credential-provider-node": "3.
|
|
37
|
-
"@aws-sdk/credential-provider-process": "3.
|
|
38
|
-
"@aws-sdk/credential-provider-sso": "3.
|
|
39
|
-
"@aws-sdk/credential-provider-web-identity": "3.
|
|
40
|
-
"@aws-sdk/property-provider": "3.
|
|
41
|
-
"@aws-sdk/shared-ini-file-loader": "3.
|
|
42
|
-
"@aws-sdk/types": "3.
|
|
29
|
+
"@aws-sdk/client-cognito-identity": "3.162.0",
|
|
30
|
+
"@aws-sdk/client-sso": "3.162.0",
|
|
31
|
+
"@aws-sdk/client-sts": "3.162.0",
|
|
32
|
+
"@aws-sdk/credential-provider-cognito-identity": "3.162.0",
|
|
33
|
+
"@aws-sdk/credential-provider-env": "3.162.0",
|
|
34
|
+
"@aws-sdk/credential-provider-imds": "3.162.0",
|
|
35
|
+
"@aws-sdk/credential-provider-ini": "3.162.0",
|
|
36
|
+
"@aws-sdk/credential-provider-node": "3.162.0",
|
|
37
|
+
"@aws-sdk/credential-provider-process": "3.162.0",
|
|
38
|
+
"@aws-sdk/credential-provider-sso": "3.162.0",
|
|
39
|
+
"@aws-sdk/credential-provider-web-identity": "3.162.0",
|
|
40
|
+
"@aws-sdk/property-provider": "3.162.0",
|
|
41
|
+
"@aws-sdk/shared-ini-file-loader": "3.162.0",
|
|
42
|
+
"@aws-sdk/types": "3.162.0",
|
|
43
43
|
"tslib": "^2.3.1"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|