# WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::IAM module Types # Contains information about an AWS access key. # # This data type is used as a response element in the CreateAccessKey # and ListAccessKeys operations. # # The `SecretAccessKey` value is returned only in response to # CreateAccessKey. You can get a secret access key only when you first # create an access key; you cannot recover the secret access key later. # If you lose a secret access key, you must create a new access key. # # # # @!attribute [rw] user_name # The name of the IAM user that the access key is associated with. # @return [String] # # @!attribute [rw] access_key_id # The ID for this access key. # @return [String] # # @!attribute [rw] status # The status of the access key. `Active` means that the key is valid # for API calls, while `Inactive` means it is not. # @return [String] # # @!attribute [rw] secret_access_key # The secret key used to sign requests. # @return [String] # # @!attribute [rw] create_date # The date when the access key was created. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AccessKey AWS API Documentation # class AccessKey < Struct.new( :user_name, :access_key_id, :status, :secret_access_key, :create_date) include Aws::Structure end # Contains information about the last time an AWS access key was used. # # This data type is used as a response element in the # GetAccessKeyLastUsed operation. # # @!attribute [rw] last_used_date # The date and time, in [ISO 8601 date-time format][1], when the # access key was most recently used. This field is null in the # following situations: # # * The user does not have an access key. # # * An access key exists but has never been used, at least not since # IAM started tracking this information on April 22nd, 2015. # # * There is no sign-in data associated with the user # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] service_name # The name of the AWS service with which this access key was most # recently used. This field displays "N/A" in the following # situations: # # * The user does not have an access key. # # * An access key exists but has never been used, at least not since # IAM started tracking this information on April 22nd, 2015. # # * There is no sign-in data associated with the user # @return [String] # # @!attribute [rw] region # The AWS region where this access key was most recently used. This # field is displays "N/A" in the following situations: # # * The user does not have an access key. # # * An access key exists but has never been used, at least not since # IAM started tracking this information on April 22nd, 2015. # # * There is no sign-in data associated with the user # # For more information about AWS regions, see [Regions and # Endpoints][1] in the Amazon Web Services General Reference. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/rande.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AccessKeyLastUsed AWS API Documentation # class AccessKeyLastUsed < Struct.new( :last_used_date, :service_name, :region) include Aws::Structure end # Contains information about an AWS access key, without its secret key. # # This data type is used as a response element in the ListAccessKeys # operation. # # @!attribute [rw] user_name # The name of the IAM user that the key is associated with. # @return [String] # # @!attribute [rw] access_key_id # The ID for this access key. # @return [String] # # @!attribute [rw] status # The status of the access key. `Active` means the key is valid for # API calls; `Inactive` means it is not. # @return [String] # # @!attribute [rw] create_date # The date when the access key was created. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AccessKeyMetadata AWS API Documentation # class AccessKeyMetadata < Struct.new( :user_name, :access_key_id, :status, :create_date) include Aws::Structure end # @note When making an API call, you may pass AddClientIDToOpenIDConnectProviderRequest # data as a hash: # # { # open_id_connect_provider_arn: "arnType", # required # client_id: "clientIDType", # required # } # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) # provider resource to add the client ID to. You can get a list of # OIDC provider ARNs by using the ListOpenIDConnectProviders # operation. # @return [String] # # @!attribute [rw] client_id # The client ID (also known as audience) to add to the IAM OpenID # Connect provider resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AddClientIDToOpenIDConnectProviderRequest AWS API Documentation # class AddClientIDToOpenIDConnectProviderRequest < Struct.new( :open_id_connect_provider_arn, :client_id) include Aws::Structure end # @note When making an API call, you may pass AddRoleToInstanceProfileRequest # data as a hash: # # { # instance_profile_name: "instanceProfileNameType", # required # role_name: "roleNameType", # required # } # # @!attribute [rw] instance_profile_name # The name of the instance profile to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] role_name # The name of the role to add. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AddRoleToInstanceProfileRequest AWS API Documentation # class AddRoleToInstanceProfileRequest < Struct.new( :instance_profile_name, :role_name) include Aws::Structure end # @note When making an API call, you may pass AddUserToGroupRequest # data as a hash: # # { # group_name: "groupNameType", # required # user_name: "existingUserNameType", # required # } # # @!attribute [rw] group_name # The name of the group to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] user_name # The name of the user to add. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AddUserToGroupRequest AWS API Documentation # class AddUserToGroupRequest < Struct.new( :group_name, :user_name) include Aws::Structure end # @note When making an API call, you may pass AttachGroupPolicyRequest # data as a hash: # # { # group_name: "groupNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] group_name # The name (friendly name, not ARN) of the group to attach the policy # to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to attach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachGroupPolicyRequest AWS API Documentation # class AttachGroupPolicyRequest < Struct.new( :group_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass AttachRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) of the role to attach the policy # to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to attach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachRolePolicyRequest AWS API Documentation # class AttachRolePolicyRequest < Struct.new( :role_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass AttachUserPolicyRequest # data as a hash: # # { # user_name: "userNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) of the IAM user to attach the # policy to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to attach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachUserPolicyRequest AWS API Documentation # class AttachUserPolicyRequest < Struct.new( :user_name, :policy_arn) include Aws::Structure end # Contains information about an attached permissions boundary. # # An attached permissions boundary is a managed policy that has been # attached to a user or role to set the permissions boundary. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # # @!attribute [rw] permissions_boundary_type # The permissions boundary usage type that indicates what type of IAM # resource is used as the permissions boundary for an entity. This # data type can only have a value of `Policy`. # @return [String] # # @!attribute [rw] permissions_boundary_arn # The ARN of the policy used to set the permissions boundary for the # user or role. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachedPermissionsBoundary AWS API Documentation # class AttachedPermissionsBoundary < Struct.new( :permissions_boundary_type, :permissions_boundary_arn) include Aws::Structure end # Contains information about an attached policy. # # An attached policy is a managed policy that has been attached to a # user, group, or role. This data type is used as a response element in # the ListAttachedGroupPolicies, ListAttachedRolePolicies, # ListAttachedUserPolicies, and GetAccountAuthorizationDetails # operations. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] policy_name # The friendly name of the attached policy. # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachedPolicy AWS API Documentation # class AttachedPolicy < Struct.new( :policy_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass ChangePasswordRequest # data as a hash: # # { # old_password: "passwordType", # required # new_password: "passwordType", # required # } # # @!attribute [rw] old_password # The IAM user's current password. # @return [String] # # @!attribute [rw] new_password # The new password. The new password must conform to the AWS # account's password policy, if one exists. # # The [regex pattern][1] that is used to validate this parameter is a # string of characters. That string can include almost any printable # ASCII character from the space (\\u0020) through the end of the # ASCII character range (\\u00FF). You can also include the tab # (\\u0009), line feed (\\u000A), and carriage return (\\u000D) # characters. Any of these characters are valid in a password. # However, many tools, such as the AWS Management Console, might # restrict the ability to type certain characters because they have # special meaning within that tool. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ChangePasswordRequest AWS API Documentation # class ChangePasswordRequest < Struct.new( :old_password, :new_password) include Aws::Structure end # Contains information about a condition context key. It includes the # name of the key and specifies the value (or values, if the context key # supports multiple values) to use in the simulation. This information # is used when evaluating the `Condition` elements of the input # policies. # # This data type is used as an input parameter to ` SimulateCustomPolicy # ` and ` SimulateCustomPolicy `. # # @note When making an API call, you may pass ContextEntry # data as a hash: # # { # context_key_name: "ContextKeyNameType", # context_key_values: ["ContextKeyValueType"], # context_key_type: "string", # accepts string, stringList, numeric, numericList, boolean, booleanList, ip, ipList, binary, binaryList, date, dateList # } # # @!attribute [rw] context_key_name # The full name of a condition context key, including the service # prefix. For example, `aws:SourceIp` or `s3:VersionId`. # @return [String] # # @!attribute [rw] context_key_values # The value (or values, if the condition context key supports multiple # values) to provide to the simulation when the key is referenced by a # `Condition` element in an input policy. # @return [Array] # # @!attribute [rw] context_key_type # The data type of the value (or values) specified in the # `ContextKeyValues` parameter. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ContextEntry AWS API Documentation # class ContextEntry < Struct.new( :context_key_name, :context_key_values, :context_key_type) include Aws::Structure end # @note When making an API call, you may pass CreateAccessKeyRequest # data as a hash: # # { # user_name: "existingUserNameType", # } # # @!attribute [rw] user_name # The name of the IAM user that the new key will belong to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateAccessKeyRequest AWS API Documentation # class CreateAccessKeyRequest < Struct.new( :user_name) include Aws::Structure end # Contains the response to a successful CreateAccessKey request. # # @!attribute [rw] access_key # A structure with details about the access key. # @return [Types::AccessKey] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateAccessKeyResponse AWS API Documentation # class CreateAccessKeyResponse < Struct.new( :access_key) include Aws::Structure end # @note When making an API call, you may pass CreateAccountAliasRequest # data as a hash: # # { # account_alias: "accountAliasType", # required # } # # @!attribute [rw] account_alias # The account alias to create. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of lowercase letters, digits, and dashes. You # cannot start or finish with a dash, nor can you have two dashes in a # row. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateAccountAliasRequest AWS API Documentation # class CreateAccountAliasRequest < Struct.new( :account_alias) include Aws::Structure end # @note When making an API call, you may pass CreateGroupRequest # data as a hash: # # { # path: "pathType", # group_name: "groupNameType", # required # } # # @!attribute [rw] path # The path to the group. For more information about paths, see [IAM # Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] group_name # The name of the group to create. Do not include the path in this # value. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@-. The group name must be unique within the # account. Group names are not distinguished by case. For example, you # cannot create groups named both "ADMINS" and "admins". # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateGroupRequest AWS API Documentation # class CreateGroupRequest < Struct.new( :path, :group_name) include Aws::Structure end # Contains the response to a successful CreateGroup request. # # @!attribute [rw] group # A structure containing details about the new group. # @return [Types::Group] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateGroupResponse AWS API Documentation # class CreateGroupResponse < Struct.new( :group) include Aws::Structure end # @note When making an API call, you may pass CreateInstanceProfileRequest # data as a hash: # # { # instance_profile_name: "instanceProfileNameType", # required # path: "pathType", # } # # @!attribute [rw] instance_profile_name # The name of the instance profile to create. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] path # The path to the instance profile. For more information about paths, # see [IAM Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateInstanceProfileRequest AWS API Documentation # class CreateInstanceProfileRequest < Struct.new( :instance_profile_name, :path) include Aws::Structure end # Contains the response to a successful CreateInstanceProfile request. # # @!attribute [rw] instance_profile # A structure containing details about the new instance profile. # @return [Types::InstanceProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateInstanceProfileResponse AWS API Documentation # class CreateInstanceProfileResponse < Struct.new( :instance_profile) include Aws::Structure end # @note When making an API call, you may pass CreateLoginProfileRequest # data as a hash: # # { # user_name: "userNameType", # required # password: "passwordType", # required # password_reset_required: false, # } # # @!attribute [rw] user_name # The name of the IAM user to create a password for. The user must # already exist. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] password # The new password for the user. # # The [regex pattern][1] that is used to validate this parameter is a # string of characters. That string can include almost any printable # ASCII character from the space (\\u0020) through the end of the # ASCII character range (\\u00FF). You can also include the tab # (\\u0009), line feed (\\u000A), and carriage return (\\u000D) # characters. Any of these characters are valid in a password. # However, many tools, such as the AWS Management Console, might # restrict the ability to type certain characters because they have # special meaning within that tool. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] password_reset_required # Specifies whether the user is required to set a new password on next # sign-in. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateLoginProfileRequest AWS API Documentation # class CreateLoginProfileRequest < Struct.new( :user_name, :password, :password_reset_required) include Aws::Structure end # Contains the response to a successful CreateLoginProfile request. # # @!attribute [rw] login_profile # A structure containing the user name and password create date. # @return [Types::LoginProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateLoginProfileResponse AWS API Documentation # class CreateLoginProfileResponse < Struct.new( :login_profile) include Aws::Structure end # @note When making an API call, you may pass CreateOpenIDConnectProviderRequest # data as a hash: # # { # url: "OpenIDConnectProviderUrlType", # required # client_id_list: ["clientIDType"], # thumbprint_list: ["thumbprintType"], # required # } # # @!attribute [rw] url # The URL of the identity provider. The URL must begin with `https://` # and should correspond to the `iss` claim in the provider's OpenID # Connect ID tokens. Per the OIDC standard, path components are # allowed but query parameters are not. Typically the URL consists of # only a hostname, like `https://server.example.org` or # `https://example.com`. # # You cannot register the same provider multiple times in a single AWS # account. If you try to submit a URL that has already been used for # an OpenID Connect provider in the AWS account, you will get an # error. # @return [String] # # @!attribute [rw] client_id_list # A list of client IDs (also known as audiences). When a mobile or web # app registers with an OpenID Connect provider, they establish a # value that identifies the application. (This is the value that's # sent as the `client_id` parameter on OAuth requests.) # # You can register multiple client IDs with the same provider. For # example, you might have multiple applications that use the same OIDC # provider. You cannot register more than 100 client IDs with a single # IAM OIDC provider. # # There is no defined format for a client ID. The # `CreateOpenIDConnectProviderRequest` operation accepts client IDs up # to 255 characters long. # @return [Array] # # @!attribute [rw] thumbprint_list # A list of server certificate thumbprints for the OpenID Connect # (OIDC) identity provider's server certificates. Typically this list # includes only one entry. However, IAM lets you have up to five # thumbprints for an OIDC provider. This lets you maintain multiple # thumbprints if the identity provider is rotating certificates. # # The server certificate thumbprint is the hex-encoded SHA-1 hash # value of the X.509 certificate used by the domain where the OpenID # Connect provider makes its keys available. It is always a # 40-character string. # # You must provide at least one thumbprint when creating an IAM OIDC # provider. For example, assume that the OIDC provider is # `server.example.com` and the provider stores its keys at # https://keys.server.example.com/openid-connect. In that case, the # thumbprint string would be the hex-encoded SHA-1 hash value of the # certificate used by https://keys.server.example.com. # # For more information about obtaining the OIDC provider's # thumbprint, see [Obtaining the Thumbprint for an OpenID Connect # Provider][1] in the *IAM User Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateOpenIDConnectProviderRequest AWS API Documentation # class CreateOpenIDConnectProviderRequest < Struct.new( :url, :client_id_list, :thumbprint_list) include Aws::Structure end # Contains the response to a successful CreateOpenIDConnectProvider # request. # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the new IAM OpenID Connect # provider that is created. For more information, see # OpenIDConnectProviderListEntry. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateOpenIDConnectProviderResponse AWS API Documentation # class CreateOpenIDConnectProviderResponse < Struct.new( :open_id_connect_provider_arn) include Aws::Structure end # @note When making an API call, you may pass CreatePolicyRequest # data as a hash: # # { # policy_name: "policyNameType", # required # path: "policyPathType", # policy_document: "policyDocumentType", # required # description: "policyDescriptionType", # } # # @!attribute [rw] policy_name # The friendly name of the policy. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] path # The path for the policy. # # For more information about paths, see [IAM Identifiers][1] in the # *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_document # The JSON policy document that you want to use as the content for the # new policy. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] description # A friendly description of the policy. # # Typically used to store information about the permissions defined in # the policy. For example, "Grants access to production DynamoDB # tables." # # The policy description is immutable. After a value is assigned, it # cannot be changed. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreatePolicyRequest AWS API Documentation # class CreatePolicyRequest < Struct.new( :policy_name, :path, :policy_document, :description) include Aws::Structure end # Contains the response to a successful CreatePolicy request. # # @!attribute [rw] policy # A structure containing details about the new policy. # @return [Types::Policy] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreatePolicyResponse AWS API Documentation # class CreatePolicyResponse < Struct.new( :policy) include Aws::Structure end # @note When making an API call, you may pass CreatePolicyVersionRequest # data as a hash: # # { # policy_arn: "arnType", # required # policy_document: "policyDocumentType", # required # set_as_default: false, # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy to which you want # to add a new version. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] policy_document # The JSON policy document that you want to use as the content for # this new version of the policy. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] set_as_default # Specifies whether to set this version as the policy's default # version. # # When this parameter is `true`, the new policy version becomes the # operative version. That is, it becomes the version that is in effect # for the IAM users, groups, and roles that the policy is attached to. # # For more information about managed policy versions, see [Versioning # for Managed Policies][1] in the *IAM User Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreatePolicyVersionRequest AWS API Documentation # class CreatePolicyVersionRequest < Struct.new( :policy_arn, :policy_document, :set_as_default) include Aws::Structure end # Contains the response to a successful CreatePolicyVersion request. # # @!attribute [rw] policy_version # A structure containing details about the new policy version. # @return [Types::PolicyVersion] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreatePolicyVersionResponse AWS API Documentation # class CreatePolicyVersionResponse < Struct.new( :policy_version) include Aws::Structure end # @note When making an API call, you may pass CreateRoleRequest # data as a hash: # # { # path: "pathType", # role_name: "roleNameType", # required # assume_role_policy_document: "policyDocumentType", # required # description: "roleDescriptionType", # max_session_duration: 1, # permissions_boundary: "arnType", # } # # @!attribute [rw] path # The path to the role. For more information about paths, see [IAM # Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] role_name # The name of the role to create. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # Role names are not distinguished by case. For example, you cannot # create roles named both "PRODROLE" and "prodrole". # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] assume_role_policy_document # The trust relationship policy document that grants an entity # permission to assume the role. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] description # A description of the role. # @return [String] # # @!attribute [rw] max_session_duration # The maximum session duration (in seconds) that you want to set for # the specified role. If you do not specify a value for this setting, # the default maximum of one hour is applied. This setting can have a # value from 1 hour to 12 hours. # # Anyone who assumes the role from the AWS CLI or API can use the # `DurationSeconds` API parameter or the `duration-seconds` CLI # parameter to request a longer session. The `MaxSessionDuration` # setting determines the maximum duration that can be requested using # the `DurationSeconds` parameter. If users don't specify a value for # the `DurationSeconds` parameter, their security credentials are # valid for one hour by default. This applies when you use the # `AssumeRole*` API operations or the `assume-role*` CLI operations # but does not apply when you use those operations to create a console # URL. For more information, see [Using IAM Roles][1] in the *IAM User # Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html # @return [Integer] # # @!attribute [rw] permissions_boundary # The ARN of the policy that is used to set the permissions boundary # for the role. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateRoleRequest AWS API Documentation # class CreateRoleRequest < Struct.new( :path, :role_name, :assume_role_policy_document, :description, :max_session_duration, :permissions_boundary) include Aws::Structure end # Contains the response to a successful CreateRole request. # # @!attribute [rw] role # A structure containing details about the new role. # @return [Types::Role] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateRoleResponse AWS API Documentation # class CreateRoleResponse < Struct.new( :role) include Aws::Structure end # @note When making an API call, you may pass CreateSAMLProviderRequest # data as a hash: # # { # saml_metadata_document: "SAMLMetadataDocumentType", # required # name: "SAMLProviderNameType", # required # } # # @!attribute [rw] saml_metadata_document # An XML document generated by an identity provider (IdP) that # supports SAML 2.0. The document includes the issuer's name, # expiration information, and keys that can be used to validate the # SAML authentication response (assertions) that are received from the # IdP. You must generate the metadata document using the identity # management software that is used as your organization's IdP. # # For more information, see [About SAML 2.0-based Federation][1] in # the *IAM User Guide* # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html # @return [String] # # @!attribute [rw] name # The name of the provider to create. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateSAMLProviderRequest AWS API Documentation # class CreateSAMLProviderRequest < Struct.new( :saml_metadata_document, :name) include Aws::Structure end # Contains the response to a successful CreateSAMLProvider request. # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the new SAML provider resource in # IAM. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateSAMLProviderResponse AWS API Documentation # class CreateSAMLProviderResponse < Struct.new( :saml_provider_arn) include Aws::Structure end # @note When making an API call, you may pass CreateServiceLinkedRoleRequest # data as a hash: # # { # aws_service_name: "groupNameType", # required # description: "roleDescriptionType", # custom_suffix: "customSuffixType", # } # # @!attribute [rw] aws_service_name # The AWS service to which this role is attached. You use a string # similar to a URL but without the http:// in front. For example: # `elasticbeanstalk.amazonaws.com` # @return [String] # # @!attribute [rw] description # The description of the role. # @return [String] # # @!attribute [rw] custom_suffix # A string that you provide, which is combined with the service name # to form the complete role name. If you make multiple requests for # the same service, then you must supply a different `CustomSuffix` # for each request. Otherwise the request fails with a duplicate role # name error. For example, you could add `-1` or `-debug` to the # suffix. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateServiceLinkedRoleRequest AWS API Documentation # class CreateServiceLinkedRoleRequest < Struct.new( :aws_service_name, :description, :custom_suffix) include Aws::Structure end # @!attribute [rw] role # A Role object that contains details about the newly created role. # @return [Types::Role] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateServiceLinkedRoleResponse AWS API Documentation # class CreateServiceLinkedRoleResponse < Struct.new( :role) include Aws::Structure end # @note When making an API call, you may pass CreateServiceSpecificCredentialRequest # data as a hash: # # { # user_name: "userNameType", # required # service_name: "serviceName", # required # } # # @!attribute [rw] user_name # The name of the IAM user that is to be associated with the # credentials. The new service-specific credentials have the same # permissions as the associated user except that they can be used only # to access the specified service. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] service_name # The name of the AWS service that is to be associated with the # credentials. The service you specify here is the only service that # can be accessed using these credentials. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateServiceSpecificCredentialRequest AWS API Documentation # class CreateServiceSpecificCredentialRequest < Struct.new( :user_name, :service_name) include Aws::Structure end # @!attribute [rw] service_specific_credential # A structure that contains information about the newly created # service-specific credential. # # This is the only time that the password for this credential set is # available. It cannot be recovered later. Instead, you will have to # reset the password with ResetServiceSpecificCredential. # @return [Types::ServiceSpecificCredential] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateServiceSpecificCredentialResponse AWS API Documentation # class CreateServiceSpecificCredentialResponse < Struct.new( :service_specific_credential) include Aws::Structure end # @note When making an API call, you may pass CreateUserRequest # data as a hash: # # { # path: "pathType", # user_name: "userNameType", # required # permissions_boundary: "arnType", # } # # @!attribute [rw] path # The path for the user name. For more information about paths, see # [IAM Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] user_name # The name of the user to create. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@-. User names are not distinguished by case. For # example, you cannot create users named both "TESTUSER" and # "testuser". # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] permissions_boundary # The ARN of the policy that is used to set the permissions boundary # for the user. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateUserRequest AWS API Documentation # class CreateUserRequest < Struct.new( :path, :user_name, :permissions_boundary) include Aws::Structure end # Contains the response to a successful CreateUser request. # # @!attribute [rw] user # A structure with details about the new IAM user. # @return [Types::User] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateUserResponse AWS API Documentation # class CreateUserResponse < Struct.new( :user) include Aws::Structure end # @note When making an API call, you may pass CreateVirtualMFADeviceRequest # data as a hash: # # { # path: "pathType", # virtual_mfa_device_name: "virtualMFADeviceName", # required # } # # @!attribute [rw] path # The path for the virtual MFA device. For more information about # paths, see [IAM Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). # # This parameter allows (per its [regex pattern][2]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] virtual_mfa_device_name # The name of the virtual MFA device. Use with path to uniquely # identify a virtual MFA device. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateVirtualMFADeviceRequest AWS API Documentation # class CreateVirtualMFADeviceRequest < Struct.new( :path, :virtual_mfa_device_name) include Aws::Structure end # Contains the response to a successful CreateVirtualMFADevice request. # # @!attribute [rw] virtual_mfa_device # A structure containing details about the new virtual MFA device. # @return [Types::VirtualMFADevice] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateVirtualMFADeviceResponse AWS API Documentation # class CreateVirtualMFADeviceResponse < Struct.new( :virtual_mfa_device) include Aws::Structure end # @note When making an API call, you may pass DeactivateMFADeviceRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # serial_number: "serialNumberType", # required # } # # @!attribute [rw] user_name # The name of the user whose MFA device you want to deactivate. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] serial_number # The serial number that uniquely identifies the MFA device. For # virtual MFA devices, the serial number is the device ARN. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: =,.@:/- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeactivateMFADeviceRequest AWS API Documentation # class DeactivateMFADeviceRequest < Struct.new( :user_name, :serial_number) include Aws::Structure end # @note When making an API call, you may pass DeleteAccessKeyRequest # data as a hash: # # { # user_name: "existingUserNameType", # access_key_id: "accessKeyIdType", # required # } # # @!attribute [rw] user_name # The name of the user whose access key pair you want to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] access_key_id # The access key ID for the access key ID and secret access key you # want to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteAccessKeyRequest AWS API Documentation # class DeleteAccessKeyRequest < Struct.new( :user_name, :access_key_id) include Aws::Structure end # @note When making an API call, you may pass DeleteAccountAliasRequest # data as a hash: # # { # account_alias: "accountAliasType", # required # } # # @!attribute [rw] account_alias # The name of the account alias to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of lowercase letters, digits, and dashes. You # cannot start or finish with a dash, nor can you have two dashes in a # row. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteAccountAliasRequest AWS API Documentation # class DeleteAccountAliasRequest < Struct.new( :account_alias) include Aws::Structure end # @note When making an API call, you may pass DeleteGroupPolicyRequest # data as a hash: # # { # group_name: "groupNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] group_name # The name (friendly name, not ARN) identifying the group that the # policy is embedded in. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name identifying the policy document to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteGroupPolicyRequest AWS API Documentation # class DeleteGroupPolicyRequest < Struct.new( :group_name, :policy_name) include Aws::Structure end # @note When making an API call, you may pass DeleteGroupRequest # data as a hash: # # { # group_name: "groupNameType", # required # } # # @!attribute [rw] group_name # The name of the IAM group to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteGroupRequest AWS API Documentation # class DeleteGroupRequest < Struct.new( :group_name) include Aws::Structure end # @note When making an API call, you may pass DeleteInstanceProfileRequest # data as a hash: # # { # instance_profile_name: "instanceProfileNameType", # required # } # # @!attribute [rw] instance_profile_name # The name of the instance profile to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteInstanceProfileRequest AWS API Documentation # class DeleteInstanceProfileRequest < Struct.new( :instance_profile_name) include Aws::Structure end # @note When making an API call, you may pass DeleteLoginProfileRequest # data as a hash: # # { # user_name: "userNameType", # required # } # # @!attribute [rw] user_name # The name of the user whose password you want to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteLoginProfileRequest AWS API Documentation # class DeleteLoginProfileRequest < Struct.new( :user_name) include Aws::Structure end # @note When making an API call, you may pass DeleteOpenIDConnectProviderRequest # data as a hash: # # { # open_id_connect_provider_arn: "arnType", # required # } # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the IAM OpenID Connect provider # resource object to delete. You can get a list of OpenID Connect # provider resource ARNs by using the ListOpenIDConnectProviders # operation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteOpenIDConnectProviderRequest AWS API Documentation # class DeleteOpenIDConnectProviderRequest < Struct.new( :open_id_connect_provider_arn) include Aws::Structure end # @note When making an API call, you may pass DeletePolicyRequest # data as a hash: # # { # policy_arn: "arnType", # required # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to delete. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeletePolicyRequest AWS API Documentation # class DeletePolicyRequest < Struct.new( :policy_arn) include Aws::Structure end # @note When making an API call, you may pass DeletePolicyVersionRequest # data as a hash: # # { # policy_arn: "arnType", # required # version_id: "policyVersionIdType", # required # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy from which you want # to delete a version. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] version_id # The policy version to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters that consists of the lowercase letter 'v' followed by # one or two digits, and optionally followed by a period '.' and a # string of letters and digits. # # For more information about managed policy versions, see [Versioning # for Managed Policies][2] in the *IAM User Guide*. # # # # [1]: http://wikipedia.org/wiki/regex # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeletePolicyVersionRequest AWS API Documentation # class DeletePolicyVersionRequest < Struct.new( :policy_arn, :version_id) include Aws::Structure end # @note When making an API call, you may pass DeleteRolePermissionsBoundaryRequest # data as a hash: # # { # role_name: "roleNameType", # required # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) of the IAM role from which you # want to remove the permissions boundary. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteRolePermissionsBoundaryRequest AWS API Documentation # class DeleteRolePermissionsBoundaryRequest < Struct.new( :role_name) include Aws::Structure end # @note When making an API call, you may pass DeleteRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) identifying the role that the # policy is embedded in. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the inline policy to delete from the specified IAM role. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteRolePolicyRequest AWS API Documentation # class DeleteRolePolicyRequest < Struct.new( :role_name, :policy_name) include Aws::Structure end # @note When making an API call, you may pass DeleteRoleRequest # data as a hash: # # { # role_name: "roleNameType", # required # } # # @!attribute [rw] role_name # The name of the role to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteRoleRequest AWS API Documentation # class DeleteRoleRequest < Struct.new( :role_name) include Aws::Structure end # @note When making an API call, you may pass DeleteSAMLProviderRequest # data as a hash: # # { # saml_provider_arn: "arnType", # required # } # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the SAML provider to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteSAMLProviderRequest AWS API Documentation # class DeleteSAMLProviderRequest < Struct.new( :saml_provider_arn) include Aws::Structure end # @note When making an API call, you may pass DeleteSSHPublicKeyRequest # data as a hash: # # { # user_name: "userNameType", # required # ssh_public_key_id: "publicKeyIdType", # required # } # # @!attribute [rw] user_name # The name of the IAM user associated with the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] ssh_public_key_id # The unique identifier for the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteSSHPublicKeyRequest AWS API Documentation # class DeleteSSHPublicKeyRequest < Struct.new( :user_name, :ssh_public_key_id) include Aws::Structure end # @note When making an API call, you may pass DeleteServerCertificateRequest # data as a hash: # # { # server_certificate_name: "serverCertificateNameType", # required # } # # @!attribute [rw] server_certificate_name # The name of the server certificate you want to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServerCertificateRequest AWS API Documentation # class DeleteServerCertificateRequest < Struct.new( :server_certificate_name) include Aws::Structure end # @note When making an API call, you may pass DeleteServiceLinkedRoleRequest # data as a hash: # # { # role_name: "roleNameType", # required # } # # @!attribute [rw] role_name # The name of the service-linked role to be deleted. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceLinkedRoleRequest AWS API Documentation # class DeleteServiceLinkedRoleRequest < Struct.new( :role_name) include Aws::Structure end # @!attribute [rw] deletion_task_id # The deletion task identifier that you can use to check the status of # the deletion. This identifier is returned in the format # `task/aws-service-role///`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceLinkedRoleResponse AWS API Documentation # class DeleteServiceLinkedRoleResponse < Struct.new( :deletion_task_id) include Aws::Structure end # @note When making an API call, you may pass DeleteServiceSpecificCredentialRequest # data as a hash: # # { # user_name: "userNameType", # service_specific_credential_id: "serviceSpecificCredentialId", # required # } # # @!attribute [rw] user_name # The name of the IAM user associated with the service-specific # credential. If this value is not specified, then the operation # assumes the user whose credentials are used to call the operation. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] service_specific_credential_id # The unique identifier of the service-specific credential. You can # get this value by calling ListServiceSpecificCredentials. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceSpecificCredentialRequest AWS API Documentation # class DeleteServiceSpecificCredentialRequest < Struct.new( :user_name, :service_specific_credential_id) include Aws::Structure end # @note When making an API call, you may pass DeleteSigningCertificateRequest # data as a hash: # # { # user_name: "existingUserNameType", # certificate_id: "certificateIdType", # required # } # # @!attribute [rw] user_name # The name of the user the signing certificate belongs to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] certificate_id # The ID of the signing certificate to delete. # # The format of this parameter, as described by its [regex][1] # pattern, is a string of characters that can be upper- or lower-cased # letters or digits. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteSigningCertificateRequest AWS API Documentation # class DeleteSigningCertificateRequest < Struct.new( :user_name, :certificate_id) include Aws::Structure end # @note When making an API call, you may pass DeleteUserPermissionsBoundaryRequest # data as a hash: # # { # user_name: "userNameType", # required # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) of the IAM user from which you # want to remove the permissions boundary. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteUserPermissionsBoundaryRequest AWS API Documentation # class DeleteUserPermissionsBoundaryRequest < Struct.new( :user_name) include Aws::Structure end # @note When making an API call, you may pass DeleteUserPolicyRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) identifying the user that the # policy is embedded in. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name identifying the policy document to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteUserPolicyRequest AWS API Documentation # class DeleteUserPolicyRequest < Struct.new( :user_name, :policy_name) include Aws::Structure end # @note When making an API call, you may pass DeleteUserRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # } # # @!attribute [rw] user_name # The name of the user to delete. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteUserRequest AWS API Documentation # class DeleteUserRequest < Struct.new( :user_name) include Aws::Structure end # @note When making an API call, you may pass DeleteVirtualMFADeviceRequest # data as a hash: # # { # serial_number: "serialNumberType", # required # } # # @!attribute [rw] serial_number # The serial number that uniquely identifies the MFA device. For # virtual MFA devices, the serial number is the same as the ARN. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: =,.@:/- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteVirtualMFADeviceRequest AWS API Documentation # class DeleteVirtualMFADeviceRequest < Struct.new( :serial_number) include Aws::Structure end # The reason that the service-linked role deletion failed. # # This data type is used as a response element in the # GetServiceLinkedRoleDeletionStatus operation. # # @!attribute [rw] reason # A short description of the reason that the service-linked role # deletion failed. # @return [String] # # @!attribute [rw] role_usage_list # A list of objects that contains details about the service-linked # role deletion failure, if that information is returned by the # service. If the service-linked role has active sessions or if any # resources that were used by the role have not been deleted from the # linked service, the role can't be deleted. This parameter includes # a list of the resources that are associated with the role and the # region in which the resources are being used. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeletionTaskFailureReasonType AWS API Documentation # class DeletionTaskFailureReasonType < Struct.new( :reason, :role_usage_list) include Aws::Structure end # @note When making an API call, you may pass DetachGroupPolicyRequest # data as a hash: # # { # group_name: "groupNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] group_name # The name (friendly name, not ARN) of the IAM group to detach the # policy from. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to detach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DetachGroupPolicyRequest AWS API Documentation # class DetachGroupPolicyRequest < Struct.new( :group_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass DetachRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) of the IAM role to detach the # policy from. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to detach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DetachRolePolicyRequest AWS API Documentation # class DetachRolePolicyRequest < Struct.new( :role_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass DetachUserPolicyRequest # data as a hash: # # { # user_name: "userNameType", # required # policy_arn: "arnType", # required # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) of the IAM user to detach the # policy from. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy you want to detach. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DetachUserPolicyRequest AWS API Documentation # class DetachUserPolicyRequest < Struct.new( :user_name, :policy_arn) include Aws::Structure end # @note When making an API call, you may pass EnableMFADeviceRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # serial_number: "serialNumberType", # required # authentication_code_1: "authenticationCodeType", # required # authentication_code_2: "authenticationCodeType", # required # } # # @!attribute [rw] user_name # The name of the IAM user for whom you want to enable the MFA device. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] serial_number # The serial number that uniquely identifies the MFA device. For # virtual MFA devices, the serial number is the device ARN. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: =,.@:/- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] authentication_code_1 # An authentication code emitted by the device. # # The format for this parameter is a string of six digits. # # Submit your request immediately after generating the authentication # codes. If you generate the codes and then wait too long to submit # the request, the MFA device successfully associates with the user # but the MFA device becomes out of sync. This happens because # time-based one-time passwords (TOTP) expire after a short period of # time. If this happens, you can [resync the device][1]. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html # @return [String] # # @!attribute [rw] authentication_code_2 # A subsequent authentication code emitted by the device. # # The format for this parameter is a string of six digits. # # Submit your request immediately after generating the authentication # codes. If you generate the codes and then wait too long to submit # the request, the MFA device successfully associates with the user # but the MFA device becomes out of sync. This happens because # time-based one-time passwords (TOTP) expire after a short period of # time. If this happens, you can [resync the device][1]. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/EnableMFADeviceRequest AWS API Documentation # class EnableMFADeviceRequest < Struct.new( :user_name, :serial_number, :authentication_code_1, :authentication_code_2) include Aws::Structure end # Contains the results of a simulation. # # This data type is used by the return parameter of ` # SimulateCustomPolicy ` and ` SimulatePrincipalPolicy `. # # @!attribute [rw] eval_action_name # The name of the API operation tested on the indicated resource. # @return [String] # # @!attribute [rw] eval_resource_name # The ARN of the resource that the indicated API operation was tested # on. # @return [String] # # @!attribute [rw] eval_decision # The result of the simulation. # @return [String] # # @!attribute [rw] matched_statements # A list of the statements in the input policies that determine the # result for this scenario. Remember that even if multiple statements # allow the operation on the resource, if only one statement denies # that operation, then the explicit deny overrides any allow, and the # deny statement is the only entry included in the result. # @return [Array] # # @!attribute [rw] missing_context_values # A list of context keys that are required by the included input # policies but that were not provided by one of the input parameters. # This list is used when the resource in a simulation is "*", # either explicitly, or when the `ResourceArns` parameter blank. If # you include a list of resources, then any missing context values are # instead included under the `ResourceSpecificResults` section. To # discover the context keys used by a set of policies, you can call # GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy. # @return [Array] # # @!attribute [rw] organizations_decision_detail # A structure that details how AWS Organizations and its service # control policies affect the results of the simulation. Only applies # if the simulated user's account is part of an organization. # @return [Types::OrganizationsDecisionDetail] # # @!attribute [rw] eval_decision_details # Additional details about the results of the evaluation decision. # When there are both IAM policies and resource policies, this # parameter explains how each set of policies contributes to the final # evaluation decision. When simulating cross-account access to a # resource, both the resource-based policy and the caller's IAM # policy must grant access. See [How IAM Roles Differ from # Resource-based Policies][1] # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html # @return [Hash] # # @!attribute [rw] resource_specific_results # The individual results of the simulation of the API operation # specified in EvalActionName on each resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/EvaluationResult AWS API Documentation # class EvaluationResult < Struct.new( :eval_action_name, :eval_resource_name, :eval_decision, :matched_statements, :missing_context_values, :organizations_decision_detail, :eval_decision_details, :resource_specific_results) include Aws::Structure end # Contains the response to a successful GenerateCredentialReport # request. # # @!attribute [rw] state # Information about the state of the credential report. # @return [String] # # @!attribute [rw] description # Information about the credential report. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GenerateCredentialReportResponse AWS API Documentation # class GenerateCredentialReportResponse < Struct.new( :state, :description) include Aws::Structure end # @note When making an API call, you may pass GetAccessKeyLastUsedRequest # data as a hash: # # { # access_key_id: "accessKeyIdType", # required # } # # @!attribute [rw] access_key_id # The identifier of an access key. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccessKeyLastUsedRequest AWS API Documentation # class GetAccessKeyLastUsedRequest < Struct.new( :access_key_id) include Aws::Structure end # Contains the response to a successful GetAccessKeyLastUsed request. It # is also returned as a member of the AccessKeyMetaData structure # returned by the ListAccessKeys action. # # @!attribute [rw] user_name # The name of the AWS IAM user that owns this access key. # @return [String] # # @!attribute [rw] access_key_last_used # Contains information about the last time the access key was used. # @return [Types::AccessKeyLastUsed] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccessKeyLastUsedResponse AWS API Documentation # class GetAccessKeyLastUsedResponse < Struct.new( :user_name, :access_key_last_used) include Aws::Structure end # @note When making an API call, you may pass GetAccountAuthorizationDetailsRequest # data as a hash: # # { # filter: ["User"], # accepts User, Role, Group, LocalManagedPolicy, AWSManagedPolicy # max_items: 1, # marker: "markerType", # } # # @!attribute [rw] filter # A list of entity types used to filter the results. Only the entities # that match the types you specify are included in the output. Use the # value `LocalManagedPolicy` to include customer managed policies. # # The format for this parameter is a comma-separated (if more than # one) list of strings. Each string value in the list must be one of # the valid values listed below. # @return [Array] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccountAuthorizationDetailsRequest AWS API Documentation # class GetAccountAuthorizationDetailsRequest < Struct.new( :filter, :max_items, :marker) include Aws::Structure end # Contains the response to a successful GetAccountAuthorizationDetails # request. # # @!attribute [rw] user_detail_list # A list containing information about IAM users. # @return [Array] # # @!attribute [rw] group_detail_list # A list containing information about IAM groups. # @return [Array] # # @!attribute [rw] role_detail_list # A list containing information about IAM roles. # @return [Array] # # @!attribute [rw] policies # A list containing information about managed policies. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccountAuthorizationDetailsResponse AWS API Documentation # class GetAccountAuthorizationDetailsResponse < Struct.new( :user_detail_list, :group_detail_list, :role_detail_list, :policies, :is_truncated, :marker) include Aws::Structure end # Contains the response to a successful GetAccountPasswordPolicy # request. # # @!attribute [rw] password_policy # A structure that contains details about the account's password # policy. # @return [Types::PasswordPolicy] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccountPasswordPolicyResponse AWS API Documentation # class GetAccountPasswordPolicyResponse < Struct.new( :password_policy) include Aws::Structure end # Contains the response to a successful GetAccountSummary request. # # @!attribute [rw] summary_map # A set of key value pairs containing information about IAM entity # usage and IAM quotas. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetAccountSummaryResponse AWS API Documentation # class GetAccountSummaryResponse < Struct.new( :summary_map) include Aws::Structure end # @note When making an API call, you may pass GetContextKeysForCustomPolicyRequest # data as a hash: # # { # policy_input_list: ["policyDocumentType"], # required # } # # @!attribute [rw] policy_input_list # A list of policies for which you want the list of context keys # referenced in those policies. Each document is specified as a string # containing the complete, valid JSON text of an IAM policy. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetContextKeysForCustomPolicyRequest AWS API Documentation # class GetContextKeysForCustomPolicyRequest < Struct.new( :policy_input_list) include Aws::Structure end # Contains the response to a successful GetContextKeysForPrincipalPolicy # or GetContextKeysForCustomPolicy request. # # @!attribute [rw] context_key_names # The list of context keys that are referenced in the input policies. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetContextKeysForPolicyResponse AWS API Documentation # class GetContextKeysForPolicyResponse < Struct.new( :context_key_names) include Aws::Structure end # @note When making an API call, you may pass GetContextKeysForPrincipalPolicyRequest # data as a hash: # # { # policy_source_arn: "arnType", # required # policy_input_list: ["policyDocumentType"], # } # # @!attribute [rw] policy_source_arn # The ARN of a user, group, or role whose policies contain the context # keys that you want listed. If you specify a user, the list includes # context keys that are found in all policies that are attached to the # user. The list also includes all groups that the user is a member # of. If you pick a group or a role, then it includes only those # context keys that are found in policies attached to that entity. # Note that all parameters are shown in unencoded form here for # clarity, but must be URL encoded to be included as a part of a real # HTML request. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] policy_input_list # An optional list of additional policies for which you want the list # of context keys that are referenced. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetContextKeysForPrincipalPolicyRequest AWS API Documentation # class GetContextKeysForPrincipalPolicyRequest < Struct.new( :policy_source_arn, :policy_input_list) include Aws::Structure end # Contains the response to a successful GetCredentialReport request. # # @!attribute [rw] content # Contains the credential report. The report is Base64-encoded. # @return [String] # # @!attribute [rw] report_format # The format (MIME type) of the credential report. # @return [String] # # @!attribute [rw] generated_time # The date and time when the credential report was created, in [ISO # 8601 date-time format][1]. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetCredentialReportResponse AWS API Documentation # class GetCredentialReportResponse < Struct.new( :content, :report_format, :generated_time) include Aws::Structure end # @note When making an API call, you may pass GetGroupPolicyRequest # data as a hash: # # { # group_name: "groupNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] group_name # The name of the group the policy is associated with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document to get. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetGroupPolicyRequest AWS API Documentation # class GetGroupPolicyRequest < Struct.new( :group_name, :policy_name) include Aws::Structure end # Contains the response to a successful GetGroupPolicy request. # # @!attribute [rw] group_name # The group the policy is associated with. # @return [String] # # @!attribute [rw] policy_name # The name of the policy. # @return [String] # # @!attribute [rw] policy_document # The policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetGroupPolicyResponse AWS API Documentation # class GetGroupPolicyResponse < Struct.new( :group_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass GetGroupRequest # data as a hash: # # { # group_name: "groupNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] group_name # The name of the group. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetGroupRequest AWS API Documentation # class GetGroupRequest < Struct.new( :group_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful GetGroup request. # # @!attribute [rw] group # A structure that contains details about the group. # @return [Types::Group] # # @!attribute [rw] users # A list of users in the group. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetGroupResponse AWS API Documentation # class GetGroupResponse < Struct.new( :group, :users, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass GetInstanceProfileRequest # data as a hash: # # { # instance_profile_name: "instanceProfileNameType", # required # } # # @!attribute [rw] instance_profile_name # The name of the instance profile to get information about. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetInstanceProfileRequest AWS API Documentation # class GetInstanceProfileRequest < Struct.new( :instance_profile_name) include Aws::Structure end # Contains the response to a successful GetInstanceProfile request. # # @!attribute [rw] instance_profile # A structure containing details about the instance profile. # @return [Types::InstanceProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetInstanceProfileResponse AWS API Documentation # class GetInstanceProfileResponse < Struct.new( :instance_profile) include Aws::Structure end # @note When making an API call, you may pass GetLoginProfileRequest # data as a hash: # # { # user_name: "userNameType", # required # } # # @!attribute [rw] user_name # The name of the user whose login profile you want to retrieve. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetLoginProfileRequest AWS API Documentation # class GetLoginProfileRequest < Struct.new( :user_name) include Aws::Structure end # Contains the response to a successful GetLoginProfile request. # # @!attribute [rw] login_profile # A structure containing the user name and password create date for # the user. # @return [Types::LoginProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetLoginProfileResponse AWS API Documentation # class GetLoginProfileResponse < Struct.new( :login_profile) include Aws::Structure end # @note When making an API call, you may pass GetOpenIDConnectProviderRequest # data as a hash: # # { # open_id_connect_provider_arn: "arnType", # required # } # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the OIDC provider resource object # in IAM to get information for. You can get a list of OIDC provider # resource ARNs by using the ListOpenIDConnectProviders operation. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetOpenIDConnectProviderRequest AWS API Documentation # class GetOpenIDConnectProviderRequest < Struct.new( :open_id_connect_provider_arn) include Aws::Structure end # Contains the response to a successful GetOpenIDConnectProvider # request. # # @!attribute [rw] url # The URL that the IAM OIDC provider resource object is associated # with. For more information, see CreateOpenIDConnectProvider. # @return [String] # # @!attribute [rw] client_id_list # A list of client IDs (also known as audiences) that are associated # with the specified IAM OIDC provider resource object. For more # information, see CreateOpenIDConnectProvider. # @return [Array] # # @!attribute [rw] thumbprint_list # A list of certificate thumbprints that are associated with the # specified IAM OIDC provider resource object. For more information, # see CreateOpenIDConnectProvider. # @return [Array] # # @!attribute [rw] create_date # The date and time when the IAM OIDC provider resource object was # created in the AWS account. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetOpenIDConnectProviderResponse AWS API Documentation # class GetOpenIDConnectProviderResponse < Struct.new( :url, :client_id_list, :thumbprint_list, :create_date) include Aws::Structure end # @note When making an API call, you may pass GetPolicyRequest # data as a hash: # # { # policy_arn: "arnType", # required # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the managed policy that you want # information about. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetPolicyRequest AWS API Documentation # class GetPolicyRequest < Struct.new( :policy_arn) include Aws::Structure end # Contains the response to a successful GetPolicy request. # # @!attribute [rw] policy # A structure containing details about the policy. # @return [Types::Policy] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetPolicyResponse AWS API Documentation # class GetPolicyResponse < Struct.new( :policy) include Aws::Structure end # @note When making an API call, you may pass GetPolicyVersionRequest # data as a hash: # # { # policy_arn: "arnType", # required # version_id: "policyVersionIdType", # required # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the managed policy that you want # information about. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] version_id # Identifies the policy version to retrieve. # # This parameter allows (per its [regex pattern][1]) a string of # characters that consists of the lowercase letter 'v' followed by # one or two digits, and optionally followed by a period '.' and a # string of letters and digits. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetPolicyVersionRequest AWS API Documentation # class GetPolicyVersionRequest < Struct.new( :policy_arn, :version_id) include Aws::Structure end # Contains the response to a successful GetPolicyVersion request. # # @!attribute [rw] policy_version # A structure containing details about the policy version. # @return [Types::PolicyVersion] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetPolicyVersionResponse AWS API Documentation # class GetPolicyVersionResponse < Struct.new( :policy_version) include Aws::Structure end # @note When making an API call, you may pass GetRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] role_name # The name of the role associated with the policy. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document to get. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetRolePolicyRequest AWS API Documentation # class GetRolePolicyRequest < Struct.new( :role_name, :policy_name) include Aws::Structure end # Contains the response to a successful GetRolePolicy request. # # @!attribute [rw] role_name # The role the policy is associated with. # @return [String] # # @!attribute [rw] policy_name # The name of the policy. # @return [String] # # @!attribute [rw] policy_document # The policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetRolePolicyResponse AWS API Documentation # class GetRolePolicyResponse < Struct.new( :role_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass GetRoleRequest # data as a hash: # # { # role_name: "roleNameType", # required # } # # @!attribute [rw] role_name # The name of the IAM role to get information about. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetRoleRequest AWS API Documentation # class GetRoleRequest < Struct.new( :role_name) include Aws::Structure end # Contains the response to a successful GetRole request. # # @!attribute [rw] role # A structure containing details about the IAM role. # @return [Types::Role] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetRoleResponse AWS API Documentation # class GetRoleResponse < Struct.new( :role) include Aws::Structure end # @note When making an API call, you may pass GetSAMLProviderRequest # data as a hash: # # { # saml_provider_arn: "arnType", # required # } # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the SAML provider resource object # in IAM to get information about. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProviderRequest AWS API Documentation # class GetSAMLProviderRequest < Struct.new( :saml_provider_arn) include Aws::Structure end # Contains the response to a successful GetSAMLProvider request. # # @!attribute [rw] saml_metadata_document # The XML metadata document that includes information about an # identity provider. # @return [String] # # @!attribute [rw] create_date # The date and time when the SAML provider was created. # @return [Time] # # @!attribute [rw] valid_until # The expiration date and time for the SAML provider. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProviderResponse AWS API Documentation # class GetSAMLProviderResponse < Struct.new( :saml_metadata_document, :create_date, :valid_until) include Aws::Structure end # @note When making an API call, you may pass GetSSHPublicKeyRequest # data as a hash: # # { # user_name: "userNameType", # required # ssh_public_key_id: "publicKeyIdType", # required # encoding: "SSH", # required, accepts SSH, PEM # } # # @!attribute [rw] user_name # The name of the IAM user associated with the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] ssh_public_key_id # The unique identifier for the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] encoding # Specifies the public key encoding format to use in the response. To # retrieve the public key in ssh-rsa format, use `SSH`. To retrieve # the public key in PEM format, use `PEM`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSSHPublicKeyRequest AWS API Documentation # class GetSSHPublicKeyRequest < Struct.new( :user_name, :ssh_public_key_id, :encoding) include Aws::Structure end # Contains the response to a successful GetSSHPublicKey request. # # @!attribute [rw] ssh_public_key # A structure containing details about the SSH public key. # @return [Types::SSHPublicKey] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSSHPublicKeyResponse AWS API Documentation # class GetSSHPublicKeyResponse < Struct.new( :ssh_public_key) include Aws::Structure end # @note When making an API call, you may pass GetServerCertificateRequest # data as a hash: # # { # server_certificate_name: "serverCertificateNameType", # required # } # # @!attribute [rw] server_certificate_name # The name of the server certificate you want to retrieve information # about. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServerCertificateRequest AWS API Documentation # class GetServerCertificateRequest < Struct.new( :server_certificate_name) include Aws::Structure end # Contains the response to a successful GetServerCertificate request. # # @!attribute [rw] server_certificate # A structure containing details about the server certificate. # @return [Types::ServerCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServerCertificateResponse AWS API Documentation # class GetServerCertificateResponse < Struct.new( :server_certificate) include Aws::Structure end # @note When making an API call, you may pass GetServiceLinkedRoleDeletionStatusRequest # data as a hash: # # { # deletion_task_id: "DeletionTaskIdType", # required # } # # @!attribute [rw] deletion_task_id # The deletion task identifier. This identifier is returned by the # DeleteServiceLinkedRole operation in the format # `task/aws-service-role///`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServiceLinkedRoleDeletionStatusRequest AWS API Documentation # class GetServiceLinkedRoleDeletionStatusRequest < Struct.new( :deletion_task_id) include Aws::Structure end # @!attribute [rw] status # The status of the deletion. # @return [String] # # @!attribute [rw] reason # An object that contains details about the reason the deletion # failed. # @return [Types::DeletionTaskFailureReasonType] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServiceLinkedRoleDeletionStatusResponse AWS API Documentation # class GetServiceLinkedRoleDeletionStatusResponse < Struct.new( :status, :reason) include Aws::Structure end # @note When making an API call, you may pass GetUserPolicyRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # policy_name: "policyNameType", # required # } # # @!attribute [rw] user_name # The name of the user who the policy is associated with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document to get. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetUserPolicyRequest AWS API Documentation # class GetUserPolicyRequest < Struct.new( :user_name, :policy_name) include Aws::Structure end # Contains the response to a successful GetUserPolicy request. # # @!attribute [rw] user_name # The user the policy is associated with. # @return [String] # # @!attribute [rw] policy_name # The name of the policy. # @return [String] # # @!attribute [rw] policy_document # The policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetUserPolicyResponse AWS API Documentation # class GetUserPolicyResponse < Struct.new( :user_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass GetUserRequest # data as a hash: # # { # user_name: "existingUserNameType", # } # # @!attribute [rw] user_name # The name of the user to get information about. # # This parameter is optional. If it is not included, it defaults to # the user making the request. This parameter allows (per its [regex # pattern][1]) a string of characters consisting of upper and # lowercase alphanumeric characters with no spaces. You can also # include any of the following characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetUserRequest AWS API Documentation # class GetUserRequest < Struct.new( :user_name) include Aws::Structure end # Contains the response to a successful GetUser request. # # @!attribute [rw] user # A structure containing details about the IAM user. # # Due to a service issue, password last used data does not include # password use from May 3rd 2018 22:50 PDT to May 23rd 2018 14:08 PDT. # This affects [last sign-in][1] dates shown in the IAM console and # password last used dates in the [IAM credential report][2], and # returned by this GetUser API. If users signed in during the affected # time, the password last used date that is returned is the date the # user last signed in before May 3rd 2018. For users that signed in # after May 23rd 2018 14:08 PDT, the returned password last used date # is accurate. # # If you use password last used information to identify unused # credentials for deletion, such as deleting users who did not sign in # to AWS in the last 90 days, we recommend that you adjust your # evaluation window to include dates after May 23rd 2018. # Alternatively, if your users use access keys to access AWS # programmatically you can refer to access key last used information # because it is accurate for all dates. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html # @return [Types::User] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetUserResponse AWS API Documentation # class GetUserResponse < Struct.new( :user) include Aws::Structure end # Contains information about an IAM group entity. # # This data type is used as a response element in the following # operations: # # * CreateGroup # # * GetGroup # # * ListGroups # # @!attribute [rw] path # The path to the group. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] group_name # The friendly name that identifies the group. # @return [String] # # @!attribute [rw] group_id # The stable and unique string identifying the group. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) specifying the group. For more # information about ARNs and how to use them in policies, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the group # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Group AWS API Documentation # class Group < Struct.new( :path, :group_name, :group_id, :arn, :create_date) include Aws::Structure end # Contains information about an IAM group, including all of the group's # policies. # # This data type is used as a response element in the # GetAccountAuthorizationDetails operation. # # @!attribute [rw] path # The path to the group. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] group_name # The friendly name that identifies the group. # @return [String] # # @!attribute [rw] group_id # The stable and unique string identifying the group. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the group # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] group_policy_list # A list of the inline policies embedded in the group. # @return [Array] # # @!attribute [rw] attached_managed_policies # A list of the managed policies attached to the group. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GroupDetail AWS API Documentation # class GroupDetail < Struct.new( :path, :group_name, :group_id, :arn, :create_date, :group_policy_list, :attached_managed_policies) include Aws::Structure end # Contains information about an instance profile. # # This data type is used as a response element in the following # operations: # # * CreateInstanceProfile # # * GetInstanceProfile # # * ListInstanceProfiles # # * ListInstanceProfilesForRole # # @!attribute [rw] path # The path to the instance profile. For more information about paths, # see [IAM Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] instance_profile_name # The name identifying the instance profile. # @return [String] # # @!attribute [rw] instance_profile_id # The stable and unique string identifying the instance profile. For # more information about IDs, see [IAM Identifiers][1] in the *Using # IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) specifying the instance profile. For # more information about ARNs and how to use them in policies, see # [IAM Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] create_date # The date when the instance profile was created. # @return [Time] # # @!attribute [rw] roles # The role associated with the instance profile. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/InstanceProfile AWS API Documentation # class InstanceProfile < Struct.new( :path, :instance_profile_name, :instance_profile_id, :arn, :create_date, :roles) include Aws::Structure end # @note When making an API call, you may pass ListAccessKeysRequest # data as a hash: # # { # user_name: "existingUserNameType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the user. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAccessKeysRequest AWS API Documentation # class ListAccessKeysRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListAccessKeys request. # # @!attribute [rw] access_key_metadata # A list of objects containing metadata about the access keys. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAccessKeysResponse AWS API Documentation # class ListAccessKeysResponse < Struct.new( :access_key_metadata, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListAccountAliasesRequest # data as a hash: # # { # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAccountAliasesRequest AWS API Documentation # class ListAccountAliasesRequest < Struct.new( :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListAccountAliases request. # # @!attribute [rw] account_aliases # A list of aliases associated with the account. AWS supports only one # alias per account. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAccountAliasesResponse AWS API Documentation # class ListAccountAliasesResponse < Struct.new( :account_aliases, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListAttachedGroupPoliciesRequest # data as a hash: # # { # group_name: "groupNameType", # required # path_prefix: "policyPathType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] group_name # The name (friendly name, not ARN) of the group to list attached # policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] path_prefix # The path prefix for filtering the results. This parameter is # optional. If it is not included, it defaults to a slash (/), listing # all policies. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedGroupPoliciesRequest AWS API Documentation # class ListAttachedGroupPoliciesRequest < Struct.new( :group_name, :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListAttachedGroupPolicies # request. # # @!attribute [rw] attached_policies # A list of the attached policies. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedGroupPoliciesResponse AWS API Documentation # class ListAttachedGroupPoliciesResponse < Struct.new( :attached_policies, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListAttachedRolePoliciesRequest # data as a hash: # # { # role_name: "roleNameType", # required # path_prefix: "policyPathType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) of the role to list attached # policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] path_prefix # The path prefix for filtering the results. This parameter is # optional. If it is not included, it defaults to a slash (/), listing # all policies. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedRolePoliciesRequest AWS API Documentation # class ListAttachedRolePoliciesRequest < Struct.new( :role_name, :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListAttachedRolePolicies # request. # # @!attribute [rw] attached_policies # A list of the attached policies. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedRolePoliciesResponse AWS API Documentation # class ListAttachedRolePoliciesResponse < Struct.new( :attached_policies, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListAttachedUserPoliciesRequest # data as a hash: # # { # user_name: "userNameType", # required # path_prefix: "policyPathType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) of the user to list attached # policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] path_prefix # The path prefix for filtering the results. This parameter is # optional. If it is not included, it defaults to a slash (/), listing # all policies. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedUserPoliciesRequest AWS API Documentation # class ListAttachedUserPoliciesRequest < Struct.new( :user_name, :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListAttachedUserPolicies # request. # # @!attribute [rw] attached_policies # A list of the attached policies. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListAttachedUserPoliciesResponse AWS API Documentation # class ListAttachedUserPoliciesResponse < Struct.new( :attached_policies, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListEntitiesForPolicyRequest # data as a hash: # # { # policy_arn: "arnType", # required # entity_filter: "User", # accepts User, Role, Group, LocalManagedPolicy, AWSManagedPolicy # path_prefix: "pathType", # policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy for which you want # the versions. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] entity_filter # The entity type to use for filtering the results. # # For example, when `EntityFilter` is `Role`, only the roles that are # attached to the specified policy are returned. This parameter is # optional. If it is not included, all attached entities (users, # groups, and roles) are returned. The argument for this parameter # must be one of the valid values listed below. # @return [String] # # @!attribute [rw] path_prefix # The path prefix for filtering the results. This parameter is # optional. If it is not included, it defaults to a slash (/), listing # all entities. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_usage_filter # The policy usage method to use for filtering the results. # # To list only permissions policies, # set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the # policies used to set permissions boundaries, set the value # to `PermissionsBoundary`. # # This parameter is optional. If it is not included, all policies are # returned. # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListEntitiesForPolicyRequest AWS API Documentation # class ListEntitiesForPolicyRequest < Struct.new( :policy_arn, :entity_filter, :path_prefix, :policy_usage_filter, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListEntitiesForPolicy request. # # @!attribute [rw] policy_groups # A list of IAM groups that the policy is attached to. # @return [Array] # # @!attribute [rw] policy_users # A list of IAM users that the policy is attached to. # @return [Array] # # @!attribute [rw] policy_roles # A list of IAM roles that the policy is attached to. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListEntitiesForPolicyResponse AWS API Documentation # class ListEntitiesForPolicyResponse < Struct.new( :policy_groups, :policy_users, :policy_roles, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListGroupPoliciesRequest # data as a hash: # # { # group_name: "groupNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] group_name # The name of the group to list policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupPoliciesRequest AWS API Documentation # class ListGroupPoliciesRequest < Struct.new( :group_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListGroupPolicies request. # # @!attribute [rw] policy_names # A list of policy names. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupPoliciesResponse AWS API Documentation # class ListGroupPoliciesResponse < Struct.new( :policy_names, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListGroupsForUserRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the user to list groups for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupsForUserRequest AWS API Documentation # class ListGroupsForUserRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListGroupsForUser request. # # @!attribute [rw] groups # A list of groups. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupsForUserResponse AWS API Documentation # class ListGroupsForUserResponse < Struct.new( :groups, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListGroupsRequest # data as a hash: # # { # path_prefix: "pathPrefixType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] path_prefix # The path prefix for filtering the results. For example, the prefix # `/division_abc/subdivision_xyz/` gets all groups whose path starts # with `/division_abc/subdivision_xyz/`. # # This parameter is optional. If it is not included, it defaults to a # slash (/), listing all groups. This parameter allows (per its [regex # pattern][1]) a string of characters consisting of either a forward # slash (/) by itself or a string that must begin and end with forward # slashes. In addition, it can contain any ASCII character from the ! # (\\u0021) through the DEL character (\\u007F), including most # punctuation characters, digits, and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupsRequest AWS API Documentation # class ListGroupsRequest < Struct.new( :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListGroups request. # # @!attribute [rw] groups # A list of groups. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListGroupsResponse AWS API Documentation # class ListGroupsResponse < Struct.new( :groups, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListInstanceProfilesForRoleRequest # data as a hash: # # { # role_name: "roleNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] role_name # The name of the role to list instance profiles for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListInstanceProfilesForRoleRequest AWS API Documentation # class ListInstanceProfilesForRoleRequest < Struct.new( :role_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListInstanceProfilesForRole # request. # # @!attribute [rw] instance_profiles # A list of instance profiles. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListInstanceProfilesForRoleResponse AWS API Documentation # class ListInstanceProfilesForRoleResponse < Struct.new( :instance_profiles, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListInstanceProfilesRequest # data as a hash: # # { # path_prefix: "pathPrefixType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] path_prefix # The path prefix for filtering the results. For example, the prefix # `/application_abc/component_xyz/` gets all instance profiles whose # path starts with `/application_abc/component_xyz/`. # # This parameter is optional. If it is not included, it defaults to a # slash (/), listing all instance profiles. This parameter allows (per # its [regex pattern][1]) a string of characters consisting of either # a forward slash (/) by itself or a string that must begin and end # with forward slashes. In addition, it can contain any ASCII # character from the ! (\\u0021) through the DEL character (\\u007F), # including most punctuation characters, digits, and upper and # lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListInstanceProfilesRequest AWS API Documentation # class ListInstanceProfilesRequest < Struct.new( :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListInstanceProfiles request. # # @!attribute [rw] instance_profiles # A list of instance profiles. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListInstanceProfilesResponse AWS API Documentation # class ListInstanceProfilesResponse < Struct.new( :instance_profiles, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListMFADevicesRequest # data as a hash: # # { # user_name: "existingUserNameType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the user whose MFA devices you want to list. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListMFADevicesRequest AWS API Documentation # class ListMFADevicesRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListMFADevices request. # # @!attribute [rw] mfa_devices # A list of MFA devices. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListMFADevicesResponse AWS API Documentation # class ListMFADevicesResponse < Struct.new( :mfa_devices, :is_truncated, :marker) include Aws::Structure end # @api private # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListOpenIDConnectProvidersRequest AWS API Documentation # class ListOpenIDConnectProvidersRequest < Aws::EmptyStructure; end # Contains the response to a successful ListOpenIDConnectProviders # request. # # @!attribute [rw] open_id_connect_provider_list # The list of IAM OIDC provider resource objects defined in the AWS # account. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListOpenIDConnectProvidersResponse AWS API Documentation # class ListOpenIDConnectProvidersResponse < Struct.new( :open_id_connect_provider_list) include Aws::Structure end # @note When making an API call, you may pass ListPoliciesRequest # data as a hash: # # { # scope: "All", # accepts All, AWS, Local # only_attached: false, # path_prefix: "policyPathType", # policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] scope # The scope to use for filtering the results. # # To list only AWS managed policies, set `Scope` to `AWS`. To list # only the customer managed policies in your AWS account, set `Scope` # to `Local`. # # This parameter is optional. If it is not included, or if it is set # to `All`, all policies are returned. # @return [String] # # @!attribute [rw] only_attached # A flag to filter the results to only the attached policies. # # When `OnlyAttached` is `true`, the returned list contains only the # policies that are attached to an IAM user, group, or role. When # `OnlyAttached` is `false`, or when the parameter is not included, # all policies are returned. # @return [Boolean] # # @!attribute [rw] path_prefix # The path prefix for filtering the results. This parameter is # optional. If it is not included, it defaults to a slash (/), listing # all policies. This parameter allows (per its [regex pattern][1]) a # string of characters consisting of either a forward slash (/) by # itself or a string that must begin and end with forward slashes. In # addition, it can contain any ASCII character from the ! (\\u0021) # through the DEL character (\\u007F), including most punctuation # characters, digits, and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_usage_filter # The policy usage method to use for filtering the results. # # To list only permissions policies, # set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the # policies used to set permissions boundaries, set the value # to `PermissionsBoundary`. # # This parameter is optional. If it is not included, all policies are # returned. # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListPoliciesRequest AWS API Documentation # class ListPoliciesRequest < Struct.new( :scope, :only_attached, :path_prefix, :policy_usage_filter, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListPolicies request. # # @!attribute [rw] policies # A list of policies. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListPoliciesResponse AWS API Documentation # class ListPoliciesResponse < Struct.new( :policies, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListPolicyVersionsRequest # data as a hash: # # { # policy_arn: "arnType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy for which you want # the versions. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListPolicyVersionsRequest AWS API Documentation # class ListPolicyVersionsRequest < Struct.new( :policy_arn, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListPolicyVersions request. # # @!attribute [rw] versions # A list of policy versions. # # For more information about managed policy versions, see [Versioning # for Managed Policies][1] in the *IAM User Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListPolicyVersionsResponse AWS API Documentation # class ListPolicyVersionsResponse < Struct.new( :versions, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListRolePoliciesRequest # data as a hash: # # { # role_name: "roleNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] role_name # The name of the role to list policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListRolePoliciesRequest AWS API Documentation # class ListRolePoliciesRequest < Struct.new( :role_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListRolePolicies request. # # @!attribute [rw] policy_names # A list of policy names. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListRolePoliciesResponse AWS API Documentation # class ListRolePoliciesResponse < Struct.new( :policy_names, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListRolesRequest # data as a hash: # # { # path_prefix: "pathPrefixType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] path_prefix # The path prefix for filtering the results. For example, the prefix # `/application_abc/component_xyz/` gets all roles whose path starts # with `/application_abc/component_xyz/`. # # This parameter is optional. If it is not included, it defaults to a # slash (/), listing all roles. This parameter allows (per its [regex # pattern][1]) a string of characters consisting of either a forward # slash (/) by itself or a string that must begin and end with forward # slashes. In addition, it can contain any ASCII character from the ! # (\\u0021) through the DEL character (\\u007F), including most # punctuation characters, digits, and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListRolesRequest AWS API Documentation # class ListRolesRequest < Struct.new( :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListRoles request. # # @!attribute [rw] roles # A list of roles. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListRolesResponse AWS API Documentation # class ListRolesResponse < Struct.new( :roles, :is_truncated, :marker) include Aws::Structure end # @api private # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSAMLProvidersRequest AWS API Documentation # class ListSAMLProvidersRequest < Aws::EmptyStructure; end # Contains the response to a successful ListSAMLProviders request. # # @!attribute [rw] saml_provider_list # The list of SAML provider resource objects defined in IAM for this # AWS account. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSAMLProvidersResponse AWS API Documentation # class ListSAMLProvidersResponse < Struct.new( :saml_provider_list) include Aws::Structure end # @note When making an API call, you may pass ListSSHPublicKeysRequest # data as a hash: # # { # user_name: "userNameType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the IAM user to list SSH public keys for. If none is # specified, the `UserName` field is determined implicitly based on # the AWS access key used to sign the request. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSSHPublicKeysRequest AWS API Documentation # class ListSSHPublicKeysRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListSSHPublicKeys request. # # @!attribute [rw] ssh_public_keys # A list of the SSH public keys assigned to IAM user. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSSHPublicKeysResponse AWS API Documentation # class ListSSHPublicKeysResponse < Struct.new( :ssh_public_keys, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListServerCertificatesRequest # data as a hash: # # { # path_prefix: "pathPrefixType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] path_prefix # The path prefix for filtering the results. For example: # `/company/servercerts` would get all server certificates for which # the path starts with `/company/servercerts`. # # This parameter is optional. If it is not included, it defaults to a # slash (/), listing all server certificates. This parameter allows # (per its [regex pattern][1]) a string of characters consisting of # either a forward slash (/) by itself or a string that must begin and # end with forward slashes. In addition, it can contain any ASCII # character from the ! (\\u0021) through the DEL character (\\u007F), # including most punctuation characters, digits, and upper and # lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListServerCertificatesRequest AWS API Documentation # class ListServerCertificatesRequest < Struct.new( :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListServerCertificates request. # # @!attribute [rw] server_certificate_metadata_list # A list of server certificates. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListServerCertificatesResponse AWS API Documentation # class ListServerCertificatesResponse < Struct.new( :server_certificate_metadata_list, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListServiceSpecificCredentialsRequest # data as a hash: # # { # user_name: "userNameType", # service_name: "serviceName", # } # # @!attribute [rw] user_name # The name of the user whose service-specific credentials you want # information about. If this value is not specified, then the # operation assumes the user whose credentials are used to call the # operation. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] service_name # Filters the returned results to only those for the specified AWS # service. If not specified, then AWS returns service-specific # credentials for all services. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListServiceSpecificCredentialsRequest AWS API Documentation # class ListServiceSpecificCredentialsRequest < Struct.new( :user_name, :service_name) include Aws::Structure end # @!attribute [rw] service_specific_credentials # A list of structures that each contain details about a # service-specific credential. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListServiceSpecificCredentialsResponse AWS API Documentation # class ListServiceSpecificCredentialsResponse < Struct.new( :service_specific_credentials) include Aws::Structure end # @note When making an API call, you may pass ListSigningCertificatesRequest # data as a hash: # # { # user_name: "existingUserNameType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the IAM user whose signing certificates you want to # examine. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSigningCertificatesRequest AWS API Documentation # class ListSigningCertificatesRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListSigningCertificates request. # # @!attribute [rw] certificates # A list of the user's signing certificate information. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListSigningCertificatesResponse AWS API Documentation # class ListSigningCertificatesResponse < Struct.new( :certificates, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListUserPoliciesRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] user_name # The name of the user to list policies for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListUserPoliciesRequest AWS API Documentation # class ListUserPoliciesRequest < Struct.new( :user_name, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListUserPolicies request. # # @!attribute [rw] policy_names # A list of policy names. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListUserPoliciesResponse AWS API Documentation # class ListUserPoliciesResponse < Struct.new( :policy_names, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListUsersRequest # data as a hash: # # { # path_prefix: "pathPrefixType", # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] path_prefix # The path prefix for filtering the results. For example: # `/division_abc/subdivision_xyz/`, which would get all user names # whose path starts with `/division_abc/subdivision_xyz/`. # # This parameter is optional. If it is not included, it defaults to a # slash (/), listing all user names. This parameter allows (per its # [regex pattern][1]) a string of characters consisting of either a # forward slash (/) by itself or a string that must begin and end with # forward slashes. In addition, it can contain any ASCII character # from the ! (\\u0021) through the DEL character (\\u007F), including # most punctuation characters, digits, and upper and lowercased # letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListUsersRequest AWS API Documentation # class ListUsersRequest < Struct.new( :path_prefix, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListUsers request. # # @!attribute [rw] users # A list of users. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListUsersResponse AWS API Documentation # class ListUsersResponse < Struct.new( :users, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass ListVirtualMFADevicesRequest # data as a hash: # # { # assignment_status: "Assigned", # accepts Assigned, Unassigned, Any # marker: "markerType", # max_items: 1, # } # # @!attribute [rw] assignment_status # The status (`Unassigned` or `Assigned`) of the devices to list. If # you do not specify an `AssignmentStatus`, the operation defaults to # `Any` which lists both assigned and unassigned virtual MFA devices. # @return [String] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListVirtualMFADevicesRequest AWS API Documentation # class ListVirtualMFADevicesRequest < Struct.new( :assignment_status, :marker, :max_items) include Aws::Structure end # Contains the response to a successful ListVirtualMFADevices request. # # @!attribute [rw] virtual_mfa_devices # The list of virtual MFA devices in the current account that match # the `AssignmentStatus` value that was passed in the request. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ListVirtualMFADevicesResponse AWS API Documentation # class ListVirtualMFADevicesResponse < Struct.new( :virtual_mfa_devices, :is_truncated, :marker) include Aws::Structure end # Contains the user name and password create date for a user. # # This data type is used as a response element in the CreateLoginProfile # and GetLoginProfile operations. # # @!attribute [rw] user_name # The name of the user, which can be used for signing in to the AWS # Management Console. # @return [String] # # @!attribute [rw] create_date # The date when the password for the user was created. # @return [Time] # # @!attribute [rw] password_reset_required # Specifies whether the user is required to set a new password on next # sign-in. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/LoginProfile AWS API Documentation # class LoginProfile < Struct.new( :user_name, :create_date, :password_reset_required) include Aws::Structure end # Contains information about an MFA device. # # This data type is used as a response element in the ListMFADevices # operation. # # @!attribute [rw] user_name # The user with whom the MFA device is associated. # @return [String] # # @!attribute [rw] serial_number # The serial number that uniquely identifies the MFA device. For # virtual MFA devices, the serial number is the device ARN. # @return [String] # # @!attribute [rw] enable_date # The date when the MFA device was enabled for the user. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/MFADevice AWS API Documentation # class MFADevice < Struct.new( :user_name, :serial_number, :enable_date) include Aws::Structure end # Contains information about a managed policy, including the policy's # ARN, versions, and the number of principal entities (users, groups, # and roles) that the policy is attached to. # # This data type is used as a response element in the # GetAccountAuthorizationDetails operation. # # For more information about managed policies, see [Managed Policies and # Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] policy_name # The friendly name (not ARN) identifying the policy. # @return [String] # # @!attribute [rw] policy_id # The stable and unique string identifying the policy. # # For more information about IDs, see [IAM Identifiers][1] in the # *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] path # The path to the policy. # # For more information about paths, see [IAM Identifiers][1] in the # *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] default_version_id # The identifier for the version of the policy that is set as the # default (operative) version. # # For more information about policy versions, see [Versioning for # Managed Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html # @return [String] # # @!attribute [rw] attachment_count # The number of principal entities (users, groups, and roles) that the # policy is attached to. # @return [Integer] # # @!attribute [rw] permissions_boundary_usage_count # The number of entities (users and roles) for which the policy is # used as the permissions boundary. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Integer] # # @!attribute [rw] is_attachable # Specifies whether the policy can be attached to an IAM user, group, # or role. # @return [Boolean] # # @!attribute [rw] description # A friendly description of the policy. # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the # policy was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] update_date # The date and time, in [ISO 8601 date-time format][1], when the # policy was last updated. # # When a policy has only one version, this field contains the date and # time when the policy was created. When a policy has more than one # version, this field contains the date and time when the most recent # policy version was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] policy_version_list # A list containing information about the versions of the policy. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ManagedPolicyDetail AWS API Documentation # class ManagedPolicyDetail < Struct.new( :policy_name, :policy_id, :arn, :path, :default_version_id, :attachment_count, :permissions_boundary_usage_count, :is_attachable, :description, :create_date, :update_date, :policy_version_list) include Aws::Structure end # Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect # provider. # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/OpenIDConnectProviderListEntry AWS API Documentation # class OpenIDConnectProviderListEntry < Struct.new( :arn) include Aws::Structure end # Contains information about AWS Organizations's effect on a policy # simulation. # # @!attribute [rw] allowed_by_organizations # Specifies whether the simulated operation is allowed by the AWS # Organizations service control policies that impact the simulated # user's account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/OrganizationsDecisionDetail AWS API Documentation # class OrganizationsDecisionDetail < Struct.new( :allowed_by_organizations) include Aws::Structure end # Contains information about the account password policy. # # This data type is used as a response element in the # GetAccountPasswordPolicy operation. # # @!attribute [rw] minimum_password_length # Minimum length to require for IAM user passwords. # @return [Integer] # # @!attribute [rw] require_symbols # Specifies whether to require symbols for IAM user passwords. # @return [Boolean] # # @!attribute [rw] require_numbers # Specifies whether to require numbers for IAM user passwords. # @return [Boolean] # # @!attribute [rw] require_uppercase_characters # Specifies whether to require uppercase characters for IAM user # passwords. # @return [Boolean] # # @!attribute [rw] require_lowercase_characters # Specifies whether to require lowercase characters for IAM user # passwords. # @return [Boolean] # # @!attribute [rw] allow_users_to_change_password # Specifies whether IAM users are allowed to change their own # password. # @return [Boolean] # # @!attribute [rw] expire_passwords # Indicates whether passwords in the account expire. Returns true if # `MaxPasswordAge` contains a value greater than 0. Returns false if # MaxPasswordAge is 0 or not present. # @return [Boolean] # # @!attribute [rw] max_password_age # The number of days that an IAM user password is valid. # @return [Integer] # # @!attribute [rw] password_reuse_prevention # Specifies the number of previous passwords that IAM users are # prevented from reusing. # @return [Integer] # # @!attribute [rw] hard_expiry # Specifies whether IAM users are prevented from setting a new # password after their password has expired. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PasswordPolicy AWS API Documentation # class PasswordPolicy < Struct.new( :minimum_password_length, :require_symbols, :require_numbers, :require_uppercase_characters, :require_lowercase_characters, :allow_users_to_change_password, :expire_passwords, :max_password_age, :password_reuse_prevention, :hard_expiry) include Aws::Structure end # Contains information about a managed policy. # # This data type is used as a response element in the CreatePolicy, # GetPolicy, and ListPolicies operations. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] policy_name # The friendly name (not ARN) identifying the policy. # @return [String] # # @!attribute [rw] policy_id # The stable and unique string identifying the policy. # # For more information about IDs, see [IAM Identifiers][1] in the # *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] path # The path to the policy. # # For more information about paths, see [IAM Identifiers][1] in the # *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] default_version_id # The identifier for the version of the policy that is set as the # default version. # @return [String] # # @!attribute [rw] attachment_count # The number of entities (users, groups, and roles) that the policy is # attached to. # @return [Integer] # # @!attribute [rw] permissions_boundary_usage_count # The number of entities (users and roles) for which the policy is # used to set the permissions boundary. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Integer] # # @!attribute [rw] is_attachable # Specifies whether the policy can be attached to an IAM user, group, # or role. # @return [Boolean] # # @!attribute [rw] description # A friendly description of the policy. # # This element is included in the response to the GetPolicy operation. # It is not included in the response to the ListPolicies operation. # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the # policy was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] update_date # The date and time, in [ISO 8601 date-time format][1], when the # policy was last updated. # # When a policy has only one version, this field contains the date and # time when the policy was created. When a policy has more than one # version, this field contains the date and time when the most recent # policy version was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Policy AWS API Documentation # class Policy < Struct.new( :policy_name, :policy_id, :arn, :path, :default_version_id, :attachment_count, :permissions_boundary_usage_count, :is_attachable, :description, :create_date, :update_date) include Aws::Structure end # Contains information about an IAM policy, including the policy # document. # # This data type is used as a response element in the # GetAccountAuthorizationDetails operation. # # @!attribute [rw] policy_name # The name of the policy. # @return [String] # # @!attribute [rw] policy_document # The policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PolicyDetail AWS API Documentation # class PolicyDetail < Struct.new( :policy_name, :policy_document) include Aws::Structure end # Contains information about a group that a managed policy is attached # to. # # This data type is used as a response element in the # ListEntitiesForPolicy operation. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] group_name # The name (friendly name, not ARN) identifying the group. # @return [String] # # @!attribute [rw] group_id # The stable and unique string identifying the group. For more # information about IDs, see [IAM Identifiers][1] in the *IAM User # Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PolicyGroup AWS API Documentation # class PolicyGroup < Struct.new( :group_name, :group_id) include Aws::Structure end # Contains information about a role that a managed policy is attached # to. # # This data type is used as a response element in the # ListEntitiesForPolicy operation. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] role_name # The name (friendly name, not ARN) identifying the role. # @return [String] # # @!attribute [rw] role_id # The stable and unique string identifying the role. For more # information about IDs, see [IAM Identifiers][1] in the *IAM User # Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PolicyRole AWS API Documentation # class PolicyRole < Struct.new( :role_name, :role_id) include Aws::Structure end # Contains information about a user that a managed policy is attached # to. # # This data type is used as a response element in the # ListEntitiesForPolicy operation. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] user_name # The name (friendly name, not ARN) identifying the user. # @return [String] # # @!attribute [rw] user_id # The stable and unique string identifying the user. For more # information about IDs, see [IAM Identifiers][1] in the *IAM User # Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PolicyUser AWS API Documentation # class PolicyUser < Struct.new( :user_name, :user_id) include Aws::Structure end # Contains information about a version of a managed policy. # # This data type is used as a response element in the # CreatePolicyVersion, GetPolicyVersion, ListPolicyVersions, and # GetAccountAuthorizationDetails operations. # # For more information about managed policies, refer to [Managed # Policies and Inline Policies][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html # # @!attribute [rw] document # The policy document. # # The policy document is returned in the response to the # GetPolicyVersion and GetAccountAuthorizationDetails operations. It # is not returned in the response to the CreatePolicyVersion or # ListPolicyVersions operations. # # The policy document returned in this structure is URL-encoded # compliant with [RFC 3986][1]. You can use a URL decoding method to # convert the policy back to plain JSON text. For example, if you use # Java, you can use the `decode` method of the `java.net.URLDecoder` # utility class in the Java SDK. Other languages and SDKs provide # similar functionality. # # # # [1]: https://tools.ietf.org/html/rfc3986 # @return [String] # # @!attribute [rw] version_id # The identifier for the policy version. # # Policy version identifiers always begin with `v` (always lowercase). # When a policy is created, the first policy version is `v1`. # @return [String] # # @!attribute [rw] is_default_version # Specifies whether the policy version is set as the policy's default # version. # @return [Boolean] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the # policy version was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PolicyVersion AWS API Documentation # class PolicyVersion < Struct.new( :document, :version_id, :is_default_version, :create_date) include Aws::Structure end # Contains the row and column of a location of a `Statement` element in # a policy document. # # This data type is used as a member of the ` Statement ` type. # # @!attribute [rw] line # The line containing the specified position in the document. # @return [Integer] # # @!attribute [rw] column # The column in the line containing the specified position in the # document. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Position AWS API Documentation # class Position < Struct.new( :line, :column) include Aws::Structure end # @note When making an API call, you may pass PutGroupPolicyRequest # data as a hash: # # { # group_name: "groupNameType", # required # policy_name: "policyNameType", # required # policy_document: "policyDocumentType", # required # } # # @!attribute [rw] group_name # The name of the group to associate the policy with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_document # The policy document. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutGroupPolicyRequest AWS API Documentation # class PutGroupPolicyRequest < Struct.new( :group_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass PutRolePermissionsBoundaryRequest # data as a hash: # # { # role_name: "roleNameType", # required # permissions_boundary: "arnType", # required # } # # @!attribute [rw] role_name # The name (friendly name, not ARN) of the IAM role for which you want # to set the permissions boundary. # @return [String] # # @!attribute [rw] permissions_boundary # The ARN of the policy that is used to set the permissions boundary # for the role. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutRolePermissionsBoundaryRequest AWS API Documentation # class PutRolePermissionsBoundaryRequest < Struct.new( :role_name, :permissions_boundary) include Aws::Structure end # @note When making an API call, you may pass PutRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_name: "policyNameType", # required # policy_document: "policyDocumentType", # required # } # # @!attribute [rw] role_name # The name of the role to associate the policy with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_document # The policy document. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutRolePolicyRequest AWS API Documentation # class PutRolePolicyRequest < Struct.new( :role_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass PutUserPermissionsBoundaryRequest # data as a hash: # # { # user_name: "userNameType", # required # permissions_boundary: "arnType", # required # } # # @!attribute [rw] user_name # The name (friendly name, not ARN) of the IAM user for which you want # to set the permissions boundary. # @return [String] # # @!attribute [rw] permissions_boundary # The ARN of the policy that is used to set the permissions boundary # for the user. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutUserPermissionsBoundaryRequest AWS API Documentation # class PutUserPermissionsBoundaryRequest < Struct.new( :user_name, :permissions_boundary) include Aws::Structure end # @note When making an API call, you may pass PutUserPolicyRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # policy_name: "policyNameType", # required # policy_document: "policyDocumentType", # required # } # # @!attribute [rw] user_name # The name of the user to associate the policy with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_name # The name of the policy document. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_document # The policy document. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutUserPolicyRequest AWS API Documentation # class PutUserPolicyRequest < Struct.new( :user_name, :policy_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass RemoveClientIDFromOpenIDConnectProviderRequest # data as a hash: # # { # open_id_connect_provider_arn: "arnType", # required # client_id: "clientIDType", # required # } # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the IAM OIDC provider resource to # remove the client ID from. You can get a list of OIDC provider ARNs # by using the ListOpenIDConnectProviders operation. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] client_id # The client ID (also known as audience) to remove from the IAM OIDC # provider resource. For more information about client IDs, see # CreateOpenIDConnectProvider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RemoveClientIDFromOpenIDConnectProviderRequest AWS API Documentation # class RemoveClientIDFromOpenIDConnectProviderRequest < Struct.new( :open_id_connect_provider_arn, :client_id) include Aws::Structure end # @note When making an API call, you may pass RemoveRoleFromInstanceProfileRequest # data as a hash: # # { # instance_profile_name: "instanceProfileNameType", # required # role_name: "roleNameType", # required # } # # @!attribute [rw] instance_profile_name # The name of the instance profile to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] role_name # The name of the role to remove. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RemoveRoleFromInstanceProfileRequest AWS API Documentation # class RemoveRoleFromInstanceProfileRequest < Struct.new( :instance_profile_name, :role_name) include Aws::Structure end # @note When making an API call, you may pass RemoveUserFromGroupRequest # data as a hash: # # { # group_name: "groupNameType", # required # user_name: "existingUserNameType", # required # } # # @!attribute [rw] group_name # The name of the group to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] user_name # The name of the user to remove. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RemoveUserFromGroupRequest AWS API Documentation # class RemoveUserFromGroupRequest < Struct.new( :group_name, :user_name) include Aws::Structure end # @note When making an API call, you may pass ResetServiceSpecificCredentialRequest # data as a hash: # # { # user_name: "userNameType", # service_specific_credential_id: "serviceSpecificCredentialId", # required # } # # @!attribute [rw] user_name # The name of the IAM user associated with the service-specific # credential. If this value is not specified, then the operation # assumes the user whose credentials are used to call the operation. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] service_specific_credential_id # The unique identifier of the service-specific credential. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ResetServiceSpecificCredentialRequest AWS API Documentation # class ResetServiceSpecificCredentialRequest < Struct.new( :user_name, :service_specific_credential_id) include Aws::Structure end # @!attribute [rw] service_specific_credential # A structure with details about the updated service-specific # credential, including the new password. # # This is the **only** time that you can access the password. You # cannot recover the password later, but you can reset it again. # @return [Types::ServiceSpecificCredential] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ResetServiceSpecificCredentialResponse AWS API Documentation # class ResetServiceSpecificCredentialResponse < Struct.new( :service_specific_credential) include Aws::Structure end # Contains the result of the simulation of a single API operation call # on a single resource. # # This data type is used by a member of the EvaluationResult data type. # # @!attribute [rw] eval_resource_name # The name of the simulated resource, in Amazon Resource Name (ARN) # format. # @return [String] # # @!attribute [rw] eval_resource_decision # The result of the simulation of the simulated API operation on the # resource specified in `EvalResourceName`. # @return [String] # # @!attribute [rw] matched_statements # A list of the statements in the input policies that determine the # result for this part of the simulation. Remember that even if # multiple statements allow the operation on the resource, if *any* # statement denies that operation, then the explicit deny overrides # any allow, and the deny statement is the only entry included in the # result. # @return [Array] # # @!attribute [rw] missing_context_values # A list of context keys that are required by the included input # policies but that were not provided by one of the input parameters. # This list is used when a list of ARNs is included in the # `ResourceArns` parameter instead of "*". If you do not specify # individual resources, by setting `ResourceArns` to "*" or by not # including the `ResourceArns` parameter, then any missing context # values are instead included under the `EvaluationResults` section. # To discover the context keys used by a set of policies, you can call # GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy. # @return [Array] # # @!attribute [rw] eval_decision_details # Additional details about the results of the evaluation decision. # When there are both IAM policies and resource policies, this # parameter explains how each set of policies contributes to the final # evaluation decision. When simulating cross-account access to a # resource, both the resource-based policy and the caller's IAM # policy must grant access. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ResourceSpecificResult AWS API Documentation # class ResourceSpecificResult < Struct.new( :eval_resource_name, :eval_resource_decision, :matched_statements, :missing_context_values, :eval_decision_details) include Aws::Structure end # @note When making an API call, you may pass ResyncMFADeviceRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # serial_number: "serialNumberType", # required # authentication_code_1: "authenticationCodeType", # required # authentication_code_2: "authenticationCodeType", # required # } # # @!attribute [rw] user_name # The name of the user whose MFA device you want to resynchronize. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] serial_number # Serial number that uniquely identifies the MFA device. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] authentication_code_1 # An authentication code emitted by the device. # # The format for this parameter is a sequence of six digits. # @return [String] # # @!attribute [rw] authentication_code_2 # A subsequent authentication code emitted by the device. # # The format for this parameter is a sequence of six digits. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ResyncMFADeviceRequest AWS API Documentation # class ResyncMFADeviceRequest < Struct.new( :user_name, :serial_number, :authentication_code_1, :authentication_code_2) include Aws::Structure end # Contains information about an IAM role. This structure is returned as # a response element in several API operations that interact with roles. # # @!attribute [rw] path # The path to the role. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] role_name # The friendly name that identifies the role. # @return [String] # # @!attribute [rw] role_id # The stable and unique string identifying the role. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) specifying the role. For more # information about ARNs and how to use them in policies, see [IAM # Identifiers][1] in the *IAM User Guide* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the role # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] assume_role_policy_document # The policy that grants an entity permission to assume the role. # @return [String] # # @!attribute [rw] description # A description of the role that you provide. # @return [String] # # @!attribute [rw] max_session_duration # The maximum session duration (in seconds) for the specified role. # Anyone who uses the AWS CLI or API to assume the role can specify # the duration using the optional `DurationSeconds` API parameter or # `duration-seconds` CLI parameter. # @return [Integer] # # @!attribute [rw] permissions_boundary # The ARN of the policy used to set the permissions boundary for the # role. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Types::AttachedPermissionsBoundary] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Role AWS API Documentation # class Role < Struct.new( :path, :role_name, :role_id, :arn, :create_date, :assume_role_policy_document, :description, :max_session_duration, :permissions_boundary) include Aws::Structure end # Contains information about an IAM role, including all of the role's # policies. # # This data type is used as a response element in the # GetAccountAuthorizationDetails operation. # # @!attribute [rw] path # The path to the role. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] role_name # The friendly name that identifies the role. # @return [String] # # @!attribute [rw] role_id # The stable and unique string identifying the role. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the role # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] assume_role_policy_document # The trust policy that grants permission to assume the role. # @return [String] # # @!attribute [rw] instance_profile_list # A list of instance profiles that contain this role. # @return [Array] # # @!attribute [rw] role_policy_list # A list of inline policies embedded in the role. These policies are # the role's access (permissions) policies. # @return [Array] # # @!attribute [rw] attached_managed_policies # A list of managed policies attached to the role. These policies are # the role's access (permissions) policies. # @return [Array] # # @!attribute [rw] permissions_boundary # The ARN of the policy used to set the permissions boundary for the # role. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Types::AttachedPermissionsBoundary] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RoleDetail AWS API Documentation # class RoleDetail < Struct.new( :path, :role_name, :role_id, :arn, :create_date, :assume_role_policy_document, :instance_profile_list, :role_policy_list, :attached_managed_policies, :permissions_boundary) include Aws::Structure end # An object that contains details about how a service-linked role is # used, if that information is returned by the service. # # This data type is used as a response element in the # GetServiceLinkedRoleDeletionStatus operation. # # @!attribute [rw] region # The name of the region where the service-linked role is being used. # @return [String] # # @!attribute [rw] resources # The name of the resource that is using the service-linked role. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RoleUsageType AWS API Documentation # class RoleUsageType < Struct.new( :region, :resources) include Aws::Structure end # Contains the list of SAML providers for this account. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the SAML provider. # @return [String] # # @!attribute [rw] valid_until # The expiration date and time for the SAML provider. # @return [Time] # # @!attribute [rw] create_date # The date and time when the SAML provider was created. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SAMLProviderListEntry AWS API Documentation # class SAMLProviderListEntry < Struct.new( :arn, :valid_until, :create_date) include Aws::Structure end # Contains information about an SSH public key. # # This data type is used as a response element in the GetSSHPublicKey # and UploadSSHPublicKey operations. # # @!attribute [rw] user_name # The name of the IAM user associated with the SSH public key. # @return [String] # # @!attribute [rw] ssh_public_key_id # The unique identifier for the SSH public key. # @return [String] # # @!attribute [rw] fingerprint # The MD5 message digest of the SSH public key. # @return [String] # # @!attribute [rw] ssh_public_key_body # The SSH public key. # @return [String] # # @!attribute [rw] status # The status of the SSH public key. `Active` means that the key can be # used for authentication with an AWS CodeCommit repository. # `Inactive` means that the key cannot be used. # @return [String] # # @!attribute [rw] upload_date # The date and time, in [ISO 8601 date-time format][1], when the SSH # public key was uploaded. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SSHPublicKey AWS API Documentation # class SSHPublicKey < Struct.new( :user_name, :ssh_public_key_id, :fingerprint, :ssh_public_key_body, :status, :upload_date) include Aws::Structure end # Contains information about an SSH public key, without the key's body # or fingerprint. # # This data type is used as a response element in the ListSSHPublicKeys # operation. # # @!attribute [rw] user_name # The name of the IAM user associated with the SSH public key. # @return [String] # # @!attribute [rw] ssh_public_key_id # The unique identifier for the SSH public key. # @return [String] # # @!attribute [rw] status # The status of the SSH public key. `Active` means that the key can be # used for authentication with an AWS CodeCommit repository. # `Inactive` means that the key cannot be used. # @return [String] # # @!attribute [rw] upload_date # The date and time, in [ISO 8601 date-time format][1], when the SSH # public key was uploaded. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SSHPublicKeyMetadata AWS API Documentation # class SSHPublicKeyMetadata < Struct.new( :user_name, :ssh_public_key_id, :status, :upload_date) include Aws::Structure end # Contains information about a server certificate. # # This data type is used as a response element in the # GetServerCertificate operation. # # @!attribute [rw] server_certificate_metadata # The meta information of the server certificate, such as its name, # path, ID, and ARN. # @return [Types::ServerCertificateMetadata] # # @!attribute [rw] certificate_body # The contents of the public key certificate. # @return [String] # # @!attribute [rw] certificate_chain # The contents of the public key certificate chain. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ServerCertificate AWS API Documentation # class ServerCertificate < Struct.new( :server_certificate_metadata, :certificate_body, :certificate_chain) include Aws::Structure end # Contains information about a server certificate without its # certificate body, certificate chain, and private key. # # This data type is used as a response element in the # UploadServerCertificate and ListServerCertificates operations. # # @!attribute [rw] path # The path to the server certificate. For more information about # paths, see [IAM Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] server_certificate_name # The name that identifies the server certificate. # @return [String] # # @!attribute [rw] server_certificate_id # The stable and unique string identifying the server certificate. For # more information about IDs, see [IAM Identifiers][1] in the *Using # IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) specifying the server certificate. # For more information about ARNs and how to use them in policies, see # [IAM Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] upload_date # The date when the server certificate was uploaded. # @return [Time] # # @!attribute [rw] expiration # The date on which the certificate is set to expire. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ServerCertificateMetadata AWS API Documentation # class ServerCertificateMetadata < Struct.new( :path, :server_certificate_name, :server_certificate_id, :arn, :upload_date, :expiration) include Aws::Structure end # Contains the details of a service-specific credential. # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the # service-specific credential were created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] service_name # The name of the service associated with the service-specific # credential. # @return [String] # # @!attribute [rw] service_user_name # The generated user name for the service-specific credential. This # value is generated by combining the IAM user's name combined with # the ID number of the AWS account, as in `jane-at-123456789012`, for # example. This value cannot be configured by the user. # @return [String] # # @!attribute [rw] service_password # The generated password for the service-specific credential. # @return [String] # # @!attribute [rw] service_specific_credential_id # The unique identifier for the service-specific credential. # @return [String] # # @!attribute [rw] user_name # The name of the IAM user associated with the service-specific # credential. # @return [String] # # @!attribute [rw] status # The status of the service-specific credential. `Active` means that # the key is valid for API calls, while `Inactive` means it is not. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ServiceSpecificCredential AWS API Documentation # class ServiceSpecificCredential < Struct.new( :create_date, :service_name, :service_user_name, :service_password, :service_specific_credential_id, :user_name, :status) include Aws::Structure end # Contains additional details about a service-specific credential. # # @!attribute [rw] user_name # The name of the IAM user associated with the service-specific # credential. # @return [String] # # @!attribute [rw] status # The status of the service-specific credential. `Active` means that # the key is valid for API calls, while `Inactive` means it is not. # @return [String] # # @!attribute [rw] service_user_name # The generated user name for the service-specific credential. # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the # service-specific credential were created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] service_specific_credential_id # The unique identifier for the service-specific credential. # @return [String] # # @!attribute [rw] service_name # The name of the service associated with the service-specific # credential. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/ServiceSpecificCredentialMetadata AWS API Documentation # class ServiceSpecificCredentialMetadata < Struct.new( :user_name, :status, :service_user_name, :create_date, :service_specific_credential_id, :service_name) include Aws::Structure end # @note When making an API call, you may pass SetDefaultPolicyVersionRequest # data as a hash: # # { # policy_arn: "arnType", # required # version_id: "policyVersionIdType", # required # } # # @!attribute [rw] policy_arn # The Amazon Resource Name (ARN) of the IAM policy whose default # version you want to set. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] version_id # The version of the policy to set as the default (operative) version. # # For more information about managed policy versions, see [Versioning # for Managed Policies][1] in the *IAM User Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SetDefaultPolicyVersionRequest AWS API Documentation # class SetDefaultPolicyVersionRequest < Struct.new( :policy_arn, :version_id) include Aws::Structure end # Contains information about an X.509 signing certificate. # # This data type is used as a response element in the # UploadSigningCertificate and ListSigningCertificates operations. # # @!attribute [rw] user_name # The name of the user the signing certificate is associated with. # @return [String] # # @!attribute [rw] certificate_id # The ID for the signing certificate. # @return [String] # # @!attribute [rw] certificate_body # The contents of the signing certificate. # @return [String] # # @!attribute [rw] status # The status of the signing certificate. `Active` means that the key # is valid for API calls, while `Inactive` means it is not. # @return [String] # # @!attribute [rw] upload_date # The date when the signing certificate was uploaded. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SigningCertificate AWS API Documentation # class SigningCertificate < Struct.new( :user_name, :certificate_id, :certificate_body, :status, :upload_date) include Aws::Structure end # @note When making an API call, you may pass SimulateCustomPolicyRequest # data as a hash: # # { # policy_input_list: ["policyDocumentType"], # required # action_names: ["ActionNameType"], # required # resource_arns: ["ResourceNameType"], # resource_policy: "policyDocumentType", # resource_owner: "ResourceNameType", # caller_arn: "ResourceNameType", # context_entries: [ # { # context_key_name: "ContextKeyNameType", # context_key_values: ["ContextKeyValueType"], # context_key_type: "string", # accepts string, stringList, numeric, numericList, boolean, booleanList, ip, ipList, binary, binaryList, date, dateList # }, # ], # resource_handling_option: "ResourceHandlingOptionType", # max_items: 1, # marker: "markerType", # } # # @!attribute [rw] policy_input_list # A list of policy documents to include in the simulation. Each # document is specified as a string containing the complete, valid # JSON text of an IAM policy. Do not include any resource-based # policies in this parameter. Any resource-based policy must be # submitted with the `ResourcePolicy` parameter. The policies cannot # be "scope-down" policies, such as you could include in a call to # [GetFederationToken][1] or one of the [AssumeRole][2] API # operations. In other words, do not use policies designed to restrict # what a user can do while using the temporary credentials. # # The [regex pattern][3] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html # [2]: http://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html # [3]: http://wikipedia.org/wiki/regex # @return [Array] # # @!attribute [rw] action_names # A list of names of API operations to evaluate in the simulation. # Each operation is evaluated against each resource. Each operation # must include the service identifier, such as `iam:CreateUser`. # @return [Array] # # @!attribute [rw] resource_arns # A list of ARNs of AWS resources to include in the simulation. If # this parameter is not provided then the value defaults to `*` (all # resources). Each API in the `ActionNames` parameter is evaluated for # each resource in this list. The simulation determines the access # result (allowed or denied) of each combination and reports it in the # response. # # The simulation does not automatically retrieve policies for the # specified resources. If you want to include a resource policy in the # simulation, then you must include the policy as a string in the # `ResourcePolicy` parameter. # # If you include a `ResourcePolicy`, then it must be applicable to all # of the resources included in the simulation or you receive an # invalid input error. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [Array] # # @!attribute [rw] resource_policy # A resource-based policy to include in the simulation provided as a # string. Each resource in the simulation is treated as if it had this # policy attached. You can include only one resource-based policy in a # simulation. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] resource_owner # An ARN representing the AWS account ID that specifies the owner of # any simulated resource that does not identify its owner in the # resource ARN, such as an S3 bucket or object. If `ResourceOwner` is # specified, it is also used as the account owner of any # `ResourcePolicy` included in the simulation. If the `ResourceOwner` # parameter is not specified, then the owner of the resources and the # resource policy defaults to the account of the identity provided in # `CallerArn`. This parameter is required only if you specify a # resource-based policy and account that owns the resource is # different from the account that owns the simulated calling user # `CallerArn`. # # The ARN for an account uses the following syntax: # `arn:aws:iam::AWS-account-ID:root`. For example, to represent the # account with the 112233445566 ID, use the following ARN: # `arn:aws:iam::112233445566-ID:root`. # @return [String] # # @!attribute [rw] caller_arn # The ARN of the IAM user that you want to use as the simulated caller # of the API operations. `CallerArn` is required if you include a # `ResourcePolicy` so that the policy's `Principal` element has a # value to use in evaluating the policy. # # You can specify only the ARN of an IAM user. You cannot specify the # ARN of an assumed role, federated user, or a service principal. # @return [String] # # @!attribute [rw] context_entries # A list of context keys and corresponding values for the simulation # to use. Whenever a context key is evaluated in one of the simulated # IAM permission policies, the corresponding value is supplied. # @return [Array] # # @!attribute [rw] resource_handling_option # Specifies the type of simulation to run. Different API operations # that support resource-based policies require different combinations # of resources. By specifying the type of simulation to run, you # enable the policy simulator to enforce the presence of the required # resources to ensure reliable simulation results. If your simulation # does not match one of the following scenarios, then you can omit # this parameter. The following list shows each of the supported # scenario values and the resources that you must define to run the # simulation. # # Each of the EC2 scenarios requires that you specify instance, image, # and security-group resources. If your scenario includes an EBS # volume, then you must specify that volume as a resource. If the EC2 # scenario includes VPC, then you must supply the network-interface # resource. If it includes an IP subnet, then you must specify the # subnet resource. For more information on the EC2 scenario options, # see [Supported Platforms][1] in the *Amazon EC2 User Guide*. # # * **EC2-Classic-InstanceStore** # # instance, image, security-group # # * **EC2-Classic-EBS** # # instance, image, security-group, volume # # * **EC2-VPC-InstanceStore** # # instance, image, security-group, network-interface # # * **EC2-VPC-InstanceStore-Subnet** # # instance, image, security-group, network-interface, subnet # # * **EC2-VPC-EBS** # # instance, image, security-group, network-interface, volume # # * **EC2-VPC-EBS-Subnet** # # instance, image, security-group, network-interface, subnet, volume # # # # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SimulateCustomPolicyRequest AWS API Documentation # class SimulateCustomPolicyRequest < Struct.new( :policy_input_list, :action_names, :resource_arns, :resource_policy, :resource_owner, :caller_arn, :context_entries, :resource_handling_option, :max_items, :marker) include Aws::Structure end # Contains the response to a successful SimulatePrincipalPolicy or # SimulateCustomPolicy request. # # @!attribute [rw] evaluation_results # The results of the simulation. # @return [Array] # # @!attribute [rw] is_truncated # A flag that indicates whether there are more items to return. If # your results were truncated, you can make a subsequent pagination # request using the `Marker` request parameter to retrieve more items. # Note that IAM might return fewer than the `MaxItems` number of # results even when there are more results available. We recommend # that you check `IsTruncated` after every call to ensure that you # receive all of your results. # @return [Boolean] # # @!attribute [rw] marker # When `IsTruncated` is `true`, this element is present and contains # the value to use for the `Marker` parameter in a subsequent # pagination request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SimulatePolicyResponse AWS API Documentation # class SimulatePolicyResponse < Struct.new( :evaluation_results, :is_truncated, :marker) include Aws::Structure end # @note When making an API call, you may pass SimulatePrincipalPolicyRequest # data as a hash: # # { # policy_source_arn: "arnType", # required # policy_input_list: ["policyDocumentType"], # action_names: ["ActionNameType"], # required # resource_arns: ["ResourceNameType"], # resource_policy: "policyDocumentType", # resource_owner: "ResourceNameType", # caller_arn: "ResourceNameType", # context_entries: [ # { # context_key_name: "ContextKeyNameType", # context_key_values: ["ContextKeyValueType"], # context_key_type: "string", # accepts string, stringList, numeric, numericList, boolean, booleanList, ip, ipList, binary, binaryList, date, dateList # }, # ], # resource_handling_option: "ResourceHandlingOptionType", # max_items: 1, # marker: "markerType", # } # # @!attribute [rw] policy_source_arn # The Amazon Resource Name (ARN) of a user, group, or role whose # policies you want to include in the simulation. If you specify a # user, group, or role, the simulation includes all policies that are # associated with that entity. If you specify a user, the simulation # also includes all policies that are attached to any groups the user # belongs to. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] policy_input_list # An optional list of additional policy documents to include in the # simulation. Each document is specified as a string containing the # complete, valid JSON text of an IAM policy. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [Array] # # @!attribute [rw] action_names # A list of names of API operations to evaluate in the simulation. # Each operation is evaluated for each resource. Each operation must # include the service identifier, such as `iam:CreateUser`. # @return [Array] # # @!attribute [rw] resource_arns # A list of ARNs of AWS resources to include in the simulation. If # this parameter is not provided, then the value defaults to `*` (all # resources). Each API in the `ActionNames` parameter is evaluated for # each resource in this list. The simulation determines the access # result (allowed or denied) of each combination and reports it in the # response. # # The simulation does not automatically retrieve policies for the # specified resources. If you want to include a resource policy in the # simulation, then you must include the policy as a string in the # `ResourcePolicy` parameter. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [Array] # # @!attribute [rw] resource_policy # A resource-based policy to include in the simulation provided as a # string. Each resource in the simulation is treated as if it had this # policy attached. You can include only one resource-based policy in a # simulation. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] resource_owner # An AWS account ID that specifies the owner of any simulated resource # that does not identify its owner in the resource ARN, such as an S3 # bucket or object. If `ResourceOwner` is specified, it is also used # as the account owner of any `ResourcePolicy` included in the # simulation. If the `ResourceOwner` parameter is not specified, then # the owner of the resources and the resource policy defaults to the # account of the identity provided in `CallerArn`. This parameter is # required only if you specify a resource-based policy and account # that owns the resource is different from the account that owns the # simulated calling user `CallerArn`. # @return [String] # # @!attribute [rw] caller_arn # The ARN of the IAM user that you want to specify as the simulated # caller of the API operations. If you do not specify a `CallerArn`, # it defaults to the ARN of the user that you specify in # `PolicySourceArn`, if you specified a user. If you include both a # `PolicySourceArn` (for example, # `arn:aws:iam::123456789012:user/David`) and a `CallerArn` (for # example, `arn:aws:iam::123456789012:user/Bob`), the result is that # you simulate calling the API operations as Bob, as if Bob had # David's policies. # # You can specify only the ARN of an IAM user. You cannot specify the # ARN of an assumed role, federated user, or a service principal. # # `CallerArn` is required if you include a `ResourcePolicy` and the # `PolicySourceArn` is not the ARN for an IAM user. This is required # so that the resource-based policy's `Principal` element has a value # to use in evaluating the policy. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] context_entries # A list of context keys and corresponding values for the simulation # to use. Whenever a context key is evaluated in one of the simulated # IAM permission policies, the corresponding value is supplied. # @return [Array] # # @!attribute [rw] resource_handling_option # Specifies the type of simulation to run. Different API operations # that support resource-based policies require different combinations # of resources. By specifying the type of simulation to run, you # enable the policy simulator to enforce the presence of the required # resources to ensure reliable simulation results. If your simulation # does not match one of the following scenarios, then you can omit # this parameter. The following list shows each of the supported # scenario values and the resources that you must define to run the # simulation. # # Each of the EC2 scenarios requires that you specify instance, image, # and security-group resources. If your scenario includes an EBS # volume, then you must specify that volume as a resource. If the EC2 # scenario includes VPC, then you must supply the network-interface # resource. If it includes an IP subnet, then you must specify the # subnet resource. For more information on the EC2 scenario options, # see [Supported Platforms][1] in the *Amazon EC2 User Guide*. # # * **EC2-Classic-InstanceStore** # # instance, image, security-group # # * **EC2-Classic-EBS** # # instance, image, security-group, volume # # * **EC2-VPC-InstanceStore** # # instance, image, security-group, network-interface # # * **EC2-VPC-InstanceStore-Subnet** # # instance, image, security-group, network-interface, subnet # # * **EC2-VPC-EBS** # # instance, image, security-group, network-interface, volume # # * **EC2-VPC-EBS-Subnet** # # instance, image, security-group, network-interface, subnet, volume # # # # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html # @return [String] # # @!attribute [rw] max_items # (Optional) Use this only when paginating results to indicate the # maximum number of items you want in the response. If additional # items exist beyond the maximum you specify, the `IsTruncated` # response element is `true`. # # If you do not include this parameter, it defaults to 100. Note that # IAM might return fewer results, even when there are more results # available. In that case, the `IsTruncated` response element returns # `true` and `Marker` contains a value to include in the subsequent # call that tells the service where to continue from. # @return [Integer] # # @!attribute [rw] marker # Use this parameter only when paginating results and only after you # receive a response indicating that the results are truncated. Set it # to the value of the `Marker` element in the response that you # received to indicate where the next call should start. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SimulatePrincipalPolicyRequest AWS API Documentation # class SimulatePrincipalPolicyRequest < Struct.new( :policy_source_arn, :policy_input_list, :action_names, :resource_arns, :resource_policy, :resource_owner, :caller_arn, :context_entries, :resource_handling_option, :max_items, :marker) include Aws::Structure end # Contains a reference to a `Statement` element in a policy document # that determines the result of the simulation. # # This data type is used by the `MatchedStatements` member of the ` # EvaluationResult ` type. # # @!attribute [rw] source_policy_id # The identifier of the policy that was provided as an input. # @return [String] # # @!attribute [rw] source_policy_type # The type of the policy. # @return [String] # # @!attribute [rw] start_position # The row and column of the beginning of the `Statement` in an IAM # policy. # @return [Types::Position] # # @!attribute [rw] end_position # The row and column of the end of a `Statement` in an IAM policy. # @return [Types::Position] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Statement AWS API Documentation # class Statement < Struct.new( :source_policy_id, :source_policy_type, :start_position, :end_position) include Aws::Structure end # @note When making an API call, you may pass UpdateAccessKeyRequest # data as a hash: # # { # user_name: "existingUserNameType", # access_key_id: "accessKeyIdType", # required # status: "Active", # required, accepts Active, Inactive # } # # @!attribute [rw] user_name # The name of the user whose key you want to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] access_key_id # The access key ID of the secret access key you want to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] status # The status you want to assign to the secret access key. `Active` # means that the key can be used for API calls to AWS, while # `Inactive` means that the key cannot be used. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateAccessKeyRequest AWS API Documentation # class UpdateAccessKeyRequest < Struct.new( :user_name, :access_key_id, :status) include Aws::Structure end # @note When making an API call, you may pass UpdateAccountPasswordPolicyRequest # data as a hash: # # { # minimum_password_length: 1, # require_symbols: false, # require_numbers: false, # require_uppercase_characters: false, # require_lowercase_characters: false, # allow_users_to_change_password: false, # max_password_age: 1, # password_reuse_prevention: 1, # hard_expiry: false, # } # # @!attribute [rw] minimum_password_length # The minimum number of characters allowed in an IAM user password. # # If you do not specify a value for this parameter, then the operation # uses the default value of `6`. # @return [Integer] # # @!attribute [rw] require_symbols # Specifies whether IAM user passwords must contain at least one of # the following non-alphanumeric characters: # # ! @ # $ % ^ & * ( ) \_ + - = \[ \] \\\{ \\} \| ' # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that passwords do # not require at least one symbol character. # @return [Boolean] # # @!attribute [rw] require_numbers # Specifies whether IAM user passwords must contain at least one # numeric character (0 to 9). # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that passwords do # not require at least one numeric character. # @return [Boolean] # # @!attribute [rw] require_uppercase_characters # Specifies whether IAM user passwords must contain at least one # uppercase character from the ISO basic Latin alphabet (A to Z). # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that passwords do # not require at least one uppercase character. # @return [Boolean] # # @!attribute [rw] require_lowercase_characters # Specifies whether IAM user passwords must contain at least one # lowercase character from the ISO basic Latin alphabet (a to z). # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that passwords do # not require at least one lowercase character. # @return [Boolean] # # @!attribute [rw] allow_users_to_change_password # Allows all IAM users in your account to use the AWS Management # Console to change their own passwords. For more information, see # [Letting IAM Users Change Their Own Passwords][1] in the *IAM User # Guide*. # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that IAM users in # the account do not automatically have permissions to change their # own password. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/HowToPwdIAMUser.html # @return [Boolean] # # @!attribute [rw] max_password_age # The number of days that an IAM user password is valid. # # If you do not specify a value for this parameter, then the operation # uses the default value of `0`. The result is that IAM user passwords # never expire. # @return [Integer] # # @!attribute [rw] password_reuse_prevention # Specifies the number of previous passwords that IAM users are # prevented from reusing. # # If you do not specify a value for this parameter, then the operation # uses the default value of `0`. The result is that IAM users are not # prevented from reusing previous passwords. # @return [Integer] # # @!attribute [rw] hard_expiry # Prevents IAM users from setting a new password after their password # has expired. The IAM user cannot be accessed until an administrator # resets the password. # # If you do not specify a value for this parameter, then the operation # uses the default value of `false`. The result is that IAM users can # change their passwords after they expire and continue to sign in as # the user. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateAccountPasswordPolicyRequest AWS API Documentation # class UpdateAccountPasswordPolicyRequest < Struct.new( :minimum_password_length, :require_symbols, :require_numbers, :require_uppercase_characters, :require_lowercase_characters, :allow_users_to_change_password, :max_password_age, :password_reuse_prevention, :hard_expiry) include Aws::Structure end # @note When making an API call, you may pass UpdateAssumeRolePolicyRequest # data as a hash: # # { # role_name: "roleNameType", # required # policy_document: "policyDocumentType", # required # } # # @!attribute [rw] role_name # The name of the role to update with the new policy. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] policy_document # The policy that grants an entity permission to assume the role. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateAssumeRolePolicyRequest AWS API Documentation # class UpdateAssumeRolePolicyRequest < Struct.new( :role_name, :policy_document) include Aws::Structure end # @note When making an API call, you may pass UpdateGroupRequest # data as a hash: # # { # group_name: "groupNameType", # required # new_path: "pathType", # new_group_name: "groupNameType", # } # # @!attribute [rw] group_name # Name of the IAM group to update. If you're changing the name of the # group, this is the original name. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_path # New path for the IAM group. Only include this if changing the # group's path. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_group_name # New name for the IAM group. Only include this if changing the # group's name. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateGroupRequest AWS API Documentation # class UpdateGroupRequest < Struct.new( :group_name, :new_path, :new_group_name) include Aws::Structure end # @note When making an API call, you may pass UpdateLoginProfileRequest # data as a hash: # # { # user_name: "userNameType", # required # password: "passwordType", # password_reset_required: false, # } # # @!attribute [rw] user_name # The name of the user whose password you want to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] password # The new password for the specified IAM user. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # However, the format can be further restricted by the account # administrator by setting a password policy on the AWS account. For # more information, see UpdateAccountPasswordPolicy. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] password_reset_required # Allows this new password to be used only once by requiring the # specified IAM user to set a new password on next sign-in. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateLoginProfileRequest AWS API Documentation # class UpdateLoginProfileRequest < Struct.new( :user_name, :password, :password_reset_required) include Aws::Structure end # @note When making an API call, you may pass UpdateOpenIDConnectProviderThumbprintRequest # data as a hash: # # { # open_id_connect_provider_arn: "arnType", # required # thumbprint_list: ["thumbprintType"], # required # } # # @!attribute [rw] open_id_connect_provider_arn # The Amazon Resource Name (ARN) of the IAM OIDC provider resource # object for which you want to update the thumbprint. You can get a # list of OIDC provider ARNs by using the ListOpenIDConnectProviders # operation. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] thumbprint_list # A list of certificate thumbprints that are associated with the # specified IAM OpenID Connect provider. For more information, see # CreateOpenIDConnectProvider. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateOpenIDConnectProviderThumbprintRequest AWS API Documentation # class UpdateOpenIDConnectProviderThumbprintRequest < Struct.new( :open_id_connect_provider_arn, :thumbprint_list) include Aws::Structure end # @note When making an API call, you may pass UpdateRoleDescriptionRequest # data as a hash: # # { # role_name: "roleNameType", # required # description: "roleDescriptionType", # required # } # # @!attribute [rw] role_name # The name of the role that you want to modify. # @return [String] # # @!attribute [rw] description # The new description that you want to apply to the specified role. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateRoleDescriptionRequest AWS API Documentation # class UpdateRoleDescriptionRequest < Struct.new( :role_name, :description) include Aws::Structure end # @!attribute [rw] role # A structure that contains details about the modified role. # @return [Types::Role] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateRoleDescriptionResponse AWS API Documentation # class UpdateRoleDescriptionResponse < Struct.new( :role) include Aws::Structure end # @note When making an API call, you may pass UpdateRoleRequest # data as a hash: # # { # role_name: "roleNameType", # required # description: "roleDescriptionType", # max_session_duration: 1, # } # # @!attribute [rw] role_name # The name of the role that you want to modify. # @return [String] # # @!attribute [rw] description # The new description that you want to apply to the specified role. # @return [String] # # @!attribute [rw] max_session_duration # The maximum session duration (in seconds) that you want to set for # the specified role. If you do not specify a value for this setting, # the default maximum of one hour is applied. This setting can have a # value from 1 hour to 12 hours. # # Anyone who assumes the role from the AWS CLI or API can use the # `DurationSeconds` API parameter or the `duration-seconds` CLI # parameter to request a longer session. The `MaxSessionDuration` # setting determines the maximum duration that can be requested using # the `DurationSeconds` parameter. If users don't specify a value for # the `DurationSeconds` parameter, their security credentials are # valid for one hour by default. This applies when you use the # `AssumeRole*` API operations or the `assume-role*` CLI operations # but does not apply when you use those operations to create a console # URL. For more information, see [Using IAM Roles][1] in the *IAM User # Guide*. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateRoleRequest AWS API Documentation # class UpdateRoleRequest < Struct.new( :role_name, :description, :max_session_duration) include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateRoleResponse AWS API Documentation # class UpdateRoleResponse < Aws::EmptyStructure; end # @note When making an API call, you may pass UpdateSAMLProviderRequest # data as a hash: # # { # saml_metadata_document: "SAMLMetadataDocumentType", # required # saml_provider_arn: "arnType", # required # } # # @!attribute [rw] saml_metadata_document # An XML document generated by an identity provider (IdP) that # supports SAML 2.0. The document includes the issuer's name, # expiration information, and keys that can be used to validate the # SAML authentication response (assertions) that are received from the # IdP. You must generate the metadata document using the identity # management software that is used as your organization's IdP. # @return [String] # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the SAML provider to update. # # For more information about ARNs, see [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateSAMLProviderRequest AWS API Documentation # class UpdateSAMLProviderRequest < Struct.new( :saml_metadata_document, :saml_provider_arn) include Aws::Structure end # Contains the response to a successful UpdateSAMLProvider request. # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the SAML provider that was # updated. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateSAMLProviderResponse AWS API Documentation # class UpdateSAMLProviderResponse < Struct.new( :saml_provider_arn) include Aws::Structure end # @note When making an API call, you may pass UpdateSSHPublicKeyRequest # data as a hash: # # { # user_name: "userNameType", # required # ssh_public_key_id: "publicKeyIdType", # required # status: "Active", # required, accepts Active, Inactive # } # # @!attribute [rw] user_name # The name of the IAM user associated with the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] ssh_public_key_id # The unique identifier for the SSH public key. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] status # The status to assign to the SSH public key. `Active` means that the # key can be used for authentication with an AWS CodeCommit # repository. `Inactive` means that the key cannot be used. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateSSHPublicKeyRequest AWS API Documentation # class UpdateSSHPublicKeyRequest < Struct.new( :user_name, :ssh_public_key_id, :status) include Aws::Structure end # @note When making an API call, you may pass UpdateServerCertificateRequest # data as a hash: # # { # server_certificate_name: "serverCertificateNameType", # required # new_path: "pathType", # new_server_certificate_name: "serverCertificateNameType", # } # # @!attribute [rw] server_certificate_name # The name of the server certificate that you want to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_path # The new path for the server certificate. Include this only if you # are updating the server certificate's path. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_server_certificate_name # The new name for the server certificate. Include this only if you # are updating the server certificate's name. The name of the # certificate cannot contain any spaces. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateServerCertificateRequest AWS API Documentation # class UpdateServerCertificateRequest < Struct.new( :server_certificate_name, :new_path, :new_server_certificate_name) include Aws::Structure end # @note When making an API call, you may pass UpdateServiceSpecificCredentialRequest # data as a hash: # # { # user_name: "userNameType", # service_specific_credential_id: "serviceSpecificCredentialId", # required # status: "Active", # required, accepts Active, Inactive # } # # @!attribute [rw] user_name # The name of the IAM user associated with the service-specific # credential. If you do not specify this value, then the operation # assumes the user whose credentials are used to call the operation. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] service_specific_credential_id # The unique identifier of the service-specific credential. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] status # The status to be assigned to the service-specific credential. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateServiceSpecificCredentialRequest AWS API Documentation # class UpdateServiceSpecificCredentialRequest < Struct.new( :user_name, :service_specific_credential_id, :status) include Aws::Structure end # @note When making an API call, you may pass UpdateSigningCertificateRequest # data as a hash: # # { # user_name: "existingUserNameType", # certificate_id: "certificateIdType", # required # status: "Active", # required, accepts Active, Inactive # } # # @!attribute [rw] user_name # The name of the IAM user the signing certificate belongs to. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] certificate_id # The ID of the signing certificate you want to update. # # This parameter allows (per its [regex pattern][1]) a string of # characters that can consist of any upper or lowercased letter or # digit. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] status # The status you want to assign to the certificate. `Active` means # that the certificate can be used for API calls to AWS `Inactive` # means that the certificate cannot be used. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateSigningCertificateRequest AWS API Documentation # class UpdateSigningCertificateRequest < Struct.new( :user_name, :certificate_id, :status) include Aws::Structure end # @note When making an API call, you may pass UpdateUserRequest # data as a hash: # # { # user_name: "existingUserNameType", # required # new_path: "pathType", # new_user_name: "userNameType", # } # # @!attribute [rw] user_name # Name of the user to update. If you're changing the name of the # user, this is the original user name. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_path # New path for the IAM user. Include this parameter only if you're # changing the user's path. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of either a forward slash (/) by itself or a # string that must begin and end with forward slashes. In addition, it # can contain any ASCII character from the ! (\\u0021) through the DEL # character (\\u007F), including most punctuation characters, digits, # and upper and lowercased letters. # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] new_user_name # New name for the user. Include this parameter only if you're # changing the user's name. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateUserRequest AWS API Documentation # class UpdateUserRequest < Struct.new( :user_name, :new_path, :new_user_name) include Aws::Structure end # @note When making an API call, you may pass UploadSSHPublicKeyRequest # data as a hash: # # { # user_name: "userNameType", # required # ssh_public_key_body: "publicKeyMaterialType", # required # } # # @!attribute [rw] user_name # The name of the IAM user to associate the SSH public key with. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] ssh_public_key_body # The SSH public key. The public key must be encoded in ssh-rsa format # or PEM format. The miminum bit-length of the public key is 2048 # bits. For example, you can generate a 2048-bit key, and the # resulting PEM file is 1679 bytes long. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadSSHPublicKeyRequest AWS API Documentation # class UploadSSHPublicKeyRequest < Struct.new( :user_name, :ssh_public_key_body) include Aws::Structure end # Contains the response to a successful UploadSSHPublicKey request. # # @!attribute [rw] ssh_public_key # Contains information about the SSH public key. # @return [Types::SSHPublicKey] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadSSHPublicKeyResponse AWS API Documentation # class UploadSSHPublicKeyResponse < Struct.new( :ssh_public_key) include Aws::Structure end # @note When making an API call, you may pass UploadServerCertificateRequest # data as a hash: # # { # path: "pathType", # server_certificate_name: "serverCertificateNameType", # required # certificate_body: "certificateBodyType", # required # private_key: "privateKeyType", # required # certificate_chain: "certificateChainType", # } # # @!attribute [rw] path # The path for the server certificate. For more information about # paths, see [IAM Identifiers][1] in the *IAM User Guide*. # # This parameter is optional. If it is not included, it defaults to a # slash (/). This parameter allows (per its [regex pattern][2]) a # string of characters consisting of either a forward slash (/) by # itself or a string that must begin and end with forward slashes. In # addition, it can contain any ASCII character from the ! (\\u0021) # through the DEL character (\\u007F), including most punctuation # characters, digits, and upper and lowercased letters. # # If you are uploading a server certificate specifically for use with # Amazon CloudFront distributions, you must specify a path using the # `path` parameter. The path must begin with `/cloudfront` and must # include a trailing slash (for example, `/cloudfront/test/`). # # # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # [2]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] server_certificate_name # The name for the server certificate. Do not include the path in this # value. The name of the certificate cannot contain any spaces. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] certificate_body # The contents of the public key certificate in PEM-encoded format. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] private_key # The contents of the private key in PEM-encoded format. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] certificate_chain # The contents of the certificate chain. This is typically a # concatenation of the PEM-encoded public key certificates of the # chain. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadServerCertificateRequest AWS API Documentation # class UploadServerCertificateRequest < Struct.new( :path, :server_certificate_name, :certificate_body, :private_key, :certificate_chain) include Aws::Structure end # Contains the response to a successful UploadServerCertificate request. # # @!attribute [rw] server_certificate_metadata # The meta information of the uploaded server certificate without its # certificate body, certificate chain, and private key. # @return [Types::ServerCertificateMetadata] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadServerCertificateResponse AWS API Documentation # class UploadServerCertificateResponse < Struct.new( :server_certificate_metadata) include Aws::Structure end # @note When making an API call, you may pass UploadSigningCertificateRequest # data as a hash: # # { # user_name: "existingUserNameType", # certificate_body: "certificateBodyType", # required # } # # @!attribute [rw] user_name # The name of the user the signing certificate is for. # # This parameter allows (per its [regex pattern][1]) a string of # characters consisting of upper and lowercase alphanumeric characters # with no spaces. You can also include any of the following # characters: \_+=,.@- # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @!attribute [rw] certificate_body # The contents of the signing certificate. # # The [regex pattern][1] used to validate this parameter is a string # of characters consisting of the following: # # * Any printable ASCII character ranging from the space character # (\\u0020) through the end of the ASCII character range # # * The printable characters in the Basic Latin and Latin-1 Supplement # character set (through \\u00FF) # # * The special characters tab (\\u0009), line feed (\\u000A), and # carriage return (\\u000D) # # # # [1]: http://wikipedia.org/wiki/regex # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadSigningCertificateRequest AWS API Documentation # class UploadSigningCertificateRequest < Struct.new( :user_name, :certificate_body) include Aws::Structure end # Contains the response to a successful UploadSigningCertificate # request. # # @!attribute [rw] certificate # Information about the certificate. # @return [Types::SigningCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UploadSigningCertificateResponse AWS API Documentation # class UploadSigningCertificateResponse < Struct.new( :certificate) include Aws::Structure end # Contains information about an IAM user entity. # # This data type is used as a response element in the following # operations: # # * CreateUser # # * GetUser # # * ListUsers # # @!attribute [rw] path # The path to the user. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] user_name # The friendly name identifying the user. # @return [String] # # @!attribute [rw] user_id # The stable and unique string identifying the user. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) that identifies the user. For more # information about ARNs and how to use ARNs in policies, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the user # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] password_last_used # The date and time, in [ISO 8601 date-time format][1], when the # user's password was last used to sign in to an AWS website. For a # list of AWS websites that capture a user's last sign-in time, see # the [Credential Reports][2] topic in the *Using IAM* guide. If a # password is used more than once in a five-minute span, only the # first use is returned in this field. If the field is null (no value) # then it indicates that they never signed in with a password. This # can be because: # # * The user never had a password. # # * A password exists but has not been used since IAM started tracking # this information on October 20th, 2014. # # A null does not mean that the user *never* had a password. Also, if # the user does not currently have a password, but had one in the # past, then this field contains the date and time the most recent # password was used. # # This value is returned only in the GetUser and ListUsers operations. # # # # [1]: http://www.iso.org/iso/iso8601 # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html # @return [Time] # # @!attribute [rw] permissions_boundary # The ARN of the policy used to set the permissions boundary for the # user. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Types::AttachedPermissionsBoundary] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/User AWS API Documentation # class User < Struct.new( :path, :user_name, :user_id, :arn, :create_date, :password_last_used, :permissions_boundary) include Aws::Structure end # Contains information about an IAM user, including all the user's # policies and all the IAM groups the user is in. # # This data type is used as a response element in the # GetAccountAuthorizationDetails operation. # # @!attribute [rw] path # The path to the user. For more information about paths, see [IAM # Identifiers][1] in the *Using IAM* guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] user_name # The friendly name identifying the user. # @return [String] # # @!attribute [rw] user_id # The stable and unique string identifying the user. For more # information about IDs, see [IAM Identifiers][1] in the *Using IAM* # guide. # # # # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN). ARNs are unique identifiers for AWS # resources. # # For more information about ARNs, go to [Amazon Resource Names (ARNs) # and AWS Service Namespaces][1] in the *AWS General Reference*. # # # # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html # @return [String] # # @!attribute [rw] create_date # The date and time, in [ISO 8601 date-time format][1], when the user # was created. # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Time] # # @!attribute [rw] user_policy_list # A list of the inline policies embedded in the user. # @return [Array] # # @!attribute [rw] group_list # A list of IAM groups that the user is in. # @return [Array] # # @!attribute [rw] attached_managed_policies # A list of the managed policies attached to the user. # @return [Array] # # @!attribute [rw] permissions_boundary # The ARN of the policy used to set the permissions boundary for the # user. # # For more information about permissions boundaries, see [Permissions # Boundaries for IAM Identities ][1] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html # @return [Types::AttachedPermissionsBoundary] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UserDetail AWS API Documentation # class UserDetail < Struct.new( :path, :user_name, :user_id, :arn, :create_date, :user_policy_list, :group_list, :attached_managed_policies, :permissions_boundary) include Aws::Structure end # Contains information about a virtual MFA device. # # @!attribute [rw] serial_number # The serial number associated with `VirtualMFADevice`. # @return [String] # # @!attribute [rw] base_32_string_seed # The Base32 seed defined as specified in [RFC3548][1]. The # `Base32StringSeed` is Base64-encoded. # # # # [1]: https://tools.ietf.org/html/rfc3548.txt # @return [String] # # @!attribute [rw] qr_code_png # A QR code PNG image that encodes # `otpauth://totp/$virtualMFADeviceName@$AccountName?secret=$Base32String` # where `$virtualMFADeviceName` is one of the create call arguments, # `AccountName` is the user name if set (otherwise, the account ID # otherwise), and `Base32String` is the seed in Base32 format. The # `Base32String` value is Base64-encoded. # @return [String] # # @!attribute [rw] user # The IAM user associated with this virtual MFA device. # @return [Types::User] # # @!attribute [rw] enable_date # The date and time on which the virtual MFA device was enabled. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/VirtualMFADevice AWS API Documentation # class VirtualMFADevice < Struct.new( :serial_number, :base_32_string_seed, :qr_code_png, :user, :enable_date) include Aws::Structure end end end