aws-sdk-iam 1.81.0 → 1.83.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
  SHA256:
3
- metadata.gz: 64cf5ffa4db82c66dac407b651fdf13d05e86dda4d4c4cc555d5260fdf7ea418
4
- data.tar.gz: 95b423e32afa9392023bda91a295a75c6427e5c608f4b5732e62536b45ada33a
3
+ metadata.gz: d6fb5f7ac0d4d34ceb8999cbd9ff5ad153abd744ba87976425ce8e9ba3a72b36
4
+ data.tar.gz: dc7a73ef269475e4fc40bb05fa8f3cf754a8d7c9f47be0c0c7a2880f714f320b
5
5
  SHA512:
6
- metadata.gz: 5d797952149d97290f186a50f9add6d6a408437d9c7d0b6a8312c19f2c8ccfcb8f6de97ae1c76aeea4e0fe0c44f11719ad6b8c69f85c7e2f7283e955a833e64e
7
- data.tar.gz: 0b402f5da609bb49f3962de8ad456c5b2721cbf8d1736523a4cbe313febabb84a5b4c7ca660a973ff09f9c27df3212e4aa7075c3df542fa9ca64fb01e744c035
6
+ metadata.gz: a52a4f46501fbdbe44092fba8a63552f393e6d34e00e35da4772a139ca0886f5ea1568c56030be0191889779de83767da6e92de9b5b69de5e910515fb6c91f73
7
+ data.tar.gz: c390a5afe0adbb8e851777c977d7f407b37cfc25e33c3881cc4acfd34864ce217c87b800096f34fd9b2475101add216ed357ac068516edb3251a1f6364b19205
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.83.0 (2023-06-28)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.82.0 (2023-06-26)
10
+ ------------------
11
+
12
+ * Feature - Support for a new API "GetMFADevice" to present MFA device metadata such as device certifications
13
+
4
14
  1.81.0 (2023-06-16)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.81.0
1
+ 1.83.0
@@ -553,18 +553,19 @@ module Aws::IAM
553
553
  # Attaches the specified managed policy to the specified IAM group.
554
554
  #
555
555
  # You use this operation to attach a managed policy to a group. To embed
556
- # an inline policy in a group, use PutGroupPolicy.
556
+ # an inline policy in a group, use [ `PutGroupPolicy` ][1].
557
557
  #
558
558
  # As a best practice, you can validate your IAM policies. To learn more,
559
- # see [Validating IAM policies][1] in the *IAM User Guide*.
559
+ # see [Validating IAM policies][2] in the *IAM User Guide*.
560
560
  #
561
561
  # For more information about policies, see [Managed policies and inline
562
- # policies][2] in the *IAM User Guide*.
562
+ # policies][3] in the *IAM User Guide*.
563
563
  #
564
564
  #
565
565
  #
566
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
567
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
566
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutGroupPolicy.html
567
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
568
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
568
569
  #
569
570
  # @option params [required, String] :group_name
570
571
  # The name (friendly name, not ARN) of the group to attach the policy
@@ -622,24 +623,27 @@ module Aws::IAM
622
623
  # of the role's permission (access) policy.
623
624
  #
624
625
  # <note markdown="1"> You cannot use a managed policy as the role's trust policy. The
625
- # role's trust policy is created at the same time as the role, using
626
- # CreateRole. You can update a role's trust policy using
627
- # UpdateAssumeRolePolicy.
626
+ # role's trust policy is created at the same time as the role, using [
627
+ # `CreateRole` ][1]. You can update a role's trust policy using [
628
+ # `UpdateAssumerolePolicy` ][2].
628
629
  #
629
630
  # </note>
630
631
  #
631
632
  # Use this operation to attach a *managed* policy to a role. To embed an
632
- # inline policy in a role, use PutRolePolicy. For more information about
633
- # policies, see [Managed policies and inline policies][1] in the *IAM
634
- # User Guide*.
633
+ # inline policy in a role, use [ `PutRolePolicy` ][3]. For more
634
+ # information about policies, see [Managed policies and inline
635
+ # policies][4] in the *IAM User Guide*.
635
636
  #
636
637
  # As a best practice, you can validate your IAM policies. To learn more,
637
- # see [Validating IAM policies][2] in the *IAM User Guide*.
638
+ # see [Validating IAM policies][5] in the *IAM User Guide*.
638
639
  #
639
640
  #
640
641
  #
641
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
642
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
642
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html
643
+ # [2]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html
644
+ # [3]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutRolePolicy.html
645
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
646
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
643
647
  #
644
648
  # @option params [required, String] :role_name
645
649
  # The name (friendly name, not ARN) of the role to attach the policy to.
@@ -694,18 +698,19 @@ module Aws::IAM
694
698
  # Attaches the specified managed policy to the specified user.
695
699
  #
696
700
  # You use this operation to attach a *managed* policy to a user. To
697
- # embed an inline policy in a user, use PutUserPolicy.
701
+ # embed an inline policy in a user, use [ `PutUserPolicy` ][1].
698
702
  #
699
703
  # As a best practice, you can validate your IAM policies. To learn more,
700
- # see [Validating IAM policies][1] in the *IAM User Guide*.
704
+ # see [Validating IAM policies][2] in the *IAM User Guide*.
701
705
  #
702
706
  # For more information about policies, see [Managed policies and inline
703
- # policies][2] in the *IAM User Guide*.
707
+ # policies][3] in the *IAM User Guide*.
704
708
  #
705
709
  #
706
710
  #
707
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
708
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
711
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_PutUserPolicy.html
712
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html
713
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
709
714
  #
710
715
  # @option params [required, String] :user_name
711
716
  # The name (friendly name, not ARN) of the IAM user to attach the policy
@@ -5033,6 +5038,50 @@ module Aws::IAM
5033
5038
  req.send_request(options)
5034
5039
  end
5035
5040
 
5041
+ # Retrieves information about an MFA device for a specified user.
5042
+ #
5043
+ # @option params [required, String] :serial_number
5044
+ # Serial number that uniquely identifies the MFA device. For this API,
5045
+ # we only accept FIDO security key [ARNs][1].
5046
+ #
5047
+ #
5048
+ #
5049
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html
5050
+ #
5051
+ # @option params [String] :user_name
5052
+ # The friendly name identifying the user.
5053
+ #
5054
+ # @return [Types::GetMFADeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5055
+ #
5056
+ # * {Types::GetMFADeviceResponse#user_name #user_name} => String
5057
+ # * {Types::GetMFADeviceResponse#serial_number #serial_number} => String
5058
+ # * {Types::GetMFADeviceResponse#enable_date #enable_date} => Time
5059
+ # * {Types::GetMFADeviceResponse#certifications #certifications} => Hash&lt;String,String&gt;
5060
+ #
5061
+ # @example Request syntax with placeholder values
5062
+ #
5063
+ # resp = client.get_mfa_device({
5064
+ # serial_number: "serialNumberType", # required
5065
+ # user_name: "userNameType",
5066
+ # })
5067
+ #
5068
+ # @example Response structure
5069
+ #
5070
+ # resp.user_name #=> String
5071
+ # resp.serial_number #=> String
5072
+ # resp.enable_date #=> Time
5073
+ # resp.certifications #=> Hash
5074
+ # resp.certifications["CertificationKeyType"] #=> String
5075
+ #
5076
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetMFADevice AWS API Documentation
5077
+ #
5078
+ # @overload get_mfa_device(params = {})
5079
+ # @param [Hash] params ({})
5080
+ def get_mfa_device(params = {}, options = {})
5081
+ req = build_request(:get_mfa_device, params)
5082
+ req.send_request(options)
5083
+ end
5084
+
5036
5085
  # Returns information about the specified OpenID Connect (OIDC) provider
5037
5086
  # resource object in IAM.
5038
5087
  #
@@ -7191,6 +7240,8 @@ module Aws::IAM
7191
7240
  # * {Types::ListInstanceProfileTagsResponse#is_truncated #is_truncated} => Boolean
7192
7241
  # * {Types::ListInstanceProfileTagsResponse#marker #marker} => String
7193
7242
  #
7243
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7244
+ #
7194
7245
  # @example Request syntax with placeholder values
7195
7246
  #
7196
7247
  # resp = client.list_instance_profile_tags({
@@ -7467,6 +7518,8 @@ module Aws::IAM
7467
7518
  # * {Types::ListMFADeviceTagsResponse#is_truncated #is_truncated} => Boolean
7468
7519
  # * {Types::ListMFADeviceTagsResponse#marker #marker} => String
7469
7520
  #
7521
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7522
+ #
7470
7523
  # @example Request syntax with placeholder values
7471
7524
  #
7472
7525
  # resp = client.list_mfa_device_tags({
@@ -7613,6 +7666,8 @@ module Aws::IAM
7613
7666
  # * {Types::ListOpenIDConnectProviderTagsResponse#is_truncated #is_truncated} => Boolean
7614
7667
  # * {Types::ListOpenIDConnectProviderTagsResponse#marker #marker} => String
7615
7668
  #
7669
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7670
+ #
7616
7671
  # @example Request syntax with placeholder values
7617
7672
  #
7618
7673
  # resp = client.list_open_id_connect_provider_tags({
@@ -7999,6 +8054,8 @@ module Aws::IAM
7999
8054
  # * {Types::ListPolicyTagsResponse#is_truncated #is_truncated} => Boolean
8000
8055
  # * {Types::ListPolicyTagsResponse#marker #marker} => String
8001
8056
  #
8057
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8058
+ #
8002
8059
  # @example Request syntax with placeholder values
8003
8060
  #
8004
8061
  # resp = client.list_policy_tags({
@@ -8218,6 +8275,8 @@ module Aws::IAM
8218
8275
  # * {Types::ListRoleTagsResponse#is_truncated #is_truncated} => Boolean
8219
8276
  # * {Types::ListRoleTagsResponse#marker #marker} => String
8220
8277
  #
8278
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8279
+ #
8221
8280
  #
8222
8281
  # @example Example: To list the tags attached to an IAM role
8223
8282
  #
@@ -8422,6 +8481,8 @@ module Aws::IAM
8422
8481
  # * {Types::ListSAMLProviderTagsResponse#is_truncated #is_truncated} => Boolean
8423
8482
  # * {Types::ListSAMLProviderTagsResponse#marker #marker} => String
8424
8483
  #
8484
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8485
+ #
8425
8486
  # @example Request syntax with placeholder values
8426
8487
  #
8427
8488
  # resp = client.list_saml_provider_tags({
@@ -8616,6 +8677,8 @@ module Aws::IAM
8616
8677
  # * {Types::ListServerCertificateTagsResponse#is_truncated #is_truncated} => Boolean
8617
8678
  # * {Types::ListServerCertificateTagsResponse#marker #marker} => String
8618
8679
  #
8680
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8681
+ #
8619
8682
  # @example Request syntax with placeholder values
8620
8683
  #
8621
8684
  # resp = client.list_server_certificate_tags({
@@ -9309,26 +9372,29 @@ module Aws::IAM
9309
9372
  # specified IAM group.
9310
9373
  #
9311
9374
  # A user can also have managed policies attached to it. To attach a
9312
- # managed policy to a group, use AttachGroupPolicy. To create a new
9313
- # managed policy, use CreatePolicy. For information about policies, see
9314
- # [Managed policies and inline policies][1] in the *IAM User Guide*.
9375
+ # managed policy to a group, use [ `AttachGroupPolicy` ][1]. To create a
9376
+ # new managed policy, use [ `CreatePolicy` ][2]. For information about
9377
+ # policies, see [Managed policies and inline policies][3] in the *IAM
9378
+ # User Guide*.
9315
9379
  #
9316
9380
  # For information about the maximum number of inline policies that you
9317
- # can embed in a group, see [IAM and STS quotas][2] in the *IAM User
9381
+ # can embed in a group, see [IAM and STS quotas][4] in the *IAM User
9318
9382
  # Guide*.
9319
9383
  #
9320
9384
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9321
9385
  # GET when calling `PutGroupPolicy`. For general information about using
9322
- # the Query API with IAM, see [Making query requests][3] in the *IAM
9386
+ # the Query API with IAM, see [Making query requests][5] in the *IAM
9323
9387
  # User Guide*.
9324
9388
  #
9325
9389
  # </note>
9326
9390
  #
9327
9391
  #
9328
9392
  #
9329
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9330
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9331
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9393
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachGroupPolicy.html
9394
+ # [2]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html
9395
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9396
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9397
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9332
9398
  #
9333
9399
  # @option params [required, String] :group_name
9334
9400
  # The name of the group to associate the policy with.
@@ -9472,33 +9538,38 @@ module Aws::IAM
9472
9538
  #
9473
9539
  # When you embed an inline policy in a role, the inline policy is used
9474
9540
  # as part of the role's access (permissions) policy. The role's trust
9475
- # policy is created at the same time as the role, using CreateRole. You
9476
- # can update a role's trust policy using UpdateAssumeRolePolicy. For
9477
- # more information about IAM roles, see [Using roles to delegate
9478
- # permissions and federate identities][1].
9541
+ # policy is created at the same time as the role, using [ `CreateRole`
9542
+ # ][1]. You can update a role's trust policy using [
9543
+ # `UpdateAssumerolePolicy` ][2]. For more information about IAM roles,
9544
+ # see [Using roles to delegate permissions and federate identities][3].
9479
9545
  #
9480
9546
  # A role can also have a managed policy attached to it. To attach a
9481
- # managed policy to a role, use AttachRolePolicy. To create a new
9482
- # managed policy, use CreatePolicy. For information about policies, see
9483
- # [Managed policies and inline policies][2] in the *IAM User Guide*.
9547
+ # managed policy to a role, use [ `AttachRolePolicy` ][4]. To create a
9548
+ # new managed policy, use [ `CreatePolicy` ][5]. For information about
9549
+ # policies, see [Managed policies and inline policies][6] in the *IAM
9550
+ # User Guide*.
9484
9551
  #
9485
9552
  # For information about the maximum number of inline policies that you
9486
- # can embed with a role, see [IAM and STS quotas][3] in the *IAM User
9553
+ # can embed with a role, see [IAM and STS quotas][7] in the *IAM User
9487
9554
  # Guide*.
9488
9555
  #
9489
9556
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9490
9557
  # GET when calling `PutRolePolicy`. For general information about using
9491
- # the Query API with IAM, see [Making query requests][4] in the *IAM
9558
+ # the Query API with IAM, see [Making query requests][8] in the *IAM
9492
9559
  # User Guide*.
9493
9560
  #
9494
9561
  # </note>
9495
9562
  #
9496
9563
  #
9497
9564
  #
9498
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
9499
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9500
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9501
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9565
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html
9566
+ # [2]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html
9567
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
9568
+ # [4]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachRolePolicy.html
9569
+ # [5]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html
9570
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9571
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9572
+ # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9502
9573
  #
9503
9574
  # @option params [required, String] :role_name
9504
9575
  # The name of the role to associate the policy with.
@@ -9639,26 +9710,29 @@ module Aws::IAM
9639
9710
  # specified IAM user.
9640
9711
  #
9641
9712
  # An IAM user can also have a managed policy attached to it. To attach a
9642
- # managed policy to a user, use AttachUserPolicy. To create a new
9643
- # managed policy, use CreatePolicy. For information about policies, see
9644
- # [Managed policies and inline policies][1] in the *IAM User Guide*.
9713
+ # managed policy to a user, use [ `AttachUserPolicy` ][1]. To create a
9714
+ # new managed policy, use [ `CreatePolicy` ][2]. For information about
9715
+ # policies, see [Managed policies and inline policies][3] in the *IAM
9716
+ # User Guide*.
9645
9717
  #
9646
9718
  # For information about the maximum number of inline policies that you
9647
- # can embed in a user, see [IAM and STS quotas][2] in the *IAM User
9719
+ # can embed in a user, see [IAM and STS quotas][4] in the *IAM User
9648
9720
  # Guide*.
9649
9721
  #
9650
9722
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9651
9723
  # GET when calling `PutUserPolicy`. For general information about using
9652
- # the Query API with IAM, see [Making query requests][3] in the *IAM
9724
+ # the Query API with IAM, see [Making query requests][5] in the *IAM
9653
9725
  # User Guide*.
9654
9726
  #
9655
9727
  # </note>
9656
9728
  #
9657
9729
  #
9658
9730
  #
9659
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9660
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9661
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9731
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachUserPolicy.html
9732
+ # [2]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html
9733
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9734
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9735
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
9662
9736
  #
9663
9737
  # @option params [required, String] :user_name
9664
9738
  # The name of the user to associate the policy with.
@@ -13369,7 +13443,7 @@ module Aws::IAM
13369
13443
  params: params,
13370
13444
  config: config)
13371
13445
  context[:gem_name] = 'aws-sdk-iam'
13372
- context[:gem_version] = '1.81.0'
13446
+ context[:gem_version] = '1.83.0'
13373
13447
  Seahorse::Client::Request.new(handlers, context)
13374
13448
  end
13375
13449
 
@@ -31,6 +31,9 @@ module Aws::IAM
31
31
  AttachedPermissionsBoundary = Shapes::StructureShape.new(name: 'AttachedPermissionsBoundary')
32
32
  AttachedPolicy = Shapes::StructureShape.new(name: 'AttachedPolicy')
33
33
  BootstrapDatum = Shapes::BlobShape.new(name: 'BootstrapDatum')
34
+ CertificationKeyType = Shapes::StringShape.new(name: 'CertificationKeyType')
35
+ CertificationMapType = Shapes::MapShape.new(name: 'CertificationMapType')
36
+ CertificationValueType = Shapes::StringShape.new(name: 'CertificationValueType')
34
37
  ChangePasswordRequest = Shapes::StructureShape.new(name: 'ChangePasswordRequest')
35
38
  ColumnNumber = Shapes::IntegerShape.new(name: 'ColumnNumber')
36
39
  ConcurrentModificationException = Shapes::StructureShape.new(name: 'ConcurrentModificationException')
@@ -139,6 +142,8 @@ module Aws::IAM
139
142
  GetInstanceProfileResponse = Shapes::StructureShape.new(name: 'GetInstanceProfileResponse')
140
143
  GetLoginProfileRequest = Shapes::StructureShape.new(name: 'GetLoginProfileRequest')
141
144
  GetLoginProfileResponse = Shapes::StructureShape.new(name: 'GetLoginProfileResponse')
145
+ GetMFADeviceRequest = Shapes::StructureShape.new(name: 'GetMFADeviceRequest')
146
+ GetMFADeviceResponse = Shapes::StructureShape.new(name: 'GetMFADeviceResponse')
142
147
  GetOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'GetOpenIDConnectProviderRequest')
143
148
  GetOpenIDConnectProviderResponse = Shapes::StructureShape.new(name: 'GetOpenIDConnectProviderResponse')
144
149
  GetOrganizationsAccessReportRequest = Shapes::StructureShape.new(name: 'GetOrganizationsAccessReportRequest')
@@ -568,6 +573,9 @@ module Aws::IAM
568
573
  AttachedPolicy.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "PolicyArn"))
569
574
  AttachedPolicy.struct_class = Types::AttachedPolicy
570
575
 
576
+ CertificationMapType.key = Shapes::ShapeRef.new(shape: CertificationKeyType)
577
+ CertificationMapType.value = Shapes::ShapeRef.new(shape: CertificationValueType)
578
+
571
579
  ChangePasswordRequest.add_member(:old_password, Shapes::ShapeRef.new(shape: passwordType, required: true, location_name: "OldPassword"))
572
580
  ChangePasswordRequest.add_member(:new_password, Shapes::ShapeRef.new(shape: passwordType, required: true, location_name: "NewPassword"))
573
581
  ChangePasswordRequest.struct_class = Types::ChangePasswordRequest
@@ -948,6 +956,16 @@ module Aws::IAM
948
956
  GetLoginProfileResponse.add_member(:login_profile, Shapes::ShapeRef.new(shape: LoginProfile, required: true, location_name: "LoginProfile"))
949
957
  GetLoginProfileResponse.struct_class = Types::GetLoginProfileResponse
950
958
 
959
+ GetMFADeviceRequest.add_member(:serial_number, Shapes::ShapeRef.new(shape: serialNumberType, required: true, location_name: "SerialNumber"))
960
+ GetMFADeviceRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, location_name: "UserName"))
961
+ GetMFADeviceRequest.struct_class = Types::GetMFADeviceRequest
962
+
963
+ GetMFADeviceResponse.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, location_name: "UserName"))
964
+ GetMFADeviceResponse.add_member(:serial_number, Shapes::ShapeRef.new(shape: serialNumberType, required: true, location_name: "SerialNumber"))
965
+ GetMFADeviceResponse.add_member(:enable_date, Shapes::ShapeRef.new(shape: dateType, location_name: "EnableDate"))
966
+ GetMFADeviceResponse.add_member(:certifications, Shapes::ShapeRef.new(shape: CertificationMapType, location_name: "Certifications"))
967
+ GetMFADeviceResponse.struct_class = Types::GetMFADeviceResponse
968
+
951
969
  GetOpenIDConnectProviderRequest.add_member(:open_id_connect_provider_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "OpenIDConnectProviderArn"))
952
970
  GetOpenIDConnectProviderRequest.struct_class = Types::GetOpenIDConnectProviderRequest
953
971
 
@@ -2861,6 +2879,16 @@ module Aws::IAM
2861
2879
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2862
2880
  end)
2863
2881
 
2882
+ api.add_operation(:get_mfa_device, Seahorse::Model::Operation.new.tap do |o|
2883
+ o.name = "GetMFADevice"
2884
+ o.http_method = "POST"
2885
+ o.http_request_uri = "/"
2886
+ o.input = Shapes::ShapeRef.new(shape: GetMFADeviceRequest)
2887
+ o.output = Shapes::ShapeRef.new(shape: GetMFADeviceResponse)
2888
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
2889
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2890
+ end)
2891
+
2864
2892
  api.add_operation(:get_open_id_connect_provider, Seahorse::Model::Operation.new.tap do |o|
2865
2893
  o.name = "GetOpenIDConnectProvider"
2866
2894
  o.http_method = "POST"
@@ -3168,6 +3196,13 @@ module Aws::IAM
3168
3196
  o.output = Shapes::ShapeRef.new(shape: ListInstanceProfileTagsResponse)
3169
3197
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3170
3198
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3199
+ o[:pager] = Aws::Pager.new(
3200
+ more_results: "is_truncated",
3201
+ limit_key: "max_items",
3202
+ tokens: {
3203
+ "marker" => "marker"
3204
+ }
3205
+ )
3171
3206
  end)
3172
3207
 
3173
3208
  api.add_operation(:list_instance_profiles, Seahorse::Model::Operation.new.tap do |o|
@@ -3212,6 +3247,13 @@ module Aws::IAM
3212
3247
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3213
3248
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3214
3249
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3250
+ o[:pager] = Aws::Pager.new(
3251
+ more_results: "is_truncated",
3252
+ limit_key: "max_items",
3253
+ tokens: {
3254
+ "marker" => "marker"
3255
+ }
3256
+ )
3215
3257
  end)
3216
3258
 
3217
3259
  api.add_operation(:list_mfa_devices, Seahorse::Model::Operation.new.tap do |o|
@@ -3240,6 +3282,13 @@ module Aws::IAM
3240
3282
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3241
3283
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3242
3284
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3285
+ o[:pager] = Aws::Pager.new(
3286
+ more_results: "is_truncated",
3287
+ limit_key: "max_items",
3288
+ tokens: {
3289
+ "marker" => "marker"
3290
+ }
3291
+ )
3243
3292
  end)
3244
3293
 
3245
3294
  api.add_operation(:list_open_id_connect_providers, Seahorse::Model::Operation.new.tap do |o|
@@ -3286,6 +3335,13 @@ module Aws::IAM
3286
3335
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3287
3336
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3288
3337
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3338
+ o[:pager] = Aws::Pager.new(
3339
+ more_results: "is_truncated",
3340
+ limit_key: "max_items",
3341
+ tokens: {
3342
+ "marker" => "marker"
3343
+ }
3344
+ )
3289
3345
  end)
3290
3346
 
3291
3347
  api.add_operation(:list_policy_versions, Seahorse::Model::Operation.new.tap do |o|
@@ -3331,6 +3387,13 @@ module Aws::IAM
3331
3387
  o.output = Shapes::ShapeRef.new(shape: ListRoleTagsResponse)
3332
3388
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3333
3389
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3390
+ o[:pager] = Aws::Pager.new(
3391
+ more_results: "is_truncated",
3392
+ limit_key: "max_items",
3393
+ tokens: {
3394
+ "marker" => "marker"
3395
+ }
3396
+ )
3334
3397
  end)
3335
3398
 
3336
3399
  api.add_operation(:list_roles, Seahorse::Model::Operation.new.tap do |o|
@@ -3358,6 +3421,13 @@ module Aws::IAM
3358
3421
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3359
3422
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3360
3423
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3424
+ o[:pager] = Aws::Pager.new(
3425
+ more_results: "is_truncated",
3426
+ limit_key: "max_items",
3427
+ tokens: {
3428
+ "marker" => "marker"
3429
+ }
3430
+ )
3361
3431
  end)
3362
3432
 
3363
3433
  api.add_operation(:list_saml_providers, Seahorse::Model::Operation.new.tap do |o|
@@ -3393,6 +3463,13 @@ module Aws::IAM
3393
3463
  o.output = Shapes::ShapeRef.new(shape: ListServerCertificateTagsResponse)
3394
3464
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3395
3465
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3466
+ o[:pager] = Aws::Pager.new(
3467
+ more_results: "is_truncated",
3468
+ limit_key: "max_items",
3469
+ tokens: {
3470
+ "marker" => "marker"
3471
+ }
3472
+ )
3396
3473
  end)
3397
3474
 
3398
3475
  api.add_operation(:list_server_certificates, Seahorse::Model::Operation.new.tap do |o|
@@ -894,6 +894,20 @@ module Aws::IAM
894
894
  end
895
895
  end
896
896
 
897
+ class GetMFADevice
898
+ def self.build(context)
899
+ unless context.config.regional_endpoint
900
+ endpoint = context.config.endpoint.to_s
901
+ end
902
+ Aws::IAM::EndpointParameters.new(
903
+ region: context.config.region,
904
+ use_dual_stack: context.config.use_dualstack_endpoint,
905
+ use_fips: context.config.use_fips_endpoint,
906
+ endpoint: endpoint,
907
+ )
908
+ end
909
+ end
910
+
897
911
  class GetOpenIDConnectProvider
898
912
  def self.build(context)
899
913
  unless context.config.regional_endpoint
@@ -182,6 +182,8 @@ module Aws::IAM
182
182
  Aws::IAM::Endpoints::GetInstanceProfile.build(context)
183
183
  when :get_login_profile
184
184
  Aws::IAM::Endpoints::GetLoginProfile.build(context)
185
+ when :get_mfa_device
186
+ Aws::IAM::Endpoints::GetMFADevice.build(context)
185
187
  when :get_open_id_connect_provider
186
188
  Aws::IAM::Endpoints::GetOpenIDConnectProvider.build(context)
187
189
  when :get_organizations_access_report
@@ -3396,6 +3396,66 @@ module Aws::IAM
3396
3396
  include Aws::Structure
3397
3397
  end
3398
3398
 
3399
+ # @!attribute [rw] serial_number
3400
+ # Serial number that uniquely identifies the MFA device. For this API,
3401
+ # we only accept FIDO security key [ARNs][1].
3402
+ #
3403
+ #
3404
+ #
3405
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html
3406
+ # @return [String]
3407
+ #
3408
+ # @!attribute [rw] user_name
3409
+ # The friendly name identifying the user.
3410
+ # @return [String]
3411
+ #
3412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetMFADeviceRequest AWS API Documentation
3413
+ #
3414
+ class GetMFADeviceRequest < Struct.new(
3415
+ :serial_number,
3416
+ :user_name)
3417
+ SENSITIVE = []
3418
+ include Aws::Structure
3419
+ end
3420
+
3421
+ # @!attribute [rw] user_name
3422
+ # The friendly name identifying the user.
3423
+ # @return [String]
3424
+ #
3425
+ # @!attribute [rw] serial_number
3426
+ # Serial number that uniquely identifies the MFA device. For this API,
3427
+ # we only accept FIDO security key [ARNs][1].
3428
+ #
3429
+ #
3430
+ #
3431
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html
3432
+ # @return [String]
3433
+ #
3434
+ # @!attribute [rw] enable_date
3435
+ # The date that a specified user's MFA device was first enabled.
3436
+ # @return [Time]
3437
+ #
3438
+ # @!attribute [rw] certifications
3439
+ # The certifications of a specified user's MFA device. We currently
3440
+ # provide FIPS-140-2, FIPS-140-3, and FIDO certification levels
3441
+ # obtained from [ FIDO Alliance Metadata Service (MDS)][1].
3442
+ #
3443
+ #
3444
+ #
3445
+ # [1]: https://fidoalliance.org/metadata/
3446
+ # @return [Hash<String,String>]
3447
+ #
3448
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetMFADeviceResponse AWS API Documentation
3449
+ #
3450
+ class GetMFADeviceResponse < Struct.new(
3451
+ :user_name,
3452
+ :serial_number,
3453
+ :enable_date,
3454
+ :certifications)
3455
+ SENSITIVE = []
3456
+ include Aws::Structure
3457
+ end
3458
+
3399
3459
  # @!attribute [rw] open_id_connect_provider_arn
3400
3460
  # The Amazon Resource Name (ARN) of the OIDC provider resource object
3401
3461
  # in IAM to get information for. You can get a list of OIDC provider
data/lib/aws-sdk-iam.rb CHANGED
@@ -74,6 +74,6 @@ require_relative 'aws-sdk-iam/customizations'
74
74
  # @!group service
75
75
  module Aws::IAM
76
76
 
77
- GEM_VERSION = '1.81.0'
77
+ GEM_VERSION = '1.83.0'
78
78
 
79
79
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iam
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.81.0
4
+ version: 1.83.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-16 00:00:00.000000000 Z
11
+ date: 2023-06-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.174.0
22
+ version: 3.176.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.174.0
32
+ version: 3.176.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement