@aws-sdk/client-sts 3.36.0 → 3.39.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 +42 -0
- package/dist-cjs/STS.js +0 -7
- package/dist-cjs/STSClient.js +0 -12
- package/dist-cjs/commands/AssumeRoleCommand.js +0 -107
- package/dist-cjs/commands/AssumeRoleWithSAMLCommand.js +0 -155
- package/dist-cjs/commands/AssumeRoleWithWebIdentityCommand.js +0 -159
- package/dist-cjs/commands/DecodeAuthorizationMessageCommand.js +0 -59
- package/dist-cjs/commands/GetAccessKeyInfoCommand.js +0 -41
- package/dist-cjs/commands/GetCallerIdentityCommand.js +0 -33
- package/dist-cjs/commands/GetFederationTokenCommand.js +0 -162
- package/dist-cjs/commands/GetSessionTokenCommand.js +0 -75
- package/dist-cjs/commands/index.js +11 -0
- package/dist-cjs/defaultRoleAssumers.js +0 -16
- package/dist-cjs/defaultStsRoleAssumers.js +0 -20
- package/dist-cjs/endpoints.js +6 -1
- package/dist-cjs/index.js +3 -10
- package/dist-cjs/models/models_0.js +0 -87
- package/dist-cjs/protocols/Aws_query.js +0 -2
- package/dist-cjs/runtimeConfig.browser.js +1 -5
- package/dist-cjs/runtimeConfig.js +1 -5
- package/dist-cjs/runtimeConfig.native.js +0 -3
- package/dist-cjs/runtimeConfig.shared.js +0 -3
- package/dist-es/commands/index.js +8 -0
- package/dist-es/endpoints.js +6 -1
- package/dist-es/index.js +3 -10
- package/dist-types/commands/index.d.ts +8 -0
- package/dist-types/index.d.ts +3 -10
- package/dist-types/ts3.4/STS.d.ts +9 -630
- package/dist-types/ts3.4/STSClient.d.ts +24 -93
- package/dist-types/ts3.4/commands/AssumeRoleCommand.d.ts +2 -103
- package/dist-types/ts3.4/commands/AssumeRoleWithSAMLCommand.d.ts +2 -151
- package/dist-types/ts3.4/commands/AssumeRoleWithWebIdentityCommand.d.ts +2 -155
- package/dist-types/ts3.4/commands/DecodeAuthorizationMessageCommand.d.ts +2 -55
- package/dist-types/ts3.4/commands/GetAccessKeyInfoCommand.d.ts +2 -37
- package/dist-types/ts3.4/commands/GetCallerIdentityCommand.d.ts +2 -29
- package/dist-types/ts3.4/commands/GetFederationTokenCommand.d.ts +2 -158
- package/dist-types/ts3.4/commands/GetSessionTokenCommand.d.ts +2 -71
- package/dist-types/ts3.4/commands/index.d.ts +8 -0
- package/dist-types/ts3.4/defaultRoleAssumers.d.ts +3 -14
- package/dist-types/ts3.4/defaultStsRoleAssumers.d.ts +6 -25
- package/dist-types/ts3.4/index.d.ts +3 -10
- package/dist-types/ts3.4/models/models_0.d.ts +123 -948
- package/dist-types/ts3.4/runtimeConfig.browser.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.native.d.ts +1 -3
- package/dist-types/ts3.4/runtimeConfig.shared.d.ts +1 -3
- package/package.json +32 -32
|
@@ -6,64 +6,11 @@ export interface DecodeAuthorizationMessageCommandInput extends DecodeAuthorizat
|
|
|
6
6
|
}
|
|
7
7
|
export interface DecodeAuthorizationMessageCommandOutput extends DecodeAuthorizationMessageResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Decodes additional information about the authorization status of a request from an
|
|
11
|
-
* encoded message returned in response to an Amazon Web Services request.</p>
|
|
12
|
-
* <p>For example, if a user is not authorized to perform an operation that he or she has
|
|
13
|
-
* requested, the request returns a <code>Client.UnauthorizedOperation</code> response (an
|
|
14
|
-
* HTTP 403 response). Some Amazon Web Services operations additionally return an encoded message that can
|
|
15
|
-
* provide details about this authorization failure. </p>
|
|
16
|
-
* <note>
|
|
17
|
-
* <p>Only certain Amazon Web Services operations return an encoded authorization message. The
|
|
18
|
-
* documentation for an individual operation indicates whether that operation returns an
|
|
19
|
-
* encoded message in addition to returning an HTTP code.</p>
|
|
20
|
-
* </note>
|
|
21
|
-
* <p>The message is encoded because the details of the authorization status can constitute
|
|
22
|
-
* privileged information that the user who requested the operation should not see. To decode
|
|
23
|
-
* an authorization status message, a user must be granted permissions via an IAM policy to
|
|
24
|
-
* request the <code>DecodeAuthorizationMessage</code>
|
|
25
|
-
* (<code>sts:DecodeAuthorizationMessage</code>) action. </p>
|
|
26
|
-
* <p>The decoded message includes the following type of information:</p>
|
|
27
|
-
* <ul>
|
|
28
|
-
* <li>
|
|
29
|
-
* <p>Whether the request was denied due to an explicit deny or due to the absence of an
|
|
30
|
-
* explicit allow. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow">Determining Whether a Request is Allowed or Denied</a> in the
|
|
31
|
-
* <i>IAM User Guide</i>. </p>
|
|
32
|
-
* </li>
|
|
33
|
-
* <li>
|
|
34
|
-
* <p>The principal who made the request.</p>
|
|
35
|
-
* </li>
|
|
36
|
-
* <li>
|
|
37
|
-
* <p>The requested action.</p>
|
|
38
|
-
* </li>
|
|
39
|
-
* <li>
|
|
40
|
-
* <p>The requested resource.</p>
|
|
41
|
-
* </li>
|
|
42
|
-
* <li>
|
|
43
|
-
* <p>The values of condition keys in the context of the user's request.</p>
|
|
44
|
-
* </li>
|
|
45
|
-
* </ul>
|
|
46
|
-
* @example
|
|
47
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
48
|
-
* ```javascript
|
|
49
|
-
* import { STSClient, DecodeAuthorizationMessageCommand } from "@aws-sdk/client-sts"; // ES Modules import
|
|
50
|
-
* // const { STSClient, DecodeAuthorizationMessageCommand } = require("@aws-sdk/client-sts"); // CommonJS import
|
|
51
|
-
* const client = new STSClient(config);
|
|
52
|
-
* const command = new DecodeAuthorizationMessageCommand(input);
|
|
53
|
-
* const response = await client.send(command);
|
|
54
|
-
* ```
|
|
55
|
-
*
|
|
56
|
-
* @see {@link DecodeAuthorizationMessageCommandInput} for command's `input` shape.
|
|
57
|
-
* @see {@link DecodeAuthorizationMessageCommandOutput} for command's `response` shape.
|
|
58
|
-
* @see {@link STSClientResolvedConfig | config} for command's `input` shape.
|
|
59
|
-
*
|
|
60
|
-
*/
|
|
9
|
+
|
|
61
10
|
export declare class DecodeAuthorizationMessageCommand extends $Command<DecodeAuthorizationMessageCommandInput, DecodeAuthorizationMessageCommandOutput, STSClientResolvedConfig> {
|
|
62
11
|
readonly input: DecodeAuthorizationMessageCommandInput;
|
|
63
12
|
constructor(input: DecodeAuthorizationMessageCommandInput);
|
|
64
|
-
|
|
65
|
-
* @internal
|
|
66
|
-
*/
|
|
13
|
+
|
|
67
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<DecodeAuthorizationMessageCommandInput, DecodeAuthorizationMessageCommandOutput>;
|
|
68
15
|
private serialize;
|
|
69
16
|
private deserialize;
|
|
@@ -6,46 +6,11 @@ export interface GetAccessKeyInfoCommandInput extends GetAccessKeyInfoRequest {
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetAccessKeyInfoCommandOutput extends GetAccessKeyInfoResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Returns the account identifier for the specified access key ID.</p>
|
|
11
|
-
* <p>Access keys consist of two parts: an access key ID (for example,
|
|
12
|
-
* <code>AKIAIOSFODNN7EXAMPLE</code>) and a secret access key (for example,
|
|
13
|
-
* <code>wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY</code>). For more information about
|
|
14
|
-
* access keys, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html">Managing Access Keys for IAM
|
|
15
|
-
* Users</a> in the <i>IAM User Guide</i>.</p>
|
|
16
|
-
* <p>When you pass an access key ID to this operation, it returns the ID of the Amazon Web Services
|
|
17
|
-
* account to which the keys belong. Access key IDs beginning with <code>AKIA</code> are
|
|
18
|
-
* long-term credentials for an IAM user or the Amazon Web Services account root user. Access key IDs
|
|
19
|
-
* beginning with <code>ASIA</code> are temporary credentials that are created using STS
|
|
20
|
-
* operations. If the account in the response belongs to you, you can sign in as the root
|
|
21
|
-
* user and review your root user access keys. Then, you can pull a <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html">credentials report</a> to learn which IAM user owns the keys. To learn who
|
|
22
|
-
* requested the temporary credentials for an <code>ASIA</code> access key, view the STS
|
|
23
|
-
* events in your <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html">CloudTrail logs</a> in the
|
|
24
|
-
* <i>IAM User Guide</i>.</p>
|
|
25
|
-
* <p>This operation does not indicate the state of the access key. The key might be active,
|
|
26
|
-
* inactive, or deleted. Active keys might not have permissions to perform an operation.
|
|
27
|
-
* Providing a deleted access key might return an error that the key doesn't exist.</p>
|
|
28
|
-
* @example
|
|
29
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
30
|
-
* ```javascript
|
|
31
|
-
* import { STSClient, GetAccessKeyInfoCommand } from "@aws-sdk/client-sts"; // ES Modules import
|
|
32
|
-
* // const { STSClient, GetAccessKeyInfoCommand } = require("@aws-sdk/client-sts"); // CommonJS import
|
|
33
|
-
* const client = new STSClient(config);
|
|
34
|
-
* const command = new GetAccessKeyInfoCommand(input);
|
|
35
|
-
* const response = await client.send(command);
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @see {@link GetAccessKeyInfoCommandInput} for command's `input` shape.
|
|
39
|
-
* @see {@link GetAccessKeyInfoCommandOutput} for command's `response` shape.
|
|
40
|
-
* @see {@link STSClientResolvedConfig | config} for command's `input` shape.
|
|
41
|
-
*
|
|
42
|
-
*/
|
|
9
|
+
|
|
43
10
|
export declare class GetAccessKeyInfoCommand extends $Command<GetAccessKeyInfoCommandInput, GetAccessKeyInfoCommandOutput, STSClientResolvedConfig> {
|
|
44
11
|
readonly input: GetAccessKeyInfoCommandInput;
|
|
45
12
|
constructor(input: GetAccessKeyInfoCommandInput);
|
|
46
|
-
|
|
47
|
-
* @internal
|
|
48
|
-
*/
|
|
13
|
+
|
|
49
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetAccessKeyInfoCommandInput, GetAccessKeyInfoCommandOutput>;
|
|
50
15
|
private serialize;
|
|
51
16
|
private deserialize;
|
|
@@ -6,38 +6,11 @@ export interface GetCallerIdentityCommandInput extends GetCallerIdentityRequest
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetCallerIdentityCommandOutput extends GetCallerIdentityResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Returns details about the IAM user or role whose credentials are used to call the
|
|
11
|
-
* operation.</p>
|
|
12
|
-
* <note>
|
|
13
|
-
* <p>No permissions are required to perform this operation. If an administrator adds a
|
|
14
|
-
* policy to your IAM user or role that explicitly denies access to the
|
|
15
|
-
* <code>sts:GetCallerIdentity</code> action, you can still perform this operation.
|
|
16
|
-
* Permissions are not required because the same information is returned when an IAM
|
|
17
|
-
* user or role is denied access. To view an example response, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_access-denied-delete-mfa">I Am Not Authorized to Perform: iam:DeleteVirtualMFADevice</a> in the
|
|
18
|
-
* <i>IAM User Guide</i>.</p>
|
|
19
|
-
* </note>
|
|
20
|
-
* @example
|
|
21
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
22
|
-
* ```javascript
|
|
23
|
-
* import { STSClient, GetCallerIdentityCommand } from "@aws-sdk/client-sts"; // ES Modules import
|
|
24
|
-
* // const { STSClient, GetCallerIdentityCommand } = require("@aws-sdk/client-sts"); // CommonJS import
|
|
25
|
-
* const client = new STSClient(config);
|
|
26
|
-
* const command = new GetCallerIdentityCommand(input);
|
|
27
|
-
* const response = await client.send(command);
|
|
28
|
-
* ```
|
|
29
|
-
*
|
|
30
|
-
* @see {@link GetCallerIdentityCommandInput} for command's `input` shape.
|
|
31
|
-
* @see {@link GetCallerIdentityCommandOutput} for command's `response` shape.
|
|
32
|
-
* @see {@link STSClientResolvedConfig | config} for command's `input` shape.
|
|
33
|
-
*
|
|
34
|
-
*/
|
|
9
|
+
|
|
35
10
|
export declare class GetCallerIdentityCommand extends $Command<GetCallerIdentityCommandInput, GetCallerIdentityCommandOutput, STSClientResolvedConfig> {
|
|
36
11
|
readonly input: GetCallerIdentityCommandInput;
|
|
37
12
|
constructor(input: GetCallerIdentityCommandInput);
|
|
38
|
-
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
13
|
+
|
|
41
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetCallerIdentityCommandInput, GetCallerIdentityCommandOutput>;
|
|
42
15
|
private serialize;
|
|
43
16
|
private deserialize;
|
|
@@ -6,167 +6,11 @@ export interface GetFederationTokenCommandInput extends GetFederationTokenReques
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetFederationTokenCommandOutput extends GetFederationTokenResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Returns a set of temporary security credentials (consisting of an access key ID, a
|
|
11
|
-
* secret access key, and a security token) for a federated user. A typical use is in a proxy
|
|
12
|
-
* application that gets temporary security credentials on behalf of distributed applications
|
|
13
|
-
* inside a corporate network. You must call the <code>GetFederationToken</code> operation
|
|
14
|
-
* using the long-term security credentials of an IAM user. As a result, this call is
|
|
15
|
-
* appropriate in contexts where those credentials can be safely stored, usually in a
|
|
16
|
-
* server-based application. For a comparison of <code>GetFederationToken</code> with the
|
|
17
|
-
* other API operations that produce temporary credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
|
|
18
|
-
* Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
|
|
19
|
-
* STS API operations</a> in the <i>IAM User Guide</i>.</p>
|
|
20
|
-
* <note>
|
|
21
|
-
* <p>You can create a mobile-based or browser-based app that can authenticate users using
|
|
22
|
-
* a web identity provider like Login with Amazon, Facebook, Google, or an OpenID
|
|
23
|
-
* Connect-compatible identity provider. In this case, we recommend that you use <a href="http://aws.amazon.com/cognito/">Amazon Cognito</a> or
|
|
24
|
-
* <code>AssumeRoleWithWebIdentity</code>. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity">Federation Through a Web-based Identity Provider</a> in the
|
|
25
|
-
* <i>IAM User Guide</i>.</p>
|
|
26
|
-
* </note>
|
|
27
|
-
* <p>You can also call <code>GetFederationToken</code> using the security credentials of an
|
|
28
|
-
* Amazon Web Services account root user, but we do not recommend it. Instead, we recommend that you create
|
|
29
|
-
* an IAM user for the purpose of the proxy application. Then attach a policy to the IAM
|
|
30
|
-
* user that limits federated users to only the actions and resources that they need to
|
|
31
|
-
* access. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html">IAM Best Practices</a> in the
|
|
32
|
-
* <i>IAM User Guide</i>. </p>
|
|
33
|
-
* <p>
|
|
34
|
-
* <b>Session duration</b>
|
|
35
|
-
* </p>
|
|
36
|
-
* <p>The temporary credentials are valid for the specified duration, from 900 seconds (15
|
|
37
|
-
* minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is
|
|
38
|
-
* 43,200 seconds (12 hours). Temporary credentials that are obtained by using Amazon Web Services account
|
|
39
|
-
* root user credentials have a maximum duration of 3,600 seconds (1 hour).</p>
|
|
40
|
-
* <p>
|
|
41
|
-
* <b>Permissions</b>
|
|
42
|
-
* </p>
|
|
43
|
-
* <p>You can use the temporary credentials created by <code>GetFederationToken</code> in any
|
|
44
|
-
* Amazon Web Services service except the following:</p>
|
|
45
|
-
* <ul>
|
|
46
|
-
* <li>
|
|
47
|
-
* <p>You cannot call any IAM operations using the CLI or the Amazon Web Services API. </p>
|
|
48
|
-
* </li>
|
|
49
|
-
* <li>
|
|
50
|
-
* <p>You cannot call any STS operations except <code>GetCallerIdentity</code>.</p>
|
|
51
|
-
* </li>
|
|
52
|
-
* </ul>
|
|
53
|
-
* <p>You must pass an inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policy</a> to
|
|
54
|
-
* this operation. You can pass a single JSON policy document to use as an inline session
|
|
55
|
-
* policy. You can also specify up to 10 managed policies to use as managed session policies.
|
|
56
|
-
* The plaintext that you use for both inline and managed session policies can't exceed 2,048
|
|
57
|
-
* characters.</p>
|
|
58
|
-
* <p>Though the session policy parameters are optional, if you do not pass a policy, then the
|
|
59
|
-
* resulting federated user session has no permissions. When you pass session policies, the
|
|
60
|
-
* session permissions are the intersection of the IAM user policies and the session
|
|
61
|
-
* policies that you pass. This gives you a way to further restrict the permissions for a
|
|
62
|
-
* federated user. You cannot use session policies to grant more permissions than those that
|
|
63
|
-
* are defined in the permissions policy of the IAM user. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
|
|
64
|
-
* Policies</a> in the <i>IAM User Guide</i>. For information about
|
|
65
|
-
* using <code>GetFederationToken</code> to create temporary security credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getfederationtoken">GetFederationToken—Federation Through a Custom Identity Broker</a>. </p>
|
|
66
|
-
* <p>You can use the credentials to access a resource that has a resource-based policy. If
|
|
67
|
-
* that policy specifically references the federated user session in the
|
|
68
|
-
* <code>Principal</code> element of the policy, the session has the permissions allowed by
|
|
69
|
-
* the policy. These permissions are granted in addition to the permissions granted by the
|
|
70
|
-
* session policies.</p>
|
|
71
|
-
* <p>
|
|
72
|
-
* <b>Tags</b>
|
|
73
|
-
* </p>
|
|
74
|
-
* <p>(Optional) You can pass tag key-value pairs to your session. These are called session
|
|
75
|
-
* tags. For more information about session tags, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Passing Session Tags in STS</a> in the
|
|
76
|
-
* <i>IAM User Guide</i>.</p>
|
|
77
|
-
* <note>
|
|
78
|
-
* <p>You can create a mobile-based or browser-based app that can authenticate users
|
|
79
|
-
* using a web identity provider like Login with Amazon, Facebook, Google, or an OpenID
|
|
80
|
-
* Connect-compatible identity provider. In this case, we recommend that you use <a href="http://aws.amazon.com/cognito/">Amazon Cognito</a> or
|
|
81
|
-
* <code>AssumeRoleWithWebIdentity</code>. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity">Federation Through a Web-based Identity Provider</a> in the
|
|
82
|
-
* <i>IAM User Guide</i>.</p>
|
|
83
|
-
* </note>
|
|
84
|
-
* <p>You can also call <code>GetFederationToken</code> using the security credentials of an
|
|
85
|
-
* Amazon Web Services account root user, but we do not recommend it. Instead, we recommend that you
|
|
86
|
-
* create an IAM user for the purpose of the proxy application. Then attach a policy to
|
|
87
|
-
* the IAM user that limits federated users to only the actions and resources that they
|
|
88
|
-
* need to access. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html">IAM Best Practices</a> in the
|
|
89
|
-
* <i>IAM User Guide</i>. </p>
|
|
90
|
-
* <p>
|
|
91
|
-
* <b>Session duration</b>
|
|
92
|
-
* </p>
|
|
93
|
-
* <p>The temporary credentials are valid for the specified duration, from 900 seconds (15
|
|
94
|
-
* minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is
|
|
95
|
-
* 43,200 seconds (12 hours). Temporary credentials that are obtained by using Amazon Web Services
|
|
96
|
-
* account root user credentials have a maximum duration of 3,600 seconds (1 hour).</p>
|
|
97
|
-
* <p>
|
|
98
|
-
* <b>Permissions</b>
|
|
99
|
-
* </p>
|
|
100
|
-
* <p>You can use the temporary credentials created by <code>GetFederationToken</code> in
|
|
101
|
-
* any Amazon Web Services service except the following:</p>
|
|
102
|
-
* <ul>
|
|
103
|
-
* <li>
|
|
104
|
-
* <p>You cannot call any IAM operations using the CLI or the Amazon Web Services API.
|
|
105
|
-
* </p>
|
|
106
|
-
* </li>
|
|
107
|
-
* <li>
|
|
108
|
-
* <p>You cannot call any STS operations except
|
|
109
|
-
* <code>GetCallerIdentity</code>.</p>
|
|
110
|
-
* </li>
|
|
111
|
-
* </ul>
|
|
112
|
-
* <p>You must pass an inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policy</a> to
|
|
113
|
-
* this operation. You can pass a single JSON policy document to use as an inline session
|
|
114
|
-
* policy. You can also specify up to 10 managed policies to use as managed session
|
|
115
|
-
* policies. The plain text that you use for both inline and managed session policies can't
|
|
116
|
-
* exceed 2,048 characters.</p>
|
|
117
|
-
* <p>Though the session policy parameters are optional, if you do not pass a policy, then
|
|
118
|
-
* the resulting federated user session has no permissions. When you pass session policies,
|
|
119
|
-
* the session permissions are the intersection of the IAM user policies and the session
|
|
120
|
-
* policies that you pass. This gives you a way to further restrict the permissions for a
|
|
121
|
-
* federated user. You cannot use session policies to grant more permissions than those
|
|
122
|
-
* that are defined in the permissions policy of the IAM user. For more information, see
|
|
123
|
-
* <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session Policies</a>
|
|
124
|
-
* in the <i>IAM User Guide</i>. For information about using
|
|
125
|
-
* <code>GetFederationToken</code> to create temporary security credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getfederationtoken">GetFederationToken—Federation Through a Custom Identity Broker</a>. </p>
|
|
126
|
-
* <p>You can use the credentials to access a resource that has a resource-based policy. If
|
|
127
|
-
* that policy specifically references the federated user session in the
|
|
128
|
-
* <code>Principal</code> element of the policy, the session has the permissions
|
|
129
|
-
* allowed by the policy. These permissions are granted in addition to the permissions
|
|
130
|
-
* granted by the session policies.</p>
|
|
131
|
-
* <p>
|
|
132
|
-
* <b>Tags</b>
|
|
133
|
-
* </p>
|
|
134
|
-
* <p>(Optional) You can pass tag key-value pairs to your session. These are called session
|
|
135
|
-
* tags. For more information about session tags, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html">Passing Session Tags in STS</a> in
|
|
136
|
-
* the <i>IAM User Guide</i>.</p>
|
|
137
|
-
* <p>An administrator must grant you the permissions necessary to pass session tags. The
|
|
138
|
-
* administrator can also create granular permissions to allow you to pass only specific
|
|
139
|
-
* session tags. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html">Tutorial: Using
|
|
140
|
-
* Tags for Attribute-Based Access Control</a> in the
|
|
141
|
-
* <i>IAM User Guide</i>.</p>
|
|
142
|
-
* <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
|
|
143
|
-
* cannot have separate <code>Department</code> and <code>department</code> tag keys.
|
|
144
|
-
* Assume that the user that you are federating has the
|
|
145
|
-
* <code>Department</code>=<code>Marketing</code> tag and you pass the
|
|
146
|
-
* <code>department</code>=<code>engineering</code> session tag.
|
|
147
|
-
* <code>Department</code> and <code>department</code> are not saved as separate tags,
|
|
148
|
-
* and the session tag passed in the request takes precedence over the user tag.</p>
|
|
149
|
-
* @example
|
|
150
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
151
|
-
* ```javascript
|
|
152
|
-
* import { STSClient, GetFederationTokenCommand } from "@aws-sdk/client-sts"; // ES Modules import
|
|
153
|
-
* // const { STSClient, GetFederationTokenCommand } = require("@aws-sdk/client-sts"); // CommonJS import
|
|
154
|
-
* const client = new STSClient(config);
|
|
155
|
-
* const command = new GetFederationTokenCommand(input);
|
|
156
|
-
* const response = await client.send(command);
|
|
157
|
-
* ```
|
|
158
|
-
*
|
|
159
|
-
* @see {@link GetFederationTokenCommandInput} for command's `input` shape.
|
|
160
|
-
* @see {@link GetFederationTokenCommandOutput} for command's `response` shape.
|
|
161
|
-
* @see {@link STSClientResolvedConfig | config} for command's `input` shape.
|
|
162
|
-
*
|
|
163
|
-
*/
|
|
9
|
+
|
|
164
10
|
export declare class GetFederationTokenCommand extends $Command<GetFederationTokenCommandInput, GetFederationTokenCommandOutput, STSClientResolvedConfig> {
|
|
165
11
|
readonly input: GetFederationTokenCommandInput;
|
|
166
12
|
constructor(input: GetFederationTokenCommandInput);
|
|
167
|
-
|
|
168
|
-
* @internal
|
|
169
|
-
*/
|
|
13
|
+
|
|
170
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetFederationTokenCommandInput, GetFederationTokenCommandOutput>;
|
|
171
15
|
private serialize;
|
|
172
16
|
private deserialize;
|
|
@@ -6,80 +6,11 @@ export interface GetSessionTokenCommandInput extends GetSessionTokenRequest {
|
|
|
6
6
|
}
|
|
7
7
|
export interface GetSessionTokenCommandOutput extends GetSessionTokenResponse, __MetadataBearer {
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
* <p>Returns a set of temporary credentials for an Amazon Web Services account or IAM user. The
|
|
11
|
-
* credentials consist of an access key ID, a secret access key, and a security token.
|
|
12
|
-
* Typically, you use <code>GetSessionToken</code> if you want to use MFA to protect
|
|
13
|
-
* programmatic calls to specific Amazon Web Services API operations like Amazon EC2 <code>StopInstances</code>.
|
|
14
|
-
* MFA-enabled IAM users would need to call <code>GetSessionToken</code> and submit an MFA
|
|
15
|
-
* code that is associated with their MFA device. Using the temporary security credentials
|
|
16
|
-
* that are returned from the call, IAM users can then make programmatic calls to API
|
|
17
|
-
* operations that require MFA authentication. If you do not supply a correct MFA code, then
|
|
18
|
-
* the API returns an access denied error. For a comparison of <code>GetSessionToken</code>
|
|
19
|
-
* with the other API operations that produce temporary credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting
|
|
20
|
-
* Temporary Security Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
|
|
21
|
-
* STS API operations</a> in the <i>IAM User Guide</i>.</p>
|
|
22
|
-
* <p>
|
|
23
|
-
* <b>Session Duration</b>
|
|
24
|
-
* </p>
|
|
25
|
-
* <p>The <code>GetSessionToken</code> operation must be called by using the long-term Amazon Web Services
|
|
26
|
-
* security credentials of the Amazon Web Services account root user or an IAM user. Credentials that are
|
|
27
|
-
* created by IAM users are valid for the duration that you specify. This duration can range
|
|
28
|
-
* from 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36 hours), with a default
|
|
29
|
-
* of 43,200 seconds (12 hours). Credentials based on account credentials can range from 900
|
|
30
|
-
* seconds (15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour. </p>
|
|
31
|
-
* <p>
|
|
32
|
-
* <b>Permissions</b>
|
|
33
|
-
* </p>
|
|
34
|
-
* <p>The temporary security credentials created by <code>GetSessionToken</code> can be used
|
|
35
|
-
* to make API calls to any Amazon Web Services service with the following exceptions:</p>
|
|
36
|
-
* <ul>
|
|
37
|
-
* <li>
|
|
38
|
-
* <p>You cannot call any IAM API operations unless MFA authentication information is
|
|
39
|
-
* included in the request.</p>
|
|
40
|
-
* </li>
|
|
41
|
-
* <li>
|
|
42
|
-
* <p>You cannot call any STS API <i>except</i>
|
|
43
|
-
* <code>AssumeRole</code> or <code>GetCallerIdentity</code>.</p>
|
|
44
|
-
* </li>
|
|
45
|
-
* </ul>
|
|
46
|
-
* <note>
|
|
47
|
-
* <p>We recommend that you do not call <code>GetSessionToken</code> with Amazon Web Services account
|
|
48
|
-
* root user credentials. Instead, follow our <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users">best practices</a> by
|
|
49
|
-
* creating one or more IAM users, giving them the necessary permissions, and using IAM
|
|
50
|
-
* users for everyday interaction with Amazon Web Services. </p>
|
|
51
|
-
* </note>
|
|
52
|
-
* <p>The credentials that are returned by <code>GetSessionToken</code> are based on
|
|
53
|
-
* permissions associated with the user whose credentials were used to call the operation. If
|
|
54
|
-
* <code>GetSessionToken</code> is called using Amazon Web Services account root user credentials, the
|
|
55
|
-
* temporary credentials have root user permissions. Similarly, if
|
|
56
|
-
* <code>GetSessionToken</code> is called using the credentials of an IAM user, the
|
|
57
|
-
* temporary credentials have the same permissions as the IAM user. </p>
|
|
58
|
-
* <p>For more information about using <code>GetSessionToken</code> to create temporary
|
|
59
|
-
* credentials, go to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getsessiontoken">Temporary
|
|
60
|
-
* Credentials for Users in Untrusted Environments</a> in the
|
|
61
|
-
* <i>IAM User Guide</i>. </p>
|
|
62
|
-
* @example
|
|
63
|
-
* Use a bare-bones client and the command you need to make an API call.
|
|
64
|
-
* ```javascript
|
|
65
|
-
* import { STSClient, GetSessionTokenCommand } from "@aws-sdk/client-sts"; // ES Modules import
|
|
66
|
-
* // const { STSClient, GetSessionTokenCommand } = require("@aws-sdk/client-sts"); // CommonJS import
|
|
67
|
-
* const client = new STSClient(config);
|
|
68
|
-
* const command = new GetSessionTokenCommand(input);
|
|
69
|
-
* const response = await client.send(command);
|
|
70
|
-
* ```
|
|
71
|
-
*
|
|
72
|
-
* @see {@link GetSessionTokenCommandInput} for command's `input` shape.
|
|
73
|
-
* @see {@link GetSessionTokenCommandOutput} for command's `response` shape.
|
|
74
|
-
* @see {@link STSClientResolvedConfig | config} for command's `input` shape.
|
|
75
|
-
*
|
|
76
|
-
*/
|
|
9
|
+
|
|
77
10
|
export declare class GetSessionTokenCommand extends $Command<GetSessionTokenCommandInput, GetSessionTokenCommandOutput, STSClientResolvedConfig> {
|
|
78
11
|
readonly input: GetSessionTokenCommandInput;
|
|
79
12
|
constructor(input: GetSessionTokenCommandInput);
|
|
80
|
-
|
|
81
|
-
* @internal
|
|
82
|
-
*/
|
|
13
|
+
|
|
83
14
|
resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetSessionTokenCommandInput, GetSessionTokenCommandOutput>;
|
|
84
15
|
private serialize;
|
|
85
16
|
private deserialize;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./AssumeRoleCommand";
|
|
2
|
+
export * from "./AssumeRoleWithSAMLCommand";
|
|
3
|
+
export * from "./AssumeRoleWithWebIdentityCommand";
|
|
4
|
+
export * from "./DecodeAuthorizationMessageCommand";
|
|
5
|
+
export * from "./GetAccessKeyInfoCommand";
|
|
6
|
+
export * from "./GetCallerIdentityCommand";
|
|
7
|
+
export * from "./GetFederationTokenCommand";
|
|
8
|
+
export * from "./GetSessionTokenCommand";
|
|
@@ -1,19 +1,8 @@
|
|
|
1
1
|
import { DefaultCredentialProvider, RoleAssumer, RoleAssumerWithWebIdentity } from "./defaultStsRoleAssumers";
|
|
2
2
|
import { STSClientConfig } from "./STSClient";
|
|
3
|
-
|
|
4
|
-
* The default role assumer that used by credential providers when sts:AssumeRole API is needed.
|
|
5
|
-
*/
|
|
3
|
+
|
|
6
4
|
export declare const getDefaultRoleAssumer: (stsOptions?: Pick<STSClientConfig, "logger" | "region" | "requestHandler">) => RoleAssumer;
|
|
7
|
-
|
|
8
|
-
* The default role assumer that used by credential providers when sts:AssumeRoleWithWebIdentity API is needed.
|
|
9
|
-
*/
|
|
5
|
+
|
|
10
6
|
export declare const getDefaultRoleAssumerWithWebIdentity: (stsOptions?: Pick<STSClientConfig, "logger" | "region" | "requestHandler">) => RoleAssumerWithWebIdentity;
|
|
11
|
-
|
|
12
|
-
* The default credential providers depend STS client to assume role with desired API: sts:assumeRole,
|
|
13
|
-
* sts:assumeRoleWithWebIdentity, etc. This function decorates the default credential provider with role assumers which
|
|
14
|
-
* encapsulates the process of calling STS commands. This can only be imported by AWS client packages to avoid circular
|
|
15
|
-
* dependencies.
|
|
16
|
-
*
|
|
17
|
-
* @internal
|
|
18
|
-
*/
|
|
7
|
+
|
|
19
8
|
export declare const decorateDefaultCredentialProvider: (provider: DefaultCredentialProvider) => DefaultCredentialProvider;
|
|
@@ -2,34 +2,15 @@ import { Credentials, Provider } from "@aws-sdk/types";
|
|
|
2
2
|
import { AssumeRoleCommandInput } from "./commands/AssumeRoleCommand";
|
|
3
3
|
import { AssumeRoleWithWebIdentityCommandInput } from "./commands/AssumeRoleWithWebIdentityCommand";
|
|
4
4
|
import { STSClient, STSClientConfig } from "./STSClient";
|
|
5
|
-
|
|
6
|
-
* @internal
|
|
7
|
-
*/
|
|
5
|
+
|
|
8
6
|
export declare type RoleAssumer = (sourceCreds: Credentials, params: AssumeRoleCommandInput) => Promise<Credentials>;
|
|
9
|
-
|
|
10
|
-
* The default role assumer that used by credential providers when sts:AssumeRole API is needed.
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
7
|
+
|
|
13
8
|
export declare const getDefaultRoleAssumer: (stsOptions: Pick<STSClientConfig, "logger" | "region" | "requestHandler">, stsClientCtor: new (options: STSClientConfig) => STSClient) => RoleAssumer;
|
|
14
|
-
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
9
|
+
|
|
17
10
|
export declare type RoleAssumerWithWebIdentity = (params: AssumeRoleWithWebIdentityCommandInput) => Promise<Credentials>;
|
|
18
|
-
|
|
19
|
-
* The default role assumer that used by credential providers when sts:AssumeRoleWithWebIdentity API is needed.
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
11
|
+
|
|
22
12
|
export declare const getDefaultRoleAssumerWithWebIdentity: (stsOptions: Pick<STSClientConfig, "logger" | "region" | "requestHandler">, stsClientCtor: new (options: STSClientConfig) => STSClient) => RoleAssumerWithWebIdentity;
|
|
23
|
-
|
|
24
|
-
* @internal
|
|
25
|
-
*/
|
|
13
|
+
|
|
26
14
|
export declare type DefaultCredentialProvider = (input: any) => Provider<Credentials>;
|
|
27
|
-
|
|
28
|
-
* The default credential providers depend STS client to assume role with desired API: sts:assumeRole,
|
|
29
|
-
* sts:assumeRoleWithWebIdentity, etc. This function decorates the default credential provider with role assumers which
|
|
30
|
-
* encapsulates the process of calling STS commands. This can only be imported by AWS client packages to avoid circular
|
|
31
|
-
* dependencies.
|
|
32
|
-
*
|
|
33
|
-
* @internal
|
|
34
|
-
*/
|
|
15
|
+
|
|
35
16
|
export declare const decorateDefaultCredentialProvider: (provider: DefaultCredentialProvider) => DefaultCredentialProvider;
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
export * from "./STSClient";
|
|
2
1
|
export * from "./STS";
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./commands
|
|
5
|
-
export * from "./commands/AssumeRoleWithWebIdentityCommand";
|
|
6
|
-
export * from "./commands/DecodeAuthorizationMessageCommand";
|
|
7
|
-
export * from "./commands/GetAccessKeyInfoCommand";
|
|
8
|
-
export * from "./commands/GetCallerIdentityCommand";
|
|
9
|
-
export * from "./commands/GetFederationTokenCommand";
|
|
10
|
-
export * from "./commands/GetSessionTokenCommand";
|
|
2
|
+
export * from "./STSClient";
|
|
3
|
+
export * from "./commands";
|
|
11
4
|
export * from "./defaultRoleAssumers";
|
|
12
|
-
export * from "./models
|
|
5
|
+
export * from "./models";
|