@aws-sdk/client-sts 3.54.0 → 3.54.2

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.
Files changed (26) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist-cjs/protocols/Aws_query.js +2 -2
  3. package/dist-cjs/protocols/xml-parser.js +18 -0
  4. package/dist-es/protocols/Aws_query.js +1 -1
  5. package/dist-es/protocols/xml-parser.js +15 -0
  6. package/dist-types/protocols/xml-parser.d.ts +4 -0
  7. package/dist-types/ts3.4/STS.d.ts +583 -9
  8. package/dist-types/ts3.4/STSClient.d.ts +102 -27
  9. package/dist-types/ts3.4/commands/AssumeRoleCommand.d.ts +109 -2
  10. package/dist-types/ts3.4/commands/AssumeRoleWithSAMLCommand.d.ts +151 -2
  11. package/dist-types/ts3.4/commands/AssumeRoleWithWebIdentityCommand.d.ts +155 -2
  12. package/dist-types/ts3.4/commands/DecodeAuthorizationMessageCommand.d.ts +55 -2
  13. package/dist-types/ts3.4/commands/GetAccessKeyInfoCommand.d.ts +37 -2
  14. package/dist-types/ts3.4/commands/GetCallerIdentityCommand.d.ts +29 -2
  15. package/dist-types/ts3.4/commands/GetFederationTokenCommand.d.ts +105 -2
  16. package/dist-types/ts3.4/commands/GetSessionTokenCommand.d.ts +71 -2
  17. package/dist-types/ts3.4/defaultRoleAssumers.d.ts +14 -3
  18. package/dist-types/ts3.4/defaultStsRoleAssumers.d.ts +25 -6
  19. package/dist-types/ts3.4/models/STSServiceException.d.ts +6 -2
  20. package/dist-types/ts3.4/models/models_0.d.ts +967 -123
  21. package/dist-types/ts3.4/protocols/xml-parser.d.ts +4 -0
  22. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +3 -1
  23. package/dist-types/ts3.4/runtimeConfig.d.ts +3 -1
  24. package/dist-types/ts3.4/runtimeConfig.native.d.ts +3 -1
  25. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +3 -1
  26. package/package.json +26 -26
@@ -6,11 +6,64 @@ export interface DecodeAuthorizationMessageCommandInput extends DecodeAuthorizat
6
6
  }
7
7
  export interface DecodeAuthorizationMessageCommandOutput extends DecodeAuthorizationMessageResponse, __MetadataBearer {
8
8
  }
9
-
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 contain
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 through an IAM <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">policy</a> 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 STSClient's `config` shape.
59
+ *
60
+ */
10
61
  export declare class DecodeAuthorizationMessageCommand extends $Command<DecodeAuthorizationMessageCommandInput, DecodeAuthorizationMessageCommandOutput, STSClientResolvedConfig> {
11
62
  readonly input: DecodeAuthorizationMessageCommandInput;
12
63
  constructor(input: DecodeAuthorizationMessageCommandInput);
13
-
64
+ /**
65
+ * @internal
66
+ */
14
67
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<DecodeAuthorizationMessageCommandInput, DecodeAuthorizationMessageCommandOutput>;
15
68
  private serialize;
16
69
  private deserialize;
@@ -6,11 +6,46 @@ export interface GetAccessKeyInfoCommandInput extends GetAccessKeyInfoRequest {
6
6
  }
7
7
  export interface GetAccessKeyInfoCommandOutput extends GetAccessKeyInfoResponse, __MetadataBearer {
8
8
  }
9
-
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 account
17
+ * to which the keys belong. Access key IDs beginning with <code>AKIA</code> are long-term
18
+ * credentials for an IAM user or the Amazon Web Services account root user. Access key IDs beginning with
19
+ * <code>ASIA</code> are temporary credentials that are created using STS operations. If
20
+ * the account in the response belongs to you, you can sign in as the root user and review
21
+ * 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
22
+ * learn which IAM user owns the keys. To learn who requested the temporary credentials for
23
+ * an <code>ASIA</code> access key, view the STS 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 STSClient's `config` shape.
41
+ *
42
+ */
10
43
  export declare class GetAccessKeyInfoCommand extends $Command<GetAccessKeyInfoCommandInput, GetAccessKeyInfoCommandOutput, STSClientResolvedConfig> {
11
44
  readonly input: GetAccessKeyInfoCommandInput;
12
45
  constructor(input: GetAccessKeyInfoCommandInput);
13
-
46
+ /**
47
+ * @internal
48
+ */
14
49
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetAccessKeyInfoCommandInput, GetAccessKeyInfoCommandOutput>;
15
50
  private serialize;
16
51
  private deserialize;
@@ -6,11 +6,38 @@ export interface GetCallerIdentityCommandInput extends GetCallerIdentityRequest
6
6
  }
7
7
  export interface GetCallerIdentityCommandOutput extends GetCallerIdentityResponse, __MetadataBearer {
8
8
  }
9
-
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 user
17
+ * 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 STSClient's `config` shape.
33
+ *
34
+ */
10
35
  export declare class GetCallerIdentityCommand extends $Command<GetCallerIdentityCommandInput, GetCallerIdentityCommandOutput, STSClientResolvedConfig> {
11
36
  readonly input: GetCallerIdentityCommandInput;
12
37
  constructor(input: GetCallerIdentityCommandInput);
13
-
38
+ /**
39
+ * @internal
40
+ */
14
41
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetCallerIdentityCommandInput, GetCallerIdentityCommandOutput>;
15
42
  private serialize;
16
43
  private deserialize;
@@ -6,11 +6,114 @@ export interface GetFederationTokenCommandInput extends GetFederationTokenReques
6
6
  }
7
7
  export interface GetFederationTokenCommandOutput extends GetFederationTokenResponse, __MetadataBearer {
8
8
  }
9
-
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
+ * Amazon Web Services 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 obtained by using the Amazon Web Services account root
39
+ * 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 using
79
+ * 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>An administrator must grant you the permissions necessary to pass session tags. The
85
+ * administrator can also create granular permissions to allow you to pass only specific
86
+ * session tags. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html">Tutorial: Using Tags
87
+ * for Attribute-Based Access Control</a> in the
88
+ * <i>IAM User Guide</i>.</p>
89
+ * <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
90
+ * cannot have separate <code>Department</code> and <code>department</code> tag keys. Assume
91
+ * that the user that you are federating has the
92
+ * <code>Department</code>=<code>Marketing</code> tag and you pass the
93
+ * <code>department</code>=<code>engineering</code> session tag. <code>Department</code>
94
+ * and <code>department</code> are not saved as separate tags, and the session tag passed in
95
+ * the request takes precedence over the user tag.</p>
96
+ * @example
97
+ * Use a bare-bones client and the command you need to make an API call.
98
+ * ```javascript
99
+ * import { STSClient, GetFederationTokenCommand } from "@aws-sdk/client-sts"; // ES Modules import
100
+ * // const { STSClient, GetFederationTokenCommand } = require("@aws-sdk/client-sts"); // CommonJS import
101
+ * const client = new STSClient(config);
102
+ * const command = new GetFederationTokenCommand(input);
103
+ * const response = await client.send(command);
104
+ * ```
105
+ *
106
+ * @see {@link GetFederationTokenCommandInput} for command's `input` shape.
107
+ * @see {@link GetFederationTokenCommandOutput} for command's `response` shape.
108
+ * @see {@link STSClientResolvedConfig | config} for STSClient's `config` shape.
109
+ *
110
+ */
10
111
  export declare class GetFederationTokenCommand extends $Command<GetFederationTokenCommandInput, GetFederationTokenCommandOutput, STSClientResolvedConfig> {
11
112
  readonly input: GetFederationTokenCommandInput;
12
113
  constructor(input: GetFederationTokenCommandInput);
13
-
114
+ /**
115
+ * @internal
116
+ */
14
117
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetFederationTokenCommandInput, GetFederationTokenCommandOutput>;
15
118
  private serialize;
16
119
  private deserialize;
@@ -6,11 +6,80 @@ export interface GetSessionTokenCommandInput extends GetSessionTokenRequest {
6
6
  }
7
7
  export interface GetSessionTokenCommandOutput extends GetSessionTokenResponse, __MetadataBearer {
8
8
  }
9
-
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
+ * Amazon Web Services 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 STSClient's `config` shape.
75
+ *
76
+ */
10
77
  export declare class GetSessionTokenCommand extends $Command<GetSessionTokenCommandInput, GetSessionTokenCommandOutput, STSClientResolvedConfig> {
11
78
  readonly input: GetSessionTokenCommandInput;
12
79
  constructor(input: GetSessionTokenCommandInput);
13
-
80
+ /**
81
+ * @internal
82
+ */
14
83
  resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: STSClientResolvedConfig, options?: __HttpHandlerOptions): Handler<GetSessionTokenCommandInput, GetSessionTokenCommandOutput>;
15
84
  private serialize;
16
85
  private deserialize;
@@ -1,8 +1,19 @@
1
1
  import { DefaultCredentialProvider, RoleAssumer, RoleAssumerWithWebIdentity } from "./defaultStsRoleAssumers";
2
2
  import { STSClientConfig } from "./STSClient";
3
-
3
+ /**
4
+ * The default role assumer that used by credential providers when sts:AssumeRole API is needed.
5
+ */
4
6
  export declare const getDefaultRoleAssumer: (stsOptions?: Pick<STSClientConfig, "logger" | "region" | "requestHandler">) => RoleAssumer;
5
-
7
+ /**
8
+ * The default role assumer that used by credential providers when sts:AssumeRoleWithWebIdentity API is needed.
9
+ */
6
10
  export declare const getDefaultRoleAssumerWithWebIdentity: (stsOptions?: Pick<STSClientConfig, "logger" | "region" | "requestHandler">) => RoleAssumerWithWebIdentity;
7
-
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
+ */
8
19
  export declare const decorateDefaultCredentialProvider: (provider: DefaultCredentialProvider) => DefaultCredentialProvider;
@@ -2,15 +2,34 @@ 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
-
5
+ /**
6
+ * @internal
7
+ */
6
8
  export declare type RoleAssumer = (sourceCreds: Credentials, params: AssumeRoleCommandInput) => Promise<Credentials>;
7
-
9
+ /**
10
+ * The default role assumer that used by credential providers when sts:AssumeRole API is needed.
11
+ * @internal
12
+ */
8
13
  export declare const getDefaultRoleAssumer: (stsOptions: Pick<STSClientConfig, "logger" | "region" | "requestHandler">, stsClientCtor: new (options: STSClientConfig) => STSClient) => RoleAssumer;
9
-
14
+ /**
15
+ * @internal
16
+ */
10
17
  export declare type RoleAssumerWithWebIdentity = (params: AssumeRoleWithWebIdentityCommandInput) => Promise<Credentials>;
11
-
18
+ /**
19
+ * The default role assumer that used by credential providers when sts:AssumeRoleWithWebIdentity API is needed.
20
+ * @internal
21
+ */
12
22
  export declare const getDefaultRoleAssumerWithWebIdentity: (stsOptions: Pick<STSClientConfig, "logger" | "region" | "requestHandler">, stsClientCtor: new (options: STSClientConfig) => STSClient) => RoleAssumerWithWebIdentity;
13
-
23
+ /**
24
+ * @internal
25
+ */
14
26
  export declare type DefaultCredentialProvider = (input: any) => Provider<Credentials>;
15
-
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
+ */
16
35
  export declare const decorateDefaultCredentialProvider: (provider: DefaultCredentialProvider) => DefaultCredentialProvider;
@@ -1,6 +1,10 @@
1
1
  import { ServiceException as __ServiceException, ServiceExceptionOptions as __ServiceExceptionOptions } from "@aws-sdk/smithy-client";
2
-
2
+ /**
3
+ * Base exception class for all service exceptions from STS service.
4
+ */
3
5
  export declare class STSServiceException extends __ServiceException {
4
-
6
+ /**
7
+ * @internal
8
+ */
5
9
  constructor(options: __ServiceExceptionOptions);
6
10
  }