@aws-sdk/client-sts 3.40.0 → 3.45.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 CHANGED
@@ -3,6 +3,50 @@
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.45.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.44.0...v3.45.0) (2021-12-23)
7
+
8
+
9
+ ### Features
10
+
11
+ * **clients:** update clients as of 2021/12/23 ([#3110](https://github.com/aws/aws-sdk-js-v3/issues/3110)) ([5d638e1](https://github.com/aws/aws-sdk-js-v3/commit/5d638e188ce64fa80fe36b8cba79ba63b80b50b7))
12
+
13
+
14
+
15
+
16
+
17
+ # [3.43.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.42.0...v3.43.0) (2021-11-29)
18
+
19
+
20
+ ### Features
21
+
22
+ * **clients:** update clients as of 11/28/2021 ([#3072](https://github.com/aws/aws-sdk-js-v3/issues/3072)) ([2ad1622](https://github.com/aws/aws-sdk-js-v3/commit/2ad1622ba8586b926fe508055211803bb29e3976))
23
+
24
+
25
+
26
+
27
+
28
+ # [3.42.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.41.0...v3.42.0) (2021-11-19)
29
+
30
+
31
+ ### Bug Fixes
32
+
33
+ * **clients:** merge default variants by comparing tags ([#3044](https://github.com/aws/aws-sdk-js-v3/issues/3044)) ([d65a310](https://github.com/aws/aws-sdk-js-v3/commit/d65a310ed5a471e72633a18ae6f3c98390e20783))
34
+
35
+
36
+
37
+
38
+
39
+ # [3.41.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.40.1...v3.41.0) (2021-11-11)
40
+
41
+
42
+ ### Features
43
+
44
+ * **clients:** update clients as of 2021/11/11 ([#3015](https://github.com/aws/aws-sdk-js-v3/issues/3015)) ([3d82c4e](https://github.com/aws/aws-sdk-js-v3/commit/3d82c4e3c4d174533f46ce35495cf5cffabdb35a))
45
+
46
+
47
+
48
+
49
+
6
50
  # [3.40.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.39.0...v3.40.0) (2021-11-05)
7
51
 
8
52
 
@@ -96,6 +96,7 @@ const partitionHash = {
96
96
  "ap-south-1",
97
97
  "ap-southeast-1",
98
98
  "ap-southeast-2",
99
+ "ap-southeast-3",
99
100
  "aws-global",
100
101
  "ca-central-1",
101
102
  "eu-central-1",
@@ -165,6 +166,10 @@ const partitionHash = {
165
166
  hostname: "sts.{region}.c2s.ic.gov",
166
167
  tags: [],
167
168
  },
169
+ {
170
+ hostname: "sts-fips.{region}.c2s.ic.gov",
171
+ tags: ["fips"],
172
+ },
168
173
  ],
169
174
  },
170
175
  "aws-iso-b": {
@@ -175,6 +180,10 @@ const partitionHash = {
175
180
  hostname: "sts.{region}.sc2s.sgov.gov",
176
181
  tags: [],
177
182
  },
183
+ {
184
+ hostname: "sts-fips.{region}.sc2s.sgov.gov",
185
+ tags: ["fips"],
186
+ },
178
187
  ],
179
188
  },
180
189
  "aws-us-gov": {
@@ -189,6 +198,14 @@ const partitionHash = {
189
198
  hostname: "sts.{region}.amazonaws.com",
190
199
  tags: ["fips"],
191
200
  },
201
+ {
202
+ hostname: "sts-fips.{region}.api.aws",
203
+ tags: ["dualstack", "fips"],
204
+ },
205
+ {
206
+ hostname: "sts.{region}.api.aws",
207
+ tags: ["dualstack"],
208
+ },
192
209
  ],
193
210
  },
194
211
  };
@@ -94,6 +94,7 @@ var partitionHash = {
94
94
  "ap-south-1",
95
95
  "ap-southeast-1",
96
96
  "ap-southeast-2",
97
+ "ap-southeast-3",
97
98
  "aws-global",
98
99
  "ca-central-1",
99
100
  "eu-central-1",
@@ -163,6 +164,10 @@ var partitionHash = {
163
164
  hostname: "sts.{region}.c2s.ic.gov",
164
165
  tags: [],
165
166
  },
167
+ {
168
+ hostname: "sts-fips.{region}.c2s.ic.gov",
169
+ tags: ["fips"],
170
+ },
166
171
  ],
167
172
  },
168
173
  "aws-iso-b": {
@@ -173,6 +178,10 @@ var partitionHash = {
173
178
  hostname: "sts.{region}.sc2s.sgov.gov",
174
179
  tags: [],
175
180
  },
181
+ {
182
+ hostname: "sts-fips.{region}.sc2s.sgov.gov",
183
+ tags: ["fips"],
184
+ },
176
185
  ],
177
186
  },
178
187
  "aws-us-gov": {
@@ -187,6 +196,14 @@ var partitionHash = {
187
196
  hostname: "sts.{region}.amazonaws.com",
188
197
  tags: ["fips"],
189
198
  },
199
+ {
200
+ hostname: "sts-fips.{region}.api.aws",
201
+ tags: ["dualstack", "fips"],
202
+ },
203
+ {
204
+ hostname: "sts.{region}.api.aws",
205
+ tags: ["dualstack"],
206
+ },
190
207
  ],
191
208
  },
192
209
  };
@@ -18,20 +18,19 @@ import { STSClient } from "./STSClient";
18
18
  export declare class STS extends STSClient {
19
19
  /**
20
20
  * <p>Returns a set of temporary security credentials that you can use to access Amazon Web Services
21
- * resources that you might not normally have access to. These temporary credentials
22
- * consist of an access key ID, a secret access key, and a security token. Typically, you
23
- * use <code>AssumeRole</code> within your account or for cross-account access. For a
24
- * comparison of <code>AssumeRole</code> with other API operations that produce temporary
25
- * credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
26
- * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing
27
- * the STS API operations</a> in the
28
- * <i>IAM User Guide</i>.</p>
21
+ * resources that you might not normally have access to. These temporary credentials consist
22
+ * of an access key ID, a secret access key, and a security token. Typically, you use
23
+ * <code>AssumeRole</code> within your account or for cross-account access. For a
24
+ * comparison of <code>AssumeRole</code> with other API operations that produce temporary
25
+ * credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
26
+ * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
27
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
29
28
  * <p>
30
29
  * <b>Permissions</b>
31
30
  * </p>
32
31
  * <p>The temporary security credentials created by <code>AssumeRole</code> can be used to
33
32
  * make API calls to any Amazon Web Services service with the following exception: You cannot call the
34
- * STS <code>GetFederationToken</code> or <code>GetSessionToken</code> API
33
+ * Amazon Web Services STS <code>GetFederationToken</code> or <code>GetSessionToken</code> API
35
34
  * operations.</p>
36
35
  * <p>(Optional) You can pass inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policies</a> to
37
36
  * this operation. You can pass a single JSON policy document to use as an inline session
@@ -45,28 +44,35 @@ export declare class STS extends STSClient {
45
44
  * by the identity-based policy of the role that is being assumed. For more information, see
46
45
  * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
47
46
  * Policies</a> in the <i>IAM User Guide</i>.</p>
48
- * <p>To assume a role from a different account, your account must be trusted by the
47
+ * <p>When you create a role, you create two policies: A role trust policy that specifies
48
+ * <i>who</i> can assume the role and a permissions policy that specifies
49
+ * <i>what</i> can be done with the role. You specify the trusted principal
50
+ * who is allowed to assume the role in the role trust policy.</p>
51
+ * <p>To assume a role from a different account, your Amazon Web Services account must be trusted by the
49
52
  * role. The trust relationship is defined in the role's trust policy when the role is
50
53
  * created. That trust policy states which accounts are allowed to delegate that access to
51
54
  * users in the account. </p>
52
55
  * <p>A user who wants to access a role in a different account must also have permissions that
53
56
  * are delegated from the user account administrator. The administrator must attach a policy
54
57
  * that allows the user to call <code>AssumeRole</code> for the ARN of the role in the other
55
- * account. If the user is in the same account as the role, then you can do either of the
58
+ * account.</p>
59
+ * <p>To allow a user to assume a role in the same account, you can do either of the
56
60
  * following:</p>
57
61
  * <ul>
58
62
  * <li>
59
- * <p>Attach a policy to the user (identical to the previous user in a different
60
- * account).</p>
63
+ * <p>Attach a policy to the user that allows the user to call
64
+ * <code>AssumeRole</code> (as long as the role's trust policy trusts the account).</p>
61
65
  * </li>
62
66
  * <li>
63
67
  * <p>Add the user as a principal directly in the role's trust policy.</p>
64
68
  * </li>
65
69
  * </ul>
66
- * <p>In this case, the trust policy acts as an IAM resource-based policy. Users in the same
67
- * account as the role do not need explicit permission to assume the role. For more
68
- * information about trust policies and resource-based policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">IAM Policies</a> in
69
- * the <i>IAM User Guide</i>.</p>
70
+ * <p>You can do either because the role’s trust policy acts as an IAM resource-based
71
+ * policy. When a resource-based policy grants access to a principal in the same account, no
72
+ * additional identity-based policy is required. For more information about trust policies and
73
+ * resource-based policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">IAM Policies</a> in the
74
+ * <i>IAM User Guide</i>.</p>
75
+ *
70
76
  * <p>
71
77
  * <b>Tags</b>
72
78
  * </p>
@@ -112,7 +118,7 @@ export declare class STS extends STSClient {
112
118
  * credentials or configuration. For a comparison of <code>AssumeRoleWithSAML</code> with the
113
119
  * 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
114
120
  * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
115
- * STS API operations</a> in the <i>IAM User Guide</i>.</p>
121
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
116
122
  * <p>The temporary security credentials returned by this operation consist of an access key
117
123
  * ID, a secret access key, and a security token. Applications can use these temporary
118
124
  * security credentials to sign calls to Amazon Web Services services.</p>
@@ -134,15 +140,15 @@ export declare class STS extends STSClient {
134
140
  * console URL. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html">Using IAM Roles</a> in the
135
141
  * <i>IAM User Guide</i>.</p>
136
142
  * <note>
137
- * <p>
138
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-role-chaining">Role chaining</a> limits your CLI or Amazon Web Services API
139
- * role session to a maximum of one hour. When you use the <code>AssumeRole</code> API
140
- * operation to assume a role, you can specify the duration of your role session with
141
- * the <code>DurationSeconds</code> parameter. You can specify a parameter value of up
142
- * to 43200 seconds (12 hours), depending on the maximum session duration setting for
143
- * your role. However, if you assume a role using role chaining and provide a
144
- * <code>DurationSeconds</code> parameter value greater than one hour, the
145
- * operation fails.</p>
143
+ * <p>
144
+ * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-role-chaining">Role chaining</a> limits your CLI or Amazon Web Services API role
145
+ * session to a maximum of one hour. When you use the <code>AssumeRole</code> API operation
146
+ * to assume a role, you can specify the duration of your role session with the
147
+ * <code>DurationSeconds</code> parameter. You can specify a parameter value of up to
148
+ * 43200 seconds (12 hours), depending on the maximum session duration setting for your
149
+ * role. However, if you assume a role using role chaining and provide a
150
+ * <code>DurationSeconds</code> parameter value greater than one hour, the operation
151
+ * fails.</p>
146
152
  * </note>
147
153
  * <p>
148
154
  * <b>Permissions</b>
@@ -194,9 +200,9 @@ export declare class STS extends STSClient {
194
200
  * request are to the upper size limit.
195
201
  * </p>
196
202
  * </note>
197
- * <p>You can pass a session tag with the same key as a tag that is
198
- * attached to the role. When you do, session tags override the role's tags with the same
199
- * key.</p>
203
+ *
204
+ * <p>You can pass a session tag with the same key as a tag that is attached to the role. When
205
+ * you do, session tags override the role's tags with the same key.</p>
200
206
  * <p>An administrator must grant you the permissions necessary to pass session tags. The
201
207
  * administrator can also create granular permissions to allow you to pass only specific
202
208
  * 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
@@ -265,7 +271,7 @@ export declare class STS extends STSClient {
265
271
  * <code>AssumeRoleWithWebIdentity</code> with the other API operations that produce
266
272
  * temporary credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
267
273
  * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
268
- * STS API operations</a> in the <i>IAM User Guide</i>.</p>
274
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
269
275
  * <p>The temporary security credentials returned by this API consist of an access key ID, a
270
276
  * secret access key, and a security token. Applications can use these temporary security
271
277
  * credentials to sign calls to Amazon Web Services service API operations.</p>
@@ -323,9 +329,9 @@ export declare class STS extends STSClient {
323
329
  * request are to the upper size limit.
324
330
  * </p>
325
331
  * </note>
326
- * <p>You can pass a session tag with the same key as a tag that is
327
- * attached to the role. When you do, the session tag overrides the role tag with the same
328
- * key.</p>
332
+ *
333
+ * <p>You can pass a session tag with the same key as a tag that is attached to the role. When
334
+ * you do, the session tag overrides the role tag with the same key.</p>
329
335
  * <p>An administrator must grant you the permissions necessary to pass session tags. The
330
336
  * administrator can also create granular permissions to allow you to pass only specific
331
337
  * 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
@@ -395,9 +401,9 @@ export declare class STS extends STSClient {
395
401
  * documentation for an individual operation indicates whether that operation returns an
396
402
  * encoded message in addition to returning an HTTP code.</p>
397
403
  * </note>
398
- * <p>The message is encoded because the details of the authorization status can constitute
404
+ * <p>The message is encoded because the details of the authorization status can contain
399
405
  * privileged information that the user who requested the operation should not see. To decode
400
- * an authorization status message, a user must be granted permissions via an IAM policy to
406
+ * 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
401
407
  * request the <code>DecodeAuthorizationMessage</code>
402
408
  * (<code>sts:DecodeAuthorizationMessage</code>) action. </p>
403
409
  * <p>The decoded message includes the following type of information:</p>
@@ -426,38 +432,38 @@ export declare class STS extends STSClient {
426
432
  decodeAuthorizationMessage(args: DecodeAuthorizationMessageCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DecodeAuthorizationMessageCommandOutput) => void): void;
427
433
  /**
428
434
  * <p>Returns the account identifier for the specified access key ID.</p>
429
- * <p>Access keys consist of two parts: an access key ID (for example,
430
- * <code>AKIAIOSFODNN7EXAMPLE</code>) and a secret access key (for example,
431
- * <code>wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY</code>). For more information about
432
- * access keys, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html">Managing Access Keys for IAM
433
- * Users</a> in the <i>IAM User Guide</i>.</p>
434
- * <p>When you pass an access key ID to this operation, it returns the ID of the Amazon Web Services
435
- * account to which the keys belong. Access key IDs beginning with <code>AKIA</code> are
436
- * long-term credentials for an IAM user or the Amazon Web Services account root user. Access key IDs
437
- * beginning with <code>ASIA</code> are temporary credentials that are created using STS
438
- * operations. If the account in the response belongs to you, you can sign in as the root
439
- * 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
440
- * requested the temporary credentials for an <code>ASIA</code> access key, view the STS
441
- * events in your <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html">CloudTrail logs</a> in the
442
- * <i>IAM User Guide</i>.</p>
443
- * <p>This operation does not indicate the state of the access key. The key might be active,
444
- * inactive, or deleted. Active keys might not have permissions to perform an operation.
445
- * Providing a deleted access key might return an error that the key doesn't exist.</p>
435
+ * <p>Access keys consist of two parts: an access key ID (for example,
436
+ * <code>AKIAIOSFODNN7EXAMPLE</code>) and a secret access key (for example,
437
+ * <code>wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY</code>). For more information about
438
+ * access keys, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html">Managing Access Keys for IAM
439
+ * Users</a> in the <i>IAM User Guide</i>.</p>
440
+ * <p>When you pass an access key ID to this operation, it returns the ID of the Amazon Web Services account
441
+ * to which the keys belong. Access key IDs beginning with <code>AKIA</code> are long-term
442
+ * credentials for an IAM user or the Amazon Web Services account root user. Access key IDs beginning with
443
+ * <code>ASIA</code> are temporary credentials that are created using STS operations. If
444
+ * the account in the response belongs to you, you can sign in as the root user and review
445
+ * 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
446
+ * learn which IAM user owns the keys. To learn who requested the temporary credentials for
447
+ * 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
448
+ * <i>IAM User Guide</i>.</p>
449
+ * <p>This operation does not indicate the state of the access key. The key might be active,
450
+ * inactive, or deleted. Active keys might not have permissions to perform an operation.
451
+ * Providing a deleted access key might return an error that the key doesn't exist.</p>
446
452
  */
447
453
  getAccessKeyInfo(args: GetAccessKeyInfoCommandInput, options?: __HttpHandlerOptions): Promise<GetAccessKeyInfoCommandOutput>;
448
454
  getAccessKeyInfo(args: GetAccessKeyInfoCommandInput, cb: (err: any, data?: GetAccessKeyInfoCommandOutput) => void): void;
449
455
  getAccessKeyInfo(args: GetAccessKeyInfoCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetAccessKeyInfoCommandOutput) => void): void;
450
456
  /**
451
457
  * <p>Returns details about the IAM user or role whose credentials are used to call the
452
- * operation.</p>
453
- * <note>
458
+ * operation.</p>
459
+ * <note>
454
460
  * <p>No permissions are required to perform this operation. If an administrator adds a
455
- * policy to your IAM user or role that explicitly denies access to the
456
- * <code>sts:GetCallerIdentity</code> action, you can still perform this operation.
457
- * Permissions are not required because the same information is returned when an IAM
458
- * 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
459
- * <i>IAM User Guide</i>.</p>
460
- * </note>
461
+ * policy to your IAM user or role that explicitly denies access to the
462
+ * <code>sts:GetCallerIdentity</code> action, you can still perform this operation.
463
+ * Permissions are not required because the same information is returned when an IAM user
464
+ * 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
465
+ * <i>IAM User Guide</i>.</p>
466
+ * </note>
461
467
  */
462
468
  getCallerIdentity(args: GetCallerIdentityCommandInput, options?: __HttpHandlerOptions): Promise<GetCallerIdentityCommandOutput>;
463
469
  getCallerIdentity(args: GetCallerIdentityCommandInput, cb: (err: any, data?: GetCallerIdentityCommandOutput) => void): void;
@@ -472,7 +478,7 @@ export declare class STS extends STSClient {
472
478
  * server-based application. For a comparison of <code>GetFederationToken</code> with the
473
479
  * 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
474
480
  * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
475
- * STS API operations</a> in the <i>IAM User Guide</i>.</p>
481
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
476
482
  * <note>
477
483
  * <p>You can create a mobile-based or browser-based app that can authenticate users using
478
484
  * a web identity provider like Login with Amazon, Facebook, Google, or an OpenID
@@ -491,8 +497,8 @@ export declare class STS extends STSClient {
491
497
  * </p>
492
498
  * <p>The temporary credentials are valid for the specified duration, from 900 seconds (15
493
499
  * minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is
494
- * 43,200 seconds (12 hours). Temporary credentials that are obtained by using Amazon Web Services account
495
- * root user credentials have a maximum duration of 3,600 seconds (1 hour).</p>
500
+ * 43,200 seconds (12 hours). Temporary credentials obtained by using the Amazon Web Services account root
501
+ * user credentials have a maximum duration of 3,600 seconds (1 hour).</p>
496
502
  * <p>
497
503
  * <b>Permissions</b>
498
504
  * </p>
@@ -530,78 +536,25 @@ export declare class STS extends STSClient {
530
536
  * <p>(Optional) You can pass tag key-value pairs to your session. These are called session
531
537
  * 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
532
538
  * <i>IAM User Guide</i>.</p>
533
- * <note>
534
- * <p>You can create a mobile-based or browser-based app that can authenticate users
535
- * using a web identity provider like Login with Amazon, Facebook, Google, or an OpenID
536
- * Connect-compatible identity provider. In this case, we recommend that you use <a href="http://aws.amazon.com/cognito/">Amazon Cognito</a> or
537
- * <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
538
- * <i>IAM User Guide</i>.</p>
539
- * </note>
540
- * <p>You can also call <code>GetFederationToken</code> using the security credentials of an
541
- * Amazon Web Services account root user, but we do not recommend it. Instead, we recommend that you
542
- * create an IAM user for the purpose of the proxy application. Then attach a policy to
543
- * the IAM user that limits federated users to only the actions and resources that they
544
- * 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
545
- * <i>IAM User Guide</i>. </p>
546
- * <p>
547
- * <b>Session duration</b>
548
- * </p>
549
- * <p>The temporary credentials are valid for the specified duration, from 900 seconds (15
550
- * minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is
551
- * 43,200 seconds (12 hours). Temporary credentials that are obtained by using Amazon Web Services
552
- * account root user credentials have a maximum duration of 3,600 seconds (1 hour).</p>
553
- * <p>
554
- * <b>Permissions</b>
555
- * </p>
556
- * <p>You can use the temporary credentials created by <code>GetFederationToken</code> in
557
- * any Amazon Web Services service except the following:</p>
558
- * <ul>
559
- * <li>
560
- * <p>You cannot call any IAM operations using the CLI or the Amazon Web Services API.
561
- * </p>
562
- * </li>
563
- * <li>
564
- * <p>You cannot call any STS operations except
565
- * <code>GetCallerIdentity</code>.</p>
566
- * </li>
567
- * </ul>
568
- * <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
569
- * this operation. You can pass a single JSON policy document to use as an inline session
570
- * policy. You can also specify up to 10 managed policies to use as managed session
571
- * policies. The plain text that you use for both inline and managed session policies can't
572
- * exceed 2,048 characters.</p>
573
- * <p>Though the session policy parameters are optional, if you do not pass a policy, then
574
- * the resulting federated user session has no permissions. When you pass session policies,
575
- * the session permissions are the intersection of the IAM user policies and the session
576
- * policies that you pass. This gives you a way to further restrict the permissions for a
577
- * federated user. You cannot use session policies to grant more permissions than those
578
- * that are defined in the permissions policy of the IAM user. For more information, see
579
- * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session Policies</a>
580
- * in the <i>IAM User Guide</i>. For information about using
581
- * <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>
582
- * <p>You can use the credentials to access a resource that has a resource-based policy. If
583
- * that policy specifically references the federated user session in the
584
- * <code>Principal</code> element of the policy, the session has the permissions
585
- * allowed by the policy. These permissions are granted in addition to the permissions
586
- * granted by the session policies.</p>
587
- * <p>
588
- * <b>Tags</b>
589
- * </p>
590
- * <p>(Optional) You can pass tag key-value pairs to your session. These are called session
591
- * 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
592
- * the <i>IAM User Guide</i>.</p>
593
- * <p>An administrator must grant you the permissions necessary to pass session tags. The
594
- * administrator can also create granular permissions to allow you to pass only specific
595
- * session tags. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html">Tutorial: Using
596
- * Tags for Attribute-Based Access Control</a> in the
597
- * <i>IAM User Guide</i>.</p>
598
- * <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
599
- * cannot have separate <code>Department</code> and <code>department</code> tag keys.
600
- * Assume that the user that you are federating has the
601
- * <code>Department</code>=<code>Marketing</code> tag and you pass the
602
- * <code>department</code>=<code>engineering</code> session tag.
603
- * <code>Department</code> and <code>department</code> are not saved as separate tags,
604
- * and the session tag passed in the request takes precedence over the user tag.</p>
539
+ * <note>
540
+ * <p>You can create a mobile-based or browser-based app that can authenticate users using
541
+ * a web identity provider like Login with Amazon, Facebook, Google, or an OpenID
542
+ * Connect-compatible identity provider. In this case, we recommend that you use <a href="http://aws.amazon.com/cognito/">Amazon Cognito</a> or
543
+ * <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
544
+ * <i>IAM User Guide</i>.</p>
545
+ * </note>
546
+ * <p>An administrator must grant you the permissions necessary to pass session tags. The
547
+ * administrator can also create granular permissions to allow you to pass only specific
548
+ * 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
549
+ * for Attribute-Based Access Control</a> in the
550
+ * <i>IAM User Guide</i>.</p>
551
+ * <p>Tag key–value pairs are not case sensitive, but case is preserved. This means that you
552
+ * cannot have separate <code>Department</code> and <code>department</code> tag keys. Assume
553
+ * that the user that you are federating has the
554
+ * <code>Department</code>=<code>Marketing</code> tag and you pass the
555
+ * <code>department</code>=<code>engineering</code> session tag. <code>Department</code>
556
+ * and <code>department</code> are not saved as separate tags, and the session tag passed in
557
+ * the request takes precedence over the user tag.</p>
605
558
  */
606
559
  getFederationToken(args: GetFederationTokenCommandInput, options?: __HttpHandlerOptions): Promise<GetFederationTokenCommandOutput>;
607
560
  getFederationToken(args: GetFederationTokenCommandInput, cb: (err: any, data?: GetFederationTokenCommandOutput) => void): void;
@@ -618,7 +571,7 @@ export declare class STS extends STSClient {
618
571
  * the API returns an access denied error. For a comparison of <code>GetSessionToken</code>
619
572
  * 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
620
573
  * Temporary Security Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
621
- * STS API operations</a> in the <i>IAM User Guide</i>.</p>
574
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
622
575
  * <p>
623
576
  * <b>Session Duration</b>
624
577
  * </p>
@@ -8,20 +8,19 @@ export interface AssumeRoleCommandOutput extends AssumeRoleResponse, __MetadataB
8
8
  }
9
9
  /**
10
10
  * <p>Returns a set of temporary security credentials that you can use to access Amazon Web Services
11
- * resources that you might not normally have access to. These temporary credentials
12
- * consist of an access key ID, a secret access key, and a security token. Typically, you
13
- * use <code>AssumeRole</code> within your account or for cross-account access. For a
14
- * comparison of <code>AssumeRole</code> with other API operations that produce temporary
15
- * credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
16
- * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing
17
- * the STS API operations</a> in the
18
- * <i>IAM User Guide</i>.</p>
11
+ * resources that you might not normally have access to. These temporary credentials consist
12
+ * of an access key ID, a secret access key, and a security token. Typically, you use
13
+ * <code>AssumeRole</code> within your account or for cross-account access. For a
14
+ * comparison of <code>AssumeRole</code> with other API operations that produce temporary
15
+ * credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html">Requesting Temporary Security
16
+ * Credentials</a> and <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison">Comparing the
17
+ * Amazon Web Services STS API operations</a> in the <i>IAM User Guide</i>.</p>
19
18
  * <p>
20
19
  * <b>Permissions</b>
21
20
  * </p>
22
21
  * <p>The temporary security credentials created by <code>AssumeRole</code> can be used to
23
22
  * make API calls to any Amazon Web Services service with the following exception: You cannot call the
24
- * STS <code>GetFederationToken</code> or <code>GetSessionToken</code> API
23
+ * Amazon Web Services STS <code>GetFederationToken</code> or <code>GetSessionToken</code> API
25
24
  * operations.</p>
26
25
  * <p>(Optional) You can pass inline or managed <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">session policies</a> to
27
26
  * this operation. You can pass a single JSON policy document to use as an inline session
@@ -35,28 +34,35 @@ export interface AssumeRoleCommandOutput extends AssumeRoleResponse, __MetadataB
35
34
  * by the identity-based policy of the role that is being assumed. For more information, see
36
35
  * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session">Session
37
36
  * Policies</a> in the <i>IAM User Guide</i>.</p>
38
- * <p>To assume a role from a different account, your account must be trusted by the
37
+ * <p>When you create a role, you create two policies: A role trust policy that specifies
38
+ * <i>who</i> can assume the role and a permissions policy that specifies
39
+ * <i>what</i> can be done with the role. You specify the trusted principal
40
+ * who is allowed to assume the role in the role trust policy.</p>
41
+ * <p>To assume a role from a different account, your Amazon Web Services account must be trusted by the
39
42
  * role. The trust relationship is defined in the role's trust policy when the role is
40
43
  * created. That trust policy states which accounts are allowed to delegate that access to
41
44
  * users in the account. </p>
42
45
  * <p>A user who wants to access a role in a different account must also have permissions that
43
46
  * are delegated from the user account administrator. The administrator must attach a policy
44
47
  * that allows the user to call <code>AssumeRole</code> for the ARN of the role in the other
45
- * account. If the user is in the same account as the role, then you can do either of the
48
+ * account.</p>
49
+ * <p>To allow a user to assume a role in the same account, you can do either of the
46
50
  * following:</p>
47
51
  * <ul>
48
52
  * <li>
49
- * <p>Attach a policy to the user (identical to the previous user in a different
50
- * account).</p>
53
+ * <p>Attach a policy to the user that allows the user to call
54
+ * <code>AssumeRole</code> (as long as the role's trust policy trusts the account).</p>
51
55
  * </li>
52
56
  * <li>
53
57
  * <p>Add the user as a principal directly in the role's trust policy.</p>
54
58
  * </li>
55
59
  * </ul>
56
- * <p>In this case, the trust policy acts as an IAM resource-based policy. Users in the same
57
- * account as the role do not need explicit permission to assume the role. For more
58
- * information about trust policies and resource-based policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">IAM Policies</a> in
59
- * the <i>IAM User Guide</i>.</p>
60
+ * <p>You can do either because the role’s trust policy acts as an IAM resource-based
61
+ * policy. When a resource-based policy grants access to a principal in the same account, no
62
+ * additional identity-based policy is required. For more information about trust policies and
63
+ * resource-based policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">IAM Policies</a> in the
64
+ * <i>IAM User Guide</i>.</p>
65
+ *
60
66
  * <p>
61
67
  * <b>Tags</b>
62
68
  * </p>
@@ -103,7 +109,7 @@ export interface AssumeRoleCommandOutput extends AssumeRoleResponse, __MetadataB
103
109
  *
104
110
  * @see {@link AssumeRoleCommandInput} for command's `input` shape.
105
111
  * @see {@link AssumeRoleCommandOutput} for command's `response` shape.
106
- * @see {@link STSClientResolvedConfig | config} for command's `input` shape.
112
+ * @see {@link STSClientResolvedConfig | config} for STSClient's `config` shape.
107
113
  *
108
114
  */
109
115
  export declare class AssumeRoleCommand extends $Command<AssumeRoleCommandInput, AssumeRoleCommandOutput, STSClientResolvedConfig> {