aws-sdk-iam 1.80.0 → 1.82.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 52c378dd65591fd1e59bd0273e7193935ba63a6775b5f8c0b32c63e59ebc8682
4
- data.tar.gz: b6445454f309cb83478255c07566b881027ed02214e0c22a26e97e2dd1de186c
3
+ metadata.gz: 4d0911818341c126c5c1fdac7354d47e974a1fdd843b14c0f4ea01937d9fe683
4
+ data.tar.gz: 511e349dc3431830ef6540d33f0e9a8094b86324e92f7abec9c327a411b57621
5
5
  SHA512:
6
- metadata.gz: 0af33d31f462b2f6bdd0c1059ed347532b8cc16741dfe304bf62b691311b92800f40c56935e829c8f3ed253b4bc236e1b8a137631691c4e60d64149ec3374cce
7
- data.tar.gz: 336518c2a6e5ec589b2d8f6a7e0476cb95a8a24ea7b905dba705ba14141ae4ea13dc4ff454c6dcb2e9641e4cec7f6ded2ef29fe232c638be067391aba5477eb2
6
+ metadata.gz: 075c841a74043be7c8181cafa2e0cc3ec4ecf6cab34ff197a2f282facee514415ce7e49bdeedf5a0013f3b9d84471a5b85b194d0a7a1323d99581d89bf1a3ef4
7
+ data.tar.gz: 630d81ae5587d8234b44ae57b28a00ade33c1970027196f3f9aecd8e5dcf896f3a6bfcc379c923477bfd0f50e9c567a1446a7915c87615ddd79b12f694ed017e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.82.0 (2023-06-26)
5
+ ------------------
6
+
7
+ * Feature - Support for a new API "GetMFADevice" to present MFA device metadata such as device certifications
8
+
9
+ 1.81.0 (2023-06-16)
10
+ ------------------
11
+
12
+ * Feature - Documentation updates for AWS Identity and Access Management (IAM).
13
+
4
14
  1.80.0 (2023-06-15)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.80.0
1
+ 1.82.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
  #
@@ -8272,9 +8331,17 @@ module Aws::IAM
8272
8331
  # roles, see [Working with roles][1].
8273
8332
  #
8274
8333
  # <note markdown="1"> IAM resource-listing operations return a subset of the available
8275
- # attributes for the resource. For example, this operation does not
8276
- # return tags, even though they are an attribute of the returned object.
8277
- # To view all of the information for a role, see GetRole.
8334
+ # attributes for the resource. This operation does not return the
8335
+ # following attributes, even though they are an attribute of the
8336
+ # returned object:
8337
+ #
8338
+ # * PermissionsBoundary
8339
+ #
8340
+ # * RoleLastUsed
8341
+ #
8342
+ # * Tags
8343
+ #
8344
+ # To view all of the information for a role, see GetRole.
8278
8345
  #
8279
8346
  # </note>
8280
8347
  #
@@ -8414,6 +8481,8 @@ module Aws::IAM
8414
8481
  # * {Types::ListSAMLProviderTagsResponse#is_truncated #is_truncated} => Boolean
8415
8482
  # * {Types::ListSAMLProviderTagsResponse#marker #marker} => String
8416
8483
  #
8484
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8485
+ #
8417
8486
  # @example Request syntax with placeholder values
8418
8487
  #
8419
8488
  # resp = client.list_saml_provider_tags({
@@ -8608,6 +8677,8 @@ module Aws::IAM
8608
8677
  # * {Types::ListServerCertificateTagsResponse#is_truncated #is_truncated} => Boolean
8609
8678
  # * {Types::ListServerCertificateTagsResponse#marker #marker} => String
8610
8679
  #
8680
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8681
+ #
8611
8682
  # @example Request syntax with placeholder values
8612
8683
  #
8613
8684
  # resp = client.list_server_certificate_tags({
@@ -9069,9 +9140,15 @@ module Aws::IAM
9069
9140
  # list.
9070
9141
  #
9071
9142
  # <note markdown="1"> IAM resource-listing operations return a subset of the available
9072
- # attributes for the resource. For example, this operation does not
9073
- # return tags, even though they are an attribute of the returned object.
9074
- # To view all of the information for a user, see GetUser.
9143
+ # attributes for the resource. This operation does not return the
9144
+ # following attributes, even though they are an attribute of the
9145
+ # returned object:
9146
+ #
9147
+ # * PermissionsBoundary
9148
+ #
9149
+ # * Tags
9150
+ #
9151
+ # To view all of the information for a user, see GetUser.
9075
9152
  #
9076
9153
  # </note>
9077
9154
  #
@@ -9295,26 +9372,29 @@ module Aws::IAM
9295
9372
  # specified IAM group.
9296
9373
  #
9297
9374
  # A user can also have managed policies attached to it. To attach a
9298
- # managed policy to a group, use AttachGroupPolicy. To create a new
9299
- # managed policy, use CreatePolicy. For information about policies, see
9300
- # [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*.
9301
9379
  #
9302
9380
  # For information about the maximum number of inline policies that you
9303
- # 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
9304
9382
  # Guide*.
9305
9383
  #
9306
9384
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9307
9385
  # GET when calling `PutGroupPolicy`. For general information about using
9308
- # 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
9309
9387
  # User Guide*.
9310
9388
  #
9311
9389
  # </note>
9312
9390
  #
9313
9391
  #
9314
9392
  #
9315
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9316
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9317
- # [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
9318
9398
  #
9319
9399
  # @option params [required, String] :group_name
9320
9400
  # The name of the group to associate the policy with.
@@ -9458,33 +9538,38 @@ module Aws::IAM
9458
9538
  #
9459
9539
  # When you embed an inline policy in a role, the inline policy is used
9460
9540
  # as part of the role's access (permissions) policy. The role's trust
9461
- # policy is created at the same time as the role, using CreateRole. You
9462
- # can update a role's trust policy using UpdateAssumeRolePolicy. For
9463
- # more information about IAM roles, see [Using roles to delegate
9464
- # 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].
9465
9545
  #
9466
9546
  # A role can also have a managed policy attached to it. To attach a
9467
- # managed policy to a role, use AttachRolePolicy. To create a new
9468
- # managed policy, use CreatePolicy. For information about policies, see
9469
- # [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*.
9470
9551
  #
9471
9552
  # For information about the maximum number of inline policies that you
9472
- # 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
9473
9554
  # Guide*.
9474
9555
  #
9475
9556
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9476
9557
  # GET when calling `PutRolePolicy`. For general information about using
9477
- # 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
9478
9559
  # User Guide*.
9479
9560
  #
9480
9561
  # </note>
9481
9562
  #
9482
9563
  #
9483
9564
  #
9484
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
9485
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9486
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9487
- # [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
9488
9573
  #
9489
9574
  # @option params [required, String] :role_name
9490
9575
  # The name of the role to associate the policy with.
@@ -9625,26 +9710,29 @@ module Aws::IAM
9625
9710
  # specified IAM user.
9626
9711
  #
9627
9712
  # An IAM user can also have a managed policy attached to it. To attach a
9628
- # managed policy to a user, use AttachUserPolicy. To create a new
9629
- # managed policy, use CreatePolicy. For information about policies, see
9630
- # [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*.
9631
9717
  #
9632
9718
  # For information about the maximum number of inline policies that you
9633
- # 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
9634
9720
  # Guide*.
9635
9721
  #
9636
9722
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
9637
9723
  # GET when calling `PutUserPolicy`. For general information about using
9638
- # 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
9639
9725
  # User Guide*.
9640
9726
  #
9641
9727
  # </note>
9642
9728
  #
9643
9729
  #
9644
9730
  #
9645
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
9646
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
9647
- # [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
9648
9736
  #
9649
9737
  # @option params [required, String] :user_name
9650
9738
  # The name of the user to associate the policy with.
@@ -13355,7 +13443,7 @@ module Aws::IAM
13355
13443
  params: params,
13356
13444
  config: config)
13357
13445
  context[:gem_name] = 'aws-sdk-iam'
13358
- context[:gem_version] = '1.80.0'
13446
+ context[:gem_version] = '1.82.0'
13359
13447
  Seahorse::Client::Request.new(handlers, context)
13360
13448
  end
13361
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.80.0'
77
+ GEM_VERSION = '1.82.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.80.0
4
+ version: 1.82.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-15 00:00:00.000000000 Z
11
+ date: 2023-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core