aws-sdk-iam 1.43.0 → 1.48.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: 69faa8e74aa28bf5b382819939679b2ab36ac96298748d4506329aa9a10f7e41
4
- data.tar.gz: 33c967e48c409ec009177a6d8f53a69935c22e80d335f518003a890d23265aec
3
+ metadata.gz: a0ae21648f829d7f5c3cbd4fa54b034663de5937f0c73ff5886ed3fd75b8156f
4
+ data.tar.gz: 541167e8ac55ec219d5fe10cd624c03a2799cb595fa67f00cef6c921f88e163c
5
5
  SHA512:
6
- metadata.gz: b74f3cdac4e0745d26b1aaf5aef089caa86d1ae299ed7c4e56ea4a4bdac974ce12e3d7ca7320dc780ae26c0f86d3d2423a891e5d55cf79915a79678b69798464
7
- data.tar.gz: 18d6e7255cbc23ee57fd513a274ab0fe4a2e652d5da55f4a70e7ffd94eef2943cac9dad63ec4e3c9ef706be0bd5bdac3fdbb2e30fa5ad697b509aed871588d69
6
+ metadata.gz: b8fdcc7a8c3aeb6d4cc6669a971a8d378d46213bf0796fef6451d9ac4d91a2f38748aaaf559c3e2e45b2ae2c871668db402968772fe8fcd53933679f55583b29
7
+ data.tar.gz: f889cfb216c6c224b49fc302446cf7049f3bf22d21c07598410b07b91c014c491fece6b996efea241c3ffd23b06417d9e220e821fb46ae19d0524780ff6be99b
data/lib/aws-sdk-iam.rb CHANGED
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -66,9 +67,9 @@ require_relative 'aws-sdk-iam/customizations'
66
67
  #
67
68
  # See {Errors} for more information.
68
69
  #
69
- # @service
70
+ # @!group service
70
71
  module Aws::IAM
71
72
 
72
- GEM_VERSION = '1.43.0'
73
+ GEM_VERSION = '1.48.0'
73
74
 
74
75
  end
@@ -30,27 +30,31 @@ module Aws::IAM
30
30
  data[:minimum_password_length]
31
31
  end
32
32
 
33
- # Specifies whether to require symbols for IAM user passwords.
33
+ # Specifies whether IAM user passwords must contain at least one of the
34
+ # following symbols:
35
+ #
36
+ # ! @ # $ % ^ & * ( ) \_ + - = \[ \] \\\{ \\} \| '
34
37
  # @return [Boolean]
35
38
  def require_symbols
36
39
  data[:require_symbols]
37
40
  end
38
41
 
39
- # Specifies whether to require numbers for IAM user passwords.
42
+ # Specifies whether IAM user passwords must contain at least one numeric
43
+ # character (0 to 9).
40
44
  # @return [Boolean]
41
45
  def require_numbers
42
46
  data[:require_numbers]
43
47
  end
44
48
 
45
- # Specifies whether to require uppercase characters for IAM user
46
- # passwords.
49
+ # Specifies whether IAM user passwords must contain at least one
50
+ # uppercase character (A to Z).
47
51
  # @return [Boolean]
48
52
  def require_uppercase_characters
49
53
  data[:require_uppercase_characters]
50
54
  end
51
55
 
52
- # Specifies whether to require lowercase characters for IAM user
53
- # passwords.
56
+ # Specifies whether IAM user passwords must contain at least one
57
+ # lowercase character (a to z).
54
58
  # @return [Boolean]
55
59
  def require_lowercase_characters
56
60
  data[:require_lowercase_characters]
@@ -286,7 +290,7 @@ module Aws::IAM
286
290
  # @option options [Boolean] :allow_users_to_change_password
287
291
  # Allows all IAM users in your account to use the AWS Management Console
288
292
  # to change their own passwords. For more information, see [Letting IAM
289
- # Users Change Their Own Passwords][1] in the *IAM User Guide*.
293
+ # users change their own passwords][1] in the *IAM User Guide*.
290
294
  #
291
295
  # If you do not specify a value for this parameter, then the operation
292
296
  # uses the default value of `false`. The result is that IAM users in the
@@ -85,13 +85,28 @@ module Aws::IAM
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::IAM
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -358,33 +373,30 @@ module Aws::IAM
358
373
  end
359
374
 
360
375
  # Adds the specified IAM role to the specified instance profile. An
361
- # instance profile can contain only one role. (The number and size of
362
- # IAM resources in an AWS account are limited. For more information, see
363
- # [IAM and STS Quotas][1] in the *IAM User Guide*.) You can remove the
364
- # existing role and then add a different role to an instance profile.
365
- # You must then wait for the change to appear across all of AWS because
366
- # of [eventual consistency][2]. To force the change, you must
367
- # [disassociate the instance profile][3] and then [associate the
368
- # instance profile][4], or you can stop your instance and then restart
369
- # it.
370
- #
371
- # <note markdown="1"> The caller of this API must be granted the `PassRole` permission on
372
- # the IAM role by a permissions policy.
376
+ # instance profile can contain only one role, and this quota cannot be
377
+ # increased. You can remove the existing role and then add a different
378
+ # role to an instance profile. You must then wait for the change to
379
+ # appear across all of AWS because of [eventual consistency][1]. To
380
+ # force the change, you must [disassociate the instance profile][2] and
381
+ # then [associate the instance profile][3], or you can stop your
382
+ # instance and then restart it.
383
+ #
384
+ # <note markdown="1"> The caller of this operation must be granted the `PassRole` permission
385
+ # on the IAM role by a permissions policy.
373
386
  #
374
387
  # </note>
375
388
  #
376
- # For more information about roles, go to [Working with Roles][5]. For
377
- # more information about instance profiles, go to [About Instance
378
- # Profiles][6].
389
+ # For more information about roles, see [Working with roles][4]. For
390
+ # more information about instance profiles, see [About instance
391
+ # profiles][5].
379
392
  #
380
393
  #
381
394
  #
382
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
383
- # [2]: https://en.wikipedia.org/wiki/Eventual_consistency
384
- # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html
385
- # [4]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html
386
- # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html
387
- # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html
395
+ # [1]: https://en.wikipedia.org/wiki/Eventual_consistency
396
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html
397
+ # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html
398
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html
399
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html
388
400
  #
389
401
  # @option params [required, String] :instance_profile_name
390
402
  # The name of the instance profile to update.
@@ -494,11 +506,11 @@ module Aws::IAM
494
506
 
495
507
  # Attaches the specified managed policy to the specified IAM group.
496
508
  #
497
- # You use this API to attach a managed policy to a group. To embed an
498
- # inline policy in a group, use PutGroupPolicy.
509
+ # You use this operation to attach a managed policy to a group. To embed
510
+ # an inline policy in a group, use PutGroupPolicy.
499
511
  #
500
- # For more information about policies, see [Managed Policies and Inline
501
- # Policies][1] in the *IAM User Guide*.
512
+ # For more information about policies, see [Managed policies and inline
513
+ # policies][1] in the *IAM User Guide*.
502
514
  #
503
515
  #
504
516
  #
@@ -520,8 +532,8 @@ module Aws::IAM
520
532
  # @option params [required, String] :policy_arn
521
533
  # The Amazon Resource Name (ARN) of the IAM policy you want to attach.
522
534
  #
523
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
524
- # AWS Service Namespaces][1] in the *AWS General Reference*.
535
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
536
+ # in the *AWS General Reference*.
525
537
  #
526
538
  #
527
539
  #
@@ -566,9 +578,9 @@ module Aws::IAM
566
578
  #
567
579
  # </note>
568
580
  #
569
- # Use this API to attach a *managed* policy to a role. To embed an
581
+ # Use this operation to attach a *managed* policy to a role. To embed an
570
582
  # inline policy in a role, use PutRolePolicy. For more information about
571
- # policies, see [Managed Policies and Inline Policies][1] in the *IAM
583
+ # policies, see [Managed policies and inline policies][1] in the *IAM
572
584
  # User Guide*.
573
585
  #
574
586
  #
@@ -590,8 +602,8 @@ module Aws::IAM
590
602
  # @option params [required, String] :policy_arn
591
603
  # The Amazon Resource Name (ARN) of the IAM policy you want to attach.
592
604
  #
593
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
594
- # AWS Service Namespaces][1] in the *AWS General Reference*.
605
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
606
+ # in the *AWS General Reference*.
595
607
  #
596
608
  #
597
609
  #
@@ -627,11 +639,11 @@ module Aws::IAM
627
639
 
628
640
  # Attaches the specified managed policy to the specified user.
629
641
  #
630
- # You use this API to attach a *managed* policy to a user. To embed an
631
- # inline policy in a user, use PutUserPolicy.
642
+ # You use this operation to attach a *managed* policy to a user. To
643
+ # embed an inline policy in a user, use PutUserPolicy.
632
644
  #
633
- # For more information about policies, see [Managed Policies and Inline
634
- # Policies][1] in the *IAM User Guide*.
645
+ # For more information about policies, see [Managed policies and inline
646
+ # policies][1] in the *IAM User Guide*.
635
647
  #
636
648
  #
637
649
  #
@@ -653,8 +665,8 @@ module Aws::IAM
653
665
  # @option params [required, String] :policy_arn
654
666
  # The Amazon Resource Name (ARN) of the IAM policy you want to attach.
655
667
  #
656
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
657
- # AWS Service Namespaces][1] in the *AWS General Reference*.
668
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
669
+ # in the *AWS General Reference*.
658
670
  #
659
671
  #
660
672
  #
@@ -689,11 +701,14 @@ module Aws::IAM
689
701
  end
690
702
 
691
703
  # Changes the password of the IAM user who is calling this operation.
692
- # The AWS account root user password is not affected by this operation.
704
+ # This operation can be performed using the AWS CLI, the AWS API, or the
705
+ # **My Security Credentials** page in the AWS Management Console. The
706
+ # AWS account root user password is not affected by this operation.
693
707
  #
694
- # To change the password for a different user, see UpdateLoginProfile.
695
- # For more information about modifying passwords, see [Managing
696
- # Passwords][1] in the *IAM User Guide*.
708
+ # Use UpdateLoginProfile to use the AWS CLI, the AWS API, or the
709
+ # **Users** page in the IAM console to change the password for any IAM
710
+ # user. For more information about modifying passwords, see [Managing
711
+ # passwords][1] in the *IAM User Guide*.
697
712
  #
698
713
  #
699
714
  #
@@ -758,9 +773,8 @@ module Aws::IAM
758
773
  # credentials. This is true even if the AWS account has no associated
759
774
  # users.
760
775
  #
761
- # The number and size of IAM resources in an AWS account are limited.
762
- # For more information, see [IAM and STS Quotas][1] in the *IAM User
763
- # Guide*.
776
+ # For information about quotas on the number of keys you can create, see
777
+ # [IAM and STS quotas][1] in the *IAM User Guide*.
764
778
  #
765
779
  # To ensure the security of your AWS account, the secret access key is
766
780
  # accessible only during key and user creation. You must save the key
@@ -832,7 +846,7 @@ module Aws::IAM
832
846
  end
833
847
 
834
848
  # Creates an alias for your AWS account. For information about using an
835
- # AWS account alias, see [Using an Alias for Your AWS Account ID][1] in
849
+ # AWS account alias, see [Using an alias for your AWS account ID][1] in
836
850
  # the *IAM User Guide*.
837
851
  #
838
852
  #
@@ -879,9 +893,8 @@ module Aws::IAM
879
893
 
880
894
  # Creates a new group.
881
895
  #
882
- # The number and size of IAM resources in an AWS account are limited.
883
- # For more information, see [IAM and STS Quotas][1] in the *IAM User
884
- # Guide*.
896
+ # For information about the number of groups you can create, see [IAM
897
+ # and STS quotas][1] in the *IAM User Guide*.
885
898
  #
886
899
  #
887
900
  #
@@ -889,7 +902,7 @@ module Aws::IAM
889
902
  #
890
903
  # @option params [String] :path
891
904
  # The path to the group. For more information about paths, see [IAM
892
- # Identifiers][1] in the *IAM User Guide*.
905
+ # identifiers][1] in the *IAM User Guide*.
893
906
  #
894
907
  # This parameter is optional. If it is not included, it defaults to a
895
908
  # slash (/).
@@ -963,15 +976,14 @@ module Aws::IAM
963
976
  end
964
977
 
965
978
  # Creates a new instance profile. For information about instance
966
- # profiles, go to [About Instance Profiles][1].
979
+ # profiles, see [About instance profiles][1].
967
980
  #
968
- # The number and size of IAM resources in an AWS account are limited.
969
- # For more information, see [IAM and STS Quotas][2] in the *IAM User
970
- # Guide*.
981
+ # For information about the number of instance profiles you can create,
982
+ # see [IAM object quotas][2] in the *IAM User Guide*.
971
983
  #
972
984
  #
973
985
  #
974
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html
986
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entities
975
987
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
976
988
  #
977
989
  # @option params [required, String] :instance_profile_name
@@ -1005,6 +1017,22 @@ module Aws::IAM
1005
1017
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html
1006
1018
  # [2]: http://wikipedia.org/wiki/regex
1007
1019
  #
1020
+ # @option params [Array<Types::Tag>] :tags
1021
+ # A list of tags that you want to attach to the newly created IAM
1022
+ # instance profile. Each tag consists of a key name and an associated
1023
+ # value. For more information about tagging, see [Tagging IAM
1024
+ # resources][1] in the *IAM User Guide*.
1025
+ #
1026
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
1027
+ # number of tags, then the entire request fails and the resource is not
1028
+ # created.
1029
+ #
1030
+ # </note>
1031
+ #
1032
+ #
1033
+ #
1034
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
1035
+ #
1008
1036
  # @return [Types::CreateInstanceProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1009
1037
  #
1010
1038
  # * {Types::CreateInstanceProfileResponse#instance_profile #instance_profile} => Types::InstanceProfile
@@ -1037,6 +1065,12 @@ module Aws::IAM
1037
1065
  # resp = client.create_instance_profile({
1038
1066
  # instance_profile_name: "instanceProfileNameType", # required
1039
1067
  # path: "pathType",
1068
+ # tags: [
1069
+ # {
1070
+ # key: "tagKeyType", # required
1071
+ # value: "tagValueType", # required
1072
+ # },
1073
+ # ],
1040
1074
  # })
1041
1075
  #
1042
1076
  # @example Response structure
@@ -1062,6 +1096,9 @@ module Aws::IAM
1062
1096
  # resp.instance_profile.roles[0].tags[0].value #=> String
1063
1097
  # resp.instance_profile.roles[0].role_last_used.last_used_date #=> Time
1064
1098
  # resp.instance_profile.roles[0].role_last_used.region #=> String
1099
+ # resp.instance_profile.tags #=> Array
1100
+ # resp.instance_profile.tags[0].key #=> String
1101
+ # resp.instance_profile.tags[0].value #=> String
1065
1102
  #
1066
1103
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateInstanceProfile AWS API Documentation
1067
1104
  #
@@ -1072,10 +1109,16 @@ module Aws::IAM
1072
1109
  req.send_request(options)
1073
1110
  end
1074
1111
 
1075
- # Creates a password for the specified user, giving the user the ability
1076
- # to access AWS services through the AWS Management Console. For more
1077
- # information about managing passwords, see [Managing Passwords][1] in
1078
- # the *IAM User Guide*.
1112
+ # Creates a password for the specified IAM user. A password allows an
1113
+ # IAM user to access AWS services through the AWS Management Console.
1114
+ #
1115
+ # You can use the AWS CLI, the AWS API, or the **Users** page in the IAM
1116
+ # console to create a password for any IAM user. Use ChangePassword to
1117
+ # update your own existing password in the **My Security Credentials**
1118
+ # page in the AWS Management Console.
1119
+ #
1120
+ # For more information about managing passwords, see [Managing
1121
+ # passwords][1] in the *IAM User Guide*.
1079
1122
  #
1080
1123
  #
1081
1124
  #
@@ -1238,16 +1281,33 @@ module Aws::IAM
1238
1281
  # certificate used by https://keys.server.example.com.
1239
1282
  #
1240
1283
  # For more information about obtaining the OIDC provider's thumbprint,
1241
- # see [Obtaining the Thumbprint for an OpenID Connect Provider][1] in
1284
+ # see [Obtaining the thumbprint for an OpenID Connect provider][1] in
1242
1285
  # the *IAM User Guide*.
1243
1286
  #
1244
1287
  #
1245
1288
  #
1246
1289
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html
1247
1290
  #
1291
+ # @option params [Array<Types::Tag>] :tags
1292
+ # A list of tags that you want to attach to the new IAM OpenID Connect
1293
+ # (OIDC) provider. Each tag consists of a key name and an associated
1294
+ # value. For more information about tagging, see [Tagging IAM
1295
+ # resources][1] in the *IAM User Guide*.
1296
+ #
1297
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
1298
+ # number of tags, then the entire request fails and the resource is not
1299
+ # created.
1300
+ #
1301
+ # </note>
1302
+ #
1303
+ #
1304
+ #
1305
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
1306
+ #
1248
1307
  # @return [Types::CreateOpenIDConnectProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1249
1308
  #
1250
1309
  # * {Types::CreateOpenIDConnectProviderResponse#open_id_connect_provider_arn #open_id_connect_provider_arn} => String
1310
+ # * {Types::CreateOpenIDConnectProviderResponse#tags #tags} => Array&lt;Types::Tag&gt;
1251
1311
  #
1252
1312
  #
1253
1313
  # @example Example: To create an instance profile
@@ -1276,11 +1336,20 @@ module Aws::IAM
1276
1336
  # url: "OpenIDConnectProviderUrlType", # required
1277
1337
  # client_id_list: ["clientIDType"],
1278
1338
  # thumbprint_list: ["thumbprintType"], # required
1339
+ # tags: [
1340
+ # {
1341
+ # key: "tagKeyType", # required
1342
+ # value: "tagValueType", # required
1343
+ # },
1344
+ # ],
1279
1345
  # })
1280
1346
  #
1281
1347
  # @example Response structure
1282
1348
  #
1283
1349
  # resp.open_id_connect_provider_arn #=> String
1350
+ # resp.tags #=> Array
1351
+ # resp.tags[0].key #=> String
1352
+ # resp.tags[0].value #=> String
1284
1353
  #
1285
1354
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateOpenIDConnectProvider AWS API Documentation
1286
1355
  #
@@ -1295,11 +1364,11 @@ module Aws::IAM
1295
1364
  #
1296
1365
  # This operation creates a policy version with a version identifier of
1297
1366
  # `v1` and sets v1 as the policy's default version. For more
1298
- # information about policy versions, see [Versioning for Managed
1299
- # Policies][1] in the *IAM User Guide*.
1367
+ # information about policy versions, see [Versioning for managed
1368
+ # policies][1] in the *IAM User Guide*.
1300
1369
  #
1301
1370
  # For more information about managed policies in general, see [Managed
1302
- # Policies and Inline Policies][2] in the *IAM User Guide*.
1371
+ # policies and inline policies][2] in the *IAM User Guide*.
1303
1372
  #
1304
1373
  #
1305
1374
  #
@@ -1316,7 +1385,7 @@ module Aws::IAM
1316
1385
  # @option params [String] :path
1317
1386
  # The path for the policy.
1318
1387
  #
1319
- # For more information about paths, see [IAM Identifiers][1] in the *IAM
1388
+ # For more information about paths, see [IAM identifiers][1] in the *IAM
1320
1389
  # User Guide*.
1321
1390
  #
1322
1391
  # This parameter is optional. If it is not included, it defaults to a
@@ -1369,6 +1438,22 @@ module Aws::IAM
1369
1438
  # The policy description is immutable. After a value is assigned, it
1370
1439
  # cannot be changed.
1371
1440
  #
1441
+ # @option params [Array<Types::Tag>] :tags
1442
+ # A list of tags that you want to attach to the new IAM customer managed
1443
+ # policy. Each tag consists of a key name and an associated value. For
1444
+ # more information about tagging, see [Tagging IAM resources][1] in the
1445
+ # *IAM User Guide*.
1446
+ #
1447
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
1448
+ # number of tags, then the entire request fails and the resource is not
1449
+ # created.
1450
+ #
1451
+ # </note>
1452
+ #
1453
+ #
1454
+ #
1455
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
1456
+ #
1372
1457
  # @return [Types::CreatePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1373
1458
  #
1374
1459
  # * {Types::CreatePolicyResponse#policy #policy} => Types::Policy
@@ -1380,6 +1465,12 @@ module Aws::IAM
1380
1465
  # path: "policyPathType",
1381
1466
  # policy_document: "policyDocumentType", # required
1382
1467
  # description: "policyDescriptionType",
1468
+ # tags: [
1469
+ # {
1470
+ # key: "tagKeyType", # required
1471
+ # value: "tagValueType", # required
1472
+ # },
1473
+ # ],
1383
1474
  # })
1384
1475
  #
1385
1476
  # @example Response structure
@@ -1395,6 +1486,9 @@ module Aws::IAM
1395
1486
  # resp.policy.description #=> String
1396
1487
  # resp.policy.create_date #=> Time
1397
1488
  # resp.policy.update_date #=> Time
1489
+ # resp.policy.tags #=> Array
1490
+ # resp.policy.tags[0].key #=> String
1491
+ # resp.policy.tags[0].value #=> String
1398
1492
  #
1399
1493
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreatePolicy AWS API Documentation
1400
1494
  #
@@ -1416,7 +1510,7 @@ module Aws::IAM
1416
1510
  # IAM users, groups, and roles to which the policy is attached.
1417
1511
  #
1418
1512
  # For more information about managed policy versions, see [Versioning
1419
- # for Managed Policies][1] in the *IAM User Guide*.
1513
+ # for managed policies][1] in the *IAM User Guide*.
1420
1514
  #
1421
1515
  #
1422
1516
  #
@@ -1426,8 +1520,8 @@ module Aws::IAM
1426
1520
  # The Amazon Resource Name (ARN) of the IAM policy to which you want to
1427
1521
  # add a new version.
1428
1522
  #
1429
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
1430
- # AWS Service Namespaces][1] in the *AWS General Reference*.
1523
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
1524
+ # in the *AWS General Reference*.
1431
1525
  #
1432
1526
  #
1433
1527
  #
@@ -1467,7 +1561,7 @@ module Aws::IAM
1467
1561
  # for the IAM users, groups, and roles that the policy is attached to.
1468
1562
  #
1469
1563
  # For more information about managed policy versions, see [Versioning
1470
- # for Managed Policies][1] in the *IAM User Guide*.
1564
+ # for managed policies][1] in the *IAM User Guide*.
1471
1565
  #
1472
1566
  #
1473
1567
  #
@@ -1502,9 +1596,9 @@ module Aws::IAM
1502
1596
  end
1503
1597
 
1504
1598
  # Creates a new role for your AWS account. For more information about
1505
- # roles, go to [IAM Roles][1]. The number and size of IAM resources in
1506
- # an AWS account are limited. For more information, see [IAM and STS
1507
- # Quotas][2] in the *IAM User Guide*.
1599
+ # roles, see [IAM roles][1]. For information about quotas for role names
1600
+ # and the number of roles you can create, see [IAM and STS quotas][2] in
1601
+ # the *IAM User Guide*.
1508
1602
  #
1509
1603
  #
1510
1604
  #
@@ -1584,7 +1678,7 @@ module Aws::IAM
1584
1678
  # for one hour by default. This applies when you use the `AssumeRole*`
1585
1679
  # API operations or the `assume-role*` CLI operations but does not apply
1586
1680
  # when you use those operations to create a console URL. For more
1587
- # information, see [Using IAM Roles][1] in the *IAM User Guide*.
1681
+ # information, see [Using IAM roles][1] in the *IAM User Guide*.
1588
1682
  #
1589
1683
  #
1590
1684
  #
@@ -1595,13 +1689,12 @@ module Aws::IAM
1595
1689
  # the role.
1596
1690
  #
1597
1691
  # @option params [Array<Types::Tag>] :tags
1598
- # A list of tags that you want to attach to the newly created role. Each
1599
- # tag consists of a key name and an associated value. For more
1600
- # information about tagging, see [Tagging IAM Identities][1] in the *IAM
1601
- # User Guide*.
1692
+ # A list of tags that you want to attach to the new role. Each tag
1693
+ # consists of a key name and an associated value. For more information
1694
+ # about tagging, see [Tagging IAM resources][1] in the *IAM User Guide*.
1602
1695
  #
1603
- # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed number
1604
- # of tags per role, then the entire request fails and the role is not
1696
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
1697
+ # number of tags, then the entire request fails and the resource is not
1605
1698
  # created.
1606
1699
  #
1607
1700
  # </note>
@@ -1703,9 +1796,9 @@ module Aws::IAM
1703
1796
  #
1704
1797
  # </note>
1705
1798
  #
1706
- # For more information, see [Enabling SAML 2.0 Federated Users to Access
1799
+ # For more information, see [Enabling SAML 2.0 federated users to access
1707
1800
  # the AWS Management Console][2] and [About SAML 2.0-based
1708
- # Federation][3] in the *IAM User Guide*.
1801
+ # federation][3] in the *IAM User Guide*.
1709
1802
  #
1710
1803
  #
1711
1804
  #
@@ -1721,7 +1814,7 @@ module Aws::IAM
1721
1814
  # You must generate the metadata document using the identity management
1722
1815
  # software that is used as your organization's IdP.
1723
1816
  #
1724
- # For more information, see [About SAML 2.0-based Federation][1] in the
1817
+ # For more information, see [About SAML 2.0-based federation][1] in the
1725
1818
  # *IAM User Guide*
1726
1819
  #
1727
1820
  #
@@ -1740,20 +1833,46 @@ module Aws::IAM
1740
1833
  #
1741
1834
  # [1]: http://wikipedia.org/wiki/regex
1742
1835
  #
1836
+ # @option params [Array<Types::Tag>] :tags
1837
+ # A list of tags that you want to attach to the new IAM SAML provider.
1838
+ # Each tag consists of a key name and an associated value. For more
1839
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
1840
+ # User Guide*.
1841
+ #
1842
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
1843
+ # number of tags, then the entire request fails and the resource is not
1844
+ # created.
1845
+ #
1846
+ # </note>
1847
+ #
1848
+ #
1849
+ #
1850
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
1851
+ #
1743
1852
  # @return [Types::CreateSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1744
1853
  #
1745
1854
  # * {Types::CreateSAMLProviderResponse#saml_provider_arn #saml_provider_arn} => String
1855
+ # * {Types::CreateSAMLProviderResponse#tags #tags} => Array&lt;Types::Tag&gt;
1746
1856
  #
1747
1857
  # @example Request syntax with placeholder values
1748
1858
  #
1749
1859
  # resp = client.create_saml_provider({
1750
1860
  # saml_metadata_document: "SAMLMetadataDocumentType", # required
1751
1861
  # name: "SAMLProviderNameType", # required
1862
+ # tags: [
1863
+ # {
1864
+ # key: "tagKeyType", # required
1865
+ # value: "tagValueType", # required
1866
+ # },
1867
+ # ],
1752
1868
  # })
1753
1869
  #
1754
1870
  # @example Response structure
1755
1871
  #
1756
1872
  # resp.saml_provider_arn #=> String
1873
+ # resp.tags #=> Array
1874
+ # resp.tags[0].key #=> String
1875
+ # resp.tags[0].value #=> String
1757
1876
  #
1758
1877
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateSAMLProvider AWS API Documentation
1759
1878
  #
@@ -1771,7 +1890,7 @@ module Aws::IAM
1771
1890
  # resources into an unknown state. Allowing the service to control the
1772
1891
  # role helps improve service stability and proper cleanup when a service
1773
1892
  # and its role are no longer needed. For more information, see [Using
1774
- # Service-Linked Roles][1] in the *IAM User Guide*.
1893
+ # service-linked roles][1] in the *IAM User Guide*.
1775
1894
  #
1776
1895
  # To attach a policy to this service-linked role, you must make the
1777
1896
  # request using the AWS service that depends on this role.
@@ -1786,8 +1905,8 @@ module Aws::IAM
1786
1905
  # front. For example: `elasticbeanstalk.amazonaws.com`.
1787
1906
  #
1788
1907
  # Service principals are unique and case-sensitive. To find the exact
1789
- # service principal for your service-linked role, see [AWS Services That
1790
- # Work with IAM][1] in the *IAM User Guide*. Look for the services that
1908
+ # service principal for your service-linked role, see [AWS services that
1909
+ # work with IAM][1] in the *IAM User Guide*. Look for the services that
1791
1910
  # have <b>Yes </b>in the **Service-Linked Role** column. Choose the
1792
1911
  # **Yes** link to view the service-linked role documentation for that
1793
1912
  # service.
@@ -1857,14 +1976,15 @@ module Aws::IAM
1857
1976
  # You can have a maximum of two sets of service-specific credentials for
1858
1977
  # each supported service per user.
1859
1978
  #
1860
- # The only supported service at this time is AWS CodeCommit.
1979
+ # You can create service-specific credentials for AWS CodeCommit and
1980
+ # Amazon Keyspaces (for Apache Cassandra).
1861
1981
  #
1862
1982
  # You can reset the password to a new service-generated value by calling
1863
1983
  # ResetServiceSpecificCredential.
1864
1984
  #
1865
1985
  # For more information about service-specific credentials, see [Using
1866
- # IAM with AWS CodeCommit: Git Credentials, SSH Keys, and AWS Access
1867
- # Keys][1] in the *IAM User Guide*.
1986
+ # IAM with AWS CodeCommit: Git credentials, SSH keys, and AWS access
1987
+ # keys][1] in the *IAM User Guide*.
1868
1988
  #
1869
1989
  #
1870
1990
  #
@@ -1922,9 +2042,8 @@ module Aws::IAM
1922
2042
 
1923
2043
  # Creates a new IAM user for your AWS account.
1924
2044
  #
1925
- # The number and size of IAM resources in an AWS account are limited.
1926
- # For more information, see [IAM and STS Quotas][1] in the *IAM User
1927
- # Guide*.
2045
+ # For information about quotas for the number of IAM users you can
2046
+ # create, see [IAM and STS quotas][1] in the *IAM User Guide*.
1928
2047
  #
1929
2048
  #
1930
2049
  #
@@ -1932,7 +2051,7 @@ module Aws::IAM
1932
2051
  #
1933
2052
  # @option params [String] :path
1934
2053
  # The path for the user name. For more information about paths, see [IAM
1935
- # Identifiers][1] in the *IAM User Guide*.
2054
+ # identifiers][1] in the *IAM User Guide*.
1936
2055
  #
1937
2056
  # This parameter is optional. If it is not included, it defaults to a
1938
2057
  # slash (/).
@@ -1961,13 +2080,12 @@ module Aws::IAM
1961
2080
  # the user.
1962
2081
  #
1963
2082
  # @option params [Array<Types::Tag>] :tags
1964
- # A list of tags that you want to attach to the newly created user. Each
1965
- # tag consists of a key name and an associated value. For more
1966
- # information about tagging, see [Tagging IAM Identities][1] in the *IAM
1967
- # User Guide*.
2083
+ # A list of tags that you want to attach to the new user. Each tag
2084
+ # consists of a key name and an associated value. For more information
2085
+ # about tagging, see [Tagging IAM resources][1] in the *IAM User Guide*.
1968
2086
  #
1969
- # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed number
1970
- # of tags per user, then the entire request fails and the user is not
2087
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
2088
+ # number of tags, then the entire request fails and the resource is not
1971
2089
  # created.
1972
2090
  #
1973
2091
  # </note>
@@ -2040,12 +2158,11 @@ module Aws::IAM
2040
2158
  # Creates a new virtual MFA device for the AWS account. After creating
2041
2159
  # the virtual MFA, use EnableMFADevice to attach the MFA device to an
2042
2160
  # IAM user. For more information about creating and working with virtual
2043
- # MFA devices, go to [Using a Virtual MFA Device][1] in the *IAM User
2161
+ # MFA devices, see [Using a virtual MFA device][1] in the *IAM User
2044
2162
  # Guide*.
2045
2163
  #
2046
- # The number and size of IAM resources in an AWS account are limited.
2047
- # For more information, see [IAM and STS Quotas][2] in the *IAM User
2048
- # Guide*.
2164
+ # For information about the maximum number of MFA devices you can
2165
+ # create, see [IAM and STS quotas][2] in the *IAM User Guide*.
2049
2166
  #
2050
2167
  # The seed information contained in the QR code and the Base32 string
2051
2168
  # should be treated like any other secret access information. In other
@@ -2060,7 +2177,7 @@ module Aws::IAM
2060
2177
  #
2061
2178
  # @option params [String] :path
2062
2179
  # The path for the virtual MFA device. For more information about paths,
2063
- # see [IAM Identifiers][1] in the *IAM User Guide*.
2180
+ # see [IAM identifiers][1] in the *IAM User Guide*.
2064
2181
  #
2065
2182
  # This parameter is optional. If it is not included, it defaults to a
2066
2183
  # slash (/).
@@ -2090,6 +2207,22 @@ module Aws::IAM
2090
2207
  #
2091
2208
  # [1]: http://wikipedia.org/wiki/regex
2092
2209
  #
2210
+ # @option params [Array<Types::Tag>] :tags
2211
+ # A list of tags that you want to attach to the new IAM virtual MFA
2212
+ # device. Each tag consists of a key name and an associated value. For
2213
+ # more information about tagging, see [Tagging IAM resources][1] in the
2214
+ # *IAM User Guide*.
2215
+ #
2216
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
2217
+ # number of tags, then the entire request fails and the resource is not
2218
+ # created.
2219
+ #
2220
+ # </note>
2221
+ #
2222
+ #
2223
+ #
2224
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
2225
+ #
2093
2226
  # @return [Types::CreateVirtualMFADeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2094
2227
  #
2095
2228
  # * {Types::CreateVirtualMFADeviceResponse#virtual_mfa_device #virtual_mfa_device} => Types::VirtualMFADevice
@@ -2099,6 +2232,12 @@ module Aws::IAM
2099
2232
  # resp = client.create_virtual_mfa_device({
2100
2233
  # path: "pathType",
2101
2234
  # virtual_mfa_device_name: "virtualMFADeviceName", # required
2235
+ # tags: [
2236
+ # {
2237
+ # key: "tagKeyType", # required
2238
+ # value: "tagValueType", # required
2239
+ # },
2240
+ # ],
2102
2241
  # })
2103
2242
  #
2104
2243
  # @example Response structure
@@ -2118,6 +2257,9 @@ module Aws::IAM
2118
2257
  # resp.virtual_mfa_device.user.tags[0].key #=> String
2119
2258
  # resp.virtual_mfa_device.user.tags[0].value #=> String
2120
2259
  # resp.virtual_mfa_device.enable_date #=> Time
2260
+ # resp.virtual_mfa_device.tags #=> Array
2261
+ # resp.virtual_mfa_device.tags[0].key #=> String
2262
+ # resp.virtual_mfa_device.tags[0].value #=> String
2121
2263
  #
2122
2264
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateVirtualMFADevice AWS API Documentation
2123
2265
  #
@@ -2132,8 +2274,8 @@ module Aws::IAM
2132
2274
  # with the user name for which it was originally enabled.
2133
2275
  #
2134
2276
  # For more information about creating and working with virtual MFA
2135
- # devices, go to [Enabling a Virtual Multi-factor Authentication (MFA)
2136
- # Device][1] in the *IAM User Guide*.
2277
+ # devices, see [Enabling a virtual multi-factor authentication (MFA)
2278
+ # device][1] in the *IAM User Guide*.
2137
2279
  #
2138
2280
  #
2139
2281
  #
@@ -2243,7 +2385,7 @@ module Aws::IAM
2243
2385
  end
2244
2386
 
2245
2387
  # Deletes the specified AWS account alias. For information about using
2246
- # an AWS account alias, see [Using an Alias for Your AWS Account ID][1]
2388
+ # an AWS account alias, see [Using an alias for your AWS account ID][1]
2247
2389
  # in the *IAM User Guide*.
2248
2390
  #
2249
2391
  #
@@ -2347,8 +2489,8 @@ module Aws::IAM
2347
2489
  #
2348
2490
  # A group can also have managed policies attached to it. To detach a
2349
2491
  # managed policy from a group, use DetachGroupPolicy. For more
2350
- # information about policies, refer to [Managed Policies and Inline
2351
- # Policies][1] in the *IAM User Guide*.
2492
+ # information about policies, refer to [Managed policies and inline
2493
+ # policies][1] in the *IAM User Guide*.
2352
2494
  #
2353
2495
  #
2354
2496
  #
@@ -2415,8 +2557,8 @@ module Aws::IAM
2415
2557
  # instance profile that is associated with a running instance will break
2416
2558
  # any applications running on the instance.
2417
2559
  #
2418
- # For more information about instance profiles, go to [About Instance
2419
- # Profiles][1].
2560
+ # For more information about instance profiles, see [About instance
2561
+ # profiles][1].
2420
2562
  #
2421
2563
  #
2422
2564
  #
@@ -2464,6 +2606,11 @@ module Aws::IAM
2464
2606
  # user's ability to access AWS services through the AWS Management
2465
2607
  # Console.
2466
2608
  #
2609
+ # You can use the AWS CLI, the AWS API, or the **Users** page in the IAM
2610
+ # console to delete a password for any IAM user. You can use
2611
+ # ChangePassword to update, but not delete, your own password in the
2612
+ # **My Security Credentials** page in the AWS Management Console.
2613
+ #
2467
2614
  # Deleting a user's password does not prevent a user from accessing AWS
2468
2615
  # through the command line interface or the API. To prevent all user
2469
2616
  # access, you must also either make any access keys inactive or delete
@@ -2549,9 +2696,9 @@ module Aws::IAM
2549
2696
  # steps describe the process for deleting a managed policy:
2550
2697
  #
2551
2698
  # * Detach the policy from all users, groups, and roles that the policy
2552
- # is attached to, using the DetachUserPolicy, DetachGroupPolicy, or
2553
- # DetachRolePolicy API operations. To list all the users, groups, and
2554
- # roles that a policy is attached to, use ListEntitiesForPolicy.
2699
+ # is attached to, using DetachUserPolicy, DetachGroupPolicy, or
2700
+ # DetachRolePolicy. To list all the users, groups, and roles that a
2701
+ # policy is attached to, use ListEntitiesForPolicy.
2555
2702
  #
2556
2703
  # * Delete all versions of the policy using DeletePolicyVersion. To list
2557
2704
  # the policy's versions, use ListPolicyVersions. You cannot use
@@ -2560,10 +2707,10 @@ module Aws::IAM
2560
2707
  # next step of the process.
2561
2708
  #
2562
2709
  # * Delete the policy (this automatically deletes the policy's default
2563
- # version) using this API.
2710
+ # version) using this operation.
2564
2711
  #
2565
- # For information about managed policies, see [Managed Policies and
2566
- # Inline Policies][1] in the *IAM User Guide*.
2712
+ # For information about managed policies, see [Managed policies and
2713
+ # inline policies][1] in the *IAM User Guide*.
2567
2714
  #
2568
2715
  #
2569
2716
  #
@@ -2572,8 +2719,8 @@ module Aws::IAM
2572
2719
  # @option params [required, String] :policy_arn
2573
2720
  # The Amazon Resource Name (ARN) of the IAM policy you want to delete.
2574
2721
  #
2575
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
2576
- # AWS Service Namespaces][1] in the *AWS General Reference*.
2722
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
2723
+ # in the *AWS General Reference*.
2577
2724
  #
2578
2725
  #
2579
2726
  #
@@ -2598,13 +2745,13 @@ module Aws::IAM
2598
2745
 
2599
2746
  # Deletes the specified version from the specified managed policy.
2600
2747
  #
2601
- # You cannot delete the default version from a policy using this API. To
2602
- # delete the default version from a policy, use DeletePolicy. To find
2603
- # out which version of a policy is marked as the default version, use
2604
- # ListPolicyVersions.
2748
+ # You cannot delete the default version from a policy using this
2749
+ # operation. To delete the default version from a policy, use
2750
+ # DeletePolicy. To find out which version of a policy is marked as the
2751
+ # default version, use ListPolicyVersions.
2605
2752
  #
2606
2753
  # For information about versions for managed policies, see [Versioning
2607
- # for Managed Policies][1] in the *IAM User Guide*.
2754
+ # for managed policies][1] in the *IAM User Guide*.
2608
2755
  #
2609
2756
  #
2610
2757
  #
@@ -2614,8 +2761,8 @@ module Aws::IAM
2614
2761
  # The Amazon Resource Name (ARN) of the IAM policy from which you want
2615
2762
  # to delete a version.
2616
2763
  #
2617
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
2618
- # AWS Service Namespaces][1] in the *AWS General Reference*.
2764
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
2765
+ # in the *AWS General Reference*.
2619
2766
  #
2620
2767
  #
2621
2768
  #
@@ -2630,7 +2777,7 @@ module Aws::IAM
2630
2777
  # of letters and digits.
2631
2778
  #
2632
2779
  # For more information about managed policy versions, see [Versioning
2633
- # for Managed Policies][2] in the *IAM User Guide*.
2780
+ # for managed policies][2] in the *IAM User Guide*.
2634
2781
  #
2635
2782
  #
2636
2783
  #
@@ -2656,8 +2803,8 @@ module Aws::IAM
2656
2803
  end
2657
2804
 
2658
2805
  # Deletes the specified role. The role must not have any policies
2659
- # attached. For more information about roles, go to [Working with
2660
- # Roles][1].
2806
+ # attached. For more information about roles, see [Working with
2807
+ # roles][1].
2661
2808
  #
2662
2809
  # Make sure that you do not have any Amazon EC2 instances running with
2663
2810
  # the role you are about to delete. Deleting a role or instance profile
@@ -2738,7 +2885,7 @@ module Aws::IAM
2738
2885
  #
2739
2886
  # A role can also have managed policies attached to it. To detach a
2740
2887
  # managed policy from a role, use DetachRolePolicy. For more information
2741
- # about policies, refer to [Managed Policies and Inline Policies][1] in
2888
+ # about policies, refer to [Managed policies and inline policies][1] in
2742
2889
  # the *IAM User Guide*.
2743
2890
  #
2744
2891
  #
@@ -2839,7 +2986,7 @@ module Aws::IAM
2839
2986
  # authenticating the associated IAM user to an AWS CodeCommit
2840
2987
  # repository. For more information about using SSH keys to authenticate
2841
2988
  # to an AWS CodeCommit repository, see [Set up AWS CodeCommit for SSH
2842
- # Connections][1] in the *AWS CodeCommit User Guide*.
2989
+ # connections][1] in the *AWS CodeCommit User Guide*.
2843
2990
  #
2844
2991
  #
2845
2992
  #
@@ -2889,7 +3036,7 @@ module Aws::IAM
2889
3036
  # Deletes the specified server certificate.
2890
3037
  #
2891
3038
  # For more information about working with server certificates, see
2892
- # [Working with Server Certificates][1] in the *IAM User Guide*. This
3039
+ # [Working with server certificates][1] in the *IAM User Guide*. This
2893
3040
  # topic also includes a list of AWS services that can use the server
2894
3041
  # certificates that you manage with IAM.
2895
3042
  #
@@ -2900,8 +3047,8 @@ module Aws::IAM
2900
3047
  # cause Elastic Load Balancing to stop accepting traffic. We recommend
2901
3048
  # that you remove the reference to the certificate from Elastic Load
2902
3049
  # Balancing before using this command to delete the certificate. For
2903
- # more information, go to [DeleteLoadBalancerListeners][2] in the
2904
- # *Elastic Load Balancing API Reference*.
3050
+ # more information, see [DeleteLoadBalancerListeners][2] in the *Elastic
3051
+ # Load Balancing API Reference*.
2905
3052
  #
2906
3053
  #
2907
3054
  #
@@ -2947,17 +3094,16 @@ module Aws::IAM
2947
3094
  #
2948
3095
  # If you submit a deletion request for a service-linked role whose
2949
3096
  # linked service is still accessing a resource, then the deletion task
2950
- # fails. If it fails, the GetServiceLinkedRoleDeletionStatus API
2951
- # operation returns the reason for the failure, usually including the
2952
- # resources that must be deleted. To delete the service-linked role, you
2953
- # must first remove those resources from the linked service and then
2954
- # submit the deletion request again. Resources are specific to the
2955
- # service that is linked to the role. For more information about
2956
- # removing resources from a service, see the [AWS documentation][1] for
2957
- # your service.
3097
+ # fails. If it fails, the GetServiceLinkedRoleDeletionStatus operation
3098
+ # returns the reason for the failure, usually including the resources
3099
+ # that must be deleted. To delete the service-linked role, you must
3100
+ # first remove those resources from the linked service and then submit
3101
+ # the deletion request again. Resources are specific to the service that
3102
+ # is linked to the role. For more information about removing resources
3103
+ # from a service, see the [AWS documentation][1] for your service.
2958
3104
  #
2959
- # For more information about service-linked roles, see [Roles Terms and
2960
- # Concepts: AWS Service-Linked Role][2] in the *IAM User Guide*.
3105
+ # For more information about service-linked roles, see [Roles terms and
3106
+ # concepts: AWS service-linked role][2] in the *IAM User Guide*.
2961
3107
  #
2962
3108
  #
2963
3109
  #
@@ -3098,7 +3244,7 @@ module Aws::IAM
3098
3244
  # Deletes the specified IAM user. Unlike the AWS Management Console,
3099
3245
  # when you delete a user programmatically, you must delete the items
3100
3246
  # attached to the user manually, or the deletion fails. For more
3101
- # information, see [Deleting an IAM User][1]. Before attempting to
3247
+ # information, see [Deleting an IAM user][1]. Before attempting to
3102
3248
  # delete a user, remove the following items:
3103
3249
  #
3104
3250
  # * Password (DeleteLoginProfile)
@@ -3194,7 +3340,7 @@ module Aws::IAM
3194
3340
  #
3195
3341
  # A user can also have managed policies attached to it. To detach a
3196
3342
  # managed policy from a user, use DetachUserPolicy. For more information
3197
- # about policies, refer to [Managed Policies and Inline Policies][1] in
3343
+ # about policies, refer to [Managed policies and inline policies][1] in
3198
3344
  # the *IAM User Guide*.
3199
3345
  #
3200
3346
  #
@@ -3304,9 +3450,8 @@ module Aws::IAM
3304
3450
  # Removes the specified managed policy from the specified IAM group.
3305
3451
  #
3306
3452
  # A group can also have inline policies embedded with it. To delete an
3307
- # inline policy, use the DeleteGroupPolicy API. For information about
3308
- # policies, see [Managed Policies and Inline Policies][1] in the *IAM
3309
- # User Guide*.
3453
+ # inline policy, use DeleteGroupPolicy. For information about policies,
3454
+ # see [Managed policies and inline policies][1] in the *IAM User Guide*.
3310
3455
  #
3311
3456
  #
3312
3457
  #
@@ -3328,8 +3473,8 @@ module Aws::IAM
3328
3473
  # @option params [required, String] :policy_arn
3329
3474
  # The Amazon Resource Name (ARN) of the IAM policy you want to detach.
3330
3475
  #
3331
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
3332
- # AWS Service Namespaces][1] in the *AWS General Reference*.
3476
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
3477
+ # in the *AWS General Reference*.
3333
3478
  #
3334
3479
  #
3335
3480
  #
@@ -3356,9 +3501,8 @@ module Aws::IAM
3356
3501
  # Removes the specified managed policy from the specified role.
3357
3502
  #
3358
3503
  # A role can also have inline policies embedded with it. To delete an
3359
- # inline policy, use the DeleteRolePolicy API. For information about
3360
- # policies, see [Managed Policies and Inline Policies][1] in the *IAM
3361
- # User Guide*.
3504
+ # inline policy, use DeleteRolePolicy. For information about policies,
3505
+ # see [Managed policies and inline policies][1] in the *IAM User Guide*.
3362
3506
  #
3363
3507
  #
3364
3508
  #
@@ -3380,8 +3524,8 @@ module Aws::IAM
3380
3524
  # @option params [required, String] :policy_arn
3381
3525
  # The Amazon Resource Name (ARN) of the IAM policy you want to detach.
3382
3526
  #
3383
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
3384
- # AWS Service Namespaces][1] in the *AWS General Reference*.
3527
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
3528
+ # in the *AWS General Reference*.
3385
3529
  #
3386
3530
  #
3387
3531
  #
@@ -3408,9 +3552,8 @@ module Aws::IAM
3408
3552
  # Removes the specified managed policy from the specified user.
3409
3553
  #
3410
3554
  # A user can also have inline policies embedded with it. To delete an
3411
- # inline policy, use the DeleteUserPolicy API. For information about
3412
- # policies, see [Managed Policies and Inline Policies][1] in the *IAM
3413
- # User Guide*.
3555
+ # inline policy, use DeleteUserPolicy. For information about policies,
3556
+ # see [Managed policies and inline policies][1] in the *IAM User Guide*.
3414
3557
  #
3415
3558
  #
3416
3559
  #
@@ -3432,8 +3575,8 @@ module Aws::IAM
3432
3575
  # @option params [required, String] :policy_arn
3433
3576
  # The Amazon Resource Name (ARN) of the IAM policy you want to detach.
3434
3577
  #
3435
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
3436
- # AWS Service Namespaces][1] in the *AWS General Reference*.
3578
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
3579
+ # in the *AWS General Reference*.
3437
3580
  #
3438
3581
  #
3439
3582
  #
@@ -3539,8 +3682,8 @@ module Aws::IAM
3539
3682
  end
3540
3683
 
3541
3684
  # Generates a credential report for the AWS account. For more
3542
- # information about the credential report, see [Getting Credential
3543
- # Reports][1] in the *IAM User Guide*.
3685
+ # information about the credential report, see [Getting credential
3686
+ # reports][1] in the *IAM User Guide*.
3544
3687
  #
3545
3688
  #
3546
3689
  #
@@ -3571,12 +3714,12 @@ module Aws::IAM
3571
3714
  # your organization.
3572
3715
  #
3573
3716
  # To call this operation, you must be signed in using your AWS
3574
- # Organizations master account credentials. You can use your long-term
3575
- # IAM user or root user credentials, or temporary credentials from
3576
- # assuming an IAM role. SCPs must be enabled for your organization root.
3577
- # You must have the required IAM and AWS Organizations permissions. For
3578
- # more information, see [Refining Permissions Using Service Last
3579
- # Accessed Data][1] in the *IAM User Guide*.
3717
+ # Organizations management account credentials. You can use your
3718
+ # long-term IAM user or root user credentials, or temporary credentials
3719
+ # from assuming an IAM role. SCPs must be enabled for your organization
3720
+ # root. You must have the required IAM and AWS Organizations
3721
+ # permissions. For more information, see [Refining permissions using
3722
+ # service last accessed data][1] in the *IAM User Guide*.
3580
3723
  #
3581
3724
  # You can generate a service last accessed data report for entities by
3582
3725
  # specifying only the entity's path. This data includes a list of
@@ -3592,8 +3735,8 @@ module Aws::IAM
3592
3735
  # recent account activity that the policy allows to account principals
3593
3736
  # in the entity or the entity's children. For important information
3594
3737
  # about the data, reporting period, permissions required,
3595
- # troubleshooting, and supported Regions see [Reducing Permissions Using
3596
- # Service Last Accessed Data][1] in the *IAM User Guide*.
3738
+ # troubleshooting, and supported Regions see [Reducing permissions using
3739
+ # service last accessed data][1] in the *IAM User Guide*.
3597
3740
  #
3598
3741
  # The data includes all attempts to access AWS, not just the successful
3599
3742
  # ones. This includes all attempts that were made using the AWS
@@ -3603,7 +3746,7 @@ module Aws::IAM
3603
3746
  # request might have been denied. Refer to your CloudTrail logs as the
3604
3747
  # authoritative source for information about all API calls and whether
3605
3748
  # they were successful or denied access. For more information,
3606
- # see [Logging IAM Events with CloudTrail][2] in the *IAM User Guide*.
3749
+ # see [Logging IAM events with CloudTrail][2] in the *IAM User Guide*.
3607
3750
  #
3608
3751
  # This operation returns a `JobId`. Use this parameter in the `
3609
3752
  # GetOrganizationsAccessReport ` operation to check the status of the
@@ -3620,20 +3763,20 @@ module Aws::IAM
3620
3763
  # * **Root** – When you specify the organizations root as the entity,
3621
3764
  # the resulting report lists all of the services allowed by SCPs that
3622
3765
  # are attached to your root. For each service, the report includes
3623
- # data for all accounts in your organization except the master
3624
- # account, because the master account is not limited by SCPs.
3766
+ # data for all accounts in your organization except the management
3767
+ # account, because the management account is not limited by SCPs.
3625
3768
  #
3626
3769
  # * **OU** – When you specify an organizational unit (OU) as the entity,
3627
3770
  # the resulting report lists all of the services allowed by SCPs that
3628
3771
  # are attached to the OU and its parents. For each service, the report
3629
3772
  # includes data for all accounts in the OU or its children. This data
3630
- # excludes the master account, because the master account is not
3631
- # limited by SCPs.
3773
+ # excludes the management account, because the management account is
3774
+ # not limited by SCPs.
3632
3775
  #
3633
- # * **Master account** – When you specify the master account, the
3634
- # resulting report lists all AWS services, because the master account
3635
- # is not limited by SCPs. For each service, the report includes data
3636
- # for only the master account.
3776
+ # * **management account** – When you specify the management account,
3777
+ # the resulting report lists all AWS services, because the management
3778
+ # account is not limited by SCPs. For each service, the report
3779
+ # includes data for only the management account.
3637
3780
  #
3638
3781
  # * **Account** – When you specify another account as the entity, the
3639
3782
  # resulting report lists all of the services allowed by SCPs that are
@@ -3649,26 +3792,26 @@ module Aws::IAM
3649
3792
  # resulting report lists all of the services that are allowed by the
3650
3793
  # specified SCP. For each service, the report includes data for all
3651
3794
  # accounts in your organization to which the SCP applies. This data
3652
- # excludes the master account, because the master account is not
3653
- # limited by SCPs. If the SCP is not attached to any entities in the
3654
- # organization, then the report will return a list of services with no
3655
- # data.
3795
+ # excludes the management account, because the management account is
3796
+ # not limited by SCPs. If the SCP is not attached to any entities in
3797
+ # the organization, then the report will return a list of services
3798
+ # with no data.
3656
3799
  #
3657
3800
  # * **OU** – When you specify an OU entity and a policy ID, the
3658
3801
  # resulting report lists all of the services that are allowed by the
3659
3802
  # specified SCP. For each service, the report includes data for all
3660
3803
  # accounts in the OU or its children to which the SCP applies. This
3661
3804
  # means that other accounts outside the OU that are affected by the
3662
- # SCP might not be included in the data. This data excludes the master
3663
- # account, because the master account is not limited by SCPs. If the
3664
- # SCP is not attached to the OU or one of its children, the report
3665
- # will return a list of services with no data.
3805
+ # SCP might not be included in the data. This data excludes the
3806
+ # management account, because the management account is not limited by
3807
+ # SCPs. If the SCP is not attached to the OU or one of its children,
3808
+ # the report will return a list of services with no data.
3666
3809
  #
3667
- # * **Master account** – When you specify the master account, the
3668
- # resulting report lists all AWS services, because the master account
3669
- # is not limited by SCPs. If you specify a policy ID in the CLI or
3670
- # API, the policy is ignored. For each service, the report includes
3671
- # data for only the master account.
3810
+ # * **management account** – When you specify the management account,
3811
+ # the resulting report lists all AWS services, because the management
3812
+ # account is not limited by SCPs. If you specify a policy ID in the
3813
+ # CLI or API, the policy is ignored. For each service, the report
3814
+ # includes data for only the management account.
3672
3815
  #
3673
3816
  # * **Account** – When you specify another account entity and a policy
3674
3817
  # ID, the resulting report lists all of the services that are allowed
@@ -3683,12 +3826,12 @@ module Aws::IAM
3683
3826
  # policy types include identity-based policies, resource-based policies,
3684
3827
  # access control lists, IAM permissions boundaries, and STS assume role
3685
3828
  # policies. It only applies SCP logic. For more about the evaluation of
3686
- # policy types, see [Evaluating Policies][3] in the *IAM User Guide*.
3829
+ # policy types, see [Evaluating policies][3] in the *IAM User Guide*.
3687
3830
  #
3688
3831
  # </note>
3689
3832
  #
3690
3833
  # For more information about service last accessed data, see [Reducing
3691
- # Policy Scope by Viewing User Activity][1] in the *IAM User Guide*.
3834
+ # policy scope by viewing user activity][1] in the *IAM User Guide*.
3692
3835
  #
3693
3836
  #
3694
3837
  #
@@ -3756,7 +3899,7 @@ module Aws::IAM
3756
3899
  # AWS services. Recent activity usually appears within four hours. IAM
3757
3900
  # reports activity for the last 365 days, or less if your Region began
3758
3901
  # supporting this feature within the last year. For more information,
3759
- # see [Regions Where Data Is Tracked][1].
3902
+ # see [Regions where data is tracked][1].
3760
3903
  #
3761
3904
  # The service last accessed data includes all attempts to access an AWS
3762
3905
  # API, not just the successful ones. This includes all attempts that
@@ -3766,7 +3909,7 @@ module Aws::IAM
3766
3909
  # compromised, because the request might have been denied. Refer to your
3767
3910
  # CloudTrail logs as the authoritative source for information about all
3768
3911
  # API calls and whether they were successful or denied access. For more
3769
- # information, see [Logging IAM Events with CloudTrail][2] in the *IAM
3912
+ # information, see [Logging IAM events with CloudTrail][2] in the *IAM
3770
3913
  # User Guide*.
3771
3914
  #
3772
3915
  # The `GenerateServiceLastAccessedDetails` operation returns a `JobId`.
@@ -3802,12 +3945,12 @@ module Aws::IAM
3802
3945
  # AWS Organizations policies, IAM permissions boundaries, and AWS STS
3803
3946
  # assume role policies. It only applies permissions policy logic. For
3804
3947
  # more about the evaluation of policy types, see [Evaluating
3805
- # Policies][3] in the *IAM User Guide*.
3948
+ # policies][3] in the *IAM User Guide*.
3806
3949
  #
3807
3950
  # </note>
3808
3951
  #
3809
3952
  # For more information about service and action last accessed data, see
3810
- # [Reducing Permissions Using Service Last Accessed Data][4] in the *IAM
3953
+ # [Reducing permissions using service last accessed data][4] in the *IAM
3811
3954
  # User Guide*.
3812
3955
  #
3813
3956
  #
@@ -3913,12 +4056,12 @@ module Aws::IAM
3913
4056
 
3914
4057
  # Retrieves information about all IAM users, groups, roles, and policies
3915
4058
  # in your AWS account, including their relationships to one another. Use
3916
- # this API to obtain a snapshot of the configuration of IAM permissions
3917
- # (users, groups, roles, and policies) in your account.
4059
+ # this operation to obtain a snapshot of the configuration of IAM
4060
+ # permissions (users, groups, roles, and policies) in your account.
3918
4061
  #
3919
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
3920
- # 3986][1]. You can use a URL decoding method to convert the policy back
3921
- # to plain JSON text. For example, if you use Java, you can use the
4062
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
4063
+ # [RFC 3986][1]. You can use a URL decoding method to convert the policy
4064
+ # back to plain JSON text. For example, if you use Java, you can use the
3922
4065
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
3923
4066
  # SDK. Other languages and SDKs provide similar functionality.
3924
4067
  #
@@ -4039,6 +4182,9 @@ module Aws::IAM
4039
4182
  # resp.role_detail_list[0].instance_profile_list[0].roles[0].tags[0].value #=> String
4040
4183
  # resp.role_detail_list[0].instance_profile_list[0].roles[0].role_last_used.last_used_date #=> Time
4041
4184
  # resp.role_detail_list[0].instance_profile_list[0].roles[0].role_last_used.region #=> String
4185
+ # resp.role_detail_list[0].instance_profile_list[0].tags #=> Array
4186
+ # resp.role_detail_list[0].instance_profile_list[0].tags[0].key #=> String
4187
+ # resp.role_detail_list[0].instance_profile_list[0].tags[0].value #=> String
4042
4188
  # resp.role_detail_list[0].role_policy_list #=> Array
4043
4189
  # resp.role_detail_list[0].role_policy_list[0].policy_name #=> String
4044
4190
  # resp.role_detail_list[0].role_policy_list[0].policy_document #=> String
@@ -4081,9 +4227,10 @@ module Aws::IAM
4081
4227
  req.send_request(options)
4082
4228
  end
4083
4229
 
4084
- # Retrieves the password policy for the AWS account. For more
4085
- # information about using a password policy, go to [Managing an IAM
4086
- # Password Policy][1].
4230
+ # Retrieves the password policy for the AWS account. This tells you the
4231
+ # complexity requirements and mandatory rotation periods for the IAM
4232
+ # user passwords in your account. For more information about using a
4233
+ # password policy, see [Managing an IAM password policy][1].
4087
4234
  #
4088
4235
  #
4089
4236
  #
@@ -4142,9 +4289,8 @@ module Aws::IAM
4142
4289
  # Retrieves information about IAM entity usage and IAM quotas in the AWS
4143
4290
  # account.
4144
4291
  #
4145
- # The number and size of IAM resources in an AWS account are limited.
4146
- # For more information, see [IAM and STS Quotas][1] in the *IAM User
4147
- # Guide*.
4292
+ # For information about IAM quotas, see [IAM and STS quotas][1] in the
4293
+ # *IAM User Guide*.
4148
4294
  #
4149
4295
  #
4150
4296
  #
@@ -4277,8 +4423,8 @@ module Aws::IAM
4277
4423
  # specified as strings. If you want to include *only* a list of policies
4278
4424
  # by string, use GetContextKeysForCustomPolicy instead.
4279
4425
  #
4280
- # **Note:** This API discloses information about the permissions granted
4281
- # to other users. If you do not want users to see other user's
4426
+ # **Note:** This operation discloses information about the permissions
4427
+ # granted to other users. If you do not want users to see other user's
4282
4428
  # permissions, then consider allowing them to use
4283
4429
  # GetContextKeysForCustomPolicy instead.
4284
4430
  #
@@ -4298,8 +4444,8 @@ module Aws::IAM
4298
4444
  # parameters are shown in unencoded form here for clarity, but must be
4299
4445
  # URL encoded to be included as a part of a real HTML request.
4300
4446
  #
4301
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
4302
- # AWS Service Namespaces][1] in the *AWS General Reference*.
4447
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
4448
+ # in the *AWS General Reference*.
4303
4449
  #
4304
4450
  #
4305
4451
  #
@@ -4351,8 +4497,8 @@ module Aws::IAM
4351
4497
  end
4352
4498
 
4353
4499
  # Retrieves a credential report for the AWS account. For more
4354
- # information about the credential report, see [Getting Credential
4355
- # Reports][1] in the *IAM User Guide*.
4500
+ # information about the credential report, see [Getting credential
4501
+ # reports][1] in the *IAM User Guide*.
4356
4502
  #
4357
4503
  #
4358
4504
  #
@@ -4462,9 +4608,9 @@ module Aws::IAM
4462
4608
  # Retrieves the specified inline policy document that is embedded in the
4463
4609
  # specified IAM group.
4464
4610
  #
4465
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
4466
- # 3986][1]. You can use a URL decoding method to convert the policy back
4467
- # to plain JSON text. For example, if you use Java, you can use the
4611
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
4612
+ # [RFC 3986][1]. You can use a URL decoding method to convert the policy
4613
+ # back to plain JSON text. For example, if you use Java, you can use the
4468
4614
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
4469
4615
  # SDK. Other languages and SDKs provide similar functionality.
4470
4616
  #
@@ -4475,8 +4621,8 @@ module Aws::IAM
4475
4621
  # GetPolicy to determine the policy's default version, then use
4476
4622
  # GetPolicyVersion to retrieve the policy document.
4477
4623
  #
4478
- # For more information about policies, see [Managed Policies and Inline
4479
- # Policies][2] in the *IAM User Guide*.
4624
+ # For more information about policies, see [Managed policies and inline
4625
+ # policies][2] in the *IAM User Guide*.
4480
4626
  #
4481
4627
  #
4482
4628
  #
@@ -4537,7 +4683,7 @@ module Aws::IAM
4537
4683
 
4538
4684
  # Retrieves information about the specified instance profile, including
4539
4685
  # the instance profile's path, GUID, ARN, and role. For more
4540
- # information about instance profiles, see [About Instance Profiles][1]
4686
+ # information about instance profiles, see [About instance profiles][1]
4541
4687
  # in the *IAM User Guide*.
4542
4688
  #
4543
4689
  #
@@ -4619,6 +4765,9 @@ module Aws::IAM
4619
4765
  # resp.instance_profile.roles[0].tags[0].value #=> String
4620
4766
  # resp.instance_profile.roles[0].role_last_used.last_used_date #=> Time
4621
4767
  # resp.instance_profile.roles[0].role_last_used.region #=> String
4768
+ # resp.instance_profile.tags #=> Array
4769
+ # resp.instance_profile.tags[0].key #=> String
4770
+ # resp.instance_profile.tags[0].value #=> String
4622
4771
  #
4623
4772
  #
4624
4773
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -4634,7 +4783,7 @@ module Aws::IAM
4634
4783
  req.send_request(options)
4635
4784
  end
4636
4785
 
4637
- # Retrieves the user name and password-creation date for the specified
4786
+ # Retrieves the user name and password creation date for the specified
4638
4787
  # IAM user. If the user has not been assigned a password, the operation
4639
4788
  # returns a 404 (`NoSuchEntity`) error.
4640
4789
  #
@@ -4700,8 +4849,8 @@ module Aws::IAM
4700
4849
  # IAM to get information for. You can get a list of OIDC provider
4701
4850
  # resource ARNs by using the ListOpenIDConnectProviders operation.
4702
4851
  #
4703
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
4704
- # AWS Service Namespaces][1] in the *AWS General Reference*.
4852
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
4853
+ # in the *AWS General Reference*.
4705
4854
  #
4706
4855
  #
4707
4856
  #
@@ -4713,6 +4862,7 @@ module Aws::IAM
4713
4862
  # * {Types::GetOpenIDConnectProviderResponse#client_id_list #client_id_list} => Array&lt;String&gt;
4714
4863
  # * {Types::GetOpenIDConnectProviderResponse#thumbprint_list #thumbprint_list} => Array&lt;String&gt;
4715
4864
  # * {Types::GetOpenIDConnectProviderResponse#create_date #create_date} => Time
4865
+ # * {Types::GetOpenIDConnectProviderResponse#tags #tags} => Array&lt;Types::Tag&gt;
4716
4866
  #
4717
4867
  # @example Request syntax with placeholder values
4718
4868
  #
@@ -4728,6 +4878,9 @@ module Aws::IAM
4728
4878
  # resp.thumbprint_list #=> Array
4729
4879
  # resp.thumbprint_list[0] #=> String
4730
4880
  # resp.create_date #=> Time
4881
+ # resp.tags #=> Array
4882
+ # resp.tags[0].key #=> String
4883
+ # resp.tags[0].value #=> String
4731
4884
  #
4732
4885
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetOpenIDConnectProvider AWS API Documentation
4733
4886
  #
@@ -4747,11 +4900,11 @@ module Aws::IAM
4747
4900
  # report, the data returned could include different information. For
4748
4901
  # details, see GenerateOrganizationsAccessReport.
4749
4902
  #
4750
- # To call this operation, you must be signed in to the master account in
4751
- # your organization. SCPs must be enabled for your organization root.
4752
- # You must have permissions to perform this operation. For more
4753
- # information, see [Refining Permissions Using Service Last Accessed
4754
- # Data][1] in the *IAM User Guide*.
4903
+ # To call this operation, you must be signed in to the management
4904
+ # account in your organization. SCPs must be enabled for your
4905
+ # organization root. You must have permissions to perform this
4906
+ # operation. For more information, see [Refining permissions using
4907
+ # service last accessed data][1] in the *IAM User Guide*.
4755
4908
  #
4756
4909
  # For each service that principals in an account (root users, IAM users,
4757
4910
  # or IAM roles) could access using SCPs, the operation returns details
@@ -4887,17 +5040,17 @@ module Aws::IAM
4887
5040
  # the policy's default version and the total number of IAM users,
4888
5041
  # groups, and roles to which the policy is attached. To retrieve the
4889
5042
  # list of the specific users, groups, and roles that the policy is
4890
- # attached to, use the ListEntitiesForPolicy API. This API returns
5043
+ # attached to, use ListEntitiesForPolicy. This operation returns
4891
5044
  # metadata about the policy. To retrieve the actual policy document for
4892
5045
  # a specific version of the policy, use GetPolicyVersion.
4893
5046
  #
4894
- # This API retrieves information about managed policies. To retrieve
4895
- # information about an inline policy that is embedded with an IAM user,
4896
- # group, or role, use the GetUserPolicy, GetGroupPolicy, or
4897
- # GetRolePolicy API.
5047
+ # This operation retrieves information about managed policies. To
5048
+ # retrieve information about an inline policy that is embedded with an
5049
+ # IAM user, group, or role, use GetUserPolicy, GetGroupPolicy, or
5050
+ # GetRolePolicy.
4898
5051
  #
4899
- # For more information about policies, see [Managed Policies and Inline
4900
- # Policies][1] in the *IAM User Guide*.
5052
+ # For more information about policies, see [Managed policies and inline
5053
+ # policies][1] in the *IAM User Guide*.
4901
5054
  #
4902
5055
  #
4903
5056
  #
@@ -4907,8 +5060,8 @@ module Aws::IAM
4907
5060
  # The Amazon Resource Name (ARN) of the managed policy that you want
4908
5061
  # information about.
4909
5062
  #
4910
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
4911
- # AWS Service Namespaces][1] in the *AWS General Reference*.
5063
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
5064
+ # in the *AWS General Reference*.
4912
5065
  #
4913
5066
  #
4914
5067
  #
@@ -4937,6 +5090,9 @@ module Aws::IAM
4937
5090
  # resp.policy.description #=> String
4938
5091
  # resp.policy.create_date #=> Time
4939
5092
  # resp.policy.update_date #=> Time
5093
+ # resp.policy.tags #=> Array
5094
+ # resp.policy.tags[0].key #=> String
5095
+ # resp.policy.tags[0].value #=> String
4940
5096
  #
4941
5097
  #
4942
5098
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -4955,9 +5111,9 @@ module Aws::IAM
4955
5111
  # Retrieves information about the specified version of the specified
4956
5112
  # managed policy, including the policy document.
4957
5113
  #
4958
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
4959
- # 3986][1]. You can use a URL decoding method to convert the policy back
4960
- # to plain JSON text. For example, if you use Java, you can use the
5114
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
5115
+ # [RFC 3986][1]. You can use a URL decoding method to convert the policy
5116
+ # back to plain JSON text. For example, if you use Java, you can use the
4961
5117
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
4962
5118
  # SDK. Other languages and SDKs provide similar functionality.
4963
5119
  #
@@ -4965,15 +5121,16 @@ module Aws::IAM
4965
5121
  #
4966
5122
  # To list the available versions for a policy, use ListPolicyVersions.
4967
5123
  #
4968
- # This API retrieves information about managed policies. To retrieve
4969
- # information about an inline policy that is embedded in a user, group,
4970
- # or role, use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API.
5124
+ # This operation retrieves information about managed policies. To
5125
+ # retrieve information about an inline policy that is embedded in a
5126
+ # user, group, or role, use GetUserPolicy, GetGroupPolicy, or
5127
+ # GetRolePolicy.
4971
5128
  #
4972
5129
  # For more information about the types of policies, see [Managed
4973
- # Policies and Inline Policies][2] in the *IAM User Guide*.
5130
+ # policies and inline policies][2] in the *IAM User Guide*.
4974
5131
  #
4975
5132
  # For more information about managed policy versions, see [Versioning
4976
- # for Managed Policies][3] in the *IAM User Guide*.
5133
+ # for managed policies][3] in the *IAM User Guide*.
4977
5134
  #
4978
5135
  #
4979
5136
  #
@@ -4985,8 +5142,8 @@ module Aws::IAM
4985
5142
  # The Amazon Resource Name (ARN) of the managed policy that you want
4986
5143
  # information about.
4987
5144
  #
4988
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
4989
- # AWS Service Namespaces][1] in the *AWS General Reference*.
5145
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
5146
+ # in the *AWS General Reference*.
4990
5147
  #
4991
5148
  #
4992
5149
  #
@@ -5034,11 +5191,11 @@ module Aws::IAM
5034
5191
  # Retrieves information about the specified role, including the role's
5035
5192
  # path, GUID, ARN, and the role's trust policy that grants permission
5036
5193
  # to assume the role. For more information about roles, see [Working
5037
- # with Roles][1].
5194
+ # with roles][1].
5038
5195
  #
5039
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
5040
- # 3986][2]. You can use a URL decoding method to convert the policy back
5041
- # to plain JSON text. For example, if you use Java, you can use the
5196
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
5197
+ # [RFC 3986][2]. You can use a URL decoding method to convert the policy
5198
+ # back to plain JSON text. For example, if you use Java, you can use the
5042
5199
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
5043
5200
  # SDK. Other languages and SDKs provide similar functionality.
5044
5201
  #
@@ -5132,9 +5289,9 @@ module Aws::IAM
5132
5289
  # Retrieves the specified inline policy document that is embedded with
5133
5290
  # the specified IAM role.
5134
5291
  #
5135
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
5136
- # 3986][1]. You can use a URL decoding method to convert the policy back
5137
- # to plain JSON text. For example, if you use Java, you can use the
5292
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
5293
+ # [RFC 3986][1]. You can use a URL decoding method to convert the policy
5294
+ # back to plain JSON text. For example, if you use Java, you can use the
5138
5295
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
5139
5296
  # SDK. Other languages and SDKs provide similar functionality.
5140
5297
  #
@@ -5145,11 +5302,11 @@ module Aws::IAM
5145
5302
  # determine the policy's default version, then use GetPolicyVersion to
5146
5303
  # retrieve the policy document.
5147
5304
  #
5148
- # For more information about policies, see [Managed Policies and Inline
5149
- # Policies][2] in the *IAM User Guide*.
5305
+ # For more information about policies, see [Managed policies and inline
5306
+ # policies][2] in the *IAM User Guide*.
5150
5307
  #
5151
- # For more information about roles, see [Using Roles to Delegate
5152
- # Permissions and Federate Identities][3].
5308
+ # For more information about roles, see [Using roles to delegate
5309
+ # permissions and federate identities][3].
5153
5310
  #
5154
5311
  #
5155
5312
  #
@@ -5224,8 +5381,8 @@ module Aws::IAM
5224
5381
  # The Amazon Resource Name (ARN) of the SAML provider resource object in
5225
5382
  # IAM to get information about.
5226
5383
  #
5227
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
5228
- # AWS Service Namespaces][1] in the *AWS General Reference*.
5384
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
5385
+ # in the *AWS General Reference*.
5229
5386
  #
5230
5387
  #
5231
5388
  #
@@ -5236,6 +5393,7 @@ module Aws::IAM
5236
5393
  # * {Types::GetSAMLProviderResponse#saml_metadata_document #saml_metadata_document} => String
5237
5394
  # * {Types::GetSAMLProviderResponse#create_date #create_date} => Time
5238
5395
  # * {Types::GetSAMLProviderResponse#valid_until #valid_until} => Time
5396
+ # * {Types::GetSAMLProviderResponse#tags #tags} => Array&lt;Types::Tag&gt;
5239
5397
  #
5240
5398
  # @example Request syntax with placeholder values
5241
5399
  #
@@ -5248,6 +5406,9 @@ module Aws::IAM
5248
5406
  # resp.saml_metadata_document #=> String
5249
5407
  # resp.create_date #=> Time
5250
5408
  # resp.valid_until #=> Time
5409
+ # resp.tags #=> Array
5410
+ # resp.tags[0].key #=> String
5411
+ # resp.tags[0].value #=> String
5251
5412
  #
5252
5413
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProvider AWS API Documentation
5253
5414
  #
@@ -5265,7 +5426,7 @@ module Aws::IAM
5265
5426
  # authenticating the associated IAM user to an AWS CodeCommit
5266
5427
  # repository. For more information about using SSH keys to authenticate
5267
5428
  # to an AWS CodeCommit repository, see [Set up AWS CodeCommit for SSH
5268
- # Connections][1] in the *AWS CodeCommit User Guide*.
5429
+ # connections][1] in the *AWS CodeCommit User Guide*.
5269
5430
  #
5270
5431
  #
5271
5432
  #
@@ -5333,7 +5494,7 @@ module Aws::IAM
5333
5494
  # IAM.
5334
5495
  #
5335
5496
  # For more information about working with server certificates, see
5336
- # [Working with Server Certificates][1] in the *IAM User Guide*. This
5497
+ # [Working with server certificates][1] in the *IAM User Guide*. This
5337
5498
  # topic includes a list of AWS services that can use the server
5338
5499
  # certificates that you manage with IAM.
5339
5500
  #
@@ -5374,6 +5535,9 @@ module Aws::IAM
5374
5535
  # resp.server_certificate.server_certificate_metadata.expiration #=> Time
5375
5536
  # resp.server_certificate.certificate_body #=> String
5376
5537
  # resp.server_certificate.certificate_chain #=> String
5538
+ # resp.server_certificate.tags #=> Array
5539
+ # resp.server_certificate.tags[0].key #=> String
5540
+ # resp.server_certificate.tags[0].value #=> String
5377
5541
  #
5378
5542
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServerCertificate AWS API Documentation
5379
5543
  #
@@ -5398,7 +5562,7 @@ module Aws::IAM
5398
5562
  # AWS Organizations policies, IAM permissions boundaries, and AWS STS
5399
5563
  # assume role policies. It only applies permissions policy logic. For
5400
5564
  # more about the evaluation of policy types, see [Evaluating
5401
- # Policies][1] in the *IAM User Guide*.
5565
+ # policies][1] in the *IAM User Guide*.
5402
5566
  #
5403
5567
  # </note>
5404
5568
  #
@@ -5433,7 +5597,7 @@ module Aws::IAM
5433
5597
  # within a service. Otherwise, this operation returns only service data.
5434
5598
  #
5435
5599
  # For more information about service and action last accessed data, see
5436
- # [Reducing Permissions Using Service Last Accessed Data][2] in the *IAM
5600
+ # [Reducing permissions using service last accessed data][2] in the *IAM
5437
5601
  # User Guide*.
5438
5602
  #
5439
5603
  #
@@ -5581,17 +5745,16 @@ module Aws::IAM
5581
5745
  # namespace to learn when the IAM entity last attempted to access the
5582
5746
  # specified service.
5583
5747
  #
5584
- # To learn the service namespace for a service, go to [Actions,
5585
- # Resources, and Condition Keys for AWS Services][1] in the *IAM User
5586
- # Guide*. Choose the name of the service to view details for that
5587
- # service. In the first paragraph, find the service prefix. For example,
5588
- # `(service prefix: a4b)`. For more information about service
5589
- # namespaces, see [AWS Service Namespaces][2] in the *AWS General
5590
- # Reference*.
5748
+ # To learn the service namespace for a service, see [Actions, resources,
5749
+ # and condition keys for AWS services][1] in the *IAM User Guide*.
5750
+ # Choose the name of the service to view details for that service. In
5751
+ # the first paragraph, find the service prefix. For example, `(service
5752
+ # prefix: a4b)`. For more information about service namespaces, see [AWS
5753
+ # service namespaces][2] in the *AWS General Reference*.
5591
5754
  #
5592
5755
  #
5593
5756
  #
5594
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_actions-resources-contextkeys.html
5757
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
5595
5758
  # [2]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
5596
5759
  #
5597
5760
  # @option params [Integer] :max_items
@@ -5696,11 +5859,11 @@ module Aws::IAM
5696
5859
  end
5697
5860
 
5698
5861
  # Retrieves the status of your service-linked role deletion. After you
5699
- # use the DeleteServiceLinkedRole API operation to submit a
5700
- # service-linked role for deletion, you can use the `DeletionTaskId`
5701
- # parameter in `GetServiceLinkedRoleDeletionStatus` to check the status
5702
- # of the deletion. If the deletion fails, this operation returns the
5703
- # reason that it failed, if that information is returned by the service.
5862
+ # use DeleteServiceLinkedRole to submit a service-linked role for
5863
+ # deletion, you can use the `DeletionTaskId` parameter in
5864
+ # `GetServiceLinkedRoleDeletionStatus` to check the status of the
5865
+ # deletion. If the deletion fails, this operation returns the reason
5866
+ # that it failed, if that information is returned by the service.
5704
5867
  #
5705
5868
  # @option params [required, String] :deletion_task_id
5706
5869
  # The deletion task identifier. This identifier is returned by the
@@ -5741,7 +5904,7 @@ module Aws::IAM
5741
5904
  #
5742
5905
  # If you do not specify a user name, IAM determines the user name
5743
5906
  # implicitly based on the AWS access key ID used to sign the request to
5744
- # this API.
5907
+ # this operation.
5745
5908
  #
5746
5909
  # @option params [String] :user_name
5747
5910
  # The name of the user to get information about.
@@ -5817,9 +5980,9 @@ module Aws::IAM
5817
5980
  # Retrieves the specified inline policy document that is embedded in the
5818
5981
  # specified IAM user.
5819
5982
  #
5820
- # <note markdown="1"> Policies returned by this API are URL-encoded compliant with [RFC
5821
- # 3986][1]. You can use a URL decoding method to convert the policy back
5822
- # to plain JSON text. For example, if you use Java, you can use the
5983
+ # <note markdown="1"> Policies returned by this operation are URL-encoded compliant with
5984
+ # [RFC 3986][1]. You can use a URL decoding method to convert the policy
5985
+ # back to plain JSON text. For example, if you use Java, you can use the
5823
5986
  # `decode` method of the `java.net.URLDecoder` utility class in the Java
5824
5987
  # SDK. Other languages and SDKs provide similar functionality.
5825
5988
  #
@@ -5830,8 +5993,8 @@ module Aws::IAM
5830
5993
  # determine the policy's default version. Then use GetPolicyVersion to
5831
5994
  # retrieve the policy document.
5832
5995
  #
5833
- # For more information about policies, see [Managed Policies and Inline
5834
- # Policies][2] in the *IAM User Guide*.
5996
+ # For more information about policies, see [Managed policies and inline
5997
+ # policies][2] in the *IAM User Guide*.
5835
5998
  #
5836
5999
  #
5837
6000
  #
@@ -6001,7 +6164,7 @@ module Aws::IAM
6001
6164
 
6002
6165
  # Lists the account alias associated with the AWS account (Note: you can
6003
6166
  # have only one). For information about using an AWS account alias, see
6004
- # [Using an Alias for Your AWS Account ID][1] in the *IAM User Guide*.
6167
+ # [Using an alias for your AWS account ID][1] in the *IAM User Guide*.
6005
6168
  #
6006
6169
  #
6007
6170
  #
@@ -6074,9 +6237,9 @@ module Aws::IAM
6074
6237
  # group.
6075
6238
  #
6076
6239
  # An IAM group can also have inline policies embedded with it. To list
6077
- # the inline policies for a group, use the ListGroupPolicies API. For
6078
- # information about policies, see [Managed Policies and Inline
6079
- # Policies][1] in the *IAM User Guide*.
6240
+ # the inline policies for a group, use ListGroupPolicies. For
6241
+ # information about policies, see [Managed policies and inline
6242
+ # policies][1] in the *IAM User Guide*.
6080
6243
  #
6081
6244
  # You can paginate the results using the `MaxItems` and `Marker`
6082
6245
  # parameters. You can use the `PathPrefix` parameter to limit the list
@@ -6172,9 +6335,9 @@ module Aws::IAM
6172
6335
  # role.
6173
6336
  #
6174
6337
  # An IAM role can also have inline policies embedded with it. To list
6175
- # the inline policies for a role, use the ListRolePolicies API. For
6176
- # information about policies, see [Managed Policies and Inline
6177
- # Policies][1] in the *IAM User Guide*.
6338
+ # the inline policies for a role, use ListRolePolicies. For information
6339
+ # about policies, see [Managed policies and inline policies][1] in the
6340
+ # *IAM User Guide*.
6178
6341
  #
6179
6342
  # You can paginate the results using the `MaxItems` and `Marker`
6180
6343
  # parameters. You can use the `PathPrefix` parameter to limit the list
@@ -6270,9 +6433,9 @@ module Aws::IAM
6270
6433
  # user.
6271
6434
  #
6272
6435
  # An IAM user can also have inline policies embedded with it. To list
6273
- # the inline policies for a user, use the ListUserPolicies API. For
6274
- # information about policies, see [Managed Policies and Inline
6275
- # Policies][1] in the *IAM User Guide*.
6436
+ # the inline policies for a user, use ListUserPolicies. For information
6437
+ # about policies, see [Managed policies and inline policies][1] in the
6438
+ # *IAM User Guide*.
6276
6439
  #
6277
6440
  # You can paginate the results using the `MaxItems` and `Marker`
6278
6441
  # parameters. You can use the `PathPrefix` parameter to limit the list
@@ -6379,8 +6542,8 @@ module Aws::IAM
6379
6542
  # The Amazon Resource Name (ARN) of the IAM policy for which you want
6380
6543
  # the versions.
6381
6544
  #
6382
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
6383
- # AWS Service Namespaces][1] in the *AWS General Reference*.
6545
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
6546
+ # in the *AWS General Reference*.
6384
6547
  #
6385
6548
  #
6386
6549
  #
@@ -6489,7 +6652,7 @@ module Aws::IAM
6489
6652
  # An IAM group can also have managed policies attached to it. To list
6490
6653
  # the managed policies that are attached to a group, use
6491
6654
  # ListAttachedGroupPolicies. For more information about policies, see
6492
- # [Managed Policies and Inline Policies][1] in the *IAM User Guide*.
6655
+ # [Managed policies and inline policies][1] in the *IAM User Guide*.
6493
6656
  #
6494
6657
  # You can paginate the results using the `MaxItems` and `Marker`
6495
6658
  # parameters. If there are no inline policies embedded with the
@@ -6786,10 +6949,87 @@ module Aws::IAM
6786
6949
  req.send_request(options)
6787
6950
  end
6788
6951
 
6952
+ # Lists the tags that are attached to the specified IAM instance
6953
+ # profile. The returned list of tags is sorted by tag key. For more
6954
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
6955
+ # User Guide*.
6956
+ #
6957
+ #
6958
+ #
6959
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
6960
+ #
6961
+ # @option params [required, String] :instance_profile_name
6962
+ # The name of the IAM instance profile whose tags you want to see.
6963
+ #
6964
+ # This parameter accepts (through its [regex pattern][1]) a string of
6965
+ # characters that consist of upper and lowercase alphanumeric characters
6966
+ # with no spaces. You can also include any of the following characters:
6967
+ # =,.@-
6968
+ #
6969
+ #
6970
+ #
6971
+ # [1]: http://wikipedia.org/wiki/regex
6972
+ #
6973
+ # @option params [String] :marker
6974
+ # Use this parameter only when paginating results and only after you
6975
+ # receive a response indicating that the results are truncated. Set it
6976
+ # to the value of the `Marker` element in the response that you received
6977
+ # to indicate where the next call should start.
6978
+ #
6979
+ # @option params [Integer] :max_items
6980
+ # (Optional) Use this only when paginating results to indicate the
6981
+ # maximum number of items that you want in the response. If additional
6982
+ # items exist beyond the maximum that you specify, the `IsTruncated`
6983
+ # response element is `true`.
6984
+ #
6985
+ # If you do not include this parameter, it defaults to 100. Note that
6986
+ # IAM might return fewer results, even when more results are available.
6987
+ # In that case, the `IsTruncated` response element returns `true`, and
6988
+ # `Marker` contains a value to include in the subsequent call that tells
6989
+ # the service where to continue from.
6990
+ #
6991
+ # @return [Types::ListInstanceProfileTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6992
+ #
6993
+ # * {Types::ListInstanceProfileTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
6994
+ # * {Types::ListInstanceProfileTagsResponse#is_truncated #is_truncated} => Boolean
6995
+ # * {Types::ListInstanceProfileTagsResponse#marker #marker} => String
6996
+ #
6997
+ # @example Request syntax with placeholder values
6998
+ #
6999
+ # resp = client.list_instance_profile_tags({
7000
+ # instance_profile_name: "instanceProfileNameType", # required
7001
+ # marker: "markerType",
7002
+ # max_items: 1,
7003
+ # })
7004
+ #
7005
+ # @example Response structure
7006
+ #
7007
+ # resp.tags #=> Array
7008
+ # resp.tags[0].key #=> String
7009
+ # resp.tags[0].value #=> String
7010
+ # resp.is_truncated #=> Boolean
7011
+ # resp.marker #=> String
7012
+ #
7013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListInstanceProfileTags AWS API Documentation
7014
+ #
7015
+ # @overload list_instance_profile_tags(params = {})
7016
+ # @param [Hash] params ({})
7017
+ def list_instance_profile_tags(params = {}, options = {})
7018
+ req = build_request(:list_instance_profile_tags, params)
7019
+ req.send_request(options)
7020
+ end
7021
+
6789
7022
  # Lists the instance profiles that have the specified path prefix. If
6790
7023
  # there are none, the operation returns an empty list. For more
6791
- # information about instance profiles, go to [About Instance
6792
- # Profiles][1].
7024
+ # information about instance profiles, see [About instance profiles][1].
7025
+ #
7026
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
7027
+ # attributes for the resource. For example, this operation does not
7028
+ # return tags, even though they are an attribute of the returned object.
7029
+ # To view all of the information for an instance profile, see
7030
+ # GetInstanceProfile.
7031
+ #
7032
+ # </note>
6793
7033
  #
6794
7034
  # You can paginate the results using the `MaxItems` and `Marker`
6795
7035
  # parameters.
@@ -6873,6 +7113,9 @@ module Aws::IAM
6873
7113
  # resp.instance_profiles[0].roles[0].tags[0].value #=> String
6874
7114
  # resp.instance_profiles[0].roles[0].role_last_used.last_used_date #=> Time
6875
7115
  # resp.instance_profiles[0].roles[0].role_last_used.region #=> String
7116
+ # resp.instance_profiles[0].tags #=> Array
7117
+ # resp.instance_profiles[0].tags[0].key #=> String
7118
+ # resp.instance_profiles[0].tags[0].value #=> String
6876
7119
  # resp.is_truncated #=> Boolean
6877
7120
  # resp.marker #=> String
6878
7121
  #
@@ -6887,8 +7130,8 @@ module Aws::IAM
6887
7130
 
6888
7131
  # Lists the instance profiles that have the specified associated IAM
6889
7132
  # role. If there are none, the operation returns an empty list. For more
6890
- # information about instance profiles, go to [About Instance
6891
- # Profiles][1].
7133
+ # information about instance profiles, go to [About instance
7134
+ # profiles][1].
6892
7135
  #
6893
7136
  # You can paginate the results using the `MaxItems` and `Marker`
6894
7137
  # parameters.
@@ -6966,6 +7209,9 @@ module Aws::IAM
6966
7209
  # resp.instance_profiles[0].roles[0].tags[0].value #=> String
6967
7210
  # resp.instance_profiles[0].roles[0].role_last_used.last_used_date #=> Time
6968
7211
  # resp.instance_profiles[0].roles[0].role_last_used.region #=> String
7212
+ # resp.instance_profiles[0].tags #=> Array
7213
+ # resp.instance_profiles[0].tags[0].key #=> String
7214
+ # resp.instance_profiles[0].tags[0].value #=> String
6969
7215
  # resp.is_truncated #=> Boolean
6970
7216
  # resp.marker #=> String
6971
7217
  #
@@ -6978,11 +7224,83 @@ module Aws::IAM
6978
7224
  req.send_request(options)
6979
7225
  end
6980
7226
 
7227
+ # Lists the tags that are attached to the specified IAM virtual
7228
+ # multi-factor authentication (MFA) device. The returned list of tags is
7229
+ # sorted by tag key. For more information about tagging, see [Tagging
7230
+ # IAM resources][1] in the *IAM User Guide*.
7231
+ #
7232
+ #
7233
+ #
7234
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
7235
+ #
7236
+ # @option params [required, String] :serial_number
7237
+ # The unique identifier for the IAM virtual MFA device whose tags you
7238
+ # want to see. For virtual MFA devices, the serial number is the same as
7239
+ # the ARN.
7240
+ #
7241
+ # This parameter accepts (through its [regex pattern][1]) a string of
7242
+ # characters that consist of upper and lowercase alphanumeric characters
7243
+ # with no spaces. You can also include any of the following characters:
7244
+ # =,.@-
7245
+ #
7246
+ #
7247
+ #
7248
+ # [1]: http://wikipedia.org/wiki/regex
7249
+ #
7250
+ # @option params [String] :marker
7251
+ # Use this parameter only when paginating results and only after you
7252
+ # receive a response indicating that the results are truncated. Set it
7253
+ # to the value of the `Marker` element in the response that you received
7254
+ # to indicate where the next call should start.
7255
+ #
7256
+ # @option params [Integer] :max_items
7257
+ # (Optional) Use this only when paginating results to indicate the
7258
+ # maximum number of items that you want in the response. If additional
7259
+ # items exist beyond the maximum that you specify, the `IsTruncated`
7260
+ # response element is `true`.
7261
+ #
7262
+ # If you do not include this parameter, it defaults to 100. Note that
7263
+ # IAM might return fewer results, even when more results are available.
7264
+ # In that case, the `IsTruncated` response element returns `true`, and
7265
+ # `Marker` contains a value to include in the subsequent call that tells
7266
+ # the service where to continue from.
7267
+ #
7268
+ # @return [Types::ListMFADeviceTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7269
+ #
7270
+ # * {Types::ListMFADeviceTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
7271
+ # * {Types::ListMFADeviceTagsResponse#is_truncated #is_truncated} => Boolean
7272
+ # * {Types::ListMFADeviceTagsResponse#marker #marker} => String
7273
+ #
7274
+ # @example Request syntax with placeholder values
7275
+ #
7276
+ # resp = client.list_mfa_device_tags({
7277
+ # serial_number: "serialNumberType", # required
7278
+ # marker: "markerType",
7279
+ # max_items: 1,
7280
+ # })
7281
+ #
7282
+ # @example Response structure
7283
+ #
7284
+ # resp.tags #=> Array
7285
+ # resp.tags[0].key #=> String
7286
+ # resp.tags[0].value #=> String
7287
+ # resp.is_truncated #=> Boolean
7288
+ # resp.marker #=> String
7289
+ #
7290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListMFADeviceTags AWS API Documentation
7291
+ #
7292
+ # @overload list_mfa_device_tags(params = {})
7293
+ # @param [Hash] params ({})
7294
+ def list_mfa_device_tags(params = {}, options = {})
7295
+ req = build_request(:list_mfa_device_tags, params)
7296
+ req.send_request(options)
7297
+ end
7298
+
6981
7299
  # Lists the MFA devices for an IAM user. If the request includes a IAM
6982
7300
  # user name, then this operation lists all the MFA devices associated
6983
7301
  # with the specified user. If you do not specify a user name, IAM
6984
7302
  # determines the user name implicitly based on the AWS access key ID
6985
- # signing the request for this API.
7303
+ # signing the request for this operation.
6986
7304
  #
6987
7305
  # You can paginate the results using the `MaxItems` and `Marker`
6988
7306
  # parameters.
@@ -7050,21 +7368,104 @@ module Aws::IAM
7050
7368
  req.send_request(options)
7051
7369
  end
7052
7370
 
7053
- # Lists information about the IAM OpenID Connect (OIDC) provider
7054
- # resource objects defined in the AWS account.
7371
+ # Lists the tags that are attached to the specified OpenID Connect
7372
+ # (OIDC)-compatible identity provider. The returned list of tags is
7373
+ # sorted by tag key. For more information, see [About web identity
7374
+ # federation][1].
7055
7375
  #
7056
- # @return [Types::ListOpenIDConnectProvidersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7376
+ # For more information about tagging, see [Tagging IAM resources][2] in
7377
+ # the *IAM User Guide*.
7057
7378
  #
7058
- # * {Types::ListOpenIDConnectProvidersResponse#open_id_connect_provider_list #open_id_connect_provider_list} => Array&lt;Types::OpenIDConnectProviderListEntry&gt;
7059
7379
  #
7060
- # @example Response structure
7061
7380
  #
7062
- # resp.open_id_connect_provider_list #=> Array
7063
- # resp.open_id_connect_provider_list[0].arn #=> String
7381
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html
7382
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
7064
7383
  #
7065
- # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListOpenIDConnectProviders AWS API Documentation
7384
+ # @option params [required, String] :open_id_connect_provider_arn
7385
+ # The ARN of the OpenID Connect (OIDC) identity provider whose tags you
7386
+ # want to see.
7066
7387
  #
7067
- # @overload list_open_id_connect_providers(params = {})
7388
+ # This parameter accepts (through its [regex pattern][1]) a string of
7389
+ # characters that consist of upper and lowercase alphanumeric characters
7390
+ # with no spaces. You can also include any of the following characters:
7391
+ # =,.@-
7392
+ #
7393
+ #
7394
+ #
7395
+ # [1]: http://wikipedia.org/wiki/regex
7396
+ #
7397
+ # @option params [String] :marker
7398
+ # Use this parameter only when paginating results and only after you
7399
+ # receive a response indicating that the results are truncated. Set it
7400
+ # to the value of the `Marker` element in the response that you received
7401
+ # to indicate where the next call should start.
7402
+ #
7403
+ # @option params [Integer] :max_items
7404
+ # (Optional) Use this only when paginating results to indicate the
7405
+ # maximum number of items that you want in the response. If additional
7406
+ # items exist beyond the maximum that you specify, the `IsTruncated`
7407
+ # response element is `true`.
7408
+ #
7409
+ # If you do not include this parameter, it defaults to 100. Note that
7410
+ # IAM might return fewer results, even when more results are available.
7411
+ # In that case, the `IsTruncated` response element returns `true`, and
7412
+ # `Marker` contains a value to include in the subsequent call that tells
7413
+ # the service where to continue from.
7414
+ #
7415
+ # @return [Types::ListOpenIDConnectProviderTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7416
+ #
7417
+ # * {Types::ListOpenIDConnectProviderTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
7418
+ # * {Types::ListOpenIDConnectProviderTagsResponse#is_truncated #is_truncated} => Boolean
7419
+ # * {Types::ListOpenIDConnectProviderTagsResponse#marker #marker} => String
7420
+ #
7421
+ # @example Request syntax with placeholder values
7422
+ #
7423
+ # resp = client.list_open_id_connect_provider_tags({
7424
+ # open_id_connect_provider_arn: "arnType", # required
7425
+ # marker: "markerType",
7426
+ # max_items: 1,
7427
+ # })
7428
+ #
7429
+ # @example Response structure
7430
+ #
7431
+ # resp.tags #=> Array
7432
+ # resp.tags[0].key #=> String
7433
+ # resp.tags[0].value #=> String
7434
+ # resp.is_truncated #=> Boolean
7435
+ # resp.marker #=> String
7436
+ #
7437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListOpenIDConnectProviderTags AWS API Documentation
7438
+ #
7439
+ # @overload list_open_id_connect_provider_tags(params = {})
7440
+ # @param [Hash] params ({})
7441
+ def list_open_id_connect_provider_tags(params = {}, options = {})
7442
+ req = build_request(:list_open_id_connect_provider_tags, params)
7443
+ req.send_request(options)
7444
+ end
7445
+
7446
+ # Lists information about the IAM OpenID Connect (OIDC) provider
7447
+ # resource objects defined in the AWS account.
7448
+ #
7449
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
7450
+ # attributes for the resource. For example, this operation does not
7451
+ # return tags, even though they are an attribute of the returned object.
7452
+ # To view all of the information for an OIDC provider, see
7453
+ # GetOpenIDConnectProvider.
7454
+ #
7455
+ # </note>
7456
+ #
7457
+ # @return [Types::ListOpenIDConnectProvidersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7458
+ #
7459
+ # * {Types::ListOpenIDConnectProvidersResponse#open_id_connect_provider_list #open_id_connect_provider_list} => Array&lt;Types::OpenIDConnectProviderListEntry&gt;
7460
+ #
7461
+ # @example Response structure
7462
+ #
7463
+ # resp.open_id_connect_provider_list #=> Array
7464
+ # resp.open_id_connect_provider_list[0].arn #=> String
7465
+ #
7466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListOpenIDConnectProviders AWS API Documentation
7467
+ #
7468
+ # @overload list_open_id_connect_providers(params = {})
7068
7469
  # @param [Hash] params ({})
7069
7470
  def list_open_id_connect_providers(params = {}, options = {})
7070
7471
  req = build_request(:list_open_id_connect_providers, params)
@@ -7084,8 +7485,16 @@ module Aws::IAM
7084
7485
  # You can paginate the results using the `MaxItems` and `Marker`
7085
7486
  # parameters.
7086
7487
  #
7087
- # For more information about managed policies, see [Managed Policies and
7088
- # Inline Policies][1] in the *IAM User Guide*.
7488
+ # For more information about managed policies, see [Managed policies and
7489
+ # inline policies][1] in the *IAM User Guide*.
7490
+ #
7491
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
7492
+ # attributes for the resource. For example, this operation does not
7493
+ # return tags, even though they are an attribute of the returned object.
7494
+ # To view all of the information for a customer manged policy, see
7495
+ # GetPolicy.
7496
+ #
7497
+ # </note>
7089
7498
  #
7090
7499
  #
7091
7500
  #
@@ -7184,6 +7593,9 @@ module Aws::IAM
7184
7593
  # resp.policies[0].description #=> String
7185
7594
  # resp.policies[0].create_date #=> Time
7186
7595
  # resp.policies[0].update_date #=> Time
7596
+ # resp.policies[0].tags #=> Array
7597
+ # resp.policies[0].tags[0].key #=> String
7598
+ # resp.policies[0].tags[0].value #=> String
7187
7599
  # resp.is_truncated #=> Boolean
7188
7600
  # resp.marker #=> String
7189
7601
  #
@@ -7204,7 +7616,7 @@ module Aws::IAM
7204
7616
  # include resource-based policies, access control lists, AWS
7205
7617
  # Organizations policies, IAM permissions boundaries, and AWS STS assume
7206
7618
  # role policies. It only applies permissions policy logic. For more
7207
- # about the evaluation of policy types, see [Evaluating Policies][1] in
7619
+ # about the evaluation of policy types, see [Evaluating policies][1] in
7208
7620
  # the *IAM User Guide*.
7209
7621
  #
7210
7622
  # </note>
@@ -7227,8 +7639,8 @@ module Aws::IAM
7227
7639
  # For each managed policy, this operation returns the ARN and policy
7228
7640
  # name. For each inline policy, it returns the policy name and the
7229
7641
  # entity to which it is attached. Inline policies do not have an ARN.
7230
- # For more information about these policy types, see [Managed Policies
7231
- # and Inline Policies][2] in the *IAM User Guide*.
7642
+ # For more information about these policy types, see [Managed policies
7643
+ # and inline policies][2] in the *IAM User Guide*.
7232
7644
  #
7233
7645
  # Policies that are attached to users and roles as permissions
7234
7646
  # boundaries are not returned. To view which managed policy is currently
@@ -7254,17 +7666,16 @@ module Aws::IAM
7254
7666
  # The service namespace for the AWS services whose policies you want to
7255
7667
  # list.
7256
7668
  #
7257
- # To learn the service namespace for a service, go to [Actions,
7258
- # Resources, and Condition Keys for AWS Services][1] in the *IAM User
7259
- # Guide*. Choose the name of the service to view details for that
7260
- # service. In the first paragraph, find the service prefix. For example,
7261
- # `(service prefix: a4b)`. For more information about service
7262
- # namespaces, see [AWS Service Namespaces][2] in the *AWS General
7263
- # Reference*.
7669
+ # To learn the service namespace for a service, see [Actions, resources,
7670
+ # and condition keys for AWS services][1] in the *IAM User Guide*.
7671
+ # Choose the name of the service to view details for that service. In
7672
+ # the first paragraph, find the service prefix. For example, `(service
7673
+ # prefix: a4b)`. For more information about service namespaces, see [AWS
7674
+ # service namespaces][2] in the *AWS General Reference*.
7264
7675
  #
7265
7676
  #
7266
7677
  #
7267
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_actions-resources-contextkeys.html
7678
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html
7268
7679
  # [2]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
7269
7680
  #
7270
7681
  # @return [Types::ListPoliciesGrantingServiceAccessResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -7349,12 +7760,82 @@ module Aws::IAM
7349
7760
  req.send_request(options)
7350
7761
  end
7351
7762
 
7763
+ # Lists the tags that are attached to the specified IAM customer managed
7764
+ # policy. The returned list of tags is sorted by tag key. For more
7765
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
7766
+ # User Guide*.
7767
+ #
7768
+ #
7769
+ #
7770
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
7771
+ #
7772
+ # @option params [required, String] :policy_arn
7773
+ # The ARN of the IAM customer managed policy whose tags you want to see.
7774
+ #
7775
+ # This parameter accepts (through its [regex pattern][1]) a string of
7776
+ # characters that consist of upper and lowercase alphanumeric characters
7777
+ # with no spaces. You can also include any of the following characters:
7778
+ # =,.@-
7779
+ #
7780
+ #
7781
+ #
7782
+ # [1]: http://wikipedia.org/wiki/regex
7783
+ #
7784
+ # @option params [String] :marker
7785
+ # Use this parameter only when paginating results and only after you
7786
+ # receive a response indicating that the results are truncated. Set it
7787
+ # to the value of the `Marker` element in the response that you received
7788
+ # to indicate where the next call should start.
7789
+ #
7790
+ # @option params [Integer] :max_items
7791
+ # (Optional) Use this only when paginating results to indicate the
7792
+ # maximum number of items that you want in the response. If additional
7793
+ # items exist beyond the maximum that you specify, the `IsTruncated`
7794
+ # response element is `true`.
7795
+ #
7796
+ # If you do not include this parameter, it defaults to 100. Note that
7797
+ # IAM might return fewer results, even when more results are available.
7798
+ # In that case, the `IsTruncated` response element returns `true`, and
7799
+ # `Marker` contains a value to include in the subsequent call that tells
7800
+ # the service where to continue from.
7801
+ #
7802
+ # @return [Types::ListPolicyTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7803
+ #
7804
+ # * {Types::ListPolicyTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
7805
+ # * {Types::ListPolicyTagsResponse#is_truncated #is_truncated} => Boolean
7806
+ # * {Types::ListPolicyTagsResponse#marker #marker} => String
7807
+ #
7808
+ # @example Request syntax with placeholder values
7809
+ #
7810
+ # resp = client.list_policy_tags({
7811
+ # policy_arn: "arnType", # required
7812
+ # marker: "markerType",
7813
+ # max_items: 1,
7814
+ # })
7815
+ #
7816
+ # @example Response structure
7817
+ #
7818
+ # resp.tags #=> Array
7819
+ # resp.tags[0].key #=> String
7820
+ # resp.tags[0].value #=> String
7821
+ # resp.is_truncated #=> Boolean
7822
+ # resp.marker #=> String
7823
+ #
7824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListPolicyTags AWS API Documentation
7825
+ #
7826
+ # @overload list_policy_tags(params = {})
7827
+ # @param [Hash] params ({})
7828
+ def list_policy_tags(params = {}, options = {})
7829
+ req = build_request(:list_policy_tags, params)
7830
+ req.send_request(options)
7831
+ end
7832
+
7352
7833
  # Lists information about the versions of the specified managed policy,
7353
7834
  # including the version that is currently set as the policy's default
7354
7835
  # version.
7355
7836
  #
7356
- # For more information about managed policies, see [Managed Policies and
7357
- # Inline Policies][1] in the *IAM User Guide*.
7837
+ # For more information about managed policies, see [Managed policies and
7838
+ # inline policies][1] in the *IAM User Guide*.
7358
7839
  #
7359
7840
  #
7360
7841
  #
@@ -7364,8 +7845,8 @@ module Aws::IAM
7364
7845
  # The Amazon Resource Name (ARN) of the IAM policy for which you want
7365
7846
  # the versions.
7366
7847
  #
7367
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
7368
- # AWS Service Namespaces][1] in the *AWS General Reference*.
7848
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
7849
+ # in the *AWS General Reference*.
7369
7850
  #
7370
7851
  #
7371
7852
  #
@@ -7429,7 +7910,7 @@ module Aws::IAM
7429
7910
  # An IAM role can also have managed policies attached to it. To list the
7430
7911
  # managed policies that are attached to a role, use
7431
7912
  # ListAttachedRolePolicies. For more information about policies, see
7432
- # [Managed Policies and Inline Policies][1] in the *IAM User Guide*.
7913
+ # [Managed policies and inline policies][1] in the *IAM User Guide*.
7433
7914
  #
7434
7915
  # You can paginate the results using the `MaxItems` and `Marker`
7435
7916
  # parameters. If there are no inline policies embedded with the
@@ -7502,7 +7983,7 @@ module Aws::IAM
7502
7983
 
7503
7984
  # Lists the tags that are attached to the specified role. The returned
7504
7985
  # list of tags is sorted by tag key. For more information about tagging,
7505
- # see [Tagging IAM Identities][1] in the *IAM User Guide*.
7986
+ # see [Tagging IAM resources][1] in the *IAM User Guide*.
7506
7987
  #
7507
7988
  #
7508
7989
  #
@@ -7595,7 +8076,14 @@ module Aws::IAM
7595
8076
 
7596
8077
  # Lists the IAM roles that have the specified path prefix. If there are
7597
8078
  # none, the operation returns an empty list. For more information about
7598
- # roles, go to [Working with Roles][1].
8079
+ # roles, see [Working with roles][1].
8080
+ #
8081
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
8082
+ # attributes for the resource. For example, this operation does not
8083
+ # return tags, even though they are an attribute of the returned object.
8084
+ # To view all of the information for a role, see GetRole.
8085
+ #
8086
+ # </note>
7599
8087
  #
7600
8088
  # You can paginate the results using the `MaxItems` and `Marker`
7601
8089
  # parameters.
@@ -7684,12 +8172,89 @@ module Aws::IAM
7684
8172
  req.send_request(options)
7685
8173
  end
7686
8174
 
7687
- # Lists the SAML provider resource objects defined in IAM in the
7688
- # account.
8175
+ # Lists the tags that are attached to the specified Security Assertion
8176
+ # Markup Language (SAML) identity provider. The returned list of tags is
8177
+ # sorted by tag key. For more information, see [About SAML 2.0-based
8178
+ # federation][1].
7689
8179
  #
7690
- # <note markdown="1"> This operation requires [Signature Version 4][1].
8180
+ # For more information about tagging, see [Tagging IAM resources][2] in
8181
+ # the *IAM User Guide*.
7691
8182
  #
7692
- # </note>
8183
+ #
8184
+ #
8185
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html
8186
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
8187
+ #
8188
+ # @option params [required, String] :saml_provider_arn
8189
+ # The ARN of the Security Assertion Markup Language (SAML) identity
8190
+ # provider whose tags you want to see.
8191
+ #
8192
+ # This parameter accepts (through its [regex pattern][1]) a string of
8193
+ # characters that consist of upper and lowercase alphanumeric characters
8194
+ # with no spaces. You can also include any of the following characters:
8195
+ # =,.@-
8196
+ #
8197
+ #
8198
+ #
8199
+ # [1]: http://wikipedia.org/wiki/regex
8200
+ #
8201
+ # @option params [String] :marker
8202
+ # Use this parameter only when paginating results and only after you
8203
+ # receive a response indicating that the results are truncated. Set it
8204
+ # to the value of the `Marker` element in the response that you received
8205
+ # to indicate where the next call should start.
8206
+ #
8207
+ # @option params [Integer] :max_items
8208
+ # (Optional) Use this only when paginating results to indicate the
8209
+ # maximum number of items that you want in the response. If additional
8210
+ # items exist beyond the maximum that you specify, the `IsTruncated`
8211
+ # response element is `true`.
8212
+ #
8213
+ # If you do not include this parameter, it defaults to 100. Note that
8214
+ # IAM might return fewer results, even when more results are available.
8215
+ # In that case, the `IsTruncated` response element returns `true`, and
8216
+ # `Marker` contains a value to include in the subsequent call that tells
8217
+ # the service where to continue from.
8218
+ #
8219
+ # @return [Types::ListSAMLProviderTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8220
+ #
8221
+ # * {Types::ListSAMLProviderTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
8222
+ # * {Types::ListSAMLProviderTagsResponse#is_truncated #is_truncated} => Boolean
8223
+ # * {Types::ListSAMLProviderTagsResponse#marker #marker} => String
8224
+ #
8225
+ # @example Request syntax with placeholder values
8226
+ #
8227
+ # resp = client.list_saml_provider_tags({
8228
+ # saml_provider_arn: "arnType", # required
8229
+ # marker: "markerType",
8230
+ # max_items: 1,
8231
+ # })
8232
+ #
8233
+ # @example Response structure
8234
+ #
8235
+ # resp.tags #=> Array
8236
+ # resp.tags[0].key #=> String
8237
+ # resp.tags[0].value #=> String
8238
+ # resp.is_truncated #=> Boolean
8239
+ # resp.marker #=> String
8240
+ #
8241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSAMLProviderTags AWS API Documentation
8242
+ #
8243
+ # @overload list_saml_provider_tags(params = {})
8244
+ # @param [Hash] params ({})
8245
+ def list_saml_provider_tags(params = {}, options = {})
8246
+ req = build_request(:list_saml_provider_tags, params)
8247
+ req.send_request(options)
8248
+ end
8249
+
8250
+ # Lists the SAML provider resource objects defined in IAM in the
8251
+ # account. IAM resource-listing operations return a subset of the
8252
+ # available attributes for the resource. For example, this operation
8253
+ # does not return tags, even though they are an attribute of the
8254
+ # returned object. To view all of the information for a SAML provider,
8255
+ # see GetSAMLProvider.
8256
+ #
8257
+ # This operation requires [Signature Version 4][1].
7693
8258
  #
7694
8259
  #
7695
8260
  #
@@ -7722,7 +8287,7 @@ module Aws::IAM
7722
8287
  # The SSH public keys returned by this operation are used only for
7723
8288
  # authenticating the IAM user to an AWS CodeCommit repository. For more
7724
8289
  # information about using SSH keys to authenticate to an AWS CodeCommit
7725
- # repository, see [Set up AWS CodeCommit for SSH Connections][1] in the
8290
+ # repository, see [Set up AWS CodeCommit for SSH connections][1] in the
7726
8291
  # *AWS CodeCommit User Guide*.
7727
8292
  #
7728
8293
  # Although each user is limited to a small number of keys, you can still
@@ -7798,6 +8363,85 @@ module Aws::IAM
7798
8363
  req.send_request(options)
7799
8364
  end
7800
8365
 
8366
+ # Lists the tags that are attached to the specified IAM server
8367
+ # certificate. The returned list of tags is sorted by tag key. For more
8368
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
8369
+ # User Guide*.
8370
+ #
8371
+ # <note markdown="1"> For certificates in a Region supported by AWS Certificate Manager
8372
+ # (ACM), we recommend that you don't use IAM server certificates.
8373
+ # Instead, use ACM to provision, manage, and deploy your server
8374
+ # certificates. For more information about IAM server certificates,
8375
+ # [Working with server certificates][2] in the *IAM User Guide*.
8376
+ #
8377
+ # </note>
8378
+ #
8379
+ #
8380
+ #
8381
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
8382
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
8383
+ #
8384
+ # @option params [required, String] :server_certificate_name
8385
+ # The name of the IAM server certificate whose tags you want to see.
8386
+ #
8387
+ # This parameter accepts (through its [regex pattern][1]) a string of
8388
+ # characters that consist of upper and lowercase alphanumeric characters
8389
+ # with no spaces. You can also include any of the following characters:
8390
+ # =,.@-
8391
+ #
8392
+ #
8393
+ #
8394
+ # [1]: http://wikipedia.org/wiki/regex
8395
+ #
8396
+ # @option params [String] :marker
8397
+ # Use this parameter only when paginating results and only after you
8398
+ # receive a response indicating that the results are truncated. Set it
8399
+ # to the value of the `Marker` element in the response that you received
8400
+ # to indicate where the next call should start.
8401
+ #
8402
+ # @option params [Integer] :max_items
8403
+ # (Optional) Use this only when paginating results to indicate the
8404
+ # maximum number of items that you want in the response. If additional
8405
+ # items exist beyond the maximum that you specify, the `IsTruncated`
8406
+ # response element is `true`.
8407
+ #
8408
+ # If you do not include this parameter, it defaults to 100. Note that
8409
+ # IAM might return fewer results, even when more results are available.
8410
+ # In that case, the `IsTruncated` response element returns `true`, and
8411
+ # `Marker` contains a value to include in the subsequent call that tells
8412
+ # the service where to continue from.
8413
+ #
8414
+ # @return [Types::ListServerCertificateTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8415
+ #
8416
+ # * {Types::ListServerCertificateTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
8417
+ # * {Types::ListServerCertificateTagsResponse#is_truncated #is_truncated} => Boolean
8418
+ # * {Types::ListServerCertificateTagsResponse#marker #marker} => String
8419
+ #
8420
+ # @example Request syntax with placeholder values
8421
+ #
8422
+ # resp = client.list_server_certificate_tags({
8423
+ # server_certificate_name: "serverCertificateNameType", # required
8424
+ # marker: "markerType",
8425
+ # max_items: 1,
8426
+ # })
8427
+ #
8428
+ # @example Response structure
8429
+ #
8430
+ # resp.tags #=> Array
8431
+ # resp.tags[0].key #=> String
8432
+ # resp.tags[0].value #=> String
8433
+ # resp.is_truncated #=> Boolean
8434
+ # resp.marker #=> String
8435
+ #
8436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListServerCertificateTags AWS API Documentation
8437
+ #
8438
+ # @overload list_server_certificate_tags(params = {})
8439
+ # @param [Hash] params ({})
8440
+ def list_server_certificate_tags(params = {}, options = {})
8441
+ req = build_request(:list_server_certificate_tags, params)
8442
+ req.send_request(options)
8443
+ end
8444
+
7801
8445
  # Lists the server certificates stored in IAM that have the specified
7802
8446
  # path prefix. If none exist, the operation returns an empty list.
7803
8447
  #
@@ -7805,10 +8449,18 @@ module Aws::IAM
7805
8449
  # parameters.
7806
8450
  #
7807
8451
  # For more information about working with server certificates, see
7808
- # [Working with Server Certificates][1] in the *IAM User Guide*. This
8452
+ # [Working with server certificates][1] in the *IAM User Guide*. This
7809
8453
  # topic also includes a list of AWS services that can use the server
7810
8454
  # certificates that you manage with IAM.
7811
8455
  #
8456
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
8457
+ # attributes for the resource. For example, this operation does not
8458
+ # return tags, even though they are an attribute of the returned object.
8459
+ # To view all of the information for a servercertificate, see
8460
+ # GetServerCertificate.
8461
+ #
8462
+ # </note>
8463
+ #
7812
8464
  #
7813
8465
  #
7814
8466
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
@@ -7890,7 +8542,7 @@ module Aws::IAM
7890
8542
  # empty list. The service-specific credentials returned by this
7891
8543
  # operation are used only for authenticating the IAM user to a specific
7892
8544
  # service. For more information about using service-specific credentials
7893
- # to authenticate to an AWS service, see [Set Up service-specific
8545
+ # to authenticate to an AWS service, see [Set up service-specific
7894
8546
  # credentials][1] in the AWS CodeCommit User Guide.
7895
8547
  #
7896
8548
  #
@@ -7956,9 +8608,10 @@ module Aws::IAM
7956
8608
  #
7957
8609
  # If the `UserName` field is not specified, the user name is determined
7958
8610
  # implicitly based on the AWS access key ID used to sign the request for
7959
- # this API. This operation works for access keys under the AWS account.
7960
- # Consequently, you can use this operation to manage AWS account root
7961
- # user credentials even if the AWS account has no associated users.
8611
+ # this operation. This operation works for access keys under the AWS
8612
+ # account. Consequently, you can use this operation to manage AWS
8613
+ # account root user credentials even if the AWS account has no
8614
+ # associated users.
7962
8615
  #
7963
8616
  # @option params [String] :user_name
7964
8617
  # The name of the IAM user whose signing certificates you want to
@@ -8054,7 +8707,7 @@ module Aws::IAM
8054
8707
  # An IAM user can also have managed policies attached to it. To list the
8055
8708
  # managed policies that are attached to a user, use
8056
8709
  # ListAttachedUserPolicies. For more information about policies, see
8057
- # [Managed Policies and Inline Policies][1] in the *IAM User Guide*.
8710
+ # [Managed policies and inline policies][1] in the *IAM User Guide*.
8058
8711
  #
8059
8712
  # You can paginate the results using the `MaxItems` and `Marker`
8060
8713
  # parameters. If there are no inline policies embedded with the
@@ -8125,9 +8778,9 @@ module Aws::IAM
8125
8778
  req.send_request(options)
8126
8779
  end
8127
8780
 
8128
- # Lists the tags that are attached to the specified user. The returned
8129
- # list of tags is sorted by tag key. For more information about tagging,
8130
- # see [Tagging IAM Identities][1] in the *IAM User Guide*.
8781
+ # Lists the tags that are attached to the specified IAM user. The
8782
+ # returned list of tags is sorted by tag key. For more information about
8783
+ # tagging, see [Tagging IAM resources][1] in the *IAM User Guide*.
8131
8784
  #
8132
8785
  #
8133
8786
  #
@@ -8222,6 +8875,13 @@ module Aws::IAM
8222
8875
  # prefix is specified, the operation returns all users in the AWS
8223
8876
  # account. If there are none, the operation returns an empty list.
8224
8877
  #
8878
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
8879
+ # attributes for the resource. For example, this operation does not
8880
+ # return tags, even though they are an attribute of the returned object.
8881
+ # To view all of the information for a user, see GetUser.
8882
+ #
8883
+ # </note>
8884
+ #
8225
8885
  # You can paginate the results using the `MaxItems` and `Marker`
8226
8886
  # parameters.
8227
8887
  #
@@ -8336,6 +8996,14 @@ module Aws::IAM
8336
8996
  # returns a list of all virtual MFA devices. Assignment status can be
8337
8997
  # `Assigned`, `Unassigned`, or `Any`.
8338
8998
  #
8999
+ # <note markdown="1"> IAM resource-listing operations return a subset of the available
9000
+ # attributes for the resource. For example, this operation does not
9001
+ # return tags, even though they are an attribute of the returned object.
9002
+ # To view all of the information for a virtual MFA device, see
9003
+ # ListVirtualMFADevices.
9004
+ #
9005
+ # </note>
9006
+ #
8339
9007
  # You can paginate the results using the `MaxItems` and `Marker`
8340
9008
  # parameters.
8341
9009
  #
@@ -8415,6 +9083,9 @@ module Aws::IAM
8415
9083
  # resp.virtual_mfa_devices[0].user.tags[0].key #=> String
8416
9084
  # resp.virtual_mfa_devices[0].user.tags[0].value #=> String
8417
9085
  # resp.virtual_mfa_devices[0].enable_date #=> Time
9086
+ # resp.virtual_mfa_devices[0].tags #=> Array
9087
+ # resp.virtual_mfa_devices[0].tags[0].key #=> String
9088
+ # resp.virtual_mfa_devices[0].tags[0].value #=> String
8418
9089
  # resp.is_truncated #=> Boolean
8419
9090
  # resp.marker #=> String
8420
9091
  #
@@ -8433,15 +9104,15 @@ module Aws::IAM
8433
9104
  # A user can also have managed policies attached to it. To attach a
8434
9105
  # managed policy to a group, use AttachGroupPolicy. To create a new
8435
9106
  # managed policy, use CreatePolicy. For information about policies, see
8436
- # [Managed Policies and Inline Policies][1] in the *IAM User Guide*.
9107
+ # [Managed policies and inline policies][1] in the *IAM User Guide*.
8437
9108
  #
8438
- # For information about limits on the number of inline policies that you
8439
- # can embed in a group, see [Limitations on IAM Entities][2] in the *IAM
8440
- # User Guide*.
9109
+ # For information about the maximum number of inline policies that you
9110
+ # can embed in a group, see [IAM and STS quotas][2] in the *IAM User
9111
+ # Guide*.
8441
9112
  #
8442
9113
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
8443
9114
  # GET when calling `PutGroupPolicy`. For general information about using
8444
- # the Query API with IAM, go to [Making Query Requests][3] in the *IAM
9115
+ # the Query API with IAM, see [Making query requests][3] in the *IAM
8445
9116
  # User Guide*.
8446
9117
  #
8447
9118
  # </note>
@@ -8449,7 +9120,7 @@ module Aws::IAM
8449
9120
  #
8450
9121
  #
8451
9122
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
8452
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html
9123
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
8453
9124
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
8454
9125
  #
8455
9126
  # @option params [required, String] :group_name
@@ -8542,7 +9213,7 @@ module Aws::IAM
8542
9213
  # Policies used as permissions boundaries do not provide permissions.
8543
9214
  # You must also attach a permissions policy to the role. To learn how
8544
9215
  # the effective permissions for a role are evaluated, see [IAM JSON
8545
- # Policy Evaluation Logic][1] in the IAM User Guide.
9216
+ # policy evaluation logic][1] in the IAM User Guide.
8546
9217
  #
8547
9218
  #
8548
9219
  #
@@ -8581,21 +9252,21 @@ module Aws::IAM
8581
9252
  # as part of the role's access (permissions) policy. The role's trust
8582
9253
  # policy is created at the same time as the role, using CreateRole. You
8583
9254
  # can update a role's trust policy using UpdateAssumeRolePolicy. For
8584
- # more information about IAM roles, go to [Using Roles to Delegate
8585
- # Permissions and Federate Identities][1].
9255
+ # more information about IAM roles, see [Using roles to delegate
9256
+ # permissions and federate identities][1].
8586
9257
  #
8587
9258
  # A role can also have a managed policy attached to it. To attach a
8588
9259
  # managed policy to a role, use AttachRolePolicy. To create a new
8589
9260
  # managed policy, use CreatePolicy. For information about policies, see
8590
- # [Managed Policies and Inline Policies][2] in the *IAM User Guide*.
9261
+ # [Managed policies and inline policies][2] in the *IAM User Guide*.
8591
9262
  #
8592
- # For information about limits on the number of inline policies that you
8593
- # can embed with a role, see [Limitations on IAM Entities][3] in the
8594
- # *IAM User Guide*.
9263
+ # For information about the maximum number of inline policies that you
9264
+ # can embed with a role, see [IAM and STS quotas][3] in the *IAM User
9265
+ # Guide*.
8595
9266
  #
8596
9267
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
8597
9268
  # GET when calling `PutRolePolicy`. For general information about using
8598
- # the Query API with IAM, go to [Making Query Requests][4] in the *IAM
9269
+ # the Query API with IAM, see [Making query requests][4] in the *IAM
8599
9270
  # User Guide*.
8600
9271
  #
8601
9272
  # </note>
@@ -8604,7 +9275,7 @@ module Aws::IAM
8604
9275
  #
8605
9276
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html
8606
9277
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
8607
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html
9278
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
8608
9279
  # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
8609
9280
  #
8610
9281
  # @option params [required, String] :role_name
@@ -8695,7 +9366,7 @@ module Aws::IAM
8695
9366
  # Policies that are used as permissions boundaries do not provide
8696
9367
  # permissions. You must also attach a permissions policy to the user. To
8697
9368
  # learn how the effective permissions for a user are evaluated, see [IAM
8698
- # JSON Policy Evaluation Logic][1] in the IAM User Guide.
9369
+ # JSON policy evaluation logic][1] in the IAM User Guide.
8699
9370
  #
8700
9371
  #
8701
9372
  #
@@ -8733,15 +9404,15 @@ module Aws::IAM
8733
9404
  # An IAM user can also have a managed policy attached to it. To attach a
8734
9405
  # managed policy to a user, use AttachUserPolicy. To create a new
8735
9406
  # managed policy, use CreatePolicy. For information about policies, see
8736
- # [Managed Policies and Inline Policies][1] in the *IAM User Guide*.
9407
+ # [Managed policies and inline policies][1] in the *IAM User Guide*.
8737
9408
  #
8738
- # For information about limits on the number of inline policies that you
8739
- # can embed in a user, see [Limitations on IAM Entities][2] in the *IAM
8740
- # User Guide*.
9409
+ # For information about the maximum number of inline policies that you
9410
+ # can embed in a user, see [IAM and STS quotas][2] in the *IAM User
9411
+ # Guide*.
8741
9412
  #
8742
9413
  # <note markdown="1"> Because policy documents can be large, you should use POST rather than
8743
9414
  # GET when calling `PutUserPolicy`. For general information about using
8744
- # the Query API with IAM, go to [Making Query Requests][3] in the *IAM
9415
+ # the Query API with IAM, see [Making query requests][3] in the *IAM
8745
9416
  # User Guide*.
8746
9417
  #
8747
9418
  # </note>
@@ -8749,7 +9420,7 @@ module Aws::IAM
8749
9420
  #
8750
9421
  #
8751
9422
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html
8752
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html
9423
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
8753
9424
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
8754
9425
  #
8755
9426
  # @option params [required, String] :user_name
@@ -8842,8 +9513,8 @@ module Aws::IAM
8842
9513
  # remove the client ID from. You can get a list of OIDC provider ARNs by
8843
9514
  # using the ListOpenIDConnectProviders operation.
8844
9515
  #
8845
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
8846
- # AWS Service Namespaces][1] in the *AWS General Reference*.
9516
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
9517
+ # in the *AWS General Reference*.
8847
9518
  #
8848
9519
  #
8849
9520
  #
@@ -8880,9 +9551,9 @@ module Aws::IAM
8880
9551
  # role from an instance profile that is associated with a running
8881
9552
  # instance might break any applications running on the instance.
8882
9553
  #
8883
- # For more information about IAM roles, go to [Working with Roles][1].
8884
- # For more information about instance profiles, go to [About Instance
8885
- # Profiles][2].
9554
+ # For more information about IAM roles, see [Working with roles][1]. For
9555
+ # more information about instance profiles, see [About instance
9556
+ # profiles][2].
8886
9557
  #
8887
9558
  #
8888
9559
  #
@@ -9059,8 +9730,7 @@ module Aws::IAM
9059
9730
  # the AWS servers.
9060
9731
  #
9061
9732
  # For more information about creating and working with virtual MFA
9062
- # devices, go to [Using a Virtual MFA Device][1] in the *IAM User
9063
- # Guide*.
9733
+ # devices, see [Using a virtual MFA device][1] in the *IAM User Guide*.
9064
9734
  #
9065
9735
  #
9066
9736
  #
@@ -9125,10 +9795,10 @@ module Aws::IAM
9125
9795
  #
9126
9796
  # This operation affects all users, groups, and roles that the policy is
9127
9797
  # attached to. To list the users, groups, and roles that the policy is
9128
- # attached to, use the ListEntitiesForPolicy API.
9798
+ # attached to, use ListEntitiesForPolicy.
9129
9799
  #
9130
- # For information about managed policies, see [Managed Policies and
9131
- # Inline Policies][1] in the *IAM User Guide*.
9800
+ # For information about managed policies, see [Managed policies and
9801
+ # inline policies][1] in the *IAM User Guide*.
9132
9802
  #
9133
9803
  #
9134
9804
  #
@@ -9138,8 +9808,8 @@ module Aws::IAM
9138
9808
  # The Amazon Resource Name (ARN) of the IAM policy whose default version
9139
9809
  # you want to set.
9140
9810
  #
9141
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
9142
- # AWS Service Namespaces][1] in the *AWS General Reference*.
9811
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
9812
+ # in the *AWS General Reference*.
9143
9813
  #
9144
9814
  #
9145
9815
  #
@@ -9149,7 +9819,7 @@ module Aws::IAM
9149
9819
  # The version of the policy to set as the default (operative) version.
9150
9820
  #
9151
9821
  # For more information about managed policy versions, see [Versioning
9152
- # for Managed Policies][1] in the *IAM User Guide*.
9822
+ # for managed policies][1] in the *IAM User Guide*.
9153
9823
  #
9154
9824
  #
9155
9825
  #
@@ -9181,7 +9851,8 @@ module Aws::IAM
9181
9851
  # `https://sts.amazonaws.com`. AWS recommends using Regional STS
9182
9852
  # endpoints to reduce latency, build in redundancy, and increase session
9183
9853
  # token availability. For information about Regional endpoints for STS,
9184
- # see [AWS Regions and Endpoints][1] in the *AWS General Reference*.
9854
+ # see [AWS AWS Security Token Service endpoints and quotas][1] in the
9855
+ # *AWS General Reference*.
9185
9856
  #
9186
9857
  # If you make an STS call to the global endpoint, the resulting session
9187
9858
  # tokens might be valid in some Regions but not others. It depends on
@@ -9190,8 +9861,8 @@ module Aws::IAM
9190
9861
  # work in manually enabled Regions, such as Asia Pacific (Hong Kong).
9191
9862
  # Version 2 tokens are valid in all Regions. However, version 2 tokens
9192
9863
  # are longer and might affect systems where you temporarily store
9193
- # tokens. For information, see [Activating and Deactivating STS in an
9194
- # AWS Region][2] in the *IAM User Guide*.
9864
+ # tokens. For information, see [Activating and deactivating STS in an
9865
+ # AWS region][2] in the *IAM User Guide*.
9195
9866
  #
9196
9867
  # To view the current session token version, see the
9197
9868
  # `GlobalEndpointTokenVersion` entry in the response of the
@@ -9199,7 +9870,7 @@ module Aws::IAM
9199
9870
  #
9200
9871
  #
9201
9872
  #
9202
- # [1]: https://docs.aws.amazon.com/general/latest/gr/rande.html#sts_region
9873
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/sts.html
9203
9874
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html
9204
9875
  #
9205
9876
  # @option params [required, String] :global_endpoint_token_version
@@ -9210,8 +9881,8 @@ module Aws::IAM
9210
9881
  # are longer and might affect systems where you temporarily store
9211
9882
  # tokens.
9212
9883
  #
9213
- # For information, see [Activating and Deactivating STS in an AWS
9214
- # Region][1] in the *IAM User Guide*.
9884
+ # For information, see [Activating and deactivating STS in an AWS
9885
+ # region][1] in the *IAM User Guide*.
9215
9886
  #
9216
9887
  #
9217
9888
  #
@@ -9250,7 +9921,8 @@ module Aws::IAM
9250
9921
  #
9251
9922
  # The simulation does not perform the API operations; it only checks the
9252
9923
  # authorization to determine if the simulated policies allow or deny the
9253
- # operations.
9924
+ # operations. You can simulate resources that don't exist in your
9925
+ # account.
9254
9926
  #
9255
9927
  # If you want to simulate existing policies that are attached to an IAM
9256
9928
  # user, group, or role, use SimulatePrincipalPolicy instead.
@@ -9264,6 +9936,14 @@ module Aws::IAM
9264
9936
  # If the output is long, you can use `MaxItems` and `Marker` parameters
9265
9937
  # to paginate the results.
9266
9938
  #
9939
+ # For more information about using the policy simulator, see [Testing
9940
+ # IAM policies with the IAM policy simulator ][1]in the *IAM User
9941
+ # Guide*.
9942
+ #
9943
+ #
9944
+ #
9945
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html
9946
+ #
9267
9947
  # @option params [required, Array<String>] :policy_input_list
9268
9948
  # A list of policy documents to include in the simulation. Each document
9269
9949
  # is specified as a string containing the complete, valid JSON text of
@@ -9298,7 +9978,7 @@ module Aws::IAM
9298
9978
  # boundary sets the maximum permissions that an IAM entity can have. You
9299
9979
  # can input only one permissions boundary when you pass a policy to this
9300
9980
  # operation. For more information about permissions boundaries, see
9301
- # [Permissions Boundaries for IAM Entities][1] in the *IAM User Guide*.
9981
+ # [Permissions boundaries for IAM entities][1] in the *IAM User Guide*.
9302
9982
  # The policy input is specified as a string that contains the complete,
9303
9983
  # valid JSON text of a permissions boundary policy.
9304
9984
  #
@@ -9331,7 +10011,8 @@ module Aws::IAM
9331
10011
  # resources). Each API in the `ActionNames` parameter is evaluated for
9332
10012
  # each resource in this list. The simulation determines the access
9333
10013
  # result (allowed or denied) of each combination and reports it in the
9334
- # response.
10014
+ # response. You can simulate resources that don't exist in your
10015
+ # account.
9335
10016
  #
9336
10017
  # The simulation does not automatically retrieve policies for the
9337
10018
  # specified resources. If you want to include a resource policy in the
@@ -9342,8 +10023,8 @@ module Aws::IAM
9342
10023
  # of the resources included in the simulation or you receive an invalid
9343
10024
  # input error.
9344
10025
  #
9345
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
9346
- # AWS Service Namespaces][1] in the *AWS General Reference*.
10026
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
10027
+ # in the *AWS General Reference*.
9347
10028
  #
9348
10029
  #
9349
10030
  #
@@ -9419,7 +10100,7 @@ module Aws::IAM
9419
10100
  # includes VPC, then you must supply the network-interface resource. If
9420
10101
  # it includes an IP subnet, then you must specify the subnet resource.
9421
10102
  # For more information on the EC2 scenario options, see [Supported
9422
- # Platforms][1] in the *Amazon EC2 User Guide*.
10103
+ # platforms][1] in the *Amazon EC2 User Guide*.
9423
10104
  #
9424
10105
  # * **EC2-Classic-InstanceStore**
9425
10106
  #
@@ -9547,7 +10228,8 @@ module Aws::IAM
9547
10228
  # policies' effective permissions. The entity can be an IAM user,
9548
10229
  # group, or role. If you specify a user, then the simulation also
9549
10230
  # includes all of the policies that are attached to groups that the user
9550
- # belongs to.
10231
+ # belongs to. You can simulate resources that don't exist in your
10232
+ # account.
9551
10233
  #
9552
10234
  # You can optionally include a list of one or more additional policies
9553
10235
  # specified as strings to include in the simulation. If you want to
@@ -9561,8 +10243,8 @@ module Aws::IAM
9561
10243
  # authorization to determine if the simulated policies allow or deny the
9562
10244
  # operations.
9563
10245
  #
9564
- # **Note:** This API discloses information about the permissions granted
9565
- # to other users. If you do not want users to see other user's
10246
+ # **Note:** This operation discloses information about the permissions
10247
+ # granted to other users. If you do not want users to see other user's
9566
10248
  # permissions, then consider allowing them to use SimulateCustomPolicy
9567
10249
  # instead.
9568
10250
  #
@@ -9575,6 +10257,14 @@ module Aws::IAM
9575
10257
  # If the output is long, you can use the `MaxItems` and `Marker`
9576
10258
  # parameters to paginate the results.
9577
10259
  #
10260
+ # For more information about using the policy simulator, see [Testing
10261
+ # IAM policies with the IAM policy simulator ][1]in the *IAM User
10262
+ # Guide*.
10263
+ #
10264
+ #
10265
+ #
10266
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html
10267
+ #
9578
10268
  # @option params [required, String] :policy_source_arn
9579
10269
  # The Amazon Resource Name (ARN) of a user, group, or role whose
9580
10270
  # policies you want to include in the simulation. If you specify a user,
@@ -9583,8 +10273,8 @@ module Aws::IAM
9583
10273
  # also includes all policies that are attached to any groups the user
9584
10274
  # belongs to.
9585
10275
  #
9586
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
9587
- # AWS Service Namespaces][1] in the *AWS General Reference*.
10276
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
10277
+ # in the *AWS General Reference*.
9588
10278
  #
9589
10279
  #
9590
10280
  #
@@ -9620,7 +10310,7 @@ module Aws::IAM
9620
10310
  # to an entity and you pass in a different permissions boundary policy
9621
10311
  # using this parameter, then the new permissions boundary policy is used
9622
10312
  # for the simulation. For more information about permissions boundaries,
9623
- # see [Permissions Boundaries for IAM Entities][1] in the *IAM User
10313
+ # see [Permissions boundaries for IAM entities][1] in the *IAM User
9624
10314
  # Guide*. The policy input is specified as a string containing the
9625
10315
  # complete, valid JSON text of a permissions boundary policy.
9626
10316
  #
@@ -9652,15 +10342,16 @@ module Aws::IAM
9652
10342
  # resources). Each API in the `ActionNames` parameter is evaluated for
9653
10343
  # each resource in this list. The simulation determines the access
9654
10344
  # result (allowed or denied) of each combination and reports it in the
9655
- # response.
10345
+ # response. You can simulate resources that don't exist in your
10346
+ # account.
9656
10347
  #
9657
10348
  # The simulation does not automatically retrieve policies for the
9658
10349
  # specified resources. If you want to include a resource policy in the
9659
10350
  # simulation, then you must include the policy as a string in the
9660
10351
  # `ResourcePolicy` parameter.
9661
10352
  #
9662
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
9663
- # AWS Service Namespaces][1] in the *AWS General Reference*.
10353
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
10354
+ # in the *AWS General Reference*.
9664
10355
  #
9665
10356
  #
9666
10357
  #
@@ -9718,8 +10409,8 @@ module Aws::IAM
9718
10409
  # that the resource-based policy's `Principal` element has a value to
9719
10410
  # use in evaluating the policy.
9720
10411
  #
9721
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
9722
- # AWS Service Namespaces][1] in the *AWS General Reference*.
10412
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
10413
+ # in the *AWS General Reference*.
9723
10414
  #
9724
10415
  #
9725
10416
  #
@@ -9746,7 +10437,7 @@ module Aws::IAM
9746
10437
  # includes VPC, then you must supply the network interface resource. If
9747
10438
  # it includes an IP subnet, then you must specify the subnet resource.
9748
10439
  # For more information on the EC2 scenario options, see [Supported
9749
- # Platforms][1] in the *Amazon EC2 User Guide*.
10440
+ # platforms][1] in the *Amazon EC2 User Guide*.
9750
10441
  #
9751
10442
  # * **EC2-Classic-InstanceStore**
9752
10443
  #
@@ -9870,6 +10561,309 @@ module Aws::IAM
9870
10561
  req.send_request(options)
9871
10562
  end
9872
10563
 
10564
+ # Adds one or more tags to an IAM instance profile. If a tag with the
10565
+ # same key name already exists, then that tag is overwritten with the
10566
+ # new value.
10567
+ #
10568
+ # Each tag consists of a key name and an associated value. By assigning
10569
+ # tags to your resources, you can do the following:
10570
+ #
10571
+ # * **Administrative grouping and discovery** - Attach tags to resources
10572
+ # to aid in organization and search. For example, you could search for
10573
+ # all resources with the key name *Project* and the value
10574
+ # *MyImportantProject*. Or search for all resources with the key name
10575
+ # *Cost Center* and the value *41200*.
10576
+ #
10577
+ # * **Access control** - Include tags in IAM user-based and
10578
+ # resource-based policies. You can use tags to restrict access to only
10579
+ # an IAM instance profile that has a specified tag attached. For
10580
+ # examples of policies that show how to use tags to control access,
10581
+ # see [Control access using IAM tags][1] in the *IAM User Guide*.
10582
+ #
10583
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10584
+ # maximum number of tags, then the entire request fails and the
10585
+ # resource is not created. For more information about tagging, see
10586
+ # [Tagging IAM resources][2] in the *IAM User Guide*.
10587
+ #
10588
+ # * AWS always interprets the tag `Value` as a single string. If you
10589
+ # need to store an array, you can store comma-separated values in the
10590
+ # string. However, you must interpret the value in your code.
10591
+ #
10592
+ # </note>
10593
+ #
10594
+ #
10595
+ #
10596
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
10597
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
10598
+ #
10599
+ # @option params [required, String] :instance_profile_name
10600
+ # The name of the IAM instance profile to which you want to add tags.
10601
+ #
10602
+ # This parameter accepts (through its [regex pattern][1]) a string of
10603
+ # characters that consist of upper and lowercase alphanumeric characters
10604
+ # with no spaces. You can also include any of the following characters:
10605
+ # =,.@-
10606
+ #
10607
+ #
10608
+ #
10609
+ # [1]: http://wikipedia.org/wiki/regex
10610
+ #
10611
+ # @option params [required, Array<Types::Tag>] :tags
10612
+ # The list of tags that you want to attach to the IAM instance profile.
10613
+ # Each tag consists of a key name and an associated value.
10614
+ #
10615
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10616
+ #
10617
+ # @example Request syntax with placeholder values
10618
+ #
10619
+ # resp = client.tag_instance_profile({
10620
+ # instance_profile_name: "instanceProfileNameType", # required
10621
+ # tags: [ # required
10622
+ # {
10623
+ # key: "tagKeyType", # required
10624
+ # value: "tagValueType", # required
10625
+ # },
10626
+ # ],
10627
+ # })
10628
+ #
10629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagInstanceProfile AWS API Documentation
10630
+ #
10631
+ # @overload tag_instance_profile(params = {})
10632
+ # @param [Hash] params ({})
10633
+ def tag_instance_profile(params = {}, options = {})
10634
+ req = build_request(:tag_instance_profile, params)
10635
+ req.send_request(options)
10636
+ end
10637
+
10638
+ # Adds one or more tags to an IAM virtual multi-factor authentication
10639
+ # (MFA) device. If a tag with the same key name already exists, then
10640
+ # that tag is overwritten with the new value.
10641
+ #
10642
+ # A tag consists of a key name and an associated value. By assigning
10643
+ # tags to your resources, you can do the following:
10644
+ #
10645
+ # * **Administrative grouping and discovery** - Attach tags to resources
10646
+ # to aid in organization and search. For example, you could search for
10647
+ # all resources with the key name *Project* and the value
10648
+ # *MyImportantProject*. Or search for all resources with the key name
10649
+ # *Cost Center* and the value *41200*.
10650
+ #
10651
+ # * **Access control** - Include tags in IAM user-based and
10652
+ # resource-based policies. You can use tags to restrict access to only
10653
+ # an IAM virtual MFA device that has a specified tag attached. For
10654
+ # examples of policies that show how to use tags to control access,
10655
+ # see [Control access using IAM tags][1] in the *IAM User Guide*.
10656
+ #
10657
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10658
+ # maximum number of tags, then the entire request fails and the
10659
+ # resource is not created. For more information about tagging, see
10660
+ # [Tagging IAM resources][2] in the *IAM User Guide*.
10661
+ #
10662
+ # * AWS always interprets the tag `Value` as a single string. If you
10663
+ # need to store an array, you can store comma-separated values in the
10664
+ # string. However, you must interpret the value in your code.
10665
+ #
10666
+ # </note>
10667
+ #
10668
+ #
10669
+ #
10670
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
10671
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
10672
+ #
10673
+ # @option params [required, String] :serial_number
10674
+ # The unique identifier for the IAM virtual MFA device to which you want
10675
+ # to add tags. For virtual MFA devices, the serial number is the same as
10676
+ # the ARN.
10677
+ #
10678
+ # This parameter accepts (through its [regex pattern][1]) a string of
10679
+ # characters that consist of upper and lowercase alphanumeric characters
10680
+ # with no spaces. You can also include any of the following characters:
10681
+ # =,.@-
10682
+ #
10683
+ #
10684
+ #
10685
+ # [1]: http://wikipedia.org/wiki/regex
10686
+ #
10687
+ # @option params [required, Array<Types::Tag>] :tags
10688
+ # The list of tags that you want to attach to the IAM virtual MFA
10689
+ # device. Each tag consists of a key name and an associated value.
10690
+ #
10691
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10692
+ #
10693
+ # @example Request syntax with placeholder values
10694
+ #
10695
+ # resp = client.tag_mfa_device({
10696
+ # serial_number: "serialNumberType", # required
10697
+ # tags: [ # required
10698
+ # {
10699
+ # key: "tagKeyType", # required
10700
+ # value: "tagValueType", # required
10701
+ # },
10702
+ # ],
10703
+ # })
10704
+ #
10705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagMFADevice AWS API Documentation
10706
+ #
10707
+ # @overload tag_mfa_device(params = {})
10708
+ # @param [Hash] params ({})
10709
+ def tag_mfa_device(params = {}, options = {})
10710
+ req = build_request(:tag_mfa_device, params)
10711
+ req.send_request(options)
10712
+ end
10713
+
10714
+ # Adds one or more tags to an OpenID Connect (OIDC)-compatible identity
10715
+ # provider. For more information about these providers, see [About web
10716
+ # identity federation][1]. If a tag with the same key name already
10717
+ # exists, then that tag is overwritten with the new value.
10718
+ #
10719
+ # A tag consists of a key name and an associated value. By assigning
10720
+ # tags to your resources, you can do the following:
10721
+ #
10722
+ # * **Administrative grouping and discovery** - Attach tags to resources
10723
+ # to aid in organization and search. For example, you could search for
10724
+ # all resources with the key name *Project* and the value
10725
+ # *MyImportantProject*. Or search for all resources with the key name
10726
+ # *Cost Center* and the value *41200*.
10727
+ #
10728
+ # * **Access control** - Include tags in IAM user-based and
10729
+ # resource-based policies. You can use tags to restrict access to only
10730
+ # an OIDC provider that has a specified tag attached. For examples of
10731
+ # policies that show how to use tags to control access, see [Control
10732
+ # access using IAM tags][2] in the *IAM User Guide*.
10733
+ #
10734
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10735
+ # maximum number of tags, then the entire request fails and the
10736
+ # resource is not created. For more information about tagging, see
10737
+ # [Tagging IAM resources][3] in the *IAM User Guide*.
10738
+ #
10739
+ # * AWS always interprets the tag `Value` as a single string. If you
10740
+ # need to store an array, you can store comma-separated values in the
10741
+ # string. However, you must interpret the value in your code.
10742
+ #
10743
+ # </note>
10744
+ #
10745
+ #
10746
+ #
10747
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html
10748
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
10749
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
10750
+ #
10751
+ # @option params [required, String] :open_id_connect_provider_arn
10752
+ # The ARN of the OIDC identity provider in IAM to which you want to add
10753
+ # tags.
10754
+ #
10755
+ # This parameter accepts (through its [regex pattern][1]) a string of
10756
+ # characters that consist of upper and lowercase alphanumeric characters
10757
+ # with no spaces. You can also include any of the following characters:
10758
+ # =,.@-
10759
+ #
10760
+ #
10761
+ #
10762
+ # [1]: http://wikipedia.org/wiki/regex
10763
+ #
10764
+ # @option params [required, Array<Types::Tag>] :tags
10765
+ # The list of tags that you want to attach to the OIDC identity provider
10766
+ # in IAM. Each tag consists of a key name and an associated value.
10767
+ #
10768
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10769
+ #
10770
+ # @example Request syntax with placeholder values
10771
+ #
10772
+ # resp = client.tag_open_id_connect_provider({
10773
+ # open_id_connect_provider_arn: "arnType", # required
10774
+ # tags: [ # required
10775
+ # {
10776
+ # key: "tagKeyType", # required
10777
+ # value: "tagValueType", # required
10778
+ # },
10779
+ # ],
10780
+ # })
10781
+ #
10782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagOpenIDConnectProvider AWS API Documentation
10783
+ #
10784
+ # @overload tag_open_id_connect_provider(params = {})
10785
+ # @param [Hash] params ({})
10786
+ def tag_open_id_connect_provider(params = {}, options = {})
10787
+ req = build_request(:tag_open_id_connect_provider, params)
10788
+ req.send_request(options)
10789
+ end
10790
+
10791
+ # Adds one or more tags to an IAM customer managed policy. If a tag with
10792
+ # the same key name already exists, then that tag is overwritten with
10793
+ # the new value.
10794
+ #
10795
+ # A tag consists of a key name and an associated value. By assigning
10796
+ # tags to your resources, you can do the following:
10797
+ #
10798
+ # * **Administrative grouping and discovery** - Attach tags to resources
10799
+ # to aid in organization and search. For example, you could search for
10800
+ # all resources with the key name *Project* and the value
10801
+ # *MyImportantProject*. Or search for all resources with the key name
10802
+ # *Cost Center* and the value *41200*.
10803
+ #
10804
+ # * **Access control** - Include tags in IAM user-based and
10805
+ # resource-based policies. You can use tags to restrict access to only
10806
+ # an IAM customer managed policy that has a specified tag attached.
10807
+ # For examples of policies that show how to use tags to control
10808
+ # access, see [Control access using IAM tags][1] in the *IAM User
10809
+ # Guide*.
10810
+ #
10811
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10812
+ # maximum number of tags, then the entire request fails and the
10813
+ # resource is not created. For more information about tagging, see
10814
+ # [Tagging IAM resources][2] in the *IAM User Guide*.
10815
+ #
10816
+ # * AWS always interprets the tag `Value` as a single string. If you
10817
+ # need to store an array, you can store comma-separated values in the
10818
+ # string. However, you must interpret the value in your code.
10819
+ #
10820
+ # </note>
10821
+ #
10822
+ #
10823
+ #
10824
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
10825
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
10826
+ #
10827
+ # @option params [required, String] :policy_arn
10828
+ # The ARN of the IAM customer managed policy to which you want to add
10829
+ # tags.
10830
+ #
10831
+ # This parameter accepts (through its [regex pattern][1]) a string of
10832
+ # characters that consist of upper and lowercase alphanumeric characters
10833
+ # with no spaces. You can also include any of the following characters:
10834
+ # =,.@-
10835
+ #
10836
+ #
10837
+ #
10838
+ # [1]: http://wikipedia.org/wiki/regex
10839
+ #
10840
+ # @option params [required, Array<Types::Tag>] :tags
10841
+ # The list of tags that you want to attach to the IAM customer managed
10842
+ # policy. Each tag consists of a key name and an associated value.
10843
+ #
10844
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10845
+ #
10846
+ # @example Request syntax with placeholder values
10847
+ #
10848
+ # resp = client.tag_policy({
10849
+ # policy_arn: "arnType", # required
10850
+ # tags: [ # required
10851
+ # {
10852
+ # key: "tagKeyType", # required
10853
+ # value: "tagValueType", # required
10854
+ # },
10855
+ # ],
10856
+ # })
10857
+ #
10858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagPolicy AWS API Documentation
10859
+ #
10860
+ # @overload tag_policy(params = {})
10861
+ # @param [Hash] params ({})
10862
+ def tag_policy(params = {}, options = {})
10863
+ req = build_request(:tag_policy, params)
10864
+ req.send_request(options)
10865
+ end
10866
+
9873
10867
  # Adds one or more tags to an IAM role. The role can be a regular role
9874
10868
  # or a service-linked role. If a tag with the same key name already
9875
10869
  # exists, then that tag is overwritten with the new value.
@@ -9883,20 +10877,20 @@ module Aws::IAM
9883
10877
  # *MyImportantProject*. Or search for all resources with the key name
9884
10878
  # *Cost Center* and the value *41200*.
9885
10879
  #
9886
- # * **Access control** - Reference tags in IAM user-based and
10880
+ # * **Access control** - Include tags in IAM user-based and
9887
10881
  # resource-based policies. You can use tags to restrict access to only
9888
- # an IAM user or role that has a specified tag attached. You can also
9889
- # restrict access to only those resources that have a certain tag
9890
- # attached. For examples of policies that show how to use tags to
9891
- # control access, see [Control Access Using IAM Tags][1] in the *IAM
9892
- # User Guide*.
10882
+ # an IAM role that has a specified tag attached. You can also restrict
10883
+ # access to only those resources that have a certain tag attached. For
10884
+ # examples of policies that show how to use tags to control access,
10885
+ # see [Control access using IAM tags][1] in the *IAM User Guide*.
9893
10886
  #
9894
10887
  # * **Cost allocation** - Use tags to help track which individuals and
9895
10888
  # teams are using which AWS resources.
9896
10889
  #
9897
- # <note markdown="1"> * Make sure that you have no invalid tags and that you do not exceed
9898
- # the allowed number of tags per role. In either case, the entire
9899
- # request fails and *no* tags are added to the role.
10890
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10891
+ # maximum number of tags, then the entire request fails and the
10892
+ # resource is not created. For more information about tagging, see
10893
+ # [Tagging IAM resources][2] in the *IAM User Guide*.
9900
10894
  #
9901
10895
  # * AWS always interprets the tag `Value` as a single string. If you
9902
10896
  # need to store an array, you can store comma-separated values in the
@@ -9904,7 +10898,7 @@ module Aws::IAM
9904
10898
  #
9905
10899
  # </note>
9906
10900
  #
9907
- # For more information about tagging, see [Tagging IAM Identities][2] in
10901
+ # For more information about tagging, see [Tagging IAM identities][2] in
9908
10902
  # the *IAM User Guide*.
9909
10903
  #
9910
10904
  #
@@ -9913,47 +10907,209 @@ module Aws::IAM
9913
10907
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
9914
10908
  #
9915
10909
  # @option params [required, String] :role_name
9916
- # The name of the role that you want to add tags to.
10910
+ # The name of the IAM role to which you want to add tags.
10911
+ #
10912
+ # This parameter accepts (through its [regex pattern][1]) a string of
10913
+ # characters that consist of upper and lowercase alphanumeric characters
10914
+ # with no spaces. You can also include any of the following characters:
10915
+ # \_+=,.@-
10916
+ #
10917
+ #
10918
+ #
10919
+ # [1]: http://wikipedia.org/wiki/regex
10920
+ #
10921
+ # @option params [required, Array<Types::Tag>] :tags
10922
+ # The list of tags that you want to attach to the IAM role. Each tag
10923
+ # consists of a key name and an associated value.
10924
+ #
10925
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10926
+ #
10927
+ #
10928
+ # @example Example: To add a tag key and value to an IAM role
10929
+ #
10930
+ # # The following example shows how to add tags to an existing role.
10931
+ #
10932
+ # resp = client.tag_role({
10933
+ # role_name: "taggedrole",
10934
+ # tags: [
10935
+ # {
10936
+ # key: "Dept",
10937
+ # value: "Accounting",
10938
+ # },
10939
+ # {
10940
+ # key: "CostCenter",
10941
+ # value: "12345",
10942
+ # },
10943
+ # ],
10944
+ # })
10945
+ #
10946
+ # @example Request syntax with placeholder values
10947
+ #
10948
+ # resp = client.tag_role({
10949
+ # role_name: "roleNameType", # required
10950
+ # tags: [ # required
10951
+ # {
10952
+ # key: "tagKeyType", # required
10953
+ # value: "tagValueType", # required
10954
+ # },
10955
+ # ],
10956
+ # })
10957
+ #
10958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagRole AWS API Documentation
10959
+ #
10960
+ # @overload tag_role(params = {})
10961
+ # @param [Hash] params ({})
10962
+ def tag_role(params = {}, options = {})
10963
+ req = build_request(:tag_role, params)
10964
+ req.send_request(options)
10965
+ end
10966
+
10967
+ # Adds one or more tags to a Security Assertion Markup Language (SAML)
10968
+ # identity provider. For more information about these providers, see
10969
+ # [About SAML 2.0-based federation ][1]. If a tag with the same key name
10970
+ # already exists, then that tag is overwritten with the new value.
10971
+ #
10972
+ # A tag consists of a key name and an associated value. By assigning
10973
+ # tags to your resources, you can do the following:
10974
+ #
10975
+ # * **Administrative grouping and discovery** - Attach tags to resources
10976
+ # to aid in organization and search. For example, you could search for
10977
+ # all resources with the key name *Project* and the value
10978
+ # *MyImportantProject*. Or search for all resources with the key name
10979
+ # *Cost Center* and the value *41200*.
10980
+ #
10981
+ # * **Access control** - Include tags in IAM user-based and
10982
+ # resource-based policies. You can use tags to restrict access to only
10983
+ # a SAML identity provider that has a specified tag attached. For
10984
+ # examples of policies that show how to use tags to control access,
10985
+ # see [Control access using IAM tags][2] in the *IAM User Guide*.
10986
+ #
10987
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
10988
+ # maximum number of tags, then the entire request fails and the
10989
+ # resource is not created. For more information about tagging, see
10990
+ # [Tagging IAM resources][3] in the *IAM User Guide*.
10991
+ #
10992
+ # * AWS always interprets the tag `Value` as a single string. If you
10993
+ # need to store an array, you can store comma-separated values in the
10994
+ # string. However, you must interpret the value in your code.
10995
+ #
10996
+ # </note>
10997
+ #
10998
+ #
10999
+ #
11000
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html
11001
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
11002
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11003
+ #
11004
+ # @option params [required, String] :saml_provider_arn
11005
+ # The ARN of the SAML identity provider in IAM to which you want to add
11006
+ # tags.
11007
+ #
11008
+ # This parameter accepts (through its [regex pattern][1]) a string of
11009
+ # characters that consist of upper and lowercase alphanumeric characters
11010
+ # with no spaces. You can also include any of the following characters:
11011
+ # =,.@-
11012
+ #
11013
+ #
11014
+ #
11015
+ # [1]: http://wikipedia.org/wiki/regex
11016
+ #
11017
+ # @option params [required, Array<Types::Tag>] :tags
11018
+ # The list of tags that you want to attach to the SAML identity provider
11019
+ # in IAM. Each tag consists of a key name and an associated value.
11020
+ #
11021
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11022
+ #
11023
+ # @example Request syntax with placeholder values
11024
+ #
11025
+ # resp = client.tag_saml_provider({
11026
+ # saml_provider_arn: "arnType", # required
11027
+ # tags: [ # required
11028
+ # {
11029
+ # key: "tagKeyType", # required
11030
+ # value: "tagValueType", # required
11031
+ # },
11032
+ # ],
11033
+ # })
11034
+ #
11035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagSAMLProvider AWS API Documentation
11036
+ #
11037
+ # @overload tag_saml_provider(params = {})
11038
+ # @param [Hash] params ({})
11039
+ def tag_saml_provider(params = {}, options = {})
11040
+ req = build_request(:tag_saml_provider, params)
11041
+ req.send_request(options)
11042
+ end
11043
+
11044
+ # Adds one or more tags to an IAM server certificate. If a tag with the
11045
+ # same key name already exists, then that tag is overwritten with the
11046
+ # new value.
11047
+ #
11048
+ # <note markdown="1"> For certificates in a Region supported by AWS Certificate Manager
11049
+ # (ACM), we recommend that you don't use IAM server certificates.
11050
+ # Instead, use ACM to provision, manage, and deploy your server
11051
+ # certificates. For more information about IAM server certificates,
11052
+ # [Working with server certificates][1] in the *IAM User Guide*.
11053
+ #
11054
+ # </note>
11055
+ #
11056
+ # A tag consists of a key name and an associated value. By assigning
11057
+ # tags to your resources, you can do the following:
11058
+ #
11059
+ # * **Administrative grouping and discovery** - Attach tags to resources
11060
+ # to aid in organization and search. For example, you could search for
11061
+ # all resources with the key name *Project* and the value
11062
+ # *MyImportantProject*. Or search for all resources with the key name
11063
+ # *Cost Center* and the value *41200*.
11064
+ #
11065
+ # * **Access control** - Include tags in IAM user-based and
11066
+ # resource-based policies. You can use tags to restrict access to only
11067
+ # a server certificate that has a specified tag attached. For examples
11068
+ # of policies that show how to use tags to control access, see
11069
+ # [Control access using IAM tags][2] in the *IAM User Guide*.
11070
+ #
11071
+ # * **Cost allocation** - Use tags to help track which individuals and
11072
+ # teams are using which AWS resources.
11073
+ #
11074
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
11075
+ # maximum number of tags, then the entire request fails and the
11076
+ # resource is not created. For more information about tagging, see
11077
+ # [Tagging IAM resources][3] in the *IAM User Guide*.
11078
+ #
11079
+ # * AWS always interprets the tag `Value` as a single string. If you
11080
+ # need to store an array, you can store comma-separated values in the
11081
+ # string. However, you must interpret the value in your code.
11082
+ #
11083
+ # </note>
11084
+ #
11085
+ #
11086
+ #
11087
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
11088
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
11089
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11090
+ #
11091
+ # @option params [required, String] :server_certificate_name
11092
+ # The name of the IAM server certificate to which you want to add tags.
9917
11093
  #
9918
11094
  # This parameter accepts (through its [regex pattern][1]) a string of
9919
11095
  # characters that consist of upper and lowercase alphanumeric characters
9920
11096
  # with no spaces. You can also include any of the following characters:
9921
- # \_+=,.@-
11097
+ # =,.@-
9922
11098
  #
9923
11099
  #
9924
11100
  #
9925
11101
  # [1]: http://wikipedia.org/wiki/regex
9926
11102
  #
9927
11103
  # @option params [required, Array<Types::Tag>] :tags
9928
- # The list of tags that you want to attach to the role. Each tag
9929
- # consists of a key name and an associated value. You can specify this
9930
- # with a JSON string.
11104
+ # The list of tags that you want to attach to the IAM server
11105
+ # certificate. Each tag consists of a key name and an associated value.
9931
11106
  #
9932
11107
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9933
11108
  #
9934
- #
9935
- # @example Example: To add a tag key and value to an IAM role
9936
- #
9937
- # # The following example shows how to add tags to an existing role.
9938
- #
9939
- # resp = client.tag_role({
9940
- # role_name: "taggedrole",
9941
- # tags: [
9942
- # {
9943
- # key: "Dept",
9944
- # value: "Accounting",
9945
- # },
9946
- # {
9947
- # key: "CostCenter",
9948
- # value: "12345",
9949
- # },
9950
- # ],
9951
- # })
9952
- #
9953
11109
  # @example Request syntax with placeholder values
9954
11110
  #
9955
- # resp = client.tag_role({
9956
- # role_name: "roleNameType", # required
11111
+ # resp = client.tag_server_certificate({
11112
+ # server_certificate_name: "serverCertificateNameType", # required
9957
11113
  # tags: [ # required
9958
11114
  # {
9959
11115
  # key: "tagKeyType", # required
@@ -9962,12 +11118,12 @@ module Aws::IAM
9962
11118
  # ],
9963
11119
  # })
9964
11120
  #
9965
- # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagRole AWS API Documentation
11121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/TagServerCertificate AWS API Documentation
9966
11122
  #
9967
- # @overload tag_role(params = {})
11123
+ # @overload tag_server_certificate(params = {})
9968
11124
  # @param [Hash] params ({})
9969
- def tag_role(params = {}, options = {})
9970
- req = build_request(:tag_role, params)
11125
+ def tag_server_certificate(params = {}, options = {})
11126
+ req = build_request(:tag_server_certificate, params)
9971
11127
  req.send_request(options)
9972
11128
  end
9973
11129
 
@@ -9983,20 +11139,21 @@ module Aws::IAM
9983
11139
  # *MyImportantProject*. Or search for all resources with the key name
9984
11140
  # *Cost Center* and the value *41200*.
9985
11141
  #
9986
- # * **Access control** - Reference tags in IAM user-based and
11142
+ # * **Access control** - Include tags in IAM user-based and
9987
11143
  # resource-based policies. You can use tags to restrict access to only
9988
- # an IAM requesting user or to a role that has a specified tag
9989
- # attached. You can also restrict access to only those resources that
9990
- # have a certain tag attached. For examples of policies that show how
9991
- # to use tags to control access, see [Control Access Using IAM
9992
- # Tags][1] in the *IAM User Guide*.
11144
+ # an IAM requesting user that has a specified tag attached. You can
11145
+ # also restrict access to only those resources that have a certain tag
11146
+ # attached. For examples of policies that show how to use tags to
11147
+ # control access, see [Control access using IAM tags][1] in the *IAM
11148
+ # User Guide*.
9993
11149
  #
9994
11150
  # * **Cost allocation** - Use tags to help track which individuals and
9995
11151
  # teams are using which AWS resources.
9996
11152
  #
9997
- # <note markdown="1"> * Make sure that you have no invalid tags and that you do not exceed
9998
- # the allowed number of tags per role. In either case, the entire
9999
- # request fails and *no* tags are added to the role.
11153
+ # <note markdown="1"> * If any one of the tags is invalid or if you exceed the allowed
11154
+ # maximum number of tags, then the entire request fails and the
11155
+ # resource is not created. For more information about tagging, see
11156
+ # [Tagging IAM resources][2] in the *IAM User Guide*.
10000
11157
  #
10001
11158
  # * AWS always interprets the tag `Value` as a single string. If you
10002
11159
  # need to store an array, you can store comma-separated values in the
@@ -10004,7 +11161,7 @@ module Aws::IAM
10004
11161
  #
10005
11162
  # </note>
10006
11163
  #
10007
- # For more information about tagging, see [Tagging IAM Identities][2] in
11164
+ # For more information about tagging, see [Tagging IAM identities][2] in
10008
11165
  # the *IAM User Guide*.
10009
11166
  #
10010
11167
  #
@@ -10013,7 +11170,7 @@ module Aws::IAM
10013
11170
  # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
10014
11171
  #
10015
11172
  # @option params [required, String] :user_name
10016
- # The name of the user that you want to add tags to.
11173
+ # The name of the IAM user to which you want to add tags.
10017
11174
  #
10018
11175
  # This parameter accepts (through its [regex pattern][1]) a string of
10019
11176
  # characters that consist of upper and lowercase alphanumeric characters
@@ -10025,7 +11182,7 @@ module Aws::IAM
10025
11182
  # [1]: http://wikipedia.org/wiki/regex
10026
11183
  #
10027
11184
  # @option params [required, Array<Types::Tag>] :tags
10028
- # The list of tags that you want to attach to the user. Each tag
11185
+ # The list of tags that you want to attach to the IAM user. Each tag
10029
11186
  # consists of a key name and an associated value.
10030
11187
  #
10031
11188
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -10070,8 +11227,184 @@ module Aws::IAM
10070
11227
  req.send_request(options)
10071
11228
  end
10072
11229
 
11230
+ # Removes the specified tags from the IAM instance profile. For more
11231
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
11232
+ # User Guide*.
11233
+ #
11234
+ #
11235
+ #
11236
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11237
+ #
11238
+ # @option params [required, String] :instance_profile_name
11239
+ # The name of the IAM instance profile from which you want to remove
11240
+ # tags.
11241
+ #
11242
+ # This parameter accepts (through its [regex pattern][1]) a string of
11243
+ # characters that consist of upper and lowercase alphanumeric characters
11244
+ # with no spaces. You can also include any of the following characters:
11245
+ # =,.@-
11246
+ #
11247
+ #
11248
+ #
11249
+ # [1]: http://wikipedia.org/wiki/regex
11250
+ #
11251
+ # @option params [required, Array<String>] :tag_keys
11252
+ # A list of key names as a simple array of strings. The tags with
11253
+ # matching keys are removed from the specified instance profile.
11254
+ #
11255
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11256
+ #
11257
+ # @example Request syntax with placeholder values
11258
+ #
11259
+ # resp = client.untag_instance_profile({
11260
+ # instance_profile_name: "instanceProfileNameType", # required
11261
+ # tag_keys: ["tagKeyType"], # required
11262
+ # })
11263
+ #
11264
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagInstanceProfile AWS API Documentation
11265
+ #
11266
+ # @overload untag_instance_profile(params = {})
11267
+ # @param [Hash] params ({})
11268
+ def untag_instance_profile(params = {}, options = {})
11269
+ req = build_request(:untag_instance_profile, params)
11270
+ req.send_request(options)
11271
+ end
11272
+
11273
+ # Removes the specified tags from the IAM virtual multi-factor
11274
+ # authentication (MFA) device. For more information about tagging, see
11275
+ # [Tagging IAM resources][1] in the *IAM User Guide*.
11276
+ #
11277
+ #
11278
+ #
11279
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11280
+ #
11281
+ # @option params [required, String] :serial_number
11282
+ # The unique identifier for the IAM virtual MFA device from which you
11283
+ # want to remove tags. For virtual MFA devices, the serial number is the
11284
+ # same as the ARN.
11285
+ #
11286
+ # This parameter accepts (through its [regex pattern][1]) a string of
11287
+ # characters that consist of upper and lowercase alphanumeric characters
11288
+ # with no spaces. You can also include any of the following characters:
11289
+ # =,.@-
11290
+ #
11291
+ #
11292
+ #
11293
+ # [1]: http://wikipedia.org/wiki/regex
11294
+ #
11295
+ # @option params [required, Array<String>] :tag_keys
11296
+ # A list of key names as a simple array of strings. The tags with
11297
+ # matching keys are removed from the specified instance profile.
11298
+ #
11299
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11300
+ #
11301
+ # @example Request syntax with placeholder values
11302
+ #
11303
+ # resp = client.untag_mfa_device({
11304
+ # serial_number: "serialNumberType", # required
11305
+ # tag_keys: ["tagKeyType"], # required
11306
+ # })
11307
+ #
11308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagMFADevice AWS API Documentation
11309
+ #
11310
+ # @overload untag_mfa_device(params = {})
11311
+ # @param [Hash] params ({})
11312
+ def untag_mfa_device(params = {}, options = {})
11313
+ req = build_request(:untag_mfa_device, params)
11314
+ req.send_request(options)
11315
+ end
11316
+
11317
+ # Removes the specified tags from the specified OpenID Connect
11318
+ # (OIDC)-compatible identity provider in IAM. For more information about
11319
+ # OIDC providers, see [About web identity federation][1]. For more
11320
+ # information about tagging, see [Tagging IAM resources][2] in the *IAM
11321
+ # User Guide*.
11322
+ #
11323
+ #
11324
+ #
11325
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html
11326
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11327
+ #
11328
+ # @option params [required, String] :open_id_connect_provider_arn
11329
+ # The ARN of the OIDC provider in IAM from which you want to remove
11330
+ # tags.
11331
+ #
11332
+ # This parameter accepts (through its [regex pattern][1]) a string of
11333
+ # characters that consist of upper and lowercase alphanumeric characters
11334
+ # with no spaces. You can also include any of the following characters:
11335
+ # =,.@-
11336
+ #
11337
+ #
11338
+ #
11339
+ # [1]: http://wikipedia.org/wiki/regex
11340
+ #
11341
+ # @option params [required, Array<String>] :tag_keys
11342
+ # A list of key names as a simple array of strings. The tags with
11343
+ # matching keys are removed from the specified OIDC provider.
11344
+ #
11345
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11346
+ #
11347
+ # @example Request syntax with placeholder values
11348
+ #
11349
+ # resp = client.untag_open_id_connect_provider({
11350
+ # open_id_connect_provider_arn: "arnType", # required
11351
+ # tag_keys: ["tagKeyType"], # required
11352
+ # })
11353
+ #
11354
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagOpenIDConnectProvider AWS API Documentation
11355
+ #
11356
+ # @overload untag_open_id_connect_provider(params = {})
11357
+ # @param [Hash] params ({})
11358
+ def untag_open_id_connect_provider(params = {}, options = {})
11359
+ req = build_request(:untag_open_id_connect_provider, params)
11360
+ req.send_request(options)
11361
+ end
11362
+
11363
+ # Removes the specified tags from the customer managed policy. For more
11364
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
11365
+ # User Guide*.
11366
+ #
11367
+ #
11368
+ #
11369
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11370
+ #
11371
+ # @option params [required, String] :policy_arn
11372
+ # The ARN of the IAM customer managed policy from which you want to
11373
+ # remove tags.
11374
+ #
11375
+ # This parameter accepts (through its [regex pattern][1]) a string of
11376
+ # characters that consist of upper and lowercase alphanumeric characters
11377
+ # with no spaces. You can also include any of the following characters:
11378
+ # =,.@-
11379
+ #
11380
+ #
11381
+ #
11382
+ # [1]: http://wikipedia.org/wiki/regex
11383
+ #
11384
+ # @option params [required, Array<String>] :tag_keys
11385
+ # A list of key names as a simple array of strings. The tags with
11386
+ # matching keys are removed from the specified policy.
11387
+ #
11388
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11389
+ #
11390
+ # @example Request syntax with placeholder values
11391
+ #
11392
+ # resp = client.untag_policy({
11393
+ # policy_arn: "arnType", # required
11394
+ # tag_keys: ["tagKeyType"], # required
11395
+ # })
11396
+ #
11397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagPolicy AWS API Documentation
11398
+ #
11399
+ # @overload untag_policy(params = {})
11400
+ # @param [Hash] params ({})
11401
+ def untag_policy(params = {}, options = {})
11402
+ req = build_request(:untag_policy, params)
11403
+ req.send_request(options)
11404
+ end
11405
+
10073
11406
  # Removes the specified tags from the role. For more information about
10074
- # tagging, see [Tagging IAM Identities][1] in the *IAM User Guide*.
11407
+ # tagging, see [Tagging IAM resources][1] in the *IAM User Guide*.
10075
11408
  #
10076
11409
  #
10077
11410
  #
@@ -10123,8 +11456,106 @@ module Aws::IAM
10123
11456
  req.send_request(options)
10124
11457
  end
10125
11458
 
11459
+ # Removes the specified tags from the specified Security Assertion
11460
+ # Markup Language (SAML) identity provider in IAM. For more information
11461
+ # about these providers, see [About web identity federation][1]. For
11462
+ # more information about tagging, see [Tagging IAM resources][2] in the
11463
+ # *IAM User Guide*.
11464
+ #
11465
+ #
11466
+ #
11467
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html
11468
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11469
+ #
11470
+ # @option params [required, String] :saml_provider_arn
11471
+ # The ARN of the SAML identity provider in IAM from which you want to
11472
+ # remove tags.
11473
+ #
11474
+ # This parameter accepts (through its [regex pattern][1]) a string of
11475
+ # characters that consist of upper and lowercase alphanumeric characters
11476
+ # with no spaces. You can also include any of the following characters:
11477
+ # =,.@-
11478
+ #
11479
+ #
11480
+ #
11481
+ # [1]: http://wikipedia.org/wiki/regex
11482
+ #
11483
+ # @option params [required, Array<String>] :tag_keys
11484
+ # A list of key names as a simple array of strings. The tags with
11485
+ # matching keys are removed from the specified SAML identity provider.
11486
+ #
11487
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11488
+ #
11489
+ # @example Request syntax with placeholder values
11490
+ #
11491
+ # resp = client.untag_saml_provider({
11492
+ # saml_provider_arn: "arnType", # required
11493
+ # tag_keys: ["tagKeyType"], # required
11494
+ # })
11495
+ #
11496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagSAMLProvider AWS API Documentation
11497
+ #
11498
+ # @overload untag_saml_provider(params = {})
11499
+ # @param [Hash] params ({})
11500
+ def untag_saml_provider(params = {}, options = {})
11501
+ req = build_request(:untag_saml_provider, params)
11502
+ req.send_request(options)
11503
+ end
11504
+
11505
+ # Removes the specified tags from the IAM server certificate. For more
11506
+ # information about tagging, see [Tagging IAM resources][1] in the *IAM
11507
+ # User Guide*.
11508
+ #
11509
+ # <note markdown="1"> For certificates in a Region supported by AWS Certificate Manager
11510
+ # (ACM), we recommend that you don't use IAM server certificates.
11511
+ # Instead, use ACM to provision, manage, and deploy your server
11512
+ # certificates. For more information about IAM server certificates,
11513
+ # [Working with server certificates][2] in the *IAM User Guide*.
11514
+ #
11515
+ # </note>
11516
+ #
11517
+ #
11518
+ #
11519
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
11520
+ # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
11521
+ #
11522
+ # @option params [required, String] :server_certificate_name
11523
+ # The name of the IAM server certificate from which you want to remove
11524
+ # tags.
11525
+ #
11526
+ # This parameter accepts (through its [regex pattern][1]) a string of
11527
+ # characters that consist of upper and lowercase alphanumeric characters
11528
+ # with no spaces. You can also include any of the following characters:
11529
+ # =,.@-
11530
+ #
11531
+ #
11532
+ #
11533
+ # [1]: http://wikipedia.org/wiki/regex
11534
+ #
11535
+ # @option params [required, Array<String>] :tag_keys
11536
+ # A list of key names as a simple array of strings. The tags with
11537
+ # matching keys are removed from the specified IAM server certificate.
11538
+ #
11539
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11540
+ #
11541
+ # @example Request syntax with placeholder values
11542
+ #
11543
+ # resp = client.untag_server_certificate({
11544
+ # server_certificate_name: "serverCertificateNameType", # required
11545
+ # tag_keys: ["tagKeyType"], # required
11546
+ # })
11547
+ #
11548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UntagServerCertificate AWS API Documentation
11549
+ #
11550
+ # @overload untag_server_certificate(params = {})
11551
+ # @param [Hash] params ({})
11552
+ def untag_server_certificate(params = {}, options = {})
11553
+ req = build_request(:untag_server_certificate, params)
11554
+ req.send_request(options)
11555
+ end
11556
+
10126
11557
  # Removes the specified tags from the user. For more information about
10127
- # tagging, see [Tagging IAM Identities][1] in the *IAM User Guide*.
11558
+ # tagging, see [Tagging IAM resources][1] in the *IAM User Guide*.
10128
11559
  #
10129
11560
  #
10130
11561
  #
@@ -10186,8 +11617,8 @@ module Aws::IAM
10186
11617
  # Consequently, you can use this operation to manage AWS account root
10187
11618
  # user credentials even if the AWS account has no associated users.
10188
11619
  #
10189
- # For information about rotating keys, see [Managing Keys and
10190
- # Certificates][1] in the *IAM User Guide*.
11620
+ # For information about rotating keys, see [Managing keys and
11621
+ # certificates][1] in the *IAM User Guide*.
10191
11622
  #
10192
11623
  #
10193
11624
  #
@@ -10218,8 +11649,8 @@ module Aws::IAM
10218
11649
  #
10219
11650
  # @option params [required, String] :status
10220
11651
  # The status you want to assign to the secret access key. `Active` means
10221
- # that the key can be used for API calls to AWS, while `Inactive` means
10222
- # that the key cannot be used.
11652
+ # that the key can be used for programmatic calls to AWS, while
11653
+ # `Inactive` means that the key cannot be used.
10223
11654
  #
10224
11655
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10225
11656
  #
@@ -10267,7 +11698,7 @@ module Aws::IAM
10267
11698
  # </note>
10268
11699
  #
10269
11700
  # For more information about using a password policy, see [Managing an
10270
- # IAM Password Policy][1] in the *IAM User Guide*.
11701
+ # IAM password policy][1] in the *IAM User Guide*.
10271
11702
  #
10272
11703
  #
10273
11704
  #
@@ -10316,7 +11747,7 @@ module Aws::IAM
10316
11747
  # @option params [Boolean] :allow_users_to_change_password
10317
11748
  # Allows all IAM users in your account to use the AWS Management Console
10318
11749
  # to change their own passwords. For more information, see [Letting IAM
10319
- # Users Change Their Own Passwords][1] in the *IAM User Guide*.
11750
+ # users change their own passwords][1] in the *IAM User Guide*.
10320
11751
  #
10321
11752
  # If you do not specify a value for this parameter, then the operation
10322
11753
  # uses the default value of `false`. The result is that IAM users in the
@@ -10390,8 +11821,8 @@ module Aws::IAM
10390
11821
 
10391
11822
  # Updates the policy that grants an IAM entity permission to assume a
10392
11823
  # role. This is typically referred to as the "role trust policy". For
10393
- # more information about roles, go to [Using Roles to Delegate
10394
- # Permissions and Federate Identities][1].
11824
+ # more information about roles, see [Using roles to delegate permissions
11825
+ # and federate identities][1].
10395
11826
  #
10396
11827
  #
10397
11828
  #
@@ -10464,7 +11895,7 @@ module Aws::IAM
10464
11895
  # Updates the name and/or the path of the specified IAM group.
10465
11896
  #
10466
11897
  # You should understand the implications of changing a group's path or
10467
- # name. For more information, see [Renaming Users and Groups][1] in the
11898
+ # name. For more information, see [Renaming users and groups][1] in the
10468
11899
  # *IAM User Guide*.
10469
11900
  #
10470
11901
  # <note markdown="1"> The person making the request (the principal), must have permission to
@@ -10473,7 +11904,7 @@ module Aws::IAM
10473
11904
  # have a policy that allows them to update both groups. If the principal
10474
11905
  # has permission to update the `Managers` group, but not the `MGRs`
10475
11906
  # group, then the update fails. For more information about permissions,
10476
- # see [Access Management][2].
11907
+ # see [Access management][2].
10477
11908
  #
10478
11909
  # </note>
10479
11910
  #
@@ -10547,11 +11978,14 @@ module Aws::IAM
10547
11978
  req.send_request(options)
10548
11979
  end
10549
11980
 
10550
- # Changes the password for the specified IAM user.
11981
+ # Changes the password for the specified IAM user. You can use the AWS
11982
+ # CLI, the AWS API, or the **Users** page in the IAM console to change
11983
+ # the password for any IAM user. Use ChangePassword to change your own
11984
+ # password in the **My Security Credentials** page in the AWS Management
11985
+ # Console.
10551
11986
  #
10552
- # IAM users can change their own passwords by calling ChangePassword.
10553
11987
  # For more information about modifying passwords, see [Managing
10554
- # Passwords][1] in the *IAM User Guide*.
11988
+ # passwords][1] in the *IAM User Guide*.
10555
11989
  #
10556
11990
  #
10557
11991
  #
@@ -10651,8 +12085,8 @@ module Aws::IAM
10651
12085
  # of OIDC provider ARNs by using the ListOpenIDConnectProviders
10652
12086
  # operation.
10653
12087
  #
10654
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
10655
- # AWS Service Namespaces][1] in the *AWS General Reference*.
12088
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
12089
+ # in the *AWS General Reference*.
10656
12090
  #
10657
12091
  #
10658
12092
  #
@@ -10704,7 +12138,7 @@ module Aws::IAM
10704
12138
  # for one hour by default. This applies when you use the `AssumeRole*`
10705
12139
  # API operations or the `assume-role*` CLI operations but does not apply
10706
12140
  # when you use those operations to create a console URL. For more
10707
- # information, see [Using IAM Roles][1] in the *IAM User Guide*.
12141
+ # information, see [Using IAM roles][1] in the *IAM User Guide*.
10708
12142
  #
10709
12143
  #
10710
12144
  #
@@ -10801,8 +12235,8 @@ module Aws::IAM
10801
12235
  # @option params [required, String] :saml_provider_arn
10802
12236
  # The Amazon Resource Name (ARN) of the SAML provider to update.
10803
12237
  #
10804
- # For more information about ARNs, see [Amazon Resource Names (ARNs) and
10805
- # AWS Service Namespaces][1] in the *AWS General Reference*.
12238
+ # For more information about ARNs, see [Amazon Resource Names (ARNs)][1]
12239
+ # in the *AWS General Reference*.
10806
12240
  #
10807
12241
  #
10808
12242
  #
@@ -10841,7 +12275,7 @@ module Aws::IAM
10841
12275
  # authenticating the associated IAM user to an AWS CodeCommit
10842
12276
  # repository. For more information about using SSH keys to authenticate
10843
12277
  # to an AWS CodeCommit repository, see [Set up AWS CodeCommit for SSH
10844
- # Connections][1] in the *AWS CodeCommit User Guide*.
12278
+ # connections][1] in the *AWS CodeCommit User Guide*.
10845
12279
  #
10846
12280
  #
10847
12281
  #
@@ -10898,13 +12332,13 @@ module Aws::IAM
10898
12332
  # stored in IAM.
10899
12333
  #
10900
12334
  # For more information about working with server certificates, see
10901
- # [Working with Server Certificates][1] in the *IAM User Guide*. This
12335
+ # [Working with server certificates][1] in the *IAM User Guide*. This
10902
12336
  # topic also includes a list of AWS services that can use the server
10903
12337
  # certificates that you manage with IAM.
10904
12338
  #
10905
12339
  # You should understand the implications of changing a server
10906
12340
  # certificate's path or name. For more information, see [Renaming a
10907
- # Server Certificate][2] in the *IAM User Guide*.
12341
+ # server certificate][2] in the *IAM User Guide*.
10908
12342
  #
10909
12343
  # <note markdown="1"> The person making the request (the principal), must have permission to
10910
12344
  # change the server certificate with the old name and the new name. For
@@ -10913,7 +12347,7 @@ module Aws::IAM
10913
12347
  # update both certificates. If the principal has permission to update
10914
12348
  # the `ProductionCert` group, but not the `ProdCert` certificate, then
10915
12349
  # the update fails. For more information about permissions, see [Access
10916
- # Management][3] in the *IAM User Guide*.
12350
+ # management][3] in the *IAM User Guide*.
10917
12351
  #
10918
12352
  # </note>
10919
12353
  #
@@ -11072,8 +12506,8 @@ module Aws::IAM
11072
12506
  #
11073
12507
  # @option params [required, String] :status
11074
12508
  # The status you want to assign to the certificate. `Active` means that
11075
- # the certificate can be used for API calls to AWS `Inactive` means that
11076
- # the certificate cannot be used.
12509
+ # the certificate can be used for programmatic calls to AWS `Inactive`
12510
+ # means that the certificate cannot be used.
11077
12511
  #
11078
12512
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
11079
12513
  #
@@ -11108,14 +12542,14 @@ module Aws::IAM
11108
12542
  # Updates the name and/or the path of the specified IAM user.
11109
12543
  #
11110
12544
  # You should understand the implications of changing an IAM user's path
11111
- # or name. For more information, see [Renaming an IAM User][1] and
11112
- # [Renaming an IAM Group][2] in the *IAM User Guide*.
12545
+ # or name. For more information, see [Renaming an IAM user][1] and
12546
+ # [Renaming an IAM group][2] in the *IAM User Guide*.
11113
12547
  #
11114
12548
  # <note markdown="1"> To change a user name, the requester must have appropriate permissions
11115
12549
  # on both the source object and the target object. For example, to
11116
12550
  # change Bob to Robert, the entity making the request must have
11117
12551
  # permission on Bob and Robert, or must have permission on all (*). For
11118
- # more information about permissions, see [Permissions and Policies][3].
12552
+ # more information about permissions, see [Permissions and policies][3].
11119
12553
  #
11120
12554
  # </note>
11121
12555
  #
@@ -11197,7 +12631,7 @@ module Aws::IAM
11197
12631
  # authenticating the associated IAM user to an AWS CodeCommit
11198
12632
  # repository. For more information about using SSH keys to authenticate
11199
12633
  # to an AWS CodeCommit repository, see [Set up AWS CodeCommit for SSH
11200
- # Connections][1] in the *AWS CodeCommit User Guide*.
12634
+ # connections][1] in the *AWS CodeCommit User Guide*.
11201
12635
  #
11202
12636
  #
11203
12637
  #
@@ -11278,21 +12712,20 @@ module Aws::IAM
11278
12712
  # User Guide][2].
11279
12713
  #
11280
12714
  # For more information about working with server certificates, see
11281
- # [Working with Server Certificates][3] in the *IAM User Guide*. This
12715
+ # [Working with server certificates][3] in the *IAM User Guide*. This
11282
12716
  # topic includes a list of AWS services that can use the server
11283
12717
  # certificates that you manage with IAM.
11284
12718
  #
11285
12719
  # For information about the number of server certificates you can
11286
- # upload, see [Limitations on IAM Entities and Objects][4] in the *IAM
11287
- # User Guide*.
12720
+ # upload, see [IAM and STS quotas][4] in the *IAM User Guide*.
11288
12721
  #
11289
12722
  # <note markdown="1"> Because the body of the public key certificate, private key, and the
11290
12723
  # certificate chain can be large, you should use POST rather than GET
11291
12724
  # when calling `UploadServerCertificate`. For information about setting
11292
- # up signatures and authorization through the API, go to [Signing AWS
11293
- # API Requests][5] in the *AWS General Reference*. For general
11294
- # information about using the Query API with IAM, go to [Calling the API
11295
- # by Making HTTP Query Requests][6] in the *IAM User Guide*.
12725
+ # up signatures and authorization through the API, see [Signing AWS API
12726
+ # requests][5] in the *AWS General Reference*. For general information
12727
+ # about using the Query API with IAM, see [Calling the API by making
12728
+ # HTTP query requests][6] in the *IAM User Guide*.
11296
12729
  #
11297
12730
  # </note>
11298
12731
  #
@@ -11301,13 +12734,13 @@ module Aws::IAM
11301
12734
  # [1]: https://docs.aws.amazon.com/acm/
11302
12735
  # [2]: https://docs.aws.amazon.com/acm/latest/userguide/
11303
12736
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
11304
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html
12737
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html
11305
12738
  # [5]: https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html
11306
12739
  # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/programming.html
11307
12740
  #
11308
12741
  # @option params [String] :path
11309
12742
  # The path for the server certificate. For more information about paths,
11310
- # see [IAM Identifiers][1] in the *IAM User Guide*.
12743
+ # see [IAM identifiers][1] in the *IAM User Guide*.
11311
12744
  #
11312
12745
  # This parameter is optional. If it is not included, it defaults to a
11313
12746
  # slash (/). This parameter allows (through its [regex pattern][2]) a
@@ -11400,9 +12833,26 @@ module Aws::IAM
11400
12833
  #
11401
12834
  # [1]: http://wikipedia.org/wiki/regex
11402
12835
  #
12836
+ # @option params [Array<Types::Tag>] :tags
12837
+ # A list of tags that you want to attach to the new IAM server
12838
+ # certificate resource. Each tag consists of a key name and an
12839
+ # associated value. For more information about tagging, see [Tagging IAM
12840
+ # resources][1] in the *IAM User Guide*.
12841
+ #
12842
+ # <note markdown="1"> If any one of the tags is invalid or if you exceed the allowed maximum
12843
+ # number of tags, then the entire request fails and the resource is not
12844
+ # created.
12845
+ #
12846
+ # </note>
12847
+ #
12848
+ #
12849
+ #
12850
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
12851
+ #
11403
12852
  # @return [Types::UploadServerCertificateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11404
12853
  #
11405
12854
  # * {Types::UploadServerCertificateResponse#server_certificate_metadata #server_certificate_metadata} => Types::ServerCertificateMetadata
12855
+ # * {Types::UploadServerCertificateResponse#tags #tags} => Array&lt;Types::Tag&gt;
11406
12856
  #
11407
12857
  #
11408
12858
  # @example Example: To upload a server certificate to your AWS account
@@ -11436,6 +12886,12 @@ module Aws::IAM
11436
12886
  # certificate_body: "certificateBodyType", # required
11437
12887
  # private_key: "privateKeyType", # required
11438
12888
  # certificate_chain: "certificateChainType",
12889
+ # tags: [
12890
+ # {
12891
+ # key: "tagKeyType", # required
12892
+ # value: "tagValueType", # required
12893
+ # },
12894
+ # ],
11439
12895
  # })
11440
12896
  #
11441
12897
  # @example Response structure
@@ -11446,6 +12902,9 @@ module Aws::IAM
11446
12902
  # resp.server_certificate_metadata.arn #=> String
11447
12903
  # resp.server_certificate_metadata.upload_date #=> Time
11448
12904
  # resp.server_certificate_metadata.expiration #=> Time
12905
+ # resp.tags #=> Array
12906
+ # resp.tags[0].key #=> String
12907
+ # resp.tags[0].value #=> String
11449
12908
  #
11450
12909
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadServerCertificate AWS API Documentation
11451
12910
  #
@@ -11457,10 +12916,13 @@ module Aws::IAM
11457
12916
  end
11458
12917
 
11459
12918
  # Uploads an X.509 signing certificate and associates it with the
11460
- # specified IAM user. Some AWS services use X.509 signing certificates
12919
+ # specified IAM user. Some AWS services require you to use certificates
11461
12920
  # to validate requests that are signed with a corresponding private key.
11462
12921
  # When you upload the certificate, its default status is `Active`.
11463
12922
  #
12923
+ # For information about when you would use an X.509 signing certificate,
12924
+ # see [Managing server certificates in IAM][1] in the *IAM User Guide*.
12925
+ #
11464
12926
  # If the `UserName` is not specified, the IAM user name is determined
11465
12927
  # implicitly based on the AWS access key ID used to sign the request.
11466
12928
  # This operation works for access keys under the AWS account.
@@ -11470,16 +12932,17 @@ module Aws::IAM
11470
12932
  # <note markdown="1"> Because the body of an X.509 certificate can be large, you should use
11471
12933
  # POST rather than GET when calling `UploadSigningCertificate`. For
11472
12934
  # information about setting up signatures and authorization through the
11473
- # API, go to [Signing AWS API Requests][1] in the *AWS General
11474
- # Reference*. For general information about using the Query API with
11475
- # IAM, go to [Making Query Requests][2] in the *IAM User Guide*.
12935
+ # API, see [Signing AWS API requests][2] in the *AWS General Reference*.
12936
+ # For general information about using the Query API with IAM, see
12937
+ # [Making query requests][3] in the *IAM User Guide*.
11476
12938
  #
11477
12939
  # </note>
11478
12940
  #
11479
12941
  #
11480
12942
  #
11481
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html
11482
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
12943
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html
12944
+ # [2]: https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html
12945
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html
11483
12946
  #
11484
12947
  # @option params [String] :user_name
11485
12948
  # The name of the user the signing certificate is for.
@@ -11574,7 +13037,7 @@ module Aws::IAM
11574
13037
  params: params,
11575
13038
  config: config)
11576
13039
  context[:gem_name] = 'aws-sdk-iam'
11577
- context[:gem_version] = '1.43.0'
13040
+ context[:gem_version] = '1.48.0'
11578
13041
  Seahorse::Client::Request.new(handlers, context)
11579
13042
  end
11580
13043