aws-sdk-core 3.49.0 → 3.50.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 73058ee6fd337df118ec80e4c3ff72a2d3a1e6da
4
- data.tar.gz: a26425fbf3fa6767729b347464974ababc61fd87
3
+ metadata.gz: d00808ae9ba43d63284f7ffd2573f1fd49a89d30
4
+ data.tar.gz: 37e62e1a50ac55085d58cd7dd9346c15e8861faf
5
5
  SHA512:
6
- metadata.gz: 72dc91962aa3b30357d1e5f2c253f9e102831795fa7a5d1c631370eeb419d1f2347d4deabb53c5ccffd05ff185d3bbfcdc66a796b90a9029f698037eafcc967e
7
- data.tar.gz: 37d0870e84c91b163ae19abff119955f7aa3fe327d570109cc491043760210ad05b5b39122c376875b7ab432898e437da7faa229919c12711ebfbe3d3eda11cc
6
+ metadata.gz: 4dc0a4e73a7454ac9e7c871aa7212157c40224a3a1ddf4a8e0b01f719dd6451833c2df2ad1222de6a18f05a80991079d996c4cc77b0e1df1a45cbc0446f086e6
7
+ data.tar.gz: 415989fbe8d6e4df04863a6a352f4f9d30efdf1b6d7e2a67dbadc3bb8ea872a0b768fa1b9296796ca3524f6e95c9d7cd1435e11c1e77e43dc52fd60af052a510
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.49.0
1
+ 3.50.0
@@ -40,6 +40,6 @@ require_relative 'aws-sdk-sts/customizations'
40
40
  # @service
41
41
  module Aws::STS
42
42
 
43
- GEM_VERSION = '3.49.0'
43
+ GEM_VERSION = '3.50.0'
44
44
 
45
45
  end
@@ -248,18 +248,18 @@ module Aws::STS
248
248
 
249
249
  # @!group API Operations
250
250
 
251
- # Returns a set of temporary security credentials (consisting of an
252
- # access key ID, a secret access key, and a security token) that you can
253
- # use to access AWS resources that you might not normally have access
254
- # to. Typically, you use `AssumeRole` for cross-account access or
255
- # federation. For a comparison of `AssumeRole` with the other APIs that
256
- # produce temporary credentials, see [Requesting Temporary Security
257
- # Credentials][1] and [Comparing the AWS STS APIs][2] in the *IAM User
258
- # Guide*.
259
- #
260
- # **Important:** You cannot call `AssumeRole` by using AWS root account
261
- # credentials; access is denied. You must use credentials for an IAM
262
- # user or an IAM role to call `AssumeRole`.
251
+ # Returns a set of temporary security credentials that you can use to
252
+ # access AWS resources that you might not normally have access to. These
253
+ # temporary credentials consist of an access key ID, a secret access
254
+ # key, and a security token. Typically, you use `AssumeRole` for
255
+ # cross-account access or federation. For a comparison of `AssumeRole`
256
+ # with other API operations that produce temporary credentials, see
257
+ # [Requesting Temporary Security Credentials][1] and [Comparing the AWS
258
+ # STS API operations][2] in the *IAM User Guide*.
259
+ #
260
+ # You cannot use AWS account root user credentials to call `AssumeRole`.
261
+ # You must use credentials for an IAM user or an IAM role to call
262
+ # `AssumeRole`.
263
263
  #
264
264
  # For cross-account access, imagine that you own multiple accounts and
265
265
  # need to access resources in each account. You could create long-term
@@ -273,15 +273,14 @@ module Aws::STS
273
273
  #
274
274
  # For federation, you can, for example, grant single sign-on access to
275
275
  # the AWS Management Console. If you already have an identity and
276
- # authentication system in your corporate network, you don't have to
277
- # recreate user identities in AWS in order to grant those user
278
- # identities access to AWS. Instead, after a user has been
279
- # authenticated, you call `AssumeRole` (and specify the role with the
280
- # appropriate permissions) to get temporary security credentials for
281
- # that user. With those temporary security credentials, you construct a
282
- # sign-in URL that users can use to access the console. For more
283
- # information, see [Common Scenarios for Temporary Credentials][4] in
284
- # the *IAM User Guide*.
276
+ # authentication system in your network, you don't have to recreate
277
+ # identities in AWS in order to grant them access to AWS. Instead, after
278
+ # a user has been authenticated, you call `AssumeRole` (and specify the
279
+ # role with the appropriate permissions) to get temporary security
280
+ # credentials for that user. With those temporary security credentials,
281
+ # you construct a sign-in URL from which users can access the console.
282
+ # For more information, see [Common Scenarios for Temporary
283
+ # Credentials][4] in the *IAM User Guide*.
285
284
  #
286
285
  # By default, the temporary security credentials created by `AssumeRole`
287
286
  # last for one hour. However, you can use the optional `DurationSeconds`
@@ -291,30 +290,26 @@ module Aws::STS
291
290
  # hours. To learn how to view the maximum value for your role, see [View
292
291
  # the Maximum Session Duration Setting for a Role][5] in the *IAM User
293
292
  # Guide*. The maximum session duration limit applies when you use the
294
- # `AssumeRole*` API operations or the `assume-role*` CLI operations but
295
- # does not apply when you use those operations to create a console URL.
296
- # For more information, see [Using IAM Roles][6] in the *IAM User
297
- # Guide*.
293
+ # `AssumeRole*` API operations or the `assume-role*` CLI commands.
294
+ # However the limit does not apply when you use those operations to
295
+ # create a console URL. For more information, see [Using IAM Roles][6]
296
+ # in the *IAM User Guide*.
298
297
  #
299
298
  # The temporary security credentials created by `AssumeRole` can be used
300
- # to make API calls to any AWS service with the following exception: you
301
- # cannot call the STS service's `GetFederationToken` or
302
- # `GetSessionToken` APIs.
303
- #
304
- # Optionally, you can pass an IAM access policy to this operation. If
305
- # you choose not to pass a policy, the temporary security credentials
306
- # that are returned by the operation have the permissions that are
307
- # defined in the access policy of the role that is being assumed. If you
308
- # pass a policy to this operation, the temporary security credentials
309
- # that are returned by the operation have the permissions that are
310
- # allowed by both the access policy of the role that is being assumed,
311
- # <i> <b>and</b> </i> the policy that you pass. This gives you a way to
312
- # further restrict the permissions for the resulting temporary security
313
- # credentials. You cannot use the passed policy to grant permissions
314
- # that are in excess of those allowed by the access policy of the role
315
- # that is being assumed. For more information, see [Permissions for
316
- # AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity][7] in
317
- # the *IAM User Guide*.
299
+ # to make API calls to any AWS service with the following exception: You
300
+ # cannot call the AWS STS service's `GetFederationToken` or
301
+ # `GetSessionToken` API operations.
302
+ #
303
+ # (Optional) You can pass an IAM permissions policy to this operation.
304
+ # If you pass a policy to this operation, the resulting temporary
305
+ # credentials have the permissions of the assumed role *and* the policy
306
+ # that you pass. This gives you a way to further restrict the
307
+ # permissions for the resulting temporary security credentials. You
308
+ # cannot use the passed policy to grant permissions that are in excess
309
+ # of those allowed by the permissions policy of the role that is being
310
+ # assumed. For more information, see [ Permissions for AssumeRole,
311
+ # AssumeRoleWithSAML, and AssumeRoleWithWebIdentity ][7] in the *IAM
312
+ # User Guide*.
318
313
  #
319
314
  # To assume a role, your AWS account must be trusted by the role. The
320
315
  # trust relationship is defined in the role's trust policy when the
@@ -322,27 +317,31 @@ module Aws::STS
322
317
  # to delegate access to this account's role.
323
318
  #
324
319
  # The user who wants to access the role must also have permissions
325
- # delegated from the role's administrator. If the user is in a
326
- # different account than the role, then the user's administrator must
327
- # attach a policy that allows the user to call AssumeRole on the ARN of
328
- # the role in the other account. If the user is in the same account as
329
- # the role, then you can either attach a policy to the user (identical
330
- # to the previous different account user), or you can add the user as a
331
- # principal directly in the role's trust policy. In this case, the
332
- # trust policy acts as the only resource-based policy in IAM, and users
333
- # in the same account as the role do not need explicit permission to
334
- # assume the role. For more information about trust policies and
335
- # resource-based policies, see [IAM Policies][8] in the *IAM User
336
- # Guide*.
320
+ # delegated from the role's administrator. If the user and the role are
321
+ # in a different account, then the user's administrator must attach a
322
+ # policy. That attached policy must allow the user to call `AssumeRole`
323
+ # for the ARN of the role in the other account. If the user is in the
324
+ # same account as the role, then you can do either of the following:
325
+ #
326
+ # * Attach a policy to the user (identical to the previous user in a
327
+ # different account)
328
+ #
329
+ # * Add the user as a principal directly in the role's trust policy.
330
+ #
331
+ # In this case, the trust policy acts as the only resource-based policy
332
+ # in IAM. Users in the same account as the role do not need explicit
333
+ # permission to assume the role. For more information about trust
334
+ # policies and resource-based policies, see [IAM Policies][8] in the
335
+ # *IAM User Guide*.
337
336
  #
338
337
  # **Using MFA with AssumeRole**
339
338
  #
340
- # You can optionally include multi-factor authentication (MFA)
339
+ # (Optional) You can include multi-factor authentication (MFA)
341
340
  # information when you call `AssumeRole`. This is useful for
342
341
  # cross-account scenarios in which you want to make sure that the user
343
342
  # who is assuming the role has been authenticated using an AWS MFA
344
343
  # device. In that scenario, the trust policy of the role being assumed
345
- # includes a condition that tests for MFA authentication; if the caller
344
+ # includes a condition that tests for MFA authentication. If the caller
346
345
  # does not include valid MFA information, the request to assume the role
347
346
  # is denied. The condition in a trust policy that tests for MFA
348
347
  # authentication might look like the following example.
@@ -355,19 +354,19 @@ module Aws::STS
355
354
  # To use MFA with `AssumeRole`, you pass values for the `SerialNumber`
356
355
  # and `TokenCode` parameters. The `SerialNumber` value identifies the
357
356
  # user's hardware or virtual MFA device. The `TokenCode` is the
358
- # time-based one-time password (TOTP) that the MFA devices produces.
357
+ # time-based one-time password (TOTP) that the MFA device produces.
359
358
  #
360
359
  #
361
360
  #
362
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
363
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
364
- # [3]: http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
365
- # [4]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html#sts-introduction
366
- # [5]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
367
- # [6]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
368
- # [7]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
369
- # [8]: http://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html
370
- # [9]: http://docs.aws.amazon.com/IAM/latest/UserGuide/MFAProtectedAPI.html
361
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
362
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
363
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
364
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html#sts-introduction
365
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
366
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
367
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
368
+ # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html
369
+ # [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/MFAProtectedAPI.html
371
370
  #
372
371
  # @option params [required, String] :role_arn
373
372
  # The Amazon Resource Name (ARN) of the role to assume.
@@ -380,9 +379,9 @@ module Aws::STS
380
379
  # cross-account scenarios, the role session name is visible to, and can
381
380
  # be logged by the account that owns the role. The role session name is
382
381
  # also used in the ARN of the assumed role principal. This means that
383
- # subsequent cross-account API requests using the temporary security
382
+ # subsequent cross-account API requests that use the temporary security
384
383
  # credentials will expose the role session name to the external account
385
- # in their CloudTrail logs.
384
+ # in their AWS CloudTrail logs.
386
385
  #
387
386
  # The regex used to validate this parameter is a string of characters
388
387
  # consisting of upper- and lower-case alphanumeric characters with no
@@ -392,16 +391,15 @@ module Aws::STS
392
391
  # @option params [String] :policy
393
392
  # An IAM policy in JSON format.
394
393
  #
395
- # This parameter is optional. If you pass a policy, the temporary
396
- # security credentials that are returned by the operation have the
397
- # permissions that are allowed by both (the intersection of) the access
398
- # policy of the role that is being assumed, *and* the policy that you
399
- # pass. This gives you a way to further restrict the permissions for the
400
- # resulting temporary security credentials. You cannot use the passed
401
- # policy to grant permissions that are in excess of those allowed by the
402
- # access policy of the role that is being assumed. For more information,
403
- # see [Permissions for AssumeRole, AssumeRoleWithSAML, and
404
- # AssumeRoleWithWebIdentity][1] in the *IAM User Guide*.
394
+ # This parameter is optional. If you pass a policy to this operation,
395
+ # the resulting temporary credentials have the permissions of the
396
+ # assumed role *and* the policy that you pass. This gives you a way to
397
+ # further restrict the permissions for the resulting temporary security
398
+ # credentials. You cannot use the passed policy to grant permissions
399
+ # that are in excess of those allowed by the permissions policy of the
400
+ # role that is being assumed. For more information, see [ Permissions
401
+ # for AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity ][1]
402
+ # in the *IAM User Guide*.
405
403
  #
406
404
  # The format for this parameter, as described by its regex pattern, is a
407
405
  # string of characters up to 2048 characters in length. The characters
@@ -410,17 +408,17 @@ module Aws::STS
410
408
  # (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
411
409
  # characters.
412
410
  #
413
- # <note markdown="1"> The policy plain text must be 2048 bytes or shorter. However, an
411
+ # <note markdown="1"> The policy plaintext must be 2048 bytes or shorter. However, an
414
412
  # internal conversion compresses it into a packed binary format with a
415
- # separate limit. The PackedPolicySize response element indicates by
416
- # percentage how close to the upper size limit the policy is, with 100%
417
- # equaling the maximum allowed size.
413
+ # separate limit. The `PackedPolicySize` response element indicates by
414
+ # percentage how close to the upper size limit the policy is, where 100
415
+ # percent is the maximum allowed size.
418
416
  #
419
417
  # </note>
420
418
  #
421
419
  #
422
420
  #
423
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
421
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
424
422
  #
425
423
  # @option params [Integer] :duration_seconds
426
424
  # The duration, in seconds, of the role session. The value can range
@@ -433,7 +431,7 @@ module Aws::STS
433
431
  # see [View the Maximum Session Duration Setting for a Role][1] in the
434
432
  # *IAM User Guide*.
435
433
  #
436
- # By default, the value is set to 3600 seconds.
434
+ # By default, the value is set to `3600` seconds.
437
435
  #
438
436
  # <note markdown="1"> The `DurationSeconds` parameter is separate from the duration of a
439
437
  # console session that you might request using the returned credentials.
@@ -447,29 +445,30 @@ module Aws::STS
447
445
  #
448
446
  #
449
447
  #
450
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
451
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
448
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
449
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
452
450
  #
453
451
  # @option params [String] :external_id
454
- # A unique identifier that is used by third parties when assuming roles
455
- # in their customers' accounts. For each role that the third party can
456
- # assume, they should instruct their customers to ensure the role's
457
- # trust policy checks for the external ID that the third party
458
- # generated. Each time the third party assumes the role, they should
459
- # pass the customer's external ID. The external ID is useful in order
460
- # to help third parties bind a role to the customer who created it. For
461
- # more information about the external ID, see [How to Use an External ID
462
- # When Granting Access to Your AWS Resources to a Third Party][1] in the
463
- # *IAM User Guide*.
452
+ # A unique identifier that might be required when you assume a role in
453
+ # another account. If the administrator of the account to which the role
454
+ # belongs provided you with an external ID, then provide that value in
455
+ # the `ExternalId` parameter. This value can be any string, such as a
456
+ # passphrase or account number. Because a cross-account role is usually
457
+ # set up to trust everyone in an account, the administrator of the
458
+ # trusting account might send an external ID to the administrator of the
459
+ # trusted account. That way, only someone with the ID can assume the
460
+ # role, rather than everyone in the account. For more information about
461
+ # the external ID, see [How to Use an External ID When Granting Access
462
+ # to Your AWS Resources to a Third Party][1] in the *IAM User Guide*.
464
463
  #
465
- # The regex used to validated this parameter is a string of characters
464
+ # The regex used to validate this parameter is a string of characters
466
465
  # consisting of upper- and lower-case alphanumeric characters with no
467
466
  # spaces. You can also include underscores or any of the following
468
467
  # characters: =,.@:/-
469
468
  #
470
469
  #
471
470
  #
472
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html
471
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html
473
472
  #
474
473
  # @option params [String] :serial_number
475
474
  # The identification number of the MFA device that is associated with
@@ -563,9 +562,9 @@ module Aws::STS
563
562
  # provides a mechanism for tying an enterprise identity store or
564
563
  # directory to role-based AWS access without user-specific credentials
565
564
  # or configuration. For a comparison of `AssumeRoleWithSAML` with the
566
- # other APIs that produce temporary credentials, see [Requesting
567
- # Temporary Security Credentials][1] and [Comparing the AWS STS APIs][2]
568
- # in the *IAM User Guide*.
565
+ # other API operations that produce temporary credentials, see
566
+ # [Requesting Temporary Security Credentials][1] and [Comparing the AWS
567
+ # STS API operations][2] in the *IAM User Guide*.
569
568
  #
570
569
  # The temporary security credentials returned by this operation consist
571
570
  # of an access key ID, a secret access key, and a security token.
@@ -584,37 +583,32 @@ module Aws::STS
584
583
  # for your role, see [View the Maximum Session Duration Setting for a
585
584
  # Role][3] in the *IAM User Guide*. The maximum session duration limit
586
585
  # applies when you use the `AssumeRole*` API operations or the
587
- # `assume-role*` CLI operations but does not apply when you use those
588
- # operations to create a console URL. For more information, see [Using
589
- # IAM Roles][4] in the *IAM User Guide*.
586
+ # `assume-role*` CLI commands. However the limit does not apply when you
587
+ # use those operations to create a console URL. For more information,
588
+ # see [Using IAM Roles][4] in the *IAM User Guide*.
590
589
  #
591
590
  # The temporary security credentials created by `AssumeRoleWithSAML` can
592
591
  # be used to make API calls to any AWS service with the following
593
592
  # exception: you cannot call the STS service's `GetFederationToken` or
594
- # `GetSessionToken` APIs.
595
- #
596
- # Optionally, you can pass an IAM access policy to this operation. If
597
- # you choose not to pass a policy, the temporary security credentials
598
- # that are returned by the operation have the permissions that are
599
- # defined in the access policy of the role that is being assumed. If you
600
- # pass a policy to this operation, the temporary security credentials
601
- # that are returned by the operation have the permissions that are
602
- # allowed by the intersection of both the access policy of the role that
603
- # is being assumed, <i> <b>and</b> </i> the policy that you pass. This
604
- # means that both policies must grant the permission for the action to
605
- # be allowed. This gives you a way to further restrict the permissions
606
- # for the resulting temporary security credentials. You cannot use the
607
- # passed policy to grant permissions that are in excess of those allowed
608
- # by the access policy of the role that is being assumed. For more
609
- # information, see [Permissions for AssumeRole, AssumeRoleWithSAML, and
610
- # AssumeRoleWithWebIdentity][5] in the *IAM User Guide*.
593
+ # `GetSessionToken` API operations.
594
+ #
595
+ # Optionally, you can pass an IAM permissions policy to this operation.
596
+ # If you pass a policy to this operation, the resulting temporary
597
+ # credentials have the permissions of the assumed role *and* the policy
598
+ # that you pass. This gives you a way to further restrict the
599
+ # permissions for the resulting temporary security credentials. You
600
+ # cannot use the passed policy to grant permissions that are in excess
601
+ # of those allowed by the permissions policy of the role that is being
602
+ # assumed. For more information, see [ Permissions for AssumeRole,
603
+ # AssumeRoleWithSAML, and AssumeRoleWithWebIdentity ][5] in the *IAM
604
+ # User Guide*.
611
605
  #
612
606
  # Before your application can call `AssumeRoleWithSAML`, you must
613
607
  # configure your SAML identity provider (IdP) to issue the claims
614
608
  # required by AWS. Additionally, you must use AWS Identity and Access
615
609
  # Management (IAM) to create a SAML provider entity in your AWS account
616
- # that represents your identity provider, and create an IAM role that
617
- # specifies this SAML provider in its trust policy.
610
+ # that represents your identity provider. You must also create an IAM
611
+ # role that specifies this SAML provider in its trust policy.
618
612
  #
619
613
  # Calling `AssumeRoleWithSAML` does not require the use of AWS security
620
614
  # credentials. The identity of the caller is validated by using keys in
@@ -641,15 +635,15 @@ module Aws::STS
641
635
  #
642
636
  #
643
637
  #
644
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
645
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
646
- # [3]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
647
- # [4]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
648
- # [5]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
649
- # [6]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html
650
- # [7]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html
651
- # [8]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html
652
- # [9]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html
638
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
639
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
640
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
641
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
642
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
643
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html
644
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html
645
+ # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html
646
+ # [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html
653
647
  #
654
648
  # @option params [required, String] :role_arn
655
649
  # The Amazon Resource Name (ARN) of the role that the caller is
@@ -663,25 +657,24 @@ module Aws::STS
663
657
  # The base-64 encoded SAML authentication response provided by the IdP.
664
658
  #
665
659
  # For more information, see [Configuring a Relying Party and Adding
666
- # Claims][1] in the *Using IAM* guide.
660
+ # Claims][1] in the *IAM User Guide*.
667
661
  #
668
662
  #
669
663
  #
670
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html
664
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html
671
665
  #
672
666
  # @option params [String] :policy
673
667
  # An IAM policy in JSON format.
674
668
  #
675
- # The policy parameter is optional. If you pass a policy, the temporary
676
- # security credentials that are returned by the operation have the
677
- # permissions that are allowed by both the access policy of the role
678
- # that is being assumed, <i> <b>and</b> </i> the policy that you pass.
679
- # This gives you a way to further restrict the permissions for the
680
- # resulting temporary security credentials. You cannot use the passed
681
- # policy to grant permissions that are in excess of those allowed by the
682
- # access policy of the role that is being assumed. For more information,
683
- # [Permissions for AssumeRole, AssumeRoleWithSAML, and
684
- # AssumeRoleWithWebIdentity][1] in the *IAM User Guide*.
669
+ # The policy parameter is optional. If you pass a policy to this
670
+ # operation, the resulting temporary credentials have the permissions of
671
+ # the assumed role *and* the policy that you pass. This gives you a way
672
+ # to further restrict the permissions for the resulting temporary
673
+ # security credentials. You cannot use the passed policy to grant
674
+ # permissions that are in excess of those allowed by the permissions
675
+ # policy of the role that is being assumed. For more information, see [
676
+ # Permissions for AssumeRole, AssumeRoleWithSAML, and
677
+ # AssumeRoleWithWebIdentity ][1] in the *IAM User Guide*.
685
678
  #
686
679
  # The format for this parameter, as described by its regex pattern, is a
687
680
  # string of characters up to 2048 characters in length. The characters
@@ -690,17 +683,17 @@ module Aws::STS
690
683
  # (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
691
684
  # characters.
692
685
  #
693
- # <note markdown="1"> The policy plain text must be 2048 bytes or shorter. However, an
686
+ # <note markdown="1"> The policy plaintext must be 2048 bytes or shorter. However, an
694
687
  # internal conversion compresses it into a packed binary format with a
695
- # separate limit. The PackedPolicySize response element indicates by
696
- # percentage how close to the upper size limit the policy is, with 100%
697
- # equaling the maximum allowed size.
688
+ # separate limit. The `PackedPolicySize` response element indicates by
689
+ # percentage how close to the upper size limit the policy is, where 100
690
+ # percent is the maximum allowed size.
698
691
  #
699
692
  # </note>
700
693
  #
701
694
  #
702
695
  #
703
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
696
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
704
697
  #
705
698
  # @option params [Integer] :duration_seconds
706
699
  # The duration, in seconds, of the role session. Your role session lasts
@@ -716,7 +709,7 @@ module Aws::STS
716
709
  # maximum value for your role, see [View the Maximum Session Duration
717
710
  # Setting for a Role][1] in the *IAM User Guide*.
718
711
  #
719
- # By default, the value is set to 3600 seconds.
712
+ # By default, the value is set to `3600` seconds.
720
713
  #
721
714
  # <note markdown="1"> The `DurationSeconds` parameter is separate from the duration of a
722
715
  # console session that you might request using the returned credentials.
@@ -730,8 +723,8 @@ module Aws::STS
730
723
  #
731
724
  #
732
725
  #
733
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
734
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
726
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
727
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
735
728
  #
736
729
  # @return [Types::AssumeRoleWithSAMLResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
737
730
  #
@@ -780,13 +773,14 @@ module Aws::STS
780
773
 
781
774
  # Returns a set of temporary security credentials for users who have
782
775
  # been authenticated in a mobile or web application with a web identity
783
- # provider, such as Amazon Cognito, Login with Amazon, Facebook, Google,
784
- # or any OpenID Connect-compatible identity provider.
776
+ # provider. Example providers include Amazon Cognito, Login with Amazon,
777
+ # Facebook, Google, or any OpenID Connect-compatible identity provider.
785
778
  #
786
779
  # <note markdown="1"> For mobile applications, we recommend that you use Amazon Cognito. You
787
- # can use Amazon Cognito with the [AWS SDK for iOS][1] and the [AWS SDK
788
- # for Android][2] to uniquely identify a user and supply the user with a
789
- # consistent identity throughout the lifetime of an application.
780
+ # can use Amazon Cognito with the [AWS SDK for iOS Developer Guide][1]
781
+ # and the [AWS SDK for Android Developer Guide][2] to uniquely identify
782
+ # a user. You can also supply the user with a consistent identity
783
+ # throughout the lifetime of an application.
790
784
  #
791
785
  # To learn more about Amazon Cognito, see [Amazon Cognito Overview][3]
792
786
  # in the *AWS SDK for Android Developer Guide* guide and [Amazon Cognito
@@ -798,18 +792,18 @@ module Aws::STS
798
792
  # security credentials. Therefore, you can distribute an application
799
793
  # (for example, on mobile devices) that requests temporary security
800
794
  # credentials without including long-term AWS credentials in the
801
- # application, and without deploying server-based proxy services that
802
- # use long-term AWS credentials. Instead, the identity of the caller is
803
- # validated by using a token from the web identity provider. For a
804
- # comparison of `AssumeRoleWithWebIdentity` with the other APIs that
805
- # produce temporary credentials, see [Requesting Temporary Security
806
- # Credentials][5] and [Comparing the AWS STS APIs][6] in the *IAM User
807
- # Guide*.
795
+ # application. You also don't need to deploy server-based proxy
796
+ # services that use long-term AWS credentials. Instead, the identity of
797
+ # the caller is validated by using a token from the web identity
798
+ # provider. For a comparison of `AssumeRoleWithWebIdentity` with the
799
+ # other API operations that produce temporary credentials, see
800
+ # [Requesting Temporary Security Credentials][5] and [Comparing the AWS
801
+ # STS API operations][6] in the *IAM User Guide*.
808
802
  #
809
803
  # The temporary security credentials returned by this API consist of an
810
804
  # access key ID, a secret access key, and a security token. Applications
811
805
  # can use these temporary security credentials to sign calls to AWS
812
- # service APIs.
806
+ # service API operations.
813
807
  #
814
808
  # By default, the temporary security credentials created by
815
809
  # `AssumeRoleWithWebIdentity` last for one hour. However, you can use
@@ -820,29 +814,25 @@ module Aws::STS
820
814
  # value for your role, see [View the Maximum Session Duration Setting
821
815
  # for a Role][7] in the *IAM User Guide*. The maximum session duration
822
816
  # limit applies when you use the `AssumeRole*` API operations or the
823
- # `assume-role*` CLI operations but does not apply when you use those
824
- # operations to create a console URL. For more information, see [Using
825
- # IAM Roles][8] in the *IAM User Guide*.
817
+ # `assume-role*` CLI commands. However the limit does not apply when you
818
+ # use those operations to create a console URL. For more information,
819
+ # see [Using IAM Roles][8] in the *IAM User Guide*.
826
820
  #
827
821
  # The temporary security credentials created by
828
822
  # `AssumeRoleWithWebIdentity` can be used to make API calls to any AWS
829
823
  # service with the following exception: you cannot call the STS
830
- # service's `GetFederationToken` or `GetSessionToken` APIs.
831
- #
832
- # Optionally, you can pass an IAM access policy to this operation. If
833
- # you choose not to pass a policy, the temporary security credentials
834
- # that are returned by the operation have the permissions that are
835
- # defined in the access policy of the role that is being assumed. If you
836
- # pass a policy to this operation, the temporary security credentials
837
- # that are returned by the operation have the permissions that are
838
- # allowed by both the access policy of the role that is being assumed,
839
- # <i> <b>and</b> </i> the policy that you pass. This gives you a way to
840
- # further restrict the permissions for the resulting temporary security
841
- # credentials. You cannot use the passed policy to grant permissions
842
- # that are in excess of those allowed by the access policy of the role
843
- # that is being assumed. For more information, see [Permissions for
844
- # AssumeRole, AssumeRoleWithSAML, and AssumeRoleWithWebIdentity][9] in
845
- # the *IAM User Guide*.
824
+ # service's `GetFederationToken` or `GetSessionToken` API operations.
825
+ #
826
+ # (Optional) You can pass an IAM permissions policy to this operation.
827
+ # If you pass a policy to this operation, the resulting temporary
828
+ # credentials have the permissions of the assumed role *and* the policy
829
+ # that you pass. This gives you a way to further restrict the
830
+ # permissions for the resulting temporary security credentials. You
831
+ # cannot use the passed policy to grant permissions that are in excess
832
+ # of those allowed by the permissions policy of the role that is being
833
+ # assumed. For more information, see [ Permissions for AssumeRole,
834
+ # AssumeRoleWithSAML, and AssumeRoleWithWebIdentity ][9] in the *IAM
835
+ # User Guide*.
846
836
  #
847
837
  # Before your application can call `AssumeRoleWithWebIdentity`, you must
848
838
  # have an identity token from a supported identity provider and create a
@@ -861,18 +851,19 @@ module Aws::STS
861
851
  # For more information about how to use web identity federation and the
862
852
  # `AssumeRoleWithWebIdentity` API, see the following resources:
863
853
  #
864
- # * [Using Web Identity Federation APIs for Mobile Apps][12] and
865
- # [Federation Through a Web-based Identity Provider][13].
854
+ # * [Using Web Identity Federation API Operations for Mobile Apps][12]
855
+ # and [Federation Through a Web-based Identity Provider][13].
866
856
  #
867
- # * [ Web Identity Federation Playground][14]. This interactive website
868
- # lets you walk through the process of authenticating via Login with
869
- # Amazon, Facebook, or Google, getting temporary security credentials,
870
- # and then using those credentials to make a request to AWS.
857
+ # * [ Web Identity Federation Playground][14]. Walk through the process
858
+ # of authenticating through Login with Amazon, Facebook, or Google,
859
+ # getting temporary security credentials, and then using those
860
+ # credentials to make a request to AWS.
871
861
  #
872
- # * [AWS SDK for iOS][1] and [AWS SDK for Android][2]. These toolkits
873
- # contain sample apps that show how to invoke the identity providers,
874
- # and then how to use the information from these providers to get and
875
- # use temporary security credentials.
862
+ # * [AWS SDK for iOS Developer Guide][1] and [AWS SDK for Android
863
+ # Developer Guide][2]. These toolkits contain sample apps that show
864
+ # how to invoke the identity providers, and then how to use the
865
+ # information from these providers to get and use temporary security
866
+ # credentials.
876
867
  #
877
868
  # * [Web Identity Federation with Mobile Applications][15]. This article
878
869
  # discusses web identity federation and shows an example of how to use
@@ -882,17 +873,17 @@ module Aws::STS
882
873
  #
883
874
  # [1]: http://aws.amazon.com/sdkforios/
884
875
  # [2]: http://aws.amazon.com/sdkforandroid/
885
- # [3]: http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-auth.html#d0e840
886
- # [4]: http://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-auth.html#d0e664
887
- # [5]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
888
- # [6]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
889
- # [7]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
890
- # [8]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
891
- # [9]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
876
+ # [3]: https://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-auth.html#d0e840
877
+ # [4]: https://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-auth.html#d0e664
878
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
879
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
880
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
881
+ # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
882
+ # [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
892
883
  # [10]: http://openid.net/specs/openid-connect-core-1_0.html#Claims
893
884
  # [11]: http://openid.net/specs/openid-connect-core-1_0.html#SubjectIDTypes
894
- # [12]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_manual.html
895
- # [13]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
885
+ # [12]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_manual.html
886
+ # [13]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
896
887
  # [14]: https://web-identity-federation-playground.s3.amazonaws.com/index.html
897
888
  # [15]: http://aws.amazon.com/articles/web-identity-federation-with-mobile-applications
898
889
  #
@@ -934,16 +925,15 @@ module Aws::STS
934
925
  # @option params [String] :policy
935
926
  # An IAM policy in JSON format.
936
927
  #
937
- # The policy parameter is optional. If you pass a policy, the temporary
938
- # security credentials that are returned by the operation have the
939
- # permissions that are allowed by both the access policy of the role
940
- # that is being assumed, <i> <b>and</b> </i> the policy that you pass.
941
- # This gives you a way to further restrict the permissions for the
942
- # resulting temporary security credentials. You cannot use the passed
943
- # policy to grant permissions that are in excess of those allowed by the
944
- # access policy of the role that is being assumed. For more information,
945
- # see [Permissions for AssumeRoleWithWebIdentity][1] in the *IAM User
946
- # Guide*.
928
+ # The policy parameter is optional. If you pass a policy to this
929
+ # operation, the resulting temporary credentials have the permissions of
930
+ # the assumed role *and* the policy that you pass. This gives you a way
931
+ # to further restrict the permissions for the resulting temporary
932
+ # security credentials. You cannot use the passed policy to grant
933
+ # permissions that are in excess of those allowed by the permissions
934
+ # policy of the role that is being assumed. For more information, see [
935
+ # Permissions for AssumeRole, AssumeRoleWithSAML, and
936
+ # AssumeRoleWithWebIdentity ][1] in the *IAM User Guide*.
947
937
  #
948
938
  # The format for this parameter, as described by its regex pattern, is a
949
939
  # string of characters up to 2048 characters in length. The characters
@@ -952,17 +942,17 @@ module Aws::STS
952
942
  # (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
953
943
  # characters.
954
944
  #
955
- # <note markdown="1"> The policy plain text must be 2048 bytes or shorter. However, an
945
+ # <note markdown="1"> The policy plaintext must be 2048 bytes or shorter. However, an
956
946
  # internal conversion compresses it into a packed binary format with a
957
- # separate limit. The PackedPolicySize response element indicates by
958
- # percentage how close to the upper size limit the policy is, with 100%
959
- # equaling the maximum allowed size.
947
+ # separate limit. The `PackedPolicySize` response element indicates by
948
+ # percentage how close to the upper size limit the policy is, where 100
949
+ # percent is the maximum allowed size.
960
950
  #
961
951
  # </note>
962
952
  #
963
953
  #
964
954
  #
965
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
955
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_assumerole.html
966
956
  #
967
957
  # @option params [Integer] :duration_seconds
968
958
  # The duration, in seconds, of the role session. The value can range
@@ -975,7 +965,7 @@ module Aws::STS
975
965
  # see [View the Maximum Session Duration Setting for a Role][1] in the
976
966
  # *IAM User Guide*.
977
967
  #
978
- # By default, the value is set to 3600 seconds.
968
+ # By default, the value is set to `3600` seconds.
979
969
  #
980
970
  # <note markdown="1"> The `DurationSeconds` parameter is separate from the duration of a
981
971
  # console session that you might request using the returned credentials.
@@ -989,8 +979,8 @@ module Aws::STS
989
979
  #
990
980
  #
991
981
  #
992
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
993
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
982
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session
983
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-custom-url.html
994
984
  #
995
985
  # @return [Types::AssumeRoleWithWebIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
996
986
  #
@@ -1067,21 +1057,22 @@ module Aws::STS
1067
1057
  # request from an encoded message returned in response to an AWS
1068
1058
  # request.
1069
1059
  #
1070
- # For example, if a user is not authorized to perform an action that he
1071
- # or she has requested, the request returns a
1060
+ # For example, if a user is not authorized to perform an operation that
1061
+ # he or she has requested, the request returns a
1072
1062
  # `Client.UnauthorizedOperation` response (an HTTP 403 response). Some
1073
- # AWS actions additionally return an encoded message that can provide
1063
+ # AWS operations additionally return an encoded message that can provide
1074
1064
  # details about this authorization failure.
1075
1065
  #
1076
- # <note markdown="1"> Only certain AWS actions return an encoded authorization message. The
1077
- # documentation for an individual action indicates whether that action
1078
- # returns an encoded message in addition to returning an HTTP code.
1066
+ # <note markdown="1"> Only certain AWS operations return an encoded authorization message.
1067
+ # The documentation for an individual operation indicates whether that
1068
+ # operation returns an encoded message in addition to returning an HTTP
1069
+ # code.
1079
1070
  #
1080
1071
  # </note>
1081
1072
  #
1082
1073
  # The message is encoded because the details of the authorization status
1083
1074
  # can constitute privileged information that the user who requested the
1084
- # action should not see. To decode an authorization status message, a
1075
+ # operation should not see. To decode an authorization status message, a
1085
1076
  # user must be granted permissions via an IAM policy to request the
1086
1077
  # `DecodeAuthorizationMessage` (`sts:DecodeAuthorizationMessage`)
1087
1078
  # action.
@@ -1102,7 +1093,7 @@ module Aws::STS
1102
1093
  #
1103
1094
  #
1104
1095
  #
1105
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow
1096
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-denyallow
1106
1097
  #
1107
1098
  # @option params [required, String] :encoded_message
1108
1099
  # The encoded message that was returned with the response.
@@ -1216,97 +1207,70 @@ module Aws::STS
1216
1207
  # access key ID, a secret access key, and a security token) for a
1217
1208
  # federated user. A typical use is in a proxy application that gets
1218
1209
  # temporary security credentials on behalf of distributed applications
1219
- # inside a corporate network. Because you must call the
1220
- # `GetFederationToken` action using the long-term security credentials
1221
- # of an IAM user, this call is appropriate in contexts where those
1222
- # credentials can be safely stored, usually in a server-based
1223
- # application. For a comparison of `GetFederationToken` with the other
1224
- # APIs that produce temporary credentials, see [Requesting Temporary
1225
- # Security Credentials][1] and [Comparing the AWS STS APIs][2] in the
1210
+ # inside a corporate network. You must call the `GetFederationToken`
1211
+ # operation using the long-term security credentials of an IAM user. As
1212
+ # a result, this call is appropriate in contexts where those credentials
1213
+ # can be safely stored, usually in a server-based application. For a
1214
+ # comparison of `GetFederationToken` with the other API operations that
1215
+ # produce temporary credentials, see [Requesting Temporary Security
1216
+ # Credentials][1] and [Comparing the AWS STS API operations][2] in the
1226
1217
  # *IAM User Guide*.
1227
1218
  #
1228
- # <note markdown="1"> If you are creating a mobile-based or browser-based app that can
1219
+ # <note markdown="1"> You can create a mobile-based or browser-based app that can
1229
1220
  # authenticate users using a web identity provider like Login with
1230
1221
  # Amazon, Facebook, Google, or an OpenID Connect-compatible identity
1231
- # provider, we recommend that you use [Amazon Cognito][3] or
1232
- # `AssumeRoleWithWebIdentity`. For more information, see [Federation
1222
+ # provider. In this case, we recommend that you use [Amazon Cognito][3]
1223
+ # or `AssumeRoleWithWebIdentity`. For more information, see [Federation
1233
1224
  # Through a Web-based Identity Provider][4].
1234
1225
  #
1235
1226
  # </note>
1236
1227
  #
1237
- # The `GetFederationToken` action must be called by using the long-term
1238
- # AWS security credentials of an IAM user. You can also call
1239
- # `GetFederationToken` using the security credentials of an AWS root
1240
- # account, but we do not recommended it. Instead, we recommend that you
1241
- # create an IAM user for the purpose of the proxy application and then
1242
- # attach a policy to the IAM user that limits federated users to only
1243
- # the actions and resources that they need access to. For more
1244
- # information, see [IAM Best Practices][5] in the *IAM User Guide*.
1245
- #
1246
- # The temporary security credentials that are obtained by using the
1247
- # long-term credentials of an IAM user are valid for the specified
1248
- # duration, from 900 seconds (15 minutes) up to a maximium of 129600
1249
- # seconds (36 hours). The default is 43200 seconds (12 hours). Temporary
1250
- # credentials that are obtained by using AWS root account credentials
1251
- # have a maximum duration of 3600 seconds (1 hour).
1228
+ # You can also call `GetFederationToken` using the security credentials
1229
+ # of an AWS account root user, but we do not recommend it. Instead, we
1230
+ # recommend that you create an IAM user for the purpose of the proxy
1231
+ # application. Then attach a policy to the IAM user that limits
1232
+ # federated users to only the actions and resources that they need to
1233
+ # access. For more information, see [IAM Best Practices][5] in the *IAM
1234
+ # User Guide*.
1235
+ #
1236
+ # The temporary credentials are valid for the specified duration, from
1237
+ # 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36
1238
+ # hours). The default is 43,200 seconds (12 hours). Temporary
1239
+ # credentials that are obtained by using AWS account root user
1240
+ # credentials have a maximum duration of 3,600 seconds (1 hour).
1252
1241
  #
1253
1242
  # The temporary security credentials created by `GetFederationToken` can
1254
1243
  # be used to make API calls to any AWS service with the following
1255
1244
  # exceptions:
1256
1245
  #
1257
- # * You cannot use these credentials to call any IAM APIs.
1246
+ # * You cannot use these credentials to call any IAM API operations.
1258
1247
  #
1259
- # * You cannot call any STS APIs except `GetCallerIdentity`.
1248
+ # * You cannot call any STS API operations except `GetCallerIdentity`.
1260
1249
  #
1261
1250
  # **Permissions**
1262
1251
  #
1263
- # The permissions for the temporary security credentials returned by
1264
- # `GetFederationToken` are determined by a combination of the following:
1265
- #
1266
- # * The policy or policies that are attached to the IAM user whose
1267
- # credentials are used to call `GetFederationToken`.
1268
- #
1269
- # * The policy that is passed as a parameter in the call.
1270
- #
1271
- # The passed policy is attached to the temporary security credentials
1272
- # that result from the `GetFederationToken` API call--that is, to the
1273
- # *federated user*. When the federated user makes an AWS request, AWS
1274
- # evaluates the policy attached to the federated user in combination
1275
- # with the policy or policies attached to the IAM user whose credentials
1276
- # were used to call `GetFederationToken`. AWS allows the federated
1277
- # user's request only when both the federated user <i> <b>and</b> </i>
1278
- # the IAM user are explicitly allowed to perform the requested action.
1279
- # The passed policy cannot grant more permissions than those that are
1280
- # defined in the IAM user policy.
1281
- #
1282
- # A typical use case is that the permissions of the IAM user whose
1283
- # credentials are used to call `GetFederationToken` are designed to
1284
- # allow access to all the actions and resources that any federated user
1285
- # will need. Then, for individual users, you pass a policy to the
1286
- # operation that scopes down the permissions to a level that's
1287
- # appropriate to that individual user, using a policy that allows only a
1288
- # subset of permissions that are granted to the IAM user.
1289
- #
1290
- # If you do not pass a policy, the resulting temporary security
1291
- # credentials have no effective permissions. The only exception is when
1292
- # the temporary security credentials are used to access a resource that
1293
- # has a resource-based policy that specifically allows the federated
1294
- # user to access the resource.
1295
- #
1296
- # For more information about how permissions work, see [Permissions for
1297
- # GetFederationToken][6]. For information about using
1252
+ # You must pass an IAM permissions policy to `GetFederationToken`. When
1253
+ # you pass a policy to this operation, the resulting temporary
1254
+ # credentials are defined by the intersection of your IAM user policies
1255
+ # and the passed policy . The passed policy defines the permissions of
1256
+ # the *federated user*. AWS allows the federated user's request only
1257
+ # when both the attached policy and the IAM user policy explicitly allow
1258
+ # the federated user to perform the requested action. The passed policy
1259
+ # cannot grant more permissions than those that are defined in the IAM
1260
+ # user policy. For more information about how permissions work, see
1261
+ # [Permissions for GetFederationToken][6]. For information about using
1298
1262
  # `GetFederationToken` to create temporary security credentials, see
1299
1263
  # [GetFederationToken—Federation Through a Custom Identity Broker][7].
1300
1264
  #
1301
1265
  #
1302
1266
  #
1303
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
1304
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
1267
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
1268
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
1305
1269
  # [3]: http://aws.amazon.com/cognito/
1306
- # [4]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
1307
- # [5]: http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
1308
- # [6]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html
1309
- # [7]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getfederationtoken
1270
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
1271
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
1272
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html
1273
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getfederationtoken
1310
1274
  #
1311
1275
  # @option params [required, String] :name
1312
1276
  # The name of the federated user. The name is used as an identifier for
@@ -1320,22 +1284,15 @@ module Aws::STS
1320
1284
  # characters: =,.@-
1321
1285
  #
1322
1286
  # @option params [String] :policy
1323
- # An IAM policy in JSON format that is passed with the
1324
- # `GetFederationToken` call and evaluated along with the policy or
1325
- # policies that are attached to the IAM user whose credentials are used
1326
- # to call `GetFederationToken`. The passed policy is used to scope down
1327
- # the permissions that are available to the IAM user, by allowing only a
1328
- # subset of the permissions that are granted to the IAM user. The passed
1329
- # policy cannot grant more permissions than those granted to the IAM
1330
- # user. The final permissions for the federated user are the most
1331
- # restrictive set based on the intersection of the passed policy and the
1332
- # IAM user policy.
1333
- #
1334
- # If you do not pass a policy, the resulting temporary security
1335
- # credentials have no effective permissions. The only exception is when
1336
- # the temporary security credentials are used to access a resource that
1337
- # has a resource-based policy that specifically allows the federated
1338
- # user to access the resource.
1287
+ # An IAM policy in JSON format. You must pass an IAM permissions policy
1288
+ # to `GetFederationToken`. When you pass a policy to this operation, the
1289
+ # resulting temporary credentials are defined by the intersection of
1290
+ # your IAM user policies and the policy that you pass. The passed policy
1291
+ # defines the permissions of the *federated user*. AWS allows the
1292
+ # federated user's request only when both the attached policy and the
1293
+ # IAM user policy explicitly allow the federated user to perform the
1294
+ # requested action. The passed policy cannot grant more permissions than
1295
+ # those that are defined in the IAM user policy.
1339
1296
  #
1340
1297
  # The format for this parameter, as described by its regex pattern, is a
1341
1298
  # string of characters up to 2048 characters in length. The characters
@@ -1344,11 +1301,11 @@ module Aws::STS
1344
1301
  # (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)
1345
1302
  # characters.
1346
1303
  #
1347
- # <note markdown="1"> The policy plain text must be 2048 bytes or shorter. However, an
1304
+ # <note markdown="1"> The policy plaintext must be 2048 bytes or shorter. However, an
1348
1305
  # internal conversion compresses it into a packed binary format with a
1349
- # separate limit. The PackedPolicySize response element indicates by
1350
- # percentage how close to the upper size limit the policy is, with 100%
1351
- # equaling the maximum allowed size.
1306
+ # separate limit. The `PackedPolicySize` response element indicates by
1307
+ # percentage how close to the upper size limit the policy is, where 100
1308
+ # percent is the maximum allowed size.
1352
1309
  #
1353
1310
  # </note>
1354
1311
  #
@@ -1357,16 +1314,16 @@ module Aws::STS
1357
1314
  #
1358
1315
  #
1359
1316
  #
1360
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html
1317
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_getfederationtoken.html
1361
1318
  #
1362
1319
  # @option params [Integer] :duration_seconds
1363
1320
  # The duration, in seconds, that the session should last. Acceptable
1364
1321
  # durations for federation sessions range from 900 seconds (15 minutes)
1365
- # to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the
1366
- # default. Sessions obtained using AWS account (root) credentials are
1367
- # restricted to a maximum of 3600 seconds (one hour). If the specified
1368
- # duration is longer than one hour, the session obtained by using AWS
1369
- # account (root) credentials defaults to one hour.
1322
+ # to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the
1323
+ # default. Sessions obtained using AWS account root user credentials are
1324
+ # restricted to a maximum of 3,600 seconds (one hour). If the specified
1325
+ # duration is longer than one hour, the session obtained by using root
1326
+ # user credentials defaults to one hour.
1370
1327
  #
1371
1328
  # @return [Types::GetFederationTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1372
1329
  #
@@ -1428,50 +1385,52 @@ module Aws::STS
1428
1385
  # Returns a set of temporary credentials for an AWS account or IAM user.
1429
1386
  # The credentials consist of an access key ID, a secret access key, and
1430
1387
  # a security token. Typically, you use `GetSessionToken` if you want to
1431
- # use MFA to protect programmatic calls to specific AWS APIs like Amazon
1432
- # EC2 `StopInstances`. MFA-enabled IAM users would need to call
1433
- # `GetSessionToken` and submit an MFA code that is associated with their
1434
- # MFA device. Using the temporary security credentials that are returned
1435
- # from the call, IAM users can then make programmatic calls to APIs that
1436
- # require MFA authentication. If you do not supply a correct MFA code,
1437
- # then the API returns an access denied error. For a comparison of
1438
- # `GetSessionToken` with the other APIs that produce temporary
1439
- # credentials, see [Requesting Temporary Security Credentials][1] and
1440
- # [Comparing the AWS STS APIs][2] in the *IAM User Guide*.
1441
- #
1442
- # The `GetSessionToken` action must be called by using the long-term AWS
1443
- # security credentials of the AWS account or an IAM user. Credentials
1444
- # that are created by IAM users are valid for the duration that you
1445
- # specify, from 900 seconds (15 minutes) up to a maximum of 129600
1446
- # seconds (36 hours), with a default of 43200 seconds (12 hours);
1447
- # credentials that are created by using account credentials can range
1448
- # from 900 seconds (15 minutes) up to a maximum of 3600 seconds (1
1449
- # hour), with a default of 1 hour.
1388
+ # use MFA to protect programmatic calls to specific AWS API operations
1389
+ # like Amazon EC2 `StopInstances`. MFA-enabled IAM users would need to
1390
+ # call `GetSessionToken` and submit an MFA code that is associated with
1391
+ # their MFA device. Using the temporary security credentials that are
1392
+ # returned from the call, IAM users can then make programmatic calls to
1393
+ # API operations that require MFA authentication. If you do not supply a
1394
+ # correct MFA code, then the API returns an access denied error. For a
1395
+ # comparison of `GetSessionToken` with the other API operations that
1396
+ # produce temporary credentials, see [Requesting Temporary Security
1397
+ # Credentials][1] and [Comparing the AWS STS API operations][2] in the
1398
+ # *IAM User Guide*.
1399
+ #
1400
+ # The `GetSessionToken` operation must be called by using the long-term
1401
+ # AWS security credentials of the AWS account or an IAM user.
1402
+ # Credentials that are created by IAM users are valid for the duration
1403
+ # that you specify. This duration can range from 900 seconds (15
1404
+ # minutes) up to a maximum of 129,600 seconds (36 hours), with a default
1405
+ # of 43,200 seconds (12 hours). Credentials that are created by using
1406
+ # account credentials can range from 900 seconds (15 minutes) up to a
1407
+ # maximum of 3,600 seconds (1 hour), with a default of 1 hour.
1450
1408
  #
1451
1409
  # The temporary security credentials created by `GetSessionToken` can be
1452
1410
  # used to make API calls to any AWS service with the following
1453
1411
  # exceptions:
1454
1412
  #
1455
- # * You cannot call any IAM APIs unless MFA authentication information
1456
- # is included in the request.
1413
+ # * You cannot call any IAM API operations unless MFA authentication
1414
+ # information is included in the request.
1457
1415
  #
1458
1416
  # * You cannot call any STS API *except* `AssumeRole` or
1459
1417
  # `GetCallerIdentity`.
1460
1418
  #
1461
- # <note markdown="1"> We recommend that you do not call `GetSessionToken` with root account
1462
- # credentials. Instead, follow our [best practices][3] by creating one
1463
- # or more IAM users, giving them the necessary permissions, and using
1464
- # IAM users for everyday interaction with AWS.
1419
+ # <note markdown="1"> We recommend that you do not call `GetSessionToken` with AWS account
1420
+ # root user credentials. Instead, follow our [best practices][3] by
1421
+ # creating one or more IAM users, giving them the necessary permissions,
1422
+ # and using IAM users for everyday interaction with AWS.
1465
1423
  #
1466
1424
  # </note>
1467
1425
  #
1468
1426
  # The permissions associated with the temporary security credentials
1469
1427
  # returned by `GetSessionToken` are based on the permissions associated
1470
1428
  # with account or IAM user whose credentials are used to call the
1471
- # action. If `GetSessionToken` is called using root account credentials,
1472
- # the temporary credentials have root account permissions. Similarly, if
1473
- # `GetSessionToken` is called using the credentials of an IAM user, the
1474
- # temporary credentials have the same permissions as the IAM user.
1429
+ # operation. If `GetSessionToken` is called using AWS account root user
1430
+ # credentials, the temporary credentials have root user permissions.
1431
+ # Similarly, if `GetSessionToken` is called using the credentials of an
1432
+ # IAM user, the temporary credentials have the same permissions as the
1433
+ # IAM user.
1475
1434
  #
1476
1435
  # For more information about using `GetSessionToken` to create temporary
1477
1436
  # credentials, go to [Temporary Credentials for Users in Untrusted
@@ -1479,18 +1438,18 @@ module Aws::STS
1479
1438
  #
1480
1439
  #
1481
1440
  #
1482
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
1483
- # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
1484
- # [3]: http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users
1485
- # [4]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getsessiontoken
1441
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html
1442
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#stsapi_comparison
1443
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users
1444
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_getsessiontoken
1486
1445
  #
1487
1446
  # @option params [Integer] :duration_seconds
1488
1447
  # The duration, in seconds, that the credentials should remain valid.
1489
1448
  # Acceptable durations for IAM user sessions range from 900 seconds (15
1490
- # minutes) to 129600 seconds (36 hours), with 43200 seconds (12 hours)
1449
+ # minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours)
1491
1450
  # as the default. Sessions for AWS account owners are restricted to a
1492
- # maximum of 3600 seconds (one hour). If the duration is longer than one
1493
- # hour, the session for AWS account owners defaults to one hour.
1451
+ # maximum of 3,600 seconds (one hour). If the duration is longer than
1452
+ # one hour, the session for AWS account owners defaults to one hour.
1494
1453
  #
1495
1454
  # @option params [String] :serial_number
1496
1455
  # The identification number of the MFA device that is associated with
@@ -1502,7 +1461,7 @@ module Aws::STS
1502
1461
  # device for an IAM user by going to the AWS Management Console and
1503
1462
  # viewing the user's security credentials.
1504
1463
  #
1505
- # The regex used to validated this parameter is a string of characters
1464
+ # The regex used to validate this parameter is a string of characters
1506
1465
  # consisting of upper- and lower-case alphanumeric characters with no
1507
1466
  # spaces. You can also include underscores or any of the following
1508
1467
  # characters: =,.@:/-
@@ -1510,9 +1469,9 @@ module Aws::STS
1510
1469
  # @option params [String] :token_code
1511
1470
  # The value provided by the MFA device, if MFA is required. If any
1512
1471
  # policy requires the IAM user to submit an MFA code, specify this
1513
- # value. If MFA authentication is required, and the user does not
1514
- # provide a code when requesting a set of temporary security
1515
- # credentials, the user will receive an "access denied" response when
1472
+ # value. If MFA authentication is required, the user must provide a code
1473
+ # when requesting a set of temporary security credentials. A user who
1474
+ # fails to provide the code receives an "access denied" response when
1516
1475
  # requesting resources that require MFA authentication.
1517
1476
  #
1518
1477
  # The format for this parameter, as described by its regex pattern, is a
@@ -1578,7 +1537,7 @@ module Aws::STS
1578
1537
  params: params,
1579
1538
  config: config)
1580
1539
  context[:gem_name] = 'aws-sdk-core'
1581
- context[:gem_version] = '3.49.0'
1540
+ context[:gem_version] = '3.50.0'
1582
1541
  Seahorse::Client::Request.new(handlers, context)
1583
1542
  end
1584
1543