iam

package
v1.1.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 8, 2016 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package iam provides a client for AWS Identity and Access Management.

Index

Examples

Constants

View Source
const (
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumString = "string"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumStringList = "stringList"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumNumeric = "numeric"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumNumericList = "numericList"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumBoolean = "boolean"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumBooleanList = "booleanList"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumIp = "ip"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumIpList = "ipList"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumBinary = "binary"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumBinaryList = "binaryList"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumDate = "date"
	// @enum ContextKeyTypeEnum
	ContextKeyTypeEnumDateList = "dateList"
)
View Source
const (
	// @enum EntityType
	EntityTypeUser = "User"
	// @enum EntityType
	EntityTypeRole = "Role"
	// @enum EntityType
	EntityTypeGroup = "Group"
	// @enum EntityType
	EntityTypeLocalManagedPolicy = "LocalManagedPolicy"
	// @enum EntityType
	EntityTypeAwsmanagedPolicy = "AWSManagedPolicy"
)
View Source
const (
	// @enum PolicyEvaluationDecisionType
	PolicyEvaluationDecisionTypeAllowed = "allowed"
	// @enum PolicyEvaluationDecisionType
	PolicyEvaluationDecisionTypeExplicitDeny = "explicitDeny"
	// @enum PolicyEvaluationDecisionType
	PolicyEvaluationDecisionTypeImplicitDeny = "implicitDeny"
)
View Source
const (
	// @enum PolicySourceType
	PolicySourceTypeUser = "user"
	// @enum PolicySourceType
	PolicySourceTypeGroup = "group"
	// @enum PolicySourceType
	PolicySourceTypeRole = "role"
	// @enum PolicySourceType
	PolicySourceTypeAwsManaged = "aws-managed"
	// @enum PolicySourceType
	PolicySourceTypeUserManaged = "user-managed"
	// @enum PolicySourceType
	PolicySourceTypeResource = "resource"
	// @enum PolicySourceType
	PolicySourceTypeNone = "none"
)
View Source
const (
	// @enum ReportStateType
	ReportStateTypeStarted = "STARTED"
	// @enum ReportStateType
	ReportStateTypeInprogress = "INPROGRESS"
	// @enum ReportStateType
	ReportStateTypeComplete = "COMPLETE"
)
View Source
const (
	// @enum assignmentStatusType
	AssignmentStatusTypeAssigned = "Assigned"
	// @enum assignmentStatusType
	AssignmentStatusTypeUnassigned = "Unassigned"
	// @enum assignmentStatusType
	AssignmentStatusTypeAny = "Any"
)
View Source
const (
	// @enum encodingType
	EncodingTypeSsh = "SSH"
	// @enum encodingType
	EncodingTypePem = "PEM"
)
View Source
const (
	// @enum policyScopeType
	PolicyScopeTypeAll = "All"
	// @enum policyScopeType
	PolicyScopeTypeAws = "AWS"
	// @enum policyScopeType
	PolicyScopeTypeLocal = "Local"
)
View Source
const (
	// @enum statusType
	StatusTypeActive = "Active"
	// @enum statusType
	StatusTypeInactive = "Inactive"
)
View Source
const (
	// @enum summaryKeyType
	SummaryKeyTypeUsers = "Users"
	// @enum summaryKeyType
	SummaryKeyTypeUsersQuota = "UsersQuota"
	// @enum summaryKeyType
	SummaryKeyTypeGroups = "Groups"
	// @enum summaryKeyType
	SummaryKeyTypeGroupsQuota = "GroupsQuota"
	// @enum summaryKeyType
	SummaryKeyTypeServerCertificates = "ServerCertificates"
	// @enum summaryKeyType
	SummaryKeyTypeServerCertificatesQuota = "ServerCertificatesQuota"
	// @enum summaryKeyType
	SummaryKeyTypeUserPolicySizeQuota = "UserPolicySizeQuota"
	// @enum summaryKeyType
	SummaryKeyTypeGroupPolicySizeQuota = "GroupPolicySizeQuota"
	// @enum summaryKeyType
	SummaryKeyTypeGroupsPerUserQuota = "GroupsPerUserQuota"
	// @enum summaryKeyType
	SummaryKeyTypeSigningCertificatesPerUserQuota = "SigningCertificatesPerUserQuota"
	// @enum summaryKeyType
	SummaryKeyTypeAccessKeysPerUserQuota = "AccessKeysPerUserQuota"
	// @enum summaryKeyType
	SummaryKeyTypeMfadevices = "MFADevices"
	// @enum summaryKeyType
	SummaryKeyTypeMfadevicesInUse = "MFADevicesInUse"
	// @enum summaryKeyType
	SummaryKeyTypeAccountMfaenabled = "AccountMFAEnabled"
	// @enum summaryKeyType
	SummaryKeyTypeAccountAccessKeysPresent = "AccountAccessKeysPresent"
	// @enum summaryKeyType
	SummaryKeyTypeAccountSigningCertificatesPresent = "AccountSigningCertificatesPresent"
	// @enum summaryKeyType
	SummaryKeyTypeAttachedPoliciesPerGroupQuota = "AttachedPoliciesPerGroupQuota"
	// @enum summaryKeyType
	SummaryKeyTypeAttachedPoliciesPerRoleQuota = "AttachedPoliciesPerRoleQuota"
	// @enum summaryKeyType
	SummaryKeyTypeAttachedPoliciesPerUserQuota = "AttachedPoliciesPerUserQuota"
	// @enum summaryKeyType
	SummaryKeyTypePolicies = "Policies"
	// @enum summaryKeyType
	SummaryKeyTypePoliciesQuota = "PoliciesQuota"
	// @enum summaryKeyType
	SummaryKeyTypePolicySizeQuota = "PolicySizeQuota"
	// @enum summaryKeyType
	SummaryKeyTypePolicyVersionsInUse = "PolicyVersionsInUse"
	// @enum summaryKeyType
	SummaryKeyTypePolicyVersionsInUseQuota = "PolicyVersionsInUseQuota"
	// @enum summaryKeyType
	SummaryKeyTypeVersionsPerPolicyQuota = "VersionsPerPolicyQuota"
)
View Source
const (
	// @enum ReportFormatType
	ReportFormatTypeTextCsv = "text/csv"
)
View Source
const ServiceName = "iam"

A ServiceName is the name of the service the client will make API calls to.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessKey

type AccessKey struct {

	// The ID for this access key.
	AccessKeyId *string `min:"16" type:"string" required:"true"`

	// The date when the access key was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The secret key used to sign requests.
	SecretAccessKey *string `type:"string" required:"true"`

	// The status of the access key. Active means the key is valid for API calls,
	// while Inactive means it is not.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The name of the IAM user that the access key is associated with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an AWS access key.

This data type is used as a response element in the CreateAccessKey and

ListAccessKeys actions.

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.

func (AccessKey) GoString

func (s AccessKey) GoString() string

GoString returns the string representation

func (AccessKey) String

func (s AccessKey) String() string

String returns the string representation

type AccessKeyLastUsed

type AccessKeyLastUsed struct {

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the access key was most recently used. This field is null when:
	//
	//   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
	LastUsedDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The AWS region where this access key was most recently used. This field is
	// null when:
	//
	//   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 (http://docs.aws.amazon.com/general/latest/gr/rande.html)
	// in the Amazon Web Services General Reference.
	Region *string `type:"string" required:"true"`

	// The name of the AWS service with which this access key was most recently
	// used. This field is null when:
	//
	//   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
	ServiceName *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about the last time an AWS access key was used.

This data type is used as a response element in the GetAccessKeyLastUsed action.

func (AccessKeyLastUsed) GoString

func (s AccessKeyLastUsed) GoString() string

GoString returns the string representation

func (AccessKeyLastUsed) String

func (s AccessKeyLastUsed) String() string

String returns the string representation

type AccessKeyMetadata

type AccessKeyMetadata struct {

	// The ID for this access key.
	AccessKeyId *string `min:"16" type:"string"`

	// The date when the access key was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The status of the access key. Active means the key is valid for API calls;
	// Inactive means it is not.
	Status *string `type:"string" enum:"statusType"`

	// The name of the IAM user that the key is associated with.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains information about an AWS access key, without its secret key.

This data type is used as a response element in the ListAccessKeys action.

func (AccessKeyMetadata) GoString

func (s AccessKeyMetadata) GoString() string

GoString returns the string representation

func (AccessKeyMetadata) String

func (s AccessKeyMetadata) String() string

String returns the string representation

type AddClientIDToOpenIDConnectProviderInput

type AddClientIDToOpenIDConnectProviderInput struct {

	// The client ID (also known as audience) to add to the IAM OpenID Connect provider.
	ClientID *string `min:"1" type:"string" required:"true"`

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider
	// to add the client ID to. You can get a list of OIDC provider ARNs by using
	// the ListOpenIDConnectProviders action.
	OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AddClientIDToOpenIDConnectProviderInput) GoString

GoString returns the string representation

func (AddClientIDToOpenIDConnectProviderInput) String

String returns the string representation

type AddClientIDToOpenIDConnectProviderOutput

type AddClientIDToOpenIDConnectProviderOutput struct {
	// contains filtered or unexported fields
}

func (AddClientIDToOpenIDConnectProviderOutput) GoString

GoString returns the string representation

func (AddClientIDToOpenIDConnectProviderOutput) String

String returns the string representation

type AddRoleToInstanceProfileInput

type AddRoleToInstanceProfileInput struct {

	// The name of the instance profile to update.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`

	// The name of the role to add.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AddRoleToInstanceProfileInput) GoString

GoString returns the string representation

func (AddRoleToInstanceProfileInput) String

String returns the string representation

type AddRoleToInstanceProfileOutput

type AddRoleToInstanceProfileOutput struct {
	// contains filtered or unexported fields
}

func (AddRoleToInstanceProfileOutput) GoString

GoString returns the string representation

func (AddRoleToInstanceProfileOutput) String

String returns the string representation

type AddUserToGroupInput

type AddUserToGroupInput struct {

	// The name of the group to update.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The name of the user to add.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AddUserToGroupInput) GoString

func (s AddUserToGroupInput) GoString() string

GoString returns the string representation

func (AddUserToGroupInput) String

func (s AddUserToGroupInput) String() string

String returns the string representation

type AddUserToGroupOutput

type AddUserToGroupOutput struct {
	// contains filtered or unexported fields
}

func (AddUserToGroupOutput) GoString

func (s AddUserToGroupOutput) GoString() string

GoString returns the string representation

func (AddUserToGroupOutput) String

func (s AddUserToGroupOutput) String() string

String returns the string representation

type AttachGroupPolicyInput

type AttachGroupPolicyInput struct {

	// The name (friendly name, not ARN) of the group to attach the policy to.
	GroupName *string `min:"1" type:"string" required:"true"`

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AttachGroupPolicyInput) GoString

func (s AttachGroupPolicyInput) GoString() string

GoString returns the string representation

func (AttachGroupPolicyInput) String

func (s AttachGroupPolicyInput) String() string

String returns the string representation

type AttachGroupPolicyOutput

type AttachGroupPolicyOutput struct {
	// contains filtered or unexported fields
}

func (AttachGroupPolicyOutput) GoString

func (s AttachGroupPolicyOutput) GoString() string

GoString returns the string representation

func (AttachGroupPolicyOutput) String

func (s AttachGroupPolicyOutput) String() string

String returns the string representation

type AttachRolePolicyInput

type AttachRolePolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The name (friendly name, not ARN) of the role to attach the policy to.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AttachRolePolicyInput) GoString

func (s AttachRolePolicyInput) GoString() string

GoString returns the string representation

func (AttachRolePolicyInput) String

func (s AttachRolePolicyInput) String() string

String returns the string representation

type AttachRolePolicyOutput

type AttachRolePolicyOutput struct {
	// contains filtered or unexported fields
}

func (AttachRolePolicyOutput) GoString

func (s AttachRolePolicyOutput) GoString() string

GoString returns the string representation

func (AttachRolePolicyOutput) String

func (s AttachRolePolicyOutput) String() string

String returns the string representation

type AttachUserPolicyInput

type AttachUserPolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The name (friendly name, not ARN) of the user to attach the policy to.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AttachUserPolicyInput) GoString

func (s AttachUserPolicyInput) GoString() string

GoString returns the string representation

func (AttachUserPolicyInput) String

func (s AttachUserPolicyInput) String() string

String returns the string representation

type AttachUserPolicyOutput

type AttachUserPolicyOutput struct {
	// contains filtered or unexported fields
}

func (AttachUserPolicyOutput) GoString

func (s AttachUserPolicyOutput) GoString() string

GoString returns the string representation

func (AttachUserPolicyOutput) String

func (s AttachUserPolicyOutput) String() string

String returns the string representation

type AttachedPolicy

type AttachedPolicy struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string"`

	// The friendly name of the attached policy.
	PolicyName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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 actions.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (AttachedPolicy) GoString

func (s AttachedPolicy) GoString() string

GoString returns the string representation

func (AttachedPolicy) String

func (s AttachedPolicy) String() string

String returns the string representation

type ChangePasswordInput

type ChangePasswordInput struct {

	// The new password. The new password must conform to the AWS account's password
	// policy, if one exists.
	NewPassword *string `min:"1" type:"string" required:"true"`

	// The IAM user's current password.
	OldPassword *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ChangePasswordInput) GoString

func (s ChangePasswordInput) GoString() string

GoString returns the string representation

func (ChangePasswordInput) String

func (s ChangePasswordInput) String() string

String returns the string representation

type ChangePasswordOutput

type ChangePasswordOutput struct {
	// contains filtered or unexported fields
}

func (ChangePasswordOutput) GoString

func (s ChangePasswordOutput) GoString() string

GoString returns the string representation

func (ChangePasswordOutput) String

func (s ChangePasswordOutput) String() string

String returns the string representation

type ContextEntry

type ContextEntry struct {

	// The full name of a condition context key, including the service prefix. For
	// example, aws:SourceIp or s3:VersionId.
	ContextKeyName *string `min:"5" type:"string"`

	// The data type of the value (or values) specified in the ContextKeyValues
	// parameter.
	ContextKeyType *string `type:"string" enum:"ContextKeyTypeEnum"`

	// The value (or values, if the condition context key supports multiple values)
	// to provide to the simulation for use when the key is referenced by a Condition
	// element in an input policy.
	ContextKeyValues []*string `type:"list"`
	// contains filtered or unexported fields
}

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 SimulatePolicy.

func (ContextEntry) GoString

func (s ContextEntry) GoString() string

GoString returns the string representation

func (ContextEntry) String

func (s ContextEntry) String() string

String returns the string representation

type CreateAccessKeyInput

type CreateAccessKeyInput struct {

	// The user name that the new key will belong to.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (CreateAccessKeyInput) GoString

func (s CreateAccessKeyInput) GoString() string

GoString returns the string representation

func (CreateAccessKeyInput) String

func (s CreateAccessKeyInput) String() string

String returns the string representation

type CreateAccessKeyOutput

type CreateAccessKeyOutput struct {

	// Information about the access key.
	AccessKey *AccessKey `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateAccessKey request.

func (CreateAccessKeyOutput) GoString

func (s CreateAccessKeyOutput) GoString() string

GoString returns the string representation

func (CreateAccessKeyOutput) String

func (s CreateAccessKeyOutput) String() string

String returns the string representation

type CreateAccountAliasInput

type CreateAccountAliasInput struct {

	// The account alias to create.
	AccountAlias *string `min:"3" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateAccountAliasInput) GoString

func (s CreateAccountAliasInput) GoString() string

GoString returns the string representation

func (CreateAccountAliasInput) String

func (s CreateAccountAliasInput) String() string

String returns the string representation

type CreateAccountAliasOutput

type CreateAccountAliasOutput struct {
	// contains filtered or unexported fields
}

func (CreateAccountAliasOutput) GoString

func (s CreateAccountAliasOutput) GoString() string

GoString returns the string representation

func (CreateAccountAliasOutput) String

func (s CreateAccountAliasOutput) String() string

String returns the string representation

type CreateGroupInput

type CreateGroupInput struct {

	// The name of the group to create. Do not include the path in this value.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The path to the group. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (CreateGroupInput) GoString

func (s CreateGroupInput) GoString() string

GoString returns the string representation

func (CreateGroupInput) String

func (s CreateGroupInput) String() string

String returns the string representation

type CreateGroupOutput

type CreateGroupOutput struct {

	// Information about the group.
	Group *Group `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateGroup request.

func (CreateGroupOutput) GoString

func (s CreateGroupOutput) GoString() string

GoString returns the string representation

func (CreateGroupOutput) String

func (s CreateGroupOutput) String() string

String returns the string representation

type CreateInstanceProfileInput

type CreateInstanceProfileInput struct {

	// The name of the instance profile to create.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`

	// The path to the instance profile. For more information about paths, see IAM
	// Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (CreateInstanceProfileInput) GoString

func (s CreateInstanceProfileInput) GoString() string

GoString returns the string representation

func (CreateInstanceProfileInput) String

String returns the string representation

type CreateInstanceProfileOutput

type CreateInstanceProfileOutput struct {

	// Information about the instance profile.
	InstanceProfile *InstanceProfile `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateInstanceProfile request.

func (CreateInstanceProfileOutput) GoString

func (s CreateInstanceProfileOutput) GoString() string

GoString returns the string representation

func (CreateInstanceProfileOutput) String

String returns the string representation

type CreateLoginProfileInput

type CreateLoginProfileInput struct {

	// The new password for the user.
	Password *string `min:"1" type:"string" required:"true"`

	// Specifies whether the user is required to set a new password on next sign-in.
	PasswordResetRequired *bool `type:"boolean"`

	// The name of the user to create a password for.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateLoginProfileInput) GoString

func (s CreateLoginProfileInput) GoString() string

GoString returns the string representation

func (CreateLoginProfileInput) String

func (s CreateLoginProfileInput) String() string

String returns the string representation

type CreateLoginProfileOutput

type CreateLoginProfileOutput struct {

	// The user name and password create date.
	LoginProfile *LoginProfile `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateLoginProfile request.

func (CreateLoginProfileOutput) GoString

func (s CreateLoginProfileOutput) GoString() string

GoString returns the string representation

func (CreateLoginProfileOutput) String

func (s CreateLoginProfileOutput) String() string

String returns the string representation

type CreateOpenIDConnectProviderInput

type CreateOpenIDConnectProviderInput struct {

	// 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
	// action accepts client IDs up to 255 characters long.
	ClientIDList []*string `type:"list"`

	// A list of server certificate thumbprints for the OpenID Connect (OIDC) identity
	// provider's server certificate(s). 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, if the OIDC provider is server.example.com and the provider
	// stores its keys at "https://keys.server.example.com/openid-connect", 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html)
	// in the IAM User Guide.
	ThumbprintList []*string `type:"list" required:"true"`

	// 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 host name, 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.
	Url *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateOpenIDConnectProviderInput) GoString

GoString returns the string representation

func (CreateOpenIDConnectProviderInput) String

String returns the string representation

type CreateOpenIDConnectProviderOutput

type CreateOpenIDConnectProviderOutput struct {

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect provider that was
	// created. For more information, see OpenIDConnectProviderListEntry.
	OpenIDConnectProviderArn *string `min:"20" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateOpenIDConnectProvider request.

func (CreateOpenIDConnectProviderOutput) GoString

GoString returns the string representation

func (CreateOpenIDConnectProviderOutput) String

String returns the string representation

type CreatePolicyInput

type CreatePolicyInput struct {

	// 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.
	Description *string `type:"string"`

	// The path for the policy.
	//
	// For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the IAM User Guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `type:"string"`

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy document.
	PolicyName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreatePolicyInput) GoString

func (s CreatePolicyInput) GoString() string

GoString returns the string representation

func (CreatePolicyInput) String

func (s CreatePolicyInput) String() string

String returns the string representation

type CreatePolicyOutput

type CreatePolicyOutput struct {

	// Information about the policy.
	Policy *Policy `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreatePolicy request.

func (CreatePolicyOutput) GoString

func (s CreatePolicyOutput) GoString() string

GoString returns the string representation

func (CreatePolicyOutput) String

func (s CreatePolicyOutput) String() string

String returns the string representation

type CreatePolicyVersionInput

type CreatePolicyVersionInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// 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, 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the IAM User Guide.
	SetAsDefault *bool `type:"boolean"`
	// contains filtered or unexported fields
}

func (CreatePolicyVersionInput) GoString

func (s CreatePolicyVersionInput) GoString() string

GoString returns the string representation

func (CreatePolicyVersionInput) String

func (s CreatePolicyVersionInput) String() string

String returns the string representation

type CreatePolicyVersionOutput

type CreatePolicyVersionOutput struct {

	// Information about the policy version.
	PolicyVersion *PolicyVersion `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreatePolicyVersion request.

func (CreatePolicyVersionOutput) GoString

func (s CreatePolicyVersionOutput) GoString() string

GoString returns the string representation

func (CreatePolicyVersionOutput) String

func (s CreatePolicyVersionOutput) String() string

String returns the string representation

type CreateRoleInput

type CreateRoleInput struct {

	// The trust relationship policy document that grants an entity permission to
	// assume the role.
	AssumeRolePolicyDocument *string `min:"1" type:"string" required:"true"`

	// The path to the role. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `min:"1" type:"string"`

	// The name of the role to create.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateRoleInput) GoString

func (s CreateRoleInput) GoString() string

GoString returns the string representation

func (CreateRoleInput) String

func (s CreateRoleInput) String() string

String returns the string representation

type CreateRoleOutput

type CreateRoleOutput struct {

	// Information about the role.
	Role *Role `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateRole request.

func (CreateRoleOutput) GoString

func (s CreateRoleOutput) GoString() string

GoString returns the string representation

func (CreateRoleOutput) String

func (s CreateRoleOutput) String() string

String returns the string representation

type CreateSAMLProviderInput

type CreateSAMLProviderInput struct {

	// The name of the provider to create.
	Name *string `min:"1" type:"string" required:"true"`

	// 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html)
	// in the IAM User Guide
	SAMLMetadataDocument *string `min:"1000" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateSAMLProviderInput) GoString

func (s CreateSAMLProviderInput) GoString() string

GoString returns the string representation

func (CreateSAMLProviderInput) String

func (s CreateSAMLProviderInput) String() string

String returns the string representation

type CreateSAMLProviderOutput

type CreateSAMLProviderOutput struct {

	// The Amazon Resource Name (ARN) of the SAML provider.
	SAMLProviderArn *string `min:"20" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateSAMLProvider request.

func (CreateSAMLProviderOutput) GoString

func (s CreateSAMLProviderOutput) GoString() string

GoString returns the string representation

func (CreateSAMLProviderOutput) String

func (s CreateSAMLProviderOutput) String() string

String returns the string representation

type CreateUserInput

type CreateUserInput struct {

	// The path for the user name. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `min:"1" type:"string"`

	// The name of the user to create.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateUserInput) GoString

func (s CreateUserInput) GoString() string

GoString returns the string representation

func (CreateUserInput) String

func (s CreateUserInput) String() string

String returns the string representation

type CreateUserOutput

type CreateUserOutput struct {

	// Information about the user.
	User *User `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateUser request.

func (CreateUserOutput) GoString

func (s CreateUserOutput) GoString() string

GoString returns the string representation

func (CreateUserOutput) String

func (s CreateUserOutput) String() string

String returns the string representation

type CreateVirtualMFADeviceInput

type CreateVirtualMFADeviceInput struct {

	// The path for the virtual MFA device. For more information about paths, see
	// IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	Path *string `min:"1" type:"string"`

	// The name of the virtual MFA device. Use with path to uniquely identify a
	// virtual MFA device.
	VirtualMFADeviceName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateVirtualMFADeviceInput) GoString

func (s CreateVirtualMFADeviceInput) GoString() string

GoString returns the string representation

func (CreateVirtualMFADeviceInput) String

String returns the string representation

type CreateVirtualMFADeviceOutput

type CreateVirtualMFADeviceOutput struct {

	// A newly created virtual MFA device.
	VirtualMFADevice *VirtualMFADevice `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful CreateVirtualMFADevice request.

func (CreateVirtualMFADeviceOutput) GoString

func (s CreateVirtualMFADeviceOutput) GoString() string

GoString returns the string representation

func (CreateVirtualMFADeviceOutput) String

String returns the string representation

type DeactivateMFADeviceInput

type DeactivateMFADeviceInput struct {

	// The serial number that uniquely identifies the MFA device. For virtual MFA
	// devices, the serial number is the device ARN.
	SerialNumber *string `min:"9" type:"string" required:"true"`

	// The name of the user whose MFA device you want to deactivate.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeactivateMFADeviceInput) GoString

func (s DeactivateMFADeviceInput) GoString() string

GoString returns the string representation

func (DeactivateMFADeviceInput) String

func (s DeactivateMFADeviceInput) String() string

String returns the string representation

type DeactivateMFADeviceOutput

type DeactivateMFADeviceOutput struct {
	// contains filtered or unexported fields
}

func (DeactivateMFADeviceOutput) GoString

func (s DeactivateMFADeviceOutput) GoString() string

GoString returns the string representation

func (DeactivateMFADeviceOutput) String

func (s DeactivateMFADeviceOutput) String() string

String returns the string representation

type DeleteAccessKeyInput

type DeleteAccessKeyInput struct {

	// The access key ID for the access key ID and secret access key you want to
	// delete.
	AccessKeyId *string `min:"16" type:"string" required:"true"`

	// The name of the user whose key you want to delete.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteAccessKeyInput) GoString

func (s DeleteAccessKeyInput) GoString() string

GoString returns the string representation

func (DeleteAccessKeyInput) String

func (s DeleteAccessKeyInput) String() string

String returns the string representation

type DeleteAccessKeyOutput

type DeleteAccessKeyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteAccessKeyOutput) GoString

func (s DeleteAccessKeyOutput) GoString() string

GoString returns the string representation

func (DeleteAccessKeyOutput) String

func (s DeleteAccessKeyOutput) String() string

String returns the string representation

type DeleteAccountAliasInput

type DeleteAccountAliasInput struct {

	// The name of the account alias to delete.
	AccountAlias *string `min:"3" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteAccountAliasInput) GoString

func (s DeleteAccountAliasInput) GoString() string

GoString returns the string representation

func (DeleteAccountAliasInput) String

func (s DeleteAccountAliasInput) String() string

String returns the string representation

type DeleteAccountAliasOutput

type DeleteAccountAliasOutput struct {
	// contains filtered or unexported fields
}

func (DeleteAccountAliasOutput) GoString

func (s DeleteAccountAliasOutput) GoString() string

GoString returns the string representation

func (DeleteAccountAliasOutput) String

func (s DeleteAccountAliasOutput) String() string

String returns the string representation

type DeleteAccountPasswordPolicyInput

type DeleteAccountPasswordPolicyInput struct {
	// contains filtered or unexported fields
}

func (DeleteAccountPasswordPolicyInput) GoString

GoString returns the string representation

func (DeleteAccountPasswordPolicyInput) String

String returns the string representation

type DeleteAccountPasswordPolicyOutput

type DeleteAccountPasswordPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteAccountPasswordPolicyOutput) GoString

GoString returns the string representation

func (DeleteAccountPasswordPolicyOutput) String

String returns the string representation

type DeleteGroupInput

type DeleteGroupInput struct {

	// The name of the group to delete.
	GroupName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteGroupInput) GoString

func (s DeleteGroupInput) GoString() string

GoString returns the string representation

func (DeleteGroupInput) String

func (s DeleteGroupInput) String() string

String returns the string representation

type DeleteGroupOutput

type DeleteGroupOutput struct {
	// contains filtered or unexported fields
}

func (DeleteGroupOutput) GoString

func (s DeleteGroupOutput) GoString() string

GoString returns the string representation

func (DeleteGroupOutput) String

func (s DeleteGroupOutput) String() string

String returns the string representation

type DeleteGroupPolicyInput

type DeleteGroupPolicyInput struct {

	// The name (friendly name, not ARN) identifying the group that the policy is
	// embedded in.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The name identifying the policy document to delete.
	PolicyName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteGroupPolicyInput) GoString

func (s DeleteGroupPolicyInput) GoString() string

GoString returns the string representation

func (DeleteGroupPolicyInput) String

func (s DeleteGroupPolicyInput) String() string

String returns the string representation

type DeleteGroupPolicyOutput

type DeleteGroupPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteGroupPolicyOutput) GoString

func (s DeleteGroupPolicyOutput) GoString() string

GoString returns the string representation

func (DeleteGroupPolicyOutput) String

func (s DeleteGroupPolicyOutput) String() string

String returns the string representation

type DeleteInstanceProfileInput

type DeleteInstanceProfileInput struct {

	// The name of the instance profile to delete.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteInstanceProfileInput) GoString

func (s DeleteInstanceProfileInput) GoString() string

GoString returns the string representation

func (DeleteInstanceProfileInput) String

String returns the string representation

type DeleteInstanceProfileOutput

type DeleteInstanceProfileOutput struct {
	// contains filtered or unexported fields
}

func (DeleteInstanceProfileOutput) GoString

func (s DeleteInstanceProfileOutput) GoString() string

GoString returns the string representation

func (DeleteInstanceProfileOutput) String

String returns the string representation

type DeleteLoginProfileInput

type DeleteLoginProfileInput struct {

	// The name of the user whose password you want to delete.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteLoginProfileInput) GoString

func (s DeleteLoginProfileInput) GoString() string

GoString returns the string representation

func (DeleteLoginProfileInput) String

func (s DeleteLoginProfileInput) String() string

String returns the string representation

type DeleteLoginProfileOutput

type DeleteLoginProfileOutput struct {
	// contains filtered or unexported fields
}

func (DeleteLoginProfileOutput) GoString

func (s DeleteLoginProfileOutput) GoString() string

GoString returns the string representation

func (DeleteLoginProfileOutput) String

func (s DeleteLoginProfileOutput) String() string

String returns the string representation

type DeleteOpenIDConnectProviderInput

type DeleteOpenIDConnectProviderInput struct {

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect provider to delete.
	// You can get a list of OpenID Connect provider ARNs by using the ListOpenIDConnectProviders
	// action.
	OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteOpenIDConnectProviderInput) GoString

GoString returns the string representation

func (DeleteOpenIDConnectProviderInput) String

String returns the string representation

type DeleteOpenIDConnectProviderOutput

type DeleteOpenIDConnectProviderOutput struct {
	// contains filtered or unexported fields
}

func (DeleteOpenIDConnectProviderOutput) GoString

GoString returns the string representation

func (DeleteOpenIDConnectProviderOutput) String

String returns the string representation

type DeletePolicyInput

type DeletePolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeletePolicyInput) GoString

func (s DeletePolicyInput) GoString() string

GoString returns the string representation

func (DeletePolicyInput) String

func (s DeletePolicyInput) String() string

String returns the string representation

type DeletePolicyOutput

type DeletePolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeletePolicyOutput) GoString

func (s DeletePolicyOutput) GoString() string

GoString returns the string representation

func (DeletePolicyOutput) String

func (s DeletePolicyOutput) String() string

String returns the string representation

type DeletePolicyVersionInput

type DeletePolicyVersionInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The policy version to delete.
	//
	// For more information about managed policy versions, see Versioning for Managed
	// Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the IAM User Guide.
	VersionId *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeletePolicyVersionInput) GoString

func (s DeletePolicyVersionInput) GoString() string

GoString returns the string representation

func (DeletePolicyVersionInput) String

func (s DeletePolicyVersionInput) String() string

String returns the string representation

type DeletePolicyVersionOutput

type DeletePolicyVersionOutput struct {
	// contains filtered or unexported fields
}

func (DeletePolicyVersionOutput) GoString

func (s DeletePolicyVersionOutput) GoString() string

GoString returns the string representation

func (DeletePolicyVersionOutput) String

func (s DeletePolicyVersionOutput) String() string

String returns the string representation

type DeleteRoleInput

type DeleteRoleInput struct {

	// The name of the role to delete.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRoleInput) GoString

func (s DeleteRoleInput) GoString() string

GoString returns the string representation

func (DeleteRoleInput) String

func (s DeleteRoleInput) String() string

String returns the string representation

type DeleteRoleOutput

type DeleteRoleOutput struct {
	// contains filtered or unexported fields
}

func (DeleteRoleOutput) GoString

func (s DeleteRoleOutput) GoString() string

GoString returns the string representation

func (DeleteRoleOutput) String

func (s DeleteRoleOutput) String() string

String returns the string representation

type DeleteRolePolicyInput

type DeleteRolePolicyInput struct {

	// The name identifying the policy document to delete.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name (friendly name, not ARN) identifying the role that the policy is
	// embedded in.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRolePolicyInput) GoString

func (s DeleteRolePolicyInput) GoString() string

GoString returns the string representation

func (DeleteRolePolicyInput) String

func (s DeleteRolePolicyInput) String() string

String returns the string representation

type DeleteRolePolicyOutput

type DeleteRolePolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteRolePolicyOutput) GoString

func (s DeleteRolePolicyOutput) GoString() string

GoString returns the string representation

func (DeleteRolePolicyOutput) String

func (s DeleteRolePolicyOutput) String() string

String returns the string representation

type DeleteSAMLProviderInput

type DeleteSAMLProviderInput struct {

	// The Amazon Resource Name (ARN) of the SAML provider to delete.
	SAMLProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteSAMLProviderInput) GoString

func (s DeleteSAMLProviderInput) GoString() string

GoString returns the string representation

func (DeleteSAMLProviderInput) String

func (s DeleteSAMLProviderInput) String() string

String returns the string representation

type DeleteSAMLProviderOutput

type DeleteSAMLProviderOutput struct {
	// contains filtered or unexported fields
}

func (DeleteSAMLProviderOutput) GoString

func (s DeleteSAMLProviderOutput) GoString() string

GoString returns the string representation

func (DeleteSAMLProviderOutput) String

func (s DeleteSAMLProviderOutput) String() string

String returns the string representation

type DeleteSSHPublicKeyInput

type DeleteSSHPublicKeyInput struct {

	// The unique identifier for the SSH public key.
	SSHPublicKeyId *string `min:"20" type:"string" required:"true"`

	// The name of the IAM user associated with the SSH public key.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteSSHPublicKeyInput) GoString

func (s DeleteSSHPublicKeyInput) GoString() string

GoString returns the string representation

func (DeleteSSHPublicKeyInput) String

func (s DeleteSSHPublicKeyInput) String() string

String returns the string representation

type DeleteSSHPublicKeyOutput

type DeleteSSHPublicKeyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteSSHPublicKeyOutput) GoString

func (s DeleteSSHPublicKeyOutput) GoString() string

GoString returns the string representation

func (DeleteSSHPublicKeyOutput) String

func (s DeleteSSHPublicKeyOutput) String() string

String returns the string representation

type DeleteServerCertificateInput

type DeleteServerCertificateInput struct {

	// The name of the server certificate you want to delete.
	ServerCertificateName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteServerCertificateInput) GoString

func (s DeleteServerCertificateInput) GoString() string

GoString returns the string representation

func (DeleteServerCertificateInput) String

String returns the string representation

type DeleteServerCertificateOutput

type DeleteServerCertificateOutput struct {
	// contains filtered or unexported fields
}

func (DeleteServerCertificateOutput) GoString

GoString returns the string representation

func (DeleteServerCertificateOutput) String

String returns the string representation

type DeleteSigningCertificateInput

type DeleteSigningCertificateInput struct {

	// The ID of the signing certificate to delete.
	CertificateId *string `min:"24" type:"string" required:"true"`

	// The name of the user the signing certificate belongs to.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteSigningCertificateInput) GoString

GoString returns the string representation

func (DeleteSigningCertificateInput) String

String returns the string representation

type DeleteSigningCertificateOutput

type DeleteSigningCertificateOutput struct {
	// contains filtered or unexported fields
}

func (DeleteSigningCertificateOutput) GoString

GoString returns the string representation

func (DeleteSigningCertificateOutput) String

String returns the string representation

type DeleteUserInput

type DeleteUserInput struct {

	// The name of the user to delete.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteUserInput) GoString

func (s DeleteUserInput) GoString() string

GoString returns the string representation

func (DeleteUserInput) String

func (s DeleteUserInput) String() string

String returns the string representation

type DeleteUserOutput

type DeleteUserOutput struct {
	// contains filtered or unexported fields
}

func (DeleteUserOutput) GoString

func (s DeleteUserOutput) GoString() string

GoString returns the string representation

func (DeleteUserOutput) String

func (s DeleteUserOutput) String() string

String returns the string representation

type DeleteUserPolicyInput

type DeleteUserPolicyInput struct {

	// The name identifying the policy document to delete.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name (friendly name, not ARN) identifying the user that the policy is
	// embedded in.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteUserPolicyInput) GoString

func (s DeleteUserPolicyInput) GoString() string

GoString returns the string representation

func (DeleteUserPolicyInput) String

func (s DeleteUserPolicyInput) String() string

String returns the string representation

type DeleteUserPolicyOutput

type DeleteUserPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteUserPolicyOutput) GoString

func (s DeleteUserPolicyOutput) GoString() string

GoString returns the string representation

func (DeleteUserPolicyOutput) String

func (s DeleteUserPolicyOutput) String() string

String returns the string representation

type DeleteVirtualMFADeviceInput

type DeleteVirtualMFADeviceInput struct {

	// The serial number that uniquely identifies the MFA device. For virtual MFA
	// devices, the serial number is the same as the ARN.
	SerialNumber *string `min:"9" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteVirtualMFADeviceInput) GoString

func (s DeleteVirtualMFADeviceInput) GoString() string

GoString returns the string representation

func (DeleteVirtualMFADeviceInput) String

String returns the string representation

type DeleteVirtualMFADeviceOutput

type DeleteVirtualMFADeviceOutput struct {
	// contains filtered or unexported fields
}

func (DeleteVirtualMFADeviceOutput) GoString

func (s DeleteVirtualMFADeviceOutput) GoString() string

GoString returns the string representation

func (DeleteVirtualMFADeviceOutput) String

String returns the string representation

type DetachGroupPolicyInput

type DetachGroupPolicyInput struct {

	// The name (friendly name, not ARN) of the group to detach the policy from.
	GroupName *string `min:"1" type:"string" required:"true"`

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DetachGroupPolicyInput) GoString

func (s DetachGroupPolicyInput) GoString() string

GoString returns the string representation

func (DetachGroupPolicyInput) String

func (s DetachGroupPolicyInput) String() string

String returns the string representation

type DetachGroupPolicyOutput

type DetachGroupPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DetachGroupPolicyOutput) GoString

func (s DetachGroupPolicyOutput) GoString() string

GoString returns the string representation

func (DetachGroupPolicyOutput) String

func (s DetachGroupPolicyOutput) String() string

String returns the string representation

type DetachRolePolicyInput

type DetachRolePolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The name (friendly name, not ARN) of the role to detach the policy from.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DetachRolePolicyInput) GoString

func (s DetachRolePolicyInput) GoString() string

GoString returns the string representation

func (DetachRolePolicyInput) String

func (s DetachRolePolicyInput) String() string

String returns the string representation

type DetachRolePolicyOutput

type DetachRolePolicyOutput struct {
	// contains filtered or unexported fields
}

func (DetachRolePolicyOutput) GoString

func (s DetachRolePolicyOutput) GoString() string

GoString returns the string representation

func (DetachRolePolicyOutput) String

func (s DetachRolePolicyOutput) String() string

String returns the string representation

type DetachUserPolicyInput

type DetachUserPolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The name (friendly name, not ARN) of the user to detach the policy from.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DetachUserPolicyInput) GoString

func (s DetachUserPolicyInput) GoString() string

GoString returns the string representation

func (DetachUserPolicyInput) String

func (s DetachUserPolicyInput) String() string

String returns the string representation

type DetachUserPolicyOutput

type DetachUserPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DetachUserPolicyOutput) GoString

func (s DetachUserPolicyOutput) GoString() string

GoString returns the string representation

func (DetachUserPolicyOutput) String

func (s DetachUserPolicyOutput) String() string

String returns the string representation

type EnableMFADeviceInput

type EnableMFADeviceInput struct {

	// An authentication code emitted by the device.
	AuthenticationCode1 *string `min:"6" type:"string" required:"true"`

	// A subsequent authentication code emitted by the device.
	AuthenticationCode2 *string `min:"6" type:"string" required:"true"`

	// The serial number that uniquely identifies the MFA device. For virtual MFA
	// devices, the serial number is the device ARN.
	SerialNumber *string `min:"9" type:"string" required:"true"`

	// The name of the user for whom you want to enable the MFA device.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (EnableMFADeviceInput) GoString

func (s EnableMFADeviceInput) GoString() string

GoString returns the string representation

func (EnableMFADeviceInput) String

func (s EnableMFADeviceInput) String() string

String returns the string representation

type EnableMFADeviceOutput

type EnableMFADeviceOutput struct {
	// contains filtered or unexported fields
}

func (EnableMFADeviceOutput) GoString

func (s EnableMFADeviceOutput) GoString() string

GoString returns the string representation

func (EnableMFADeviceOutput) String

func (s EnableMFADeviceOutput) String() string

String returns the string representation

type EvaluationResult

type EvaluationResult struct {

	// The name of the API action tested on the indicated resource.
	EvalActionName *string `min:"3" type:"string" required:"true"`

	// The result of the simulation.
	EvalDecision *string `type:"string" required:"true" enum:"PolicyEvaluationDecisionType"`

	// 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html)
	EvalDecisionDetails map[string]*string `type:"map"`

	// The ARN of the resource that the indicated API action was tested on.
	EvalResourceName *string `min:"1" type:"string"`

	// A list of the statements in the input policies that determine the result
	// for this scenario. Remember that even if multiple statements allow the action
	// on the resource, if only one statement denies that action, then the explicit
	// deny overrides any allow, and the deny statement is the only entry included
	// in the result.
	MatchedStatements []*Statement `type:"list"`

	// A list of context keys that are required by the included input policies but
	// that were not provided by one of the input parameters. To discover the context
	// keys used by a set of policies, you can call GetContextKeysForCustomPolicy
	// or GetContextKeysForPrincipalPolicy.
	//
	//  If the response includes any keys in this list, then the reported results
	// might be untrustworthy because the simulation could not completely evaluate
	// all of the conditions specified in the policies that would occur in a real
	// world request.
	MissingContextValues []*string `type:"list"`

	// The individual results of the simulation of the API action specified in EvalActionName
	// on each resource.
	ResourceSpecificResults []*ResourceSpecificResult `type:"list"`
	// contains filtered or unexported fields
}

Contains the results of a simulation.

This data type is used by the return parameter of SimulatePolicy.

func (EvaluationResult) GoString

func (s EvaluationResult) GoString() string

GoString returns the string representation

func (EvaluationResult) String

func (s EvaluationResult) String() string

String returns the string representation

type GenerateCredentialReportInput

type GenerateCredentialReportInput struct {
	// contains filtered or unexported fields
}

func (GenerateCredentialReportInput) GoString

GoString returns the string representation

func (GenerateCredentialReportInput) String

String returns the string representation

type GenerateCredentialReportOutput

type GenerateCredentialReportOutput struct {

	// Information about the credential report.
	Description *string `type:"string"`

	// Information about the state of the credential report.
	State *string `type:"string" enum:"ReportStateType"`
	// contains filtered or unexported fields
}

Contains the response to a successful GenerateCredentialReport request.

func (GenerateCredentialReportOutput) GoString

GoString returns the string representation

func (GenerateCredentialReportOutput) String

String returns the string representation

type GetAccessKeyLastUsedInput

type GetAccessKeyLastUsedInput struct {

	// The identifier of an access key.
	AccessKeyId *string `min:"16" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetAccessKeyLastUsedInput) GoString

func (s GetAccessKeyLastUsedInput) GoString() string

GoString returns the string representation

func (GetAccessKeyLastUsedInput) String

func (s GetAccessKeyLastUsedInput) String() string

String returns the string representation

type GetAccessKeyLastUsedOutput

type GetAccessKeyLastUsedOutput struct {

	// Contains information about the last time the access key was used.
	AccessKeyLastUsed *AccessKeyLastUsed `type:"structure"`

	// The name of the AWS IAM user that owns this access key.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetAccessKeyLastUsed request. It is also returned as a member of the AccessKeyMetaData structure returned by the ListAccessKeys action.

func (GetAccessKeyLastUsedOutput) GoString

func (s GetAccessKeyLastUsedOutput) GoString() string

GoString returns the string representation

func (GetAccessKeyLastUsedOutput) String

String returns the string representation

type GetAccountAuthorizationDetailsInput

type GetAccountAuthorizationDetailsInput struct {

	// A list of entity types (user, group, role, local managed policy, or AWS managed
	// policy) for filtering the results.
	Filter []*string `type:"list"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

func (GetAccountAuthorizationDetailsInput) GoString

GoString returns the string representation

func (GetAccountAuthorizationDetailsInput) String

String returns the string representation

type GetAccountAuthorizationDetailsOutput

type GetAccountAuthorizationDetailsOutput struct {

	// A list containing information about IAM groups.
	GroupDetailList []*GroupDetail `type:"list"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list containing information about managed policies.
	Policies []*ManagedPolicyDetail `type:"list"`

	// A list containing information about IAM roles.
	RoleDetailList []*RoleDetail `type:"list"`

	// A list containing information about IAM users.
	UserDetailList []*UserDetail `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetAccountAuthorizationDetails request.

func (GetAccountAuthorizationDetailsOutput) GoString

GoString returns the string representation

func (GetAccountAuthorizationDetailsOutput) String

String returns the string representation

type GetAccountPasswordPolicyInput

type GetAccountPasswordPolicyInput struct {
	// contains filtered or unexported fields
}

func (GetAccountPasswordPolicyInput) GoString

GoString returns the string representation

func (GetAccountPasswordPolicyInput) String

String returns the string representation

type GetAccountPasswordPolicyOutput

type GetAccountPasswordPolicyOutput struct {

	// Contains information about the account password policy.
	//
	//  This data type is used as a response element in the GetAccountPasswordPolicy
	// action.
	PasswordPolicy *PasswordPolicy `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetAccountPasswordPolicy request.

func (GetAccountPasswordPolicyOutput) GoString

GoString returns the string representation

func (GetAccountPasswordPolicyOutput) String

String returns the string representation

type GetAccountSummaryInput

type GetAccountSummaryInput struct {
	// contains filtered or unexported fields
}

func (GetAccountSummaryInput) GoString

func (s GetAccountSummaryInput) GoString() string

GoString returns the string representation

func (GetAccountSummaryInput) String

func (s GetAccountSummaryInput) String() string

String returns the string representation

type GetAccountSummaryOutput

type GetAccountSummaryOutput struct {

	// A set of key value pairs containing information about IAM entity usage and
	// IAM quotas.
	//
	//  SummaryMap contains the following keys:   AccessKeysPerUserQuota
	//
	// The maximum number of active access keys allowed for each IAM user.
	//
	//   AccountAccessKeysPresent
	//
	// This value is 1 if the AWS account (root) has an access key, otherwise it
	// is 0.
	//
	//   AccountMFAEnabled
	//
	// This value is 1 if the AWS account (root) has an MFA device assigned, otherwise
	// it is 0.
	//
	//   AccountSigningCertificatesPresent
	//
	// This value is 1 if the AWS account (root) has a signing certificate, otherwise
	// it is 0.
	//
	//   AssumeRolePolicySizeQuota
	//
	// The maximum allowed size for assume role policy documents (trust policies),
	// in non-whitespace characters.
	//
	//   AttachedPoliciesPerGroupQuota
	//
	// The maximum number of managed policies that can be attached to an IAM group.
	//
	//   AttachedPoliciesPerRoleQuota
	//
	// The maximum number of managed policies that can be attached to an IAM role.
	//
	//   AttachedPoliciesPerUserQuota
	//
	// The maximum number of managed policies that can be attached to an IAM user.
	//
	//   GroupPolicySizeQuota
	//
	// The maximum allowed size for the aggregate of all inline policies embedded
	// in an IAM group, in non-whitespace characters.
	//
	//   Groups
	//
	// The number of IAM groups in the AWS account.
	//
	//   GroupsPerUserQuota
	//
	// The maximum number of IAM groups each IAM user can belong to.
	//
	//   GroupsQuota
	//
	// The maximum number of IAM groups allowed in the AWS account.
	//
	//   InstanceProfiles
	//
	// The number of instance profiles in the AWS account.
	//
	//   InstanceProfilesQuota
	//
	// The maximum number of instance profiles allowed in the AWS account.
	//
	//   MFADevices
	//
	// The number of MFA devices in the AWS account, including those assigned and
	// unassigned.
	//
	//   MFADevicesInUse
	//
	// The number of MFA devices that have been assigned to an IAM user or to the
	// AWS account (root).
	//
	//   Policies
	//
	// The number of customer managed policies in the AWS account.
	//
	//   PoliciesQuota
	//
	// The maximum number of customer managed policies allowed in the AWS account.
	//
	//   PolicySizeQuota
	//
	// The maximum allowed size of a customer managed policy, in non-whitespace
	// characters.
	//
	//   PolicyVersionsInUse
	//
	// The number of managed policies that are attached to IAM users, groups, or
	// roles in the AWS account.
	//
	//   PolicyVersionsInUseQuota
	//
	// The maximum number of managed policies that can be attached to IAM users,
	// groups, or roles in the AWS account.
	//
	//   Providers
	//
	// The number of identity providers in the AWS account.
	//
	//   RolePolicySizeQuota
	//
	// The maximum allowed size for the aggregate of all inline policies (access
	// policies, not the trust policy) embedded in an IAM role, in non-whitespace
	// characters.
	//
	//   Roles
	//
	// The number of IAM roles in the AWS account.
	//
	//   RolesQuota
	//
	// The maximum number of IAM roles allowed in the AWS account.
	//
	//   ServerCertificates
	//
	// The number of server certificates in the AWS account.
	//
	//   ServerCertificatesQuota
	//
	// The maximum number of server certificates allowed in the AWS account.
	//
	//   SigningCertificatesPerUserQuota
	//
	// The maximum number of X.509 signing certificates allowed for each IAM user.
	//
	//   UserPolicySizeQuota
	//
	// The maximum allowed size for the aggregate of all inline policies embedded
	// in an IAM user, in non-whitespace characters.
	//
	//   Users
	//
	// The number of IAM users in the AWS account.
	//
	//   UsersQuota
	//
	// The maximum number of IAM users allowed in the AWS account.
	//
	//   VersionsPerPolicyQuota
	//
	// The maximum number of policy versions allowed for each managed policy.
	SummaryMap map[string]*int64 `type:"map"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetAccountSummary request.

func (GetAccountSummaryOutput) GoString

func (s GetAccountSummaryOutput) GoString() string

GoString returns the string representation

func (GetAccountSummaryOutput) String

func (s GetAccountSummaryOutput) String() string

String returns the string representation

type GetContextKeysForCustomPolicyInput

type GetContextKeysForCustomPolicyInput struct {

	// A list of policies for which you want list of context keys used in Condition
	// elements. Each document is specified as a string containing the complete,
	// valid JSON text of an IAM policy.
	PolicyInputList []*string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (GetContextKeysForCustomPolicyInput) GoString

GoString returns the string representation

func (GetContextKeysForCustomPolicyInput) String

String returns the string representation

type GetContextKeysForPolicyResponse

type GetContextKeysForPolicyResponse struct {

	// The list of context keys that are used in the Condition elements of the input
	// policies.
	ContextKeyNames []*string `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetContextKeysForPrincipalPolicy or GetContextKeysForCustomPolicy request.

func (GetContextKeysForPolicyResponse) GoString

GoString returns the string representation

func (GetContextKeysForPolicyResponse) String

String returns the string representation

type GetContextKeysForPrincipalPolicyInput

type GetContextKeysForPrincipalPolicyInput struct {

	// A optional list of additional policies for which you want list of context
	// keys used in Condition elements.
	PolicyInputList []*string `type:"list"`

	// 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 attached to the user as well as to 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.
	PolicySourceArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetContextKeysForPrincipalPolicyInput) GoString

GoString returns the string representation

func (GetContextKeysForPrincipalPolicyInput) String

String returns the string representation

type GetCredentialReportInput

type GetCredentialReportInput struct {
	// contains filtered or unexported fields
}

func (GetCredentialReportInput) GoString

func (s GetCredentialReportInput) GoString() string

GoString returns the string representation

func (GetCredentialReportInput) String

func (s GetCredentialReportInput) String() string

String returns the string representation

type GetCredentialReportOutput

type GetCredentialReportOutput struct {

	// Contains the credential report. The report is Base64-encoded.
	Content []byte `type:"blob"`

	// The date and time when the credential report was created, in ISO 8601 date-time
	// format (http://www.iso.org/iso/iso8601).
	GeneratedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The format (MIME type) of the credential report.
	ReportFormat *string `type:"string" enum:"ReportFormatType"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetCredentialReport request.

func (GetCredentialReportOutput) GoString

func (s GetCredentialReportOutput) GoString() string

GoString returns the string representation

func (GetCredentialReportOutput) String

func (s GetCredentialReportOutput) String() string

String returns the string representation

type GetGroupInput

type GetGroupInput struct {

	// The name of the group.
	GroupName *string `min:"1" type:"string" required:"true"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

func (GetGroupInput) GoString

func (s GetGroupInput) GoString() string

GoString returns the string representation

func (GetGroupInput) String

func (s GetGroupInput) String() string

String returns the string representation

type GetGroupOutput

type GetGroupOutput struct {

	// Information about the group.
	Group *Group `type:"structure" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of users in the group.
	Users []*User `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetGroup request.

func (GetGroupOutput) GoString

func (s GetGroupOutput) GoString() string

GoString returns the string representation

func (GetGroupOutput) String

func (s GetGroupOutput) String() string

String returns the string representation

type GetGroupPolicyInput

type GetGroupPolicyInput struct {

	// The name of the group the policy is associated with.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The name of the policy document to get.
	PolicyName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetGroupPolicyInput) GoString

func (s GetGroupPolicyInput) GoString() string

GoString returns the string representation

func (GetGroupPolicyInput) String

func (s GetGroupPolicyInput) String() string

String returns the string representation

type GetGroupPolicyOutput

type GetGroupPolicyOutput struct {

	// The group the policy is associated with.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy.
	PolicyName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetGroupPolicy request.

func (GetGroupPolicyOutput) GoString

func (s GetGroupPolicyOutput) GoString() string

GoString returns the string representation

func (GetGroupPolicyOutput) String

func (s GetGroupPolicyOutput) String() string

String returns the string representation

type GetInstanceProfileInput

type GetInstanceProfileInput struct {

	// The name of the instance profile to get information about.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetInstanceProfileInput) GoString

func (s GetInstanceProfileInput) GoString() string

GoString returns the string representation

func (GetInstanceProfileInput) String

func (s GetInstanceProfileInput) String() string

String returns the string representation

type GetInstanceProfileOutput

type GetInstanceProfileOutput struct {

	// Information about the instance profile.
	InstanceProfile *InstanceProfile `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetInstanceProfile request.

func (GetInstanceProfileOutput) GoString

func (s GetInstanceProfileOutput) GoString() string

GoString returns the string representation

func (GetInstanceProfileOutput) String

func (s GetInstanceProfileOutput) String() string

String returns the string representation

type GetLoginProfileInput

type GetLoginProfileInput struct {

	// The name of the user whose login profile you want to retrieve.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetLoginProfileInput) GoString

func (s GetLoginProfileInput) GoString() string

GoString returns the string representation

func (GetLoginProfileInput) String

func (s GetLoginProfileInput) String() string

String returns the string representation

type GetLoginProfileOutput

type GetLoginProfileOutput struct {

	// The user name and password create date for the user.
	LoginProfile *LoginProfile `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetLoginProfile request.

func (GetLoginProfileOutput) GoString

func (s GetLoginProfileOutput) GoString() string

GoString returns the string representation

func (GetLoginProfileOutput) String

func (s GetLoginProfileOutput) String() string

String returns the string representation

type GetOpenIDConnectProviderInput

type GetOpenIDConnectProviderInput struct {

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider
	// to get information for. You can get a list of OIDC provider ARNs by using
	// the ListOpenIDConnectProviders action.
	OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetOpenIDConnectProviderInput) GoString

GoString returns the string representation

func (GetOpenIDConnectProviderInput) String

String returns the string representation

type GetOpenIDConnectProviderOutput

type GetOpenIDConnectProviderOutput struct {

	// A list of client IDs (also known as audiences) that are associated with the
	// specified IAM OpenID Connect provider. For more information, see CreateOpenIDConnectProvider.
	ClientIDList []*string `type:"list"`

	// The date and time when the IAM OpenID Connect provider entity was created
	// in the AWS account.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// A list of certificate thumbprints that are associated with the specified
	// IAM OpenID Connect provider. For more information, see CreateOpenIDConnectProvider.
	ThumbprintList []*string `type:"list"`

	// The URL that the IAM OpenID Connect provider is associated with. For more
	// information, see CreateOpenIDConnectProvider.
	Url *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetOpenIDConnectProvider request.

func (GetOpenIDConnectProviderOutput) GoString

GoString returns the string representation

func (GetOpenIDConnectProviderOutput) String

String returns the string representation

type GetPolicyInput

type GetPolicyInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetPolicyInput) GoString

func (s GetPolicyInput) GoString() string

GoString returns the string representation

func (GetPolicyInput) String

func (s GetPolicyInput) String() string

String returns the string representation

type GetPolicyOutput

type GetPolicyOutput struct {

	// Information about the policy.
	Policy *Policy `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetPolicy request.

func (GetPolicyOutput) GoString

func (s GetPolicyOutput) GoString() string

GoString returns the string representation

func (GetPolicyOutput) String

func (s GetPolicyOutput) String() string

String returns the string representation

type GetPolicyVersionInput

type GetPolicyVersionInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// Identifies the policy version to retrieve.
	VersionId *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetPolicyVersionInput) GoString

func (s GetPolicyVersionInput) GoString() string

GoString returns the string representation

func (GetPolicyVersionInput) String

func (s GetPolicyVersionInput) String() string

String returns the string representation

type GetPolicyVersionOutput

type GetPolicyVersionOutput struct {

	// Information about the policy version.
	//
	// For more information about managed policy versions, see Versioning for Managed
	// Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the IAM User Guide.
	PolicyVersion *PolicyVersion `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetPolicyVersion request.

func (GetPolicyVersionOutput) GoString

func (s GetPolicyVersionOutput) GoString() string

GoString returns the string representation

func (GetPolicyVersionOutput) String

func (s GetPolicyVersionOutput) String() string

String returns the string representation

type GetRoleInput

type GetRoleInput struct {

	// The name of the role to get information about.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRoleInput) GoString

func (s GetRoleInput) GoString() string

GoString returns the string representation

func (GetRoleInput) String

func (s GetRoleInput) String() string

String returns the string representation

type GetRoleOutput

type GetRoleOutput struct {

	// Information about the role.
	Role *Role `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetRole request.

func (GetRoleOutput) GoString

func (s GetRoleOutput) GoString() string

GoString returns the string representation

func (GetRoleOutput) String

func (s GetRoleOutput) String() string

String returns the string representation

type GetRolePolicyInput

type GetRolePolicyInput struct {

	// The name of the policy document to get.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name of the role associated with the policy.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRolePolicyInput) GoString

func (s GetRolePolicyInput) GoString() string

GoString returns the string representation

func (GetRolePolicyInput) String

func (s GetRolePolicyInput) String() string

String returns the string representation

type GetRolePolicyOutput

type GetRolePolicyOutput struct {

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The role the policy is associated with.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetRolePolicy request.

func (GetRolePolicyOutput) GoString

func (s GetRolePolicyOutput) GoString() string

GoString returns the string representation

func (GetRolePolicyOutput) String

func (s GetRolePolicyOutput) String() string

String returns the string representation

type GetSAMLProviderInput

type GetSAMLProviderInput struct {

	// The Amazon Resource Name (ARN) of the SAML provider to get information about.
	SAMLProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetSAMLProviderInput) GoString

func (s GetSAMLProviderInput) GoString() string

GoString returns the string representation

func (GetSAMLProviderInput) String

func (s GetSAMLProviderInput) String() string

String returns the string representation

type GetSAMLProviderOutput

type GetSAMLProviderOutput struct {

	// The date and time when the SAML provider was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The XML metadata document that includes information about an identity provider.
	SAMLMetadataDocument *string `min:"1000" type:"string"`

	// The expiration date and time for the SAML provider.
	ValidUntil *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetSAMLProvider request.

func (GetSAMLProviderOutput) GoString

func (s GetSAMLProviderOutput) GoString() string

GoString returns the string representation

func (GetSAMLProviderOutput) String

func (s GetSAMLProviderOutput) String() string

String returns the string representation

type GetSSHPublicKeyInput

type GetSSHPublicKeyInput struct {

	// 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.
	Encoding *string `type:"string" required:"true" enum:"encodingType"`

	// The unique identifier for the SSH public key.
	SSHPublicKeyId *string `min:"20" type:"string" required:"true"`

	// The name of the IAM user associated with the SSH public key.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetSSHPublicKeyInput) GoString

func (s GetSSHPublicKeyInput) GoString() string

GoString returns the string representation

func (GetSSHPublicKeyInput) String

func (s GetSSHPublicKeyInput) String() string

String returns the string representation

type GetSSHPublicKeyOutput

type GetSSHPublicKeyOutput struct {

	// Information about the SSH public key.
	SSHPublicKey *SSHPublicKey `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetSSHPublicKey request.

func (GetSSHPublicKeyOutput) GoString

func (s GetSSHPublicKeyOutput) GoString() string

GoString returns the string representation

func (GetSSHPublicKeyOutput) String

func (s GetSSHPublicKeyOutput) String() string

String returns the string representation

type GetServerCertificateInput

type GetServerCertificateInput struct {

	// The name of the server certificate you want to retrieve information about.
	ServerCertificateName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetServerCertificateInput) GoString

func (s GetServerCertificateInput) GoString() string

GoString returns the string representation

func (GetServerCertificateInput) String

func (s GetServerCertificateInput) String() string

String returns the string representation

type GetServerCertificateOutput

type GetServerCertificateOutput struct {

	// Information about the server certificate.
	ServerCertificate *ServerCertificate `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetServerCertificate request.

func (GetServerCertificateOutput) GoString

func (s GetServerCertificateOutput) GoString() string

GoString returns the string representation

func (GetServerCertificateOutput) String

String returns the string representation

type GetUserInput

type GetUserInput struct {

	// 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.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetUserInput) GoString

func (s GetUserInput) GoString() string

GoString returns the string representation

func (GetUserInput) String

func (s GetUserInput) String() string

String returns the string representation

type GetUserOutput

type GetUserOutput struct {

	// Information about the user.
	User *User `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetUser request.

func (GetUserOutput) GoString

func (s GetUserOutput) GoString() string

GoString returns the string representation

func (GetUserOutput) String

func (s GetUserOutput) String() string

String returns the string representation

type GetUserPolicyInput

type GetUserPolicyInput struct {

	// The name of the policy document to get.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name of the user who the policy is associated with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetUserPolicyInput) GoString

func (s GetUserPolicyInput) GoString() string

GoString returns the string representation

func (GetUserPolicyInput) String

func (s GetUserPolicyInput) String() string

String returns the string representation

type GetUserPolicyOutput

type GetUserPolicyOutput struct {

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The user the policy is associated with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful GetUserPolicy request.

func (GetUserPolicyOutput) GoString

func (s GetUserPolicyOutput) GoString() string

GoString returns the string representation

func (GetUserPolicyOutput) String

func (s GetUserPolicyOutput) String() string

String returns the string representation

type Group

type Group struct {

	// The Amazon Resource Name (ARN) specifying the group. For more information
	// about ARNs and how to use them in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Arn *string `min:"20" type:"string" required:"true"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the group was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The stable and unique string identifying the group. For more information
	// about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	GroupId *string `min:"16" type:"string" required:"true"`

	// The friendly name that identifies the group.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The path to the group. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an IAM group entity.

This data type is used as a response element in the following actions:

 CreateGroup   GetGroup   ListGroups

func (Group) GoString

func (s Group) GoString() string

GoString returns the string representation

func (Group) String

func (s Group) String() string

String returns the string representation

type GroupDetail

type GroupDetail struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`

	// A list of the managed policies attached to the group.
	AttachedManagedPolicies []*AttachedPolicy `type:"list"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the group was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The stable and unique string identifying the group. For more information
	// about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	GroupId *string `min:"16" type:"string"`

	// The friendly name that identifies the group.
	GroupName *string `min:"1" type:"string"`

	// A list of the inline policies embedded in the group.
	GroupPolicyList []*PolicyDetail `type:"list"`

	// The path to the group. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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 action.

func (GroupDetail) GoString

func (s GroupDetail) GoString() string

GoString returns the string representation

func (GroupDetail) String

func (s GroupDetail) String() string

String returns the string representation

type IAM

type IAM struct {
	*client.Client
}

AWS Identity and Access Management (IAM) is a web service that you can use to manage users and user permissions under your AWS account. This guide provides descriptions of IAM actions that you can call programmatically. For general information about IAM, see AWS Identity and Access Management (IAM) (http://aws.amazon.com/iam/). For the user guide for IAM, see Using IAM (http://docs.aws.amazon.com/IAM/latest/UserGuide/).

AWS provides SDKs that consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to IAM and AWS. For example, the SDKs take care of tasks such as cryptographically signing requests (see below), managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services (http://aws.amazon.com/tools/) page. We recommend that you use the AWS SDKs to make programmatic API calls to IAM. However, you can also use the IAM Query API to make direct calls to the IAM web service. To learn more about the IAM Query API, see Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) in the Using IAM guide. IAM supports GET and POST requests for all actions. That is, the API does not require you to use GET for some actions and POST for others. However, GET requests are subject to the limitation size of a URL. Therefore, for operations that require larger sizes, use a POST request.

Signing Requests

Requests must be signed using an access key ID and a secret access key. We strongly recommend that you do not use your AWS account access key ID and secret access key for everyday work with IAM. You can use the access key ID and secret access key for an IAM user or you can use the AWS Security Token Service to generate temporary security credentials and use those to sign requests.

To sign requests, we recommend that you use Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). If you have an existing application that uses Signature Version 2, you do not have to update it to use Signature Version 4. However, some operations now require Signature Version 4. The documentation for operations that require version 4 indicate this requirement.

Additional Resources

For more information, see the following:

AWS Security Credentials (http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html).

This topic provides general information about the types of credentials used for accessing AWS. IAM Best Practices (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPractices.html). This topic presents a list of suggestions for using the IAM service to help secure your AWS resources. Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html). This set of topics walk you through the process of signing a request using an access key ID and secret access key. The service client's operations are safe to be used concurrently. It is not safe to mutate any of the client's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *IAM

New creates a new instance of the IAM client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a IAM client from just a session.
svc := iam.New(mySession)

// Create a IAM client with additional configuration
svc := iam.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*IAM) AddClientIDToOpenIDConnectProvider

func (c *IAM) AddClientIDToOpenIDConnectProvider(input *AddClientIDToOpenIDConnectProviderInput) (*AddClientIDToOpenIDConnectProviderOutput, error)

Adds a new client ID (also known as audience) to the list of client IDs already registered for the specified IAM OpenID Connect provider.

This action is idempotent; it does not fail or return an error if you add an existing client ID to the provider.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AddClientIDToOpenIDConnectProviderInput{
		ClientID:                 aws.String("clientIDType"), // Required
		OpenIDConnectProviderArn: aws.String("arnType"),      // Required
	}
	resp, err := svc.AddClientIDToOpenIDConnectProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AddClientIDToOpenIDConnectProviderRequest

func (c *IAM) AddClientIDToOpenIDConnectProviderRequest(input *AddClientIDToOpenIDConnectProviderInput) (req *request.Request, output *AddClientIDToOpenIDConnectProviderOutput)

AddClientIDToOpenIDConnectProviderRequest generates a request for the AddClientIDToOpenIDConnectProvider operation.

func (*IAM) AddRoleToInstanceProfile

func (c *IAM) AddRoleToInstanceProfile(input *AddRoleToInstanceProfileInput) (*AddRoleToInstanceProfileOutput, error)

Adds the specified role to the specified instance profile. For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AddRoleToInstanceProfileInput{
		InstanceProfileName: aws.String("instanceProfileNameType"), // Required
		RoleName:            aws.String("roleNameType"),            // Required
	}
	resp, err := svc.AddRoleToInstanceProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AddRoleToInstanceProfileRequest

func (c *IAM) AddRoleToInstanceProfileRequest(input *AddRoleToInstanceProfileInput) (req *request.Request, output *AddRoleToInstanceProfileOutput)

AddRoleToInstanceProfileRequest generates a request for the AddRoleToInstanceProfile operation.

func (*IAM) AddUserToGroup

func (c *IAM) AddUserToGroup(input *AddUserToGroupInput) (*AddUserToGroupOutput, error)

Adds the specified user to the specified group.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AddUserToGroupInput{
		GroupName: aws.String("groupNameType"),        // Required
		UserName:  aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.AddUserToGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AddUserToGroupRequest

func (c *IAM) AddUserToGroupRequest(input *AddUserToGroupInput) (req *request.Request, output *AddUserToGroupOutput)

AddUserToGroupRequest generates a request for the AddUserToGroup operation.

func (*IAM) AttachGroupPolicy

func (c *IAM) AttachGroupPolicy(input *AttachGroupPolicyInput) (*AttachGroupPolicyOutput, error)

Attaches the specified managed policy to the specified group.

You use this API to attach a managed policy to a group. To embed an inline policy in a group, use PutGroupPolicy.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AttachGroupPolicyInput{
		GroupName: aws.String("groupNameType"), // Required
		PolicyArn: aws.String("arnType"),       // Required
	}
	resp, err := svc.AttachGroupPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AttachGroupPolicyRequest

func (c *IAM) AttachGroupPolicyRequest(input *AttachGroupPolicyInput) (req *request.Request, output *AttachGroupPolicyOutput)

AttachGroupPolicyRequest generates a request for the AttachGroupPolicy operation.

func (*IAM) AttachRolePolicy

func (c *IAM) AttachRolePolicy(input *AttachRolePolicyInput) (*AttachRolePolicyOutput, error)

Attaches the specified managed policy to the specified role.

When you attach a managed policy to a role, the managed policy is used as the role's access (permissions) policy. You cannot use a managed policy as the role's trust policy. The role's trust policy is created at the same time as the role, using CreateRole. You can update a role's trust policy using UpdateAssumeRolePolicy.

Use this API to attach a managed policy to a role. To embed an inline policy in a role, use PutRolePolicy. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AttachRolePolicyInput{
		PolicyArn: aws.String("arnType"),      // Required
		RoleName:  aws.String("roleNameType"), // Required
	}
	resp, err := svc.AttachRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AttachRolePolicyRequest

func (c *IAM) AttachRolePolicyRequest(input *AttachRolePolicyInput) (req *request.Request, output *AttachRolePolicyOutput)

AttachRolePolicyRequest generates a request for the AttachRolePolicy operation.

func (*IAM) AttachUserPolicy

func (c *IAM) AttachUserPolicy(input *AttachUserPolicyInput) (*AttachUserPolicyOutput, error)

Attaches the specified managed policy to the specified user.

You use this API to attach a managed policy to a user. To embed an inline policy in a user, use PutUserPolicy.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.AttachUserPolicyInput{
		PolicyArn: aws.String("arnType"),      // Required
		UserName:  aws.String("userNameType"), // Required
	}
	resp, err := svc.AttachUserPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) AttachUserPolicyRequest

func (c *IAM) AttachUserPolicyRequest(input *AttachUserPolicyInput) (req *request.Request, output *AttachUserPolicyOutput)

AttachUserPolicyRequest generates a request for the AttachUserPolicy operation.

func (*IAM) ChangePassword

func (c *IAM) ChangePassword(input *ChangePasswordInput) (*ChangePasswordOutput, error)

Changes the password of the IAM user who is calling this action. The root account password is not affected by this action.

To change the password for a different user, see UpdateLoginProfile. For more information about modifying passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ChangePasswordInput{
		NewPassword: aws.String("passwordType"), // Required
		OldPassword: aws.String("passwordType"), // Required
	}
	resp, err := svc.ChangePassword(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ChangePasswordRequest

func (c *IAM) ChangePasswordRequest(input *ChangePasswordInput) (req *request.Request, output *ChangePasswordOutput)

ChangePasswordRequest generates a request for the ChangePassword operation.

func (*IAM) CreateAccessKey

func (c *IAM) CreateAccessKey(input *CreateAccessKeyInput) (*CreateAccessKeyOutput, error)

Creates a new AWS secret access key and corresponding AWS access key ID for the specified user. The default status for new keys is Active.

If you do not specify a user name, IAM determines the user name implicitly

based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

For information about limits on the number of keys you can create, see

Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

To ensure the security of your AWS account, the secret access key is accessible

only during key and user creation. You must save the key (for example, in a text file) if you want to be able to access it again. If a secret key is lost, you can delete the access keys for the associated user and then create new keys.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateAccessKeyInput{
		UserName: aws.String("existingUserNameType"),
	}
	resp, err := svc.CreateAccessKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateAccessKeyRequest

func (c *IAM) CreateAccessKeyRequest(input *CreateAccessKeyInput) (req *request.Request, output *CreateAccessKeyOutput)

CreateAccessKeyRequest generates a request for the CreateAccessKey operation.

func (*IAM) CreateAccountAlias

func (c *IAM) CreateAccountAlias(input *CreateAccountAliasInput) (*CreateAccountAliasOutput, error)

Creates an alias for your AWS account. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateAccountAliasInput{
		AccountAlias: aws.String("accountAliasType"), // Required
	}
	resp, err := svc.CreateAccountAlias(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateAccountAliasRequest

func (c *IAM) CreateAccountAliasRequest(input *CreateAccountAliasInput) (req *request.Request, output *CreateAccountAliasOutput)

CreateAccountAliasRequest generates a request for the CreateAccountAlias operation.

func (*IAM) CreateGroup

func (c *IAM) CreateGroup(input *CreateGroupInput) (*CreateGroupOutput, error)

Creates a new group.

For information about the number of groups you can create, see Limitations

on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateGroupInput{
		GroupName: aws.String("groupNameType"), // Required
		Path:      aws.String("pathType"),
	}
	resp, err := svc.CreateGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateGroupRequest

func (c *IAM) CreateGroupRequest(input *CreateGroupInput) (req *request.Request, output *CreateGroupOutput)

CreateGroupRequest generates a request for the CreateGroup operation.

func (*IAM) CreateInstanceProfile

func (c *IAM) CreateInstanceProfile(input *CreateInstanceProfileInput) (*CreateInstanceProfileOutput, error)

Creates a new instance profile. For information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

For information about the number of instance profiles you can create, see

Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateInstanceProfileInput{
		InstanceProfileName: aws.String("instanceProfileNameType"), // Required
		Path:                aws.String("pathType"),
	}
	resp, err := svc.CreateInstanceProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateInstanceProfileRequest

func (c *IAM) CreateInstanceProfileRequest(input *CreateInstanceProfileInput) (req *request.Request, output *CreateInstanceProfileOutput)

CreateInstanceProfileRequest generates a request for the CreateInstanceProfile operation.

func (*IAM) CreateLoginProfile

func (c *IAM) CreateLoginProfile(input *CreateLoginProfileInput) (*CreateLoginProfileOutput, error)

Creates a password for the specified user, giving the user the ability to access AWS services through the AWS Management Console. For more information about managing passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateLoginProfileInput{
		Password:              aws.String("passwordType"), // Required
		UserName:              aws.String("userNameType"), // Required
		PasswordResetRequired: aws.Bool(true),
	}
	resp, err := svc.CreateLoginProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateLoginProfileRequest

func (c *IAM) CreateLoginProfileRequest(input *CreateLoginProfileInput) (req *request.Request, output *CreateLoginProfileOutput)

CreateLoginProfileRequest generates a request for the CreateLoginProfile operation.

func (*IAM) CreateOpenIDConnectProvider

func (c *IAM) CreateOpenIDConnectProvider(input *CreateOpenIDConnectProviderInput) (*CreateOpenIDConnectProviderOutput, error)

Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC) (http://openid.net/connect/).

The OIDC provider that you create with this operation can be used as a principal in a role's trust policy to establish a trust relationship between AWS and the OIDC provider.

When you create the IAM OIDC provider, you specify the URL of the OIDC identity provider (IdP) to trust, a list of client IDs (also known as audiences) that identify the application or applications that are allowed to authenticate using the OIDC provider, and a list of thumbprints of the server certificate(s) that the IdP uses. You get all of this information from the OIDC IdP that you want to use for access to AWS.

Because trust for the OIDC provider is ultimately derived from the IAM provider that this action creates, it is a best practice to limit access to the CreateOpenIDConnectProvider action to highly-privileged users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateOpenIDConnectProviderInput{
		ThumbprintList: []*string{ // Required
			aws.String("thumbprintType"), // Required
			// More values...
		},
		Url: aws.String("OpenIDConnectProviderUrlType"), // Required
		ClientIDList: []*string{
			aws.String("clientIDType"), // Required
			// More values...
		},
	}
	resp, err := svc.CreateOpenIDConnectProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateOpenIDConnectProviderRequest

func (c *IAM) CreateOpenIDConnectProviderRequest(input *CreateOpenIDConnectProviderInput) (req *request.Request, output *CreateOpenIDConnectProviderOutput)

CreateOpenIDConnectProviderRequest generates a request for the CreateOpenIDConnectProvider operation.

func (*IAM) CreatePolicy

func (c *IAM) CreatePolicy(input *CreatePolicyInput) (*CreatePolicyOutput, error)

Creates a new managed policy for your AWS account.

This operation creates a policy version with a version identifier of v1 and sets v1 as the policy's default version. For more information about policy versions, see Versioning for Managed Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the IAM User Guide.

For more information about managed policies in general, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreatePolicyInput{
		PolicyDocument: aws.String("policyDocumentType"), // Required
		PolicyName:     aws.String("policyNameType"),     // Required
		Description:    aws.String("policyDescriptionType"),
		Path:           aws.String("policyPathType"),
	}
	resp, err := svc.CreatePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreatePolicyRequest

func (c *IAM) CreatePolicyRequest(input *CreatePolicyInput) (req *request.Request, output *CreatePolicyOutput)

CreatePolicyRequest generates a request for the CreatePolicy operation.

func (*IAM) CreatePolicyVersion

func (c *IAM) CreatePolicyVersion(input *CreatePolicyVersionInput) (*CreatePolicyVersionOutput, error)

Creates a new version of the specified managed policy. To update a managed policy, you create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.

Optionally, you can set the new version as the policy's default version. The default version is the operative version; that is, 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreatePolicyVersionInput{
		PolicyArn:      aws.String("arnType"),            // Required
		PolicyDocument: aws.String("policyDocumentType"), // Required
		SetAsDefault:   aws.Bool(true),
	}
	resp, err := svc.CreatePolicyVersion(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreatePolicyVersionRequest

func (c *IAM) CreatePolicyVersionRequest(input *CreatePolicyVersionInput) (req *request.Request, output *CreatePolicyVersionOutput)

CreatePolicyVersionRequest generates a request for the CreatePolicyVersion operation.

func (*IAM) CreateRole

func (c *IAM) CreateRole(input *CreateRoleInput) (*CreateRoleOutput, error)

Creates a new role for your AWS account. For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). For information about limitations on role names and the number of roles you can create, go to Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateRoleInput{
		AssumeRolePolicyDocument: aws.String("policyDocumentType"), // Required
		RoleName:                 aws.String("roleNameType"),       // Required
		Path:                     aws.String("pathType"),
	}
	resp, err := svc.CreateRole(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateRoleRequest

func (c *IAM) CreateRoleRequest(input *CreateRoleInput) (req *request.Request, output *CreateRoleOutput)

CreateRoleRequest generates a request for the CreateRole operation.

func (*IAM) CreateSAMLProvider

func (c *IAM) CreateSAMLProvider(input *CreateSAMLProviderInput) (*CreateSAMLProviderOutput, error)

Creates an IAM entity to describe an identity provider (IdP) that supports SAML 2.0.

The SAML provider that you create with this operation can be used as a

principal in a role's trust policy to establish a trust relationship between AWS and a SAML identity provider. You can create an IAM role that supports Web-based single sign-on (SSO) to the AWS Management Console or one that supports API access to AWS.

When you create the SAML provider, you upload an a SAML metadata document

that you get from your IdP and that 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.

This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).
 For more information, see Enabling SAML 2.0 Federated Users to Access the

AWS Management Console (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html) and About SAML 2.0-based Federation (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateSAMLProviderInput{
		Name:                 aws.String("SAMLProviderNameType"),     // Required
		SAMLMetadataDocument: aws.String("SAMLMetadataDocumentType"), // Required
	}
	resp, err := svc.CreateSAMLProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateSAMLProviderRequest

func (c *IAM) CreateSAMLProviderRequest(input *CreateSAMLProviderInput) (req *request.Request, output *CreateSAMLProviderOutput)

CreateSAMLProviderRequest generates a request for the CreateSAMLProvider operation.

func (*IAM) CreateUser

func (c *IAM) CreateUser(input *CreateUserInput) (*CreateUserOutput, error)

Creates a new user for your AWS account.

For information about limitations on the number of users you can create,

see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateUserInput{
		UserName: aws.String("userNameType"), // Required
		Path:     aws.String("pathType"),
	}
	resp, err := svc.CreateUser(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateUserRequest

func (c *IAM) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput)

CreateUserRequest generates a request for the CreateUser operation.

func (*IAM) CreateVirtualMFADevice

func (c *IAM) CreateVirtualMFADevice(input *CreateVirtualMFADeviceInput) (*CreateVirtualMFADeviceOutput, error)

Creates a new virtual MFA device for the AWS account. After creating the virtual MFA, use EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) in the Using IAM guide.

For information about limits on the number of MFA devices you can create, see Limitations on Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the Using IAM guide.

The seed information contained in the QR code and the Base32 string should be treated like any other secret access information, such as your AWS access keys or your passwords. After you provision your virtual device, you should ensure that the information is destroyed following secure procedures.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.CreateVirtualMFADeviceInput{
		VirtualMFADeviceName: aws.String("virtualMFADeviceName"), // Required
		Path:                 aws.String("pathType"),
	}
	resp, err := svc.CreateVirtualMFADevice(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) CreateVirtualMFADeviceRequest

func (c *IAM) CreateVirtualMFADeviceRequest(input *CreateVirtualMFADeviceInput) (req *request.Request, output *CreateVirtualMFADeviceOutput)

CreateVirtualMFADeviceRequest generates a request for the CreateVirtualMFADevice operation.

func (*IAM) DeactivateMFADevice

func (c *IAM) DeactivateMFADevice(input *DeactivateMFADeviceInput) (*DeactivateMFADeviceOutput, error)

Deactivates the specified MFA device and removes it from association with the user name for which it was originally enabled.

For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeactivateMFADeviceInput{
		SerialNumber: aws.String("serialNumberType"),     // Required
		UserName:     aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.DeactivateMFADevice(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeactivateMFADeviceRequest

func (c *IAM) DeactivateMFADeviceRequest(input *DeactivateMFADeviceInput) (req *request.Request, output *DeactivateMFADeviceOutput)

DeactivateMFADeviceRequest generates a request for the DeactivateMFADevice operation.

func (*IAM) DeleteAccessKey

func (c *IAM) DeleteAccessKey(input *DeleteAccessKeyInput) (*DeleteAccessKeyOutput, error)

Deletes the access key associated with the specified user.

If you do not specify a user name, IAM determines the user name implicitly

based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteAccessKeyInput{
		AccessKeyId: aws.String("accessKeyIdType"), // Required
		UserName:    aws.String("existingUserNameType"),
	}
	resp, err := svc.DeleteAccessKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteAccessKeyRequest

func (c *IAM) DeleteAccessKeyRequest(input *DeleteAccessKeyInput) (req *request.Request, output *DeleteAccessKeyOutput)

DeleteAccessKeyRequest generates a request for the DeleteAccessKey operation.

func (*IAM) DeleteAccountAlias

func (c *IAM) DeleteAccountAlias(input *DeleteAccountAliasInput) (*DeleteAccountAliasOutput, error)

Deletes the specified AWS account alias. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteAccountAliasInput{
		AccountAlias: aws.String("accountAliasType"), // Required
	}
	resp, err := svc.DeleteAccountAlias(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteAccountAliasRequest

func (c *IAM) DeleteAccountAliasRequest(input *DeleteAccountAliasInput) (req *request.Request, output *DeleteAccountAliasOutput)

DeleteAccountAliasRequest generates a request for the DeleteAccountAlias operation.

func (*IAM) DeleteAccountPasswordPolicy

func (c *IAM) DeleteAccountPasswordPolicy(input *DeleteAccountPasswordPolicyInput) (*DeleteAccountPasswordPolicyOutput, error)

Deletes the password policy for the AWS account.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.DeleteAccountPasswordPolicyInput
	resp, err := svc.DeleteAccountPasswordPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteAccountPasswordPolicyRequest

func (c *IAM) DeleteAccountPasswordPolicyRequest(input *DeleteAccountPasswordPolicyInput) (req *request.Request, output *DeleteAccountPasswordPolicyOutput)

DeleteAccountPasswordPolicyRequest generates a request for the DeleteAccountPasswordPolicy operation.

func (*IAM) DeleteGroup

func (c *IAM) DeleteGroup(input *DeleteGroupInput) (*DeleteGroupOutput, error)

Deletes the specified group. The group must not contain any users or have any attached policies.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteGroupInput{
		GroupName: aws.String("groupNameType"), // Required
	}
	resp, err := svc.DeleteGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteGroupPolicy

func (c *IAM) DeleteGroupPolicy(input *DeleteGroupPolicyInput) (*DeleteGroupPolicyOutput, error)

Deletes the specified inline policy that is embedded in the specified group.

A group can also have managed policies attached to it. To detach a managed policy from a group, use DetachGroupPolicy. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteGroupPolicyInput{
		GroupName:  aws.String("groupNameType"),  // Required
		PolicyName: aws.String("policyNameType"), // Required
	}
	resp, err := svc.DeleteGroupPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteGroupPolicyRequest

func (c *IAM) DeleteGroupPolicyRequest(input *DeleteGroupPolicyInput) (req *request.Request, output *DeleteGroupPolicyOutput)

DeleteGroupPolicyRequest generates a request for the DeleteGroupPolicy operation.

func (*IAM) DeleteGroupRequest

func (c *IAM) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request, output *DeleteGroupOutput)

DeleteGroupRequest generates a request for the DeleteGroup operation.

func (*IAM) DeleteInstanceProfile

func (c *IAM) DeleteInstanceProfile(input *DeleteInstanceProfileInput) (*DeleteInstanceProfileOutput, error)

Deletes the specified instance profile. The instance profile must not have an associated role.

Make sure you do not have any Amazon EC2 instances running with the instance

profile you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance. For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteInstanceProfileInput{
		InstanceProfileName: aws.String("instanceProfileNameType"), // Required
	}
	resp, err := svc.DeleteInstanceProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteInstanceProfileRequest

func (c *IAM) DeleteInstanceProfileRequest(input *DeleteInstanceProfileInput) (req *request.Request, output *DeleteInstanceProfileOutput)

DeleteInstanceProfileRequest generates a request for the DeleteInstanceProfile operation.

func (*IAM) DeleteLoginProfile

func (c *IAM) DeleteLoginProfile(input *DeleteLoginProfileInput) (*DeleteLoginProfileOutput, error)

Deletes the password for the specified user, which terminates the user's ability to access AWS services through the AWS Management Console.

Deleting a user's password does not prevent a user from accessing IAM through

the command line interface or the API. To prevent all user access you must also either make the access key inactive or delete it. For more information about making keys inactive or deleting them, see UpdateAccessKey and DeleteAccessKey.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteLoginProfileInput{
		UserName: aws.String("userNameType"), // Required
	}
	resp, err := svc.DeleteLoginProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteLoginProfileRequest

func (c *IAM) DeleteLoginProfileRequest(input *DeleteLoginProfileInput) (req *request.Request, output *DeleteLoginProfileOutput)

DeleteLoginProfileRequest generates a request for the DeleteLoginProfile operation.

func (*IAM) DeleteOpenIDConnectProvider

func (c *IAM) DeleteOpenIDConnectProvider(input *DeleteOpenIDConnectProviderInput) (*DeleteOpenIDConnectProviderOutput, error)

Deletes an IAM OpenID Connect identity provider.

Deleting an OIDC provider does not update any roles that reference the provider as a principal in their trust policies. Any attempt to assume a role that references a provider that has been deleted will fail.

This action is idempotent; it does not fail or return an error if you call the action for a provider that was already deleted.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteOpenIDConnectProviderInput{
		OpenIDConnectProviderArn: aws.String("arnType"), // Required
	}
	resp, err := svc.DeleteOpenIDConnectProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteOpenIDConnectProviderRequest

func (c *IAM) DeleteOpenIDConnectProviderRequest(input *DeleteOpenIDConnectProviderInput) (req *request.Request, output *DeleteOpenIDConnectProviderOutput)

DeleteOpenIDConnectProviderRequest generates a request for the DeleteOpenIDConnectProvider operation.

func (*IAM) DeletePolicy

func (c *IAM) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error)

Deletes the specified managed policy.

Before you can delete a managed policy, you must detach the policy from all users, groups, and roles that it is attached to, and you must delete all of the policy's versions. The following steps describe the process for deleting a managed policy: Detach the policy from all users, groups, and roles that the policy is attached to, using the DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy APIs. To list all the users, groups, and roles that a policy is attached to, use ListEntitiesForPolicy. Delete all versions of the policy using DeletePolicyVersion. To list the policy's versions, use ListPolicyVersions. You cannot use DeletePolicyVersion to delete the version that is marked as the default version. You delete the policy's default version in the next step of the process. Delete the policy (this automatically deletes the policy's default version) using this API.

For information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeletePolicyInput{
		PolicyArn: aws.String("arnType"), // Required
	}
	resp, err := svc.DeletePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeletePolicyRequest

func (c *IAM) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput)

DeletePolicyRequest generates a request for the DeletePolicy operation.

func (*IAM) DeletePolicyVersion

func (c *IAM) DeletePolicyVersion(input *DeletePolicyVersionInput) (*DeletePolicyVersionOutput, error)

Deletes the specified version of the specified managed policy.

You cannot delete the default version of a policy using this API. To delete the default version of a policy, use DeletePolicy. To find out which version of a policy is marked as the default version, use ListPolicyVersions.

For information about versions for managed policies, refer to Versioning for Managed Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeletePolicyVersionInput{
		PolicyArn: aws.String("arnType"),             // Required
		VersionId: aws.String("policyVersionIdType"), // Required
	}
	resp, err := svc.DeletePolicyVersion(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeletePolicyVersionRequest

func (c *IAM) DeletePolicyVersionRequest(input *DeletePolicyVersionInput) (req *request.Request, output *DeletePolicyVersionOutput)

DeletePolicyVersionRequest generates a request for the DeletePolicyVersion operation.

func (*IAM) DeleteRole

func (c *IAM) DeleteRole(input *DeleteRoleInput) (*DeleteRoleOutput, error)

Deletes the specified role. The role must not have any policies attached. For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html).

Make sure you do not have any Amazon EC2 instances running with the role you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteRoleInput{
		RoleName: aws.String("roleNameType"), // Required
	}
	resp, err := svc.DeleteRole(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteRolePolicy

func (c *IAM) DeleteRolePolicy(input *DeleteRolePolicyInput) (*DeleteRolePolicyOutput, error)

Deletes the specified inline policy that is embedded in the specified role.

A role can also have managed policies attached to it. To detach a managed policy from a role, use DetachRolePolicy. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteRolePolicyInput{
		PolicyName: aws.String("policyNameType"), // Required
		RoleName:   aws.String("roleNameType"),   // Required
	}
	resp, err := svc.DeleteRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteRolePolicyRequest

func (c *IAM) DeleteRolePolicyRequest(input *DeleteRolePolicyInput) (req *request.Request, output *DeleteRolePolicyOutput)

DeleteRolePolicyRequest generates a request for the DeleteRolePolicy operation.

func (*IAM) DeleteRoleRequest

func (c *IAM) DeleteRoleRequest(input *DeleteRoleInput) (req *request.Request, output *DeleteRoleOutput)

DeleteRoleRequest generates a request for the DeleteRole operation.

func (*IAM) DeleteSAMLProvider

func (c *IAM) DeleteSAMLProvider(input *DeleteSAMLProviderInput) (*DeleteSAMLProviderOutput, error)

Deletes a SAML provider.

Deleting the provider does not update any roles that reference the SAML

provider as a principal in their trust policies. Any attempt to assume a role that references a SAML provider that has been deleted will fail.

This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteSAMLProviderInput{
		SAMLProviderArn: aws.String("arnType"), // Required
	}
	resp, err := svc.DeleteSAMLProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteSAMLProviderRequest

func (c *IAM) DeleteSAMLProviderRequest(input *DeleteSAMLProviderInput) (req *request.Request, output *DeleteSAMLProviderOutput)

DeleteSAMLProviderRequest generates a request for the DeleteSAMLProvider operation.

func (*IAM) DeleteSSHPublicKey

func (c *IAM) DeleteSSHPublicKey(input *DeleteSSHPublicKeyInput) (*DeleteSSHPublicKeyOutput, error)

Deletes the specified SSH public key.

The SSH public key deleted by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) in the AWS CodeCommit User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteSSHPublicKeyInput{
		SSHPublicKeyId: aws.String("publicKeyIdType"), // Required
		UserName:       aws.String("userNameType"),    // Required
	}
	resp, err := svc.DeleteSSHPublicKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteSSHPublicKeyRequest

func (c *IAM) DeleteSSHPublicKeyRequest(input *DeleteSSHPublicKeyInput) (req *request.Request, output *DeleteSSHPublicKeyOutput)

DeleteSSHPublicKeyRequest generates a request for the DeleteSSHPublicKey operation.

func (*IAM) DeleteServerCertificate

func (c *IAM) DeleteServerCertificate(input *DeleteServerCertificateInput) (*DeleteServerCertificateOutput, error)

Deletes the specified server certificate.

For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) in the IAM User Guide.

If you are using a server certificate with Elastic Load Balancing, deleting

the certificate could have implications for your application. If Elastic Load Balancing doesn't detect the deletion of bound certificates, it may continue to use the certificates. This could cause Elastic Load Balancing to stop accepting traffic. We recommend that you remove the reference to the certificate from Elastic Load Balancing before using this command to delete the certificate. For more information, go to DeleteLoadBalancerListeners (http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DeleteLoadBalancerListeners.html) in the Elastic Load Balancing API Reference.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteServerCertificateInput{
		ServerCertificateName: aws.String("serverCertificateNameType"), // Required
	}
	resp, err := svc.DeleteServerCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteServerCertificateRequest

func (c *IAM) DeleteServerCertificateRequest(input *DeleteServerCertificateInput) (req *request.Request, output *DeleteServerCertificateOutput)

DeleteServerCertificateRequest generates a request for the DeleteServerCertificate operation.

func (*IAM) DeleteSigningCertificate

func (c *IAM) DeleteSigningCertificate(input *DeleteSigningCertificateInput) (*DeleteSigningCertificateOutput, error)

Deletes the specified signing certificate associated with the specified user.

If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteSigningCertificateInput{
		CertificateId: aws.String("certificateIdType"), // Required
		UserName:      aws.String("existingUserNameType"),
	}
	resp, err := svc.DeleteSigningCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteSigningCertificateRequest

func (c *IAM) DeleteSigningCertificateRequest(input *DeleteSigningCertificateInput) (req *request.Request, output *DeleteSigningCertificateOutput)

DeleteSigningCertificateRequest generates a request for the DeleteSigningCertificate operation.

func (*IAM) DeleteUser

func (c *IAM) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error)

Deletes the specified user. The user must not belong to any groups, have any keys or signing certificates, or have any attached policies.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteUserInput{
		UserName: aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.DeleteUser(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteUserPolicy

func (c *IAM) DeleteUserPolicy(input *DeleteUserPolicyInput) (*DeleteUserPolicyOutput, error)

Deletes the specified inline policy that is embedded in the specified user.

A user can also have managed policies attached to it. To detach a managed policy from a user, use DetachUserPolicy. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteUserPolicyInput{
		PolicyName: aws.String("policyNameType"),       // Required
		UserName:   aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.DeleteUserPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteUserPolicyRequest

func (c *IAM) DeleteUserPolicyRequest(input *DeleteUserPolicyInput) (req *request.Request, output *DeleteUserPolicyOutput)

DeleteUserPolicyRequest generates a request for the DeleteUserPolicy operation.

func (*IAM) DeleteUserRequest

func (c *IAM) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput)

DeleteUserRequest generates a request for the DeleteUser operation.

func (*IAM) DeleteVirtualMFADevice

func (c *IAM) DeleteVirtualMFADevice(input *DeleteVirtualMFADeviceInput) (*DeleteVirtualMFADeviceOutput, error)

Deletes a virtual MFA device.

You must deactivate a user's virtual MFA device before you can delete it.

For information about deactivating MFA devices, see DeactivateMFADevice.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DeleteVirtualMFADeviceInput{
		SerialNumber: aws.String("serialNumberType"), // Required
	}
	resp, err := svc.DeleteVirtualMFADevice(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DeleteVirtualMFADeviceRequest

func (c *IAM) DeleteVirtualMFADeviceRequest(input *DeleteVirtualMFADeviceInput) (req *request.Request, output *DeleteVirtualMFADeviceOutput)

DeleteVirtualMFADeviceRequest generates a request for the DeleteVirtualMFADevice operation.

func (*IAM) DetachGroupPolicy

func (c *IAM) DetachGroupPolicy(input *DetachGroupPolicyInput) (*DetachGroupPolicyOutput, error)

Removes the specified managed policy from the specified group.

A group can also have inline policies embedded with it. To delete an inline policy, use the DeleteGroupPolicy API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DetachGroupPolicyInput{
		GroupName: aws.String("groupNameType"), // Required
		PolicyArn: aws.String("arnType"),       // Required
	}
	resp, err := svc.DetachGroupPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DetachGroupPolicyRequest

func (c *IAM) DetachGroupPolicyRequest(input *DetachGroupPolicyInput) (req *request.Request, output *DetachGroupPolicyOutput)

DetachGroupPolicyRequest generates a request for the DetachGroupPolicy operation.

func (*IAM) DetachRolePolicy

func (c *IAM) DetachRolePolicy(input *DetachRolePolicyInput) (*DetachRolePolicyOutput, error)

Removes the specified managed policy from the specified role.

A role can also have inline policies embedded with it. To delete an inline policy, use the DeleteRolePolicy API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DetachRolePolicyInput{
		PolicyArn: aws.String("arnType"),      // Required
		RoleName:  aws.String("roleNameType"), // Required
	}
	resp, err := svc.DetachRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DetachRolePolicyRequest

func (c *IAM) DetachRolePolicyRequest(input *DetachRolePolicyInput) (req *request.Request, output *DetachRolePolicyOutput)

DetachRolePolicyRequest generates a request for the DetachRolePolicy operation.

func (*IAM) DetachUserPolicy

func (c *IAM) DetachUserPolicy(input *DetachUserPolicyInput) (*DetachUserPolicyOutput, error)

Removes the specified managed policy from the specified user.

A user can also have inline policies embedded with it. To delete an inline policy, use the DeleteUserPolicy API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.DetachUserPolicyInput{
		PolicyArn: aws.String("arnType"),      // Required
		UserName:  aws.String("userNameType"), // Required
	}
	resp, err := svc.DetachUserPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) DetachUserPolicyRequest

func (c *IAM) DetachUserPolicyRequest(input *DetachUserPolicyInput) (req *request.Request, output *DetachUserPolicyOutput)

DetachUserPolicyRequest generates a request for the DetachUserPolicy operation.

func (*IAM) EnableMFADevice

func (c *IAM) EnableMFADevice(input *EnableMFADeviceInput) (*EnableMFADeviceOutput, error)

Enables the specified MFA device and associates it with the specified user name. When enabled, the MFA device is required for every subsequent login by the user name associated with the device.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.EnableMFADeviceInput{
		AuthenticationCode1: aws.String("authenticationCodeType"), // Required
		AuthenticationCode2: aws.String("authenticationCodeType"), // Required
		SerialNumber:        aws.String("serialNumberType"),       // Required
		UserName:            aws.String("existingUserNameType"),   // Required
	}
	resp, err := svc.EnableMFADevice(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) EnableMFADeviceRequest

func (c *IAM) EnableMFADeviceRequest(input *EnableMFADeviceInput) (req *request.Request, output *EnableMFADeviceOutput)

EnableMFADeviceRequest generates a request for the EnableMFADevice operation.

func (*IAM) GenerateCredentialReport

func (c *IAM) GenerateCredentialReport(input *GenerateCredentialReportInput) (*GenerateCredentialReportOutput, error)

Generates a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.GenerateCredentialReportInput
	resp, err := svc.GenerateCredentialReport(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GenerateCredentialReportRequest

func (c *IAM) GenerateCredentialReportRequest(input *GenerateCredentialReportInput) (req *request.Request, output *GenerateCredentialReportOutput)

GenerateCredentialReportRequest generates a request for the GenerateCredentialReport operation.

func (*IAM) GetAccessKeyLastUsed

func (c *IAM) GetAccessKeyLastUsed(input *GetAccessKeyLastUsedInput) (*GetAccessKeyLastUsedOutput, error)

Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the AWS service and region that were specified in the last request made with that key.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetAccessKeyLastUsedInput{
		AccessKeyId: aws.String("accessKeyIdType"), // Required
	}
	resp, err := svc.GetAccessKeyLastUsed(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetAccessKeyLastUsedRequest

func (c *IAM) GetAccessKeyLastUsedRequest(input *GetAccessKeyLastUsedInput) (req *request.Request, output *GetAccessKeyLastUsedOutput)

GetAccessKeyLastUsedRequest generates a request for the GetAccessKeyLastUsed operation.

func (*IAM) GetAccountAuthorizationDetails

func (c *IAM) GetAccountAuthorizationDetails(input *GetAccountAuthorizationDetailsInput) (*GetAccountAuthorizationDetailsOutput, error)

Retrieves information about all IAM users, groups, roles, and policies in your account, including their relationships to one another. Use this API to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account.

You can optionally filter the results using the Filter parameter. You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetAccountAuthorizationDetailsInput{
		Filter: []*string{
			aws.String("EntityType"), // Required
			// More values...
		},
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.GetAccountAuthorizationDetails(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetAccountAuthorizationDetailsPages

func (c *IAM) GetAccountAuthorizationDetailsPages(input *GetAccountAuthorizationDetailsInput, fn func(p *GetAccountAuthorizationDetailsOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) GetAccountAuthorizationDetailsRequest

func (c *IAM) GetAccountAuthorizationDetailsRequest(input *GetAccountAuthorizationDetailsInput) (req *request.Request, output *GetAccountAuthorizationDetailsOutput)

GetAccountAuthorizationDetailsRequest generates a request for the GetAccountAuthorizationDetails operation.

func (*IAM) GetAccountPasswordPolicy

func (c *IAM) GetAccountPasswordPolicy(input *GetAccountPasswordPolicyInput) (*GetAccountPasswordPolicyOutput, error)

Retrieves the password policy for the AWS account. For more information about using a password policy, go to Managing an IAM Password Policy (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.GetAccountPasswordPolicyInput
	resp, err := svc.GetAccountPasswordPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetAccountPasswordPolicyRequest

func (c *IAM) GetAccountPasswordPolicyRequest(input *GetAccountPasswordPolicyInput) (req *request.Request, output *GetAccountPasswordPolicyOutput)

GetAccountPasswordPolicyRequest generates a request for the GetAccountPasswordPolicy operation.

func (*IAM) GetAccountSummary

func (c *IAM) GetAccountSummary(input *GetAccountSummaryInput) (*GetAccountSummaryOutput, error)

Retrieves information about IAM entity usage and IAM quotas in the AWS account.

For information about limitations on IAM entities, see Limitations on IAM

Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.GetAccountSummaryInput
	resp, err := svc.GetAccountSummary(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetAccountSummaryRequest

func (c *IAM) GetAccountSummaryRequest(input *GetAccountSummaryInput) (req *request.Request, output *GetAccountSummaryOutput)

GetAccountSummaryRequest generates a request for the GetAccountSummary operation.

func (*IAM) GetContextKeysForCustomPolicy

func (c *IAM) GetContextKeysForCustomPolicy(input *GetContextKeysForCustomPolicyInput) (*GetContextKeysForPolicyResponse, error)

Gets a list of all of the context keys referenced in Condition elements in the input policies. The policies are supplied as a list of one or more strings. To get the context keys from policies associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.

Context keys are variables maintained by AWS and its services that provide details about the context of an API query request, and can be evaluated by using the Condition element of an IAM policy. Use GetContextKeysForCustomPolicy to understand what key names and values you must supply when you call SimulateCustomPolicy. 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.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetContextKeysForCustomPolicyInput{
		PolicyInputList: []*string{ // Required
			aws.String("policyDocumentType"), // Required
			// More values...
		},
	}
	resp, err := svc.GetContextKeysForCustomPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetContextKeysForCustomPolicyRequest

func (c *IAM) GetContextKeysForCustomPolicyRequest(input *GetContextKeysForCustomPolicyInput) (req *request.Request, output *GetContextKeysForPolicyResponse)

GetContextKeysForCustomPolicyRequest generates a request for the GetContextKeysForCustomPolicy operation.

func (*IAM) GetContextKeysForPrincipalPolicy

func (c *IAM) GetContextKeysForPrincipalPolicy(input *GetContextKeysForPrincipalPolicyInput) (*GetContextKeysForPolicyResponse, error)

Gets a list of all of the context keys referenced in Condition elements in all of the IAM policies attached to the specified IAM entity. The entity can be an IAM user, group, or role. If you specify a user, then the request also includes all of the policies attached to groups that the user is a member of.

You can optionally include a list of one or more additional policies, specified as strings. If you want to include only a list of policies by string, use GetContextKeysForCustomPolicy instead.

Note: This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use GetContextKeysForCustomPolicy instead.

Context keys are variables maintained by AWS and its services that provide details about the context of an API query request, and can be evaluated by using the Condition element of an IAM policy. Use GetContextKeysForPrincipalPolicy to understand what key names and values you must supply when you call SimulatePrincipalPolicy.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetContextKeysForPrincipalPolicyInput{
		PolicySourceArn: aws.String("arnType"), // Required
		PolicyInputList: []*string{
			aws.String("policyDocumentType"), // Required
			// More values...
		},
	}
	resp, err := svc.GetContextKeysForPrincipalPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetContextKeysForPrincipalPolicyRequest

func (c *IAM) GetContextKeysForPrincipalPolicyRequest(input *GetContextKeysForPrincipalPolicyInput) (req *request.Request, output *GetContextKeysForPolicyResponse)

GetContextKeysForPrincipalPolicyRequest generates a request for the GetContextKeysForPrincipalPolicy operation.

func (*IAM) GetCredentialReport

func (c *IAM) GetCredentialReport(input *GetCredentialReportInput) (*GetCredentialReportOutput, error)

Retrieves a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.GetCredentialReportInput
	resp, err := svc.GetCredentialReport(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetCredentialReportRequest

func (c *IAM) GetCredentialReportRequest(input *GetCredentialReportInput) (req *request.Request, output *GetCredentialReportOutput)

GetCredentialReportRequest generates a request for the GetCredentialReport operation.

func (*IAM) GetGroup

func (c *IAM) GetGroup(input *GetGroupInput) (*GetGroupOutput, error)

Returns a list of users that are in the specified group. You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetGroupInput{
		GroupName: aws.String("groupNameType"), // Required
		Marker:    aws.String("markerType"),
		MaxItems:  aws.Int64(1),
	}
	resp, err := svc.GetGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetGroupPages

func (c *IAM) GetGroupPages(input *GetGroupInput, fn func(p *GetGroupOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) GetGroupPolicy

func (c *IAM) GetGroupPolicy(input *GetGroupPolicyInput) (*GetGroupPolicyOutput, error)

Retrieves the specified inline policy document that is embedded in the specified group.

A group can also have managed policies attached to it. To retrieve a managed policy document that is attached to a group, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetGroupPolicyInput{
		GroupName:  aws.String("groupNameType"),  // Required
		PolicyName: aws.String("policyNameType"), // Required
	}
	resp, err := svc.GetGroupPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetGroupPolicyRequest

func (c *IAM) GetGroupPolicyRequest(input *GetGroupPolicyInput) (req *request.Request, output *GetGroupPolicyOutput)

GetGroupPolicyRequest generates a request for the GetGroupPolicy operation.

func (*IAM) GetGroupRequest

func (c *IAM) GetGroupRequest(input *GetGroupInput) (req *request.Request, output *GetGroupOutput)

GetGroupRequest generates a request for the GetGroup operation.

func (*IAM) GetInstanceProfile

func (c *IAM) GetInstanceProfile(input *GetInstanceProfileInput) (*GetInstanceProfileOutput, error)

Retrieves information about the specified instance profile, including the instance profile's path, GUID, ARN, and role. For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html). For more information about ARNs, go to ARNs (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html#Identifiers_ARNs).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetInstanceProfileInput{
		InstanceProfileName: aws.String("instanceProfileNameType"), // Required
	}
	resp, err := svc.GetInstanceProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetInstanceProfileRequest

func (c *IAM) GetInstanceProfileRequest(input *GetInstanceProfileInput) (req *request.Request, output *GetInstanceProfileOutput)

GetInstanceProfileRequest generates a request for the GetInstanceProfile operation.

func (*IAM) GetLoginProfile

func (c *IAM) GetLoginProfile(input *GetLoginProfileInput) (*GetLoginProfileOutput, error)

Retrieves the user name and password-creation date for the specified user. If the user has not been assigned a password, the action returns a 404 (NoSuchEntity) error.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetLoginProfileInput{
		UserName: aws.String("userNameType"), // Required
	}
	resp, err := svc.GetLoginProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetLoginProfileRequest

func (c *IAM) GetLoginProfileRequest(input *GetLoginProfileInput) (req *request.Request, output *GetLoginProfileOutput)

GetLoginProfileRequest generates a request for the GetLoginProfile operation.

func (*IAM) GetOpenIDConnectProvider

func (c *IAM) GetOpenIDConnectProvider(input *GetOpenIDConnectProviderInput) (*GetOpenIDConnectProviderOutput, error)

Returns information about the specified OpenID Connect provider.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetOpenIDConnectProviderInput{
		OpenIDConnectProviderArn: aws.String("arnType"), // Required
	}
	resp, err := svc.GetOpenIDConnectProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetOpenIDConnectProviderRequest

func (c *IAM) GetOpenIDConnectProviderRequest(input *GetOpenIDConnectProviderInput) (req *request.Request, output *GetOpenIDConnectProviderOutput)

GetOpenIDConnectProviderRequest generates a request for the GetOpenIDConnectProvider operation.

func (*IAM) GetPolicy

func (c *IAM) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error)

Retrieves information about the specified managed policy, including the policy's default version and the total number of users, groups, and roles that the policy is attached to. For a list of the specific users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API. This API returns metadata about the policy. To retrieve the policy document for a specific version of the policy, use GetPolicyVersion.

This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded with a user, group, or role, use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetPolicyInput{
		PolicyArn: aws.String("arnType"), // Required
	}
	resp, err := svc.GetPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetPolicyRequest

func (c *IAM) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput)

GetPolicyRequest generates a request for the GetPolicy operation.

func (*IAM) GetPolicyVersion

func (c *IAM) GetPolicyVersion(input *GetPolicyVersionInput) (*GetPolicyVersionOutput, error)

Retrieves information about the specified version of the specified managed policy, including the policy document.

To list the available versions for a policy, use ListPolicyVersions.

This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded in a user, group, or role, use the GetUserPolicy, GetGroupPolicy, or GetRolePolicy API.

For more information about the types of policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetPolicyVersionInput{
		PolicyArn: aws.String("arnType"),             // Required
		VersionId: aws.String("policyVersionIdType"), // Required
	}
	resp, err := svc.GetPolicyVersion(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetPolicyVersionRequest

func (c *IAM) GetPolicyVersionRequest(input *GetPolicyVersionInput) (req *request.Request, output *GetPolicyVersionOutput)

GetPolicyVersionRequest generates a request for the GetPolicyVersion operation.

func (*IAM) GetRole

func (c *IAM) GetRole(input *GetRoleInput) (*GetRoleOutput, error)

Retrieves information about the specified role, including the role's path, GUID, ARN, and the policy granting permission to assume the role. For more information about ARNs, go to ARNs (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html#Identifiers_ARNs). For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetRoleInput{
		RoleName: aws.String("roleNameType"), // Required
	}
	resp, err := svc.GetRole(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetRolePolicy

func (c *IAM) GetRolePolicy(input *GetRolePolicyInput) (*GetRolePolicyOutput, error)

Retrieves the specified inline policy document that is embedded with the specified role.

A role can also have managed policies attached to it. To retrieve a managed policy document that is attached to a role, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

For more information about roles, go to Using Roles to Delegate Permissions and Federate Identities (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetRolePolicyInput{
		PolicyName: aws.String("policyNameType"), // Required
		RoleName:   aws.String("roleNameType"),   // Required
	}
	resp, err := svc.GetRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetRolePolicyRequest

func (c *IAM) GetRolePolicyRequest(input *GetRolePolicyInput) (req *request.Request, output *GetRolePolicyOutput)

GetRolePolicyRequest generates a request for the GetRolePolicy operation.

func (*IAM) GetRoleRequest

func (c *IAM) GetRoleRequest(input *GetRoleInput) (req *request.Request, output *GetRoleOutput)

GetRoleRequest generates a request for the GetRole operation.

func (*IAM) GetSAMLProvider

func (c *IAM) GetSAMLProvider(input *GetSAMLProviderInput) (*GetSAMLProviderOutput, error)

Returns the SAML provider metadocument that was uploaded when the provider was created or updated.

This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetSAMLProviderInput{
		SAMLProviderArn: aws.String("arnType"), // Required
	}
	resp, err := svc.GetSAMLProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetSAMLProviderRequest

func (c *IAM) GetSAMLProviderRequest(input *GetSAMLProviderInput) (req *request.Request, output *GetSAMLProviderOutput)

GetSAMLProviderRequest generates a request for the GetSAMLProvider operation.

func (*IAM) GetSSHPublicKey

func (c *IAM) GetSSHPublicKey(input *GetSSHPublicKeyInput) (*GetSSHPublicKeyOutput, error)

Retrieves the specified SSH public key, including metadata about the key.

The SSH public key retrieved by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) in the AWS CodeCommit User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetSSHPublicKeyInput{
		Encoding:       aws.String("encodingType"),    // Required
		SSHPublicKeyId: aws.String("publicKeyIdType"), // Required
		UserName:       aws.String("userNameType"),    // Required
	}
	resp, err := svc.GetSSHPublicKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetSSHPublicKeyRequest

func (c *IAM) GetSSHPublicKeyRequest(input *GetSSHPublicKeyInput) (req *request.Request, output *GetSSHPublicKeyOutput)

GetSSHPublicKeyRequest generates a request for the GetSSHPublicKey operation.

func (*IAM) GetServerCertificate

func (c *IAM) GetServerCertificate(input *GetServerCertificateInput) (*GetServerCertificateOutput, error)

Retrieves information about the specified server certificate.

For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetServerCertificateInput{
		ServerCertificateName: aws.String("serverCertificateNameType"), // Required
	}
	resp, err := svc.GetServerCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetServerCertificateRequest

func (c *IAM) GetServerCertificateRequest(input *GetServerCertificateInput) (req *request.Request, output *GetServerCertificateOutput)

GetServerCertificateRequest generates a request for the GetServerCertificate operation.

func (*IAM) GetUser

func (c *IAM) GetUser(input *GetUserInput) (*GetUserOutput, error)

Retrieves information about the specified user, including the user's creation date, path, unique ID, and ARN.

If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID used to sign the request.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetUserInput{
		UserName: aws.String("existingUserNameType"),
	}
	resp, err := svc.GetUser(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetUserPolicy

func (c *IAM) GetUserPolicy(input *GetUserPolicyInput) (*GetUserPolicyOutput, error)

Retrieves the specified inline policy document that is embedded in the specified user.

A user can also have managed policies attached to it. To retrieve a managed policy document that is attached to a user, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.

For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.GetUserPolicyInput{
		PolicyName: aws.String("policyNameType"),       // Required
		UserName:   aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.GetUserPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) GetUserPolicyRequest

func (c *IAM) GetUserPolicyRequest(input *GetUserPolicyInput) (req *request.Request, output *GetUserPolicyOutput)

GetUserPolicyRequest generates a request for the GetUserPolicy operation.

func (*IAM) GetUserRequest

func (c *IAM) GetUserRequest(input *GetUserInput) (req *request.Request, output *GetUserOutput)

GetUserRequest generates a request for the GetUser operation.

func (*IAM) ListAccessKeys

func (c *IAM) ListAccessKeys(input *ListAccessKeysInput) (*ListAccessKeysOutput, error)

Returns information about the access key IDs associated with the specified user. If there are none, the action returns an empty list.

Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

To ensure the security of your AWS account, the secret access key is accessible only during key and user creation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListAccessKeysInput{
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		UserName: aws.String("existingUserNameType"),
	}
	resp, err := svc.ListAccessKeys(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListAccessKeysPages

func (c *IAM) ListAccessKeysPages(input *ListAccessKeysInput, fn func(p *ListAccessKeysOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListAccessKeysRequest

func (c *IAM) ListAccessKeysRequest(input *ListAccessKeysInput) (req *request.Request, output *ListAccessKeysOutput)

ListAccessKeysRequest generates a request for the ListAccessKeys operation.

func (*IAM) ListAccountAliases

func (c *IAM) ListAccountAliases(input *ListAccountAliasesInput) (*ListAccountAliasesOutput, error)

Lists the account alias associated with the account (Note: you can have only one). For information about using an AWS account alias, see Using an Alias for Your AWS Account ID (http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListAccountAliasesInput{
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListAccountAliases(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListAccountAliasesPages

func (c *IAM) ListAccountAliasesPages(input *ListAccountAliasesInput, fn func(p *ListAccountAliasesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListAccountAliasesRequest

func (c *IAM) ListAccountAliasesRequest(input *ListAccountAliasesInput) (req *request.Request, output *ListAccountAliasesOutput)

ListAccountAliasesRequest generates a request for the ListAccountAliases operation.

func (*IAM) ListAttachedGroupPolicies

func (c *IAM) ListAttachedGroupPolicies(input *ListAttachedGroupPoliciesInput) (*ListAttachedGroupPoliciesOutput, error)

Lists all managed policies that are attached to the specified group.

A group can also have inline policies embedded with it. To list the inline policies for a group, use the ListGroupPolicies API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListAttachedGroupPoliciesInput{
		GroupName:  aws.String("groupNameType"), // Required
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("policyPathType"),
	}
	resp, err := svc.ListAttachedGroupPolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListAttachedGroupPoliciesPages

func (c *IAM) ListAttachedGroupPoliciesPages(input *ListAttachedGroupPoliciesInput, fn func(p *ListAttachedGroupPoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListAttachedGroupPoliciesRequest

func (c *IAM) ListAttachedGroupPoliciesRequest(input *ListAttachedGroupPoliciesInput) (req *request.Request, output *ListAttachedGroupPoliciesOutput)

ListAttachedGroupPoliciesRequest generates a request for the ListAttachedGroupPolicies operation.

func (*IAM) ListAttachedRolePolicies

func (c *IAM) ListAttachedRolePolicies(input *ListAttachedRolePoliciesInput) (*ListAttachedRolePoliciesOutput, error)

Lists all managed policies that are attached to the specified role.

A role can also have inline policies embedded with it. To list the inline policies for a role, use the ListRolePolicies API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified role (or none that match the specified path prefix), the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListAttachedRolePoliciesInput{
		RoleName:   aws.String("roleNameType"), // Required
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("policyPathType"),
	}
	resp, err := svc.ListAttachedRolePolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListAttachedRolePoliciesPages

func (c *IAM) ListAttachedRolePoliciesPages(input *ListAttachedRolePoliciesInput, fn func(p *ListAttachedRolePoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListAttachedRolePoliciesRequest

func (c *IAM) ListAttachedRolePoliciesRequest(input *ListAttachedRolePoliciesInput) (req *request.Request, output *ListAttachedRolePoliciesOutput)

ListAttachedRolePoliciesRequest generates a request for the ListAttachedRolePolicies operation.

func (*IAM) ListAttachedUserPolicies

func (c *IAM) ListAttachedUserPolicies(input *ListAttachedUserPoliciesInput) (*ListAttachedUserPoliciesOutput, error)

Lists all managed policies that are attached to the specified user.

A user can also have inline policies embedded with it. To list the inline policies for a user, use the ListUserPolicies API. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. You can use the PathPrefix parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListAttachedUserPoliciesInput{
		UserName:   aws.String("userNameType"), // Required
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("policyPathType"),
	}
	resp, err := svc.ListAttachedUserPolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListAttachedUserPoliciesPages

func (c *IAM) ListAttachedUserPoliciesPages(input *ListAttachedUserPoliciesInput, fn func(p *ListAttachedUserPoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListAttachedUserPoliciesRequest

func (c *IAM) ListAttachedUserPoliciesRequest(input *ListAttachedUserPoliciesInput) (req *request.Request, output *ListAttachedUserPoliciesOutput)

ListAttachedUserPoliciesRequest generates a request for the ListAttachedUserPolicies operation.

func (*IAM) ListEntitiesForPolicy

func (c *IAM) ListEntitiesForPolicy(input *ListEntitiesForPolicyInput) (*ListEntitiesForPolicyOutput, error)

Lists all users, groups, and roles that the specified managed policy is attached to.

You can use the optional EntityFilter parameter to limit the results to a particular type of entity (users, groups, or roles). For example, to list only the roles that are attached to the specified policy, set EntityFilter to Role.

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListEntitiesForPolicyInput{
		PolicyArn:    aws.String("arnType"), // Required
		EntityFilter: aws.String("EntityType"),
		Marker:       aws.String("markerType"),
		MaxItems:     aws.Int64(1),
		PathPrefix:   aws.String("pathType"),
	}
	resp, err := svc.ListEntitiesForPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListEntitiesForPolicyPages

func (c *IAM) ListEntitiesForPolicyPages(input *ListEntitiesForPolicyInput, fn func(p *ListEntitiesForPolicyOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListEntitiesForPolicyRequest

func (c *IAM) ListEntitiesForPolicyRequest(input *ListEntitiesForPolicyInput) (req *request.Request, output *ListEntitiesForPolicyOutput)

ListEntitiesForPolicyRequest generates a request for the ListEntitiesForPolicy operation.

func (*IAM) ListGroupPolicies

func (c *IAM) ListGroupPolicies(input *ListGroupPoliciesInput) (*ListGroupPoliciesOutput, error)

Lists the names of the inline policies that are embedded in the specified group.

A group can also have managed policies attached to it. To list the managed policies that are attached to a group, use ListAttachedGroupPolicies. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified group, the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListGroupPoliciesInput{
		GroupName: aws.String("groupNameType"), // Required
		Marker:    aws.String("markerType"),
		MaxItems:  aws.Int64(1),
	}
	resp, err := svc.ListGroupPolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListGroupPoliciesPages

func (c *IAM) ListGroupPoliciesPages(input *ListGroupPoliciesInput, fn func(p *ListGroupPoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListGroupPoliciesRequest

func (c *IAM) ListGroupPoliciesRequest(input *ListGroupPoliciesInput) (req *request.Request, output *ListGroupPoliciesOutput)

ListGroupPoliciesRequest generates a request for the ListGroupPolicies operation.

func (*IAM) ListGroups

func (c *IAM) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error)

Lists the groups that have the specified path prefix.

You can paginate the results using the MaxItems and Marker parameters.
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListGroupsInput{
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("pathPrefixType"),
	}
	resp, err := svc.ListGroups(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListGroupsForUser

func (c *IAM) ListGroupsForUser(input *ListGroupsForUserInput) (*ListGroupsForUserOutput, error)

Lists the groups the specified user belongs to.

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListGroupsForUserInput{
		UserName: aws.String("existingUserNameType"), // Required
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListGroupsForUser(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListGroupsForUserPages

func (c *IAM) ListGroupsForUserPages(input *ListGroupsForUserInput, fn func(p *ListGroupsForUserOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListGroupsForUserRequest

func (c *IAM) ListGroupsForUserRequest(input *ListGroupsForUserInput) (req *request.Request, output *ListGroupsForUserOutput)

ListGroupsForUserRequest generates a request for the ListGroupsForUser operation.

func (*IAM) ListGroupsPages

func (c *IAM) ListGroupsPages(input *ListGroupsInput, fn func(p *ListGroupsOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListGroupsRequest

func (c *IAM) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput)

ListGroupsRequest generates a request for the ListGroups operation.

func (*IAM) ListInstanceProfiles

func (c *IAM) ListInstanceProfiles(input *ListInstanceProfilesInput) (*ListInstanceProfilesOutput, error)

Lists the instance profiles that have the specified path prefix. If there are none, the action returns an empty list. For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListInstanceProfilesInput{
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("pathPrefixType"),
	}
	resp, err := svc.ListInstanceProfiles(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListInstanceProfilesForRole

func (c *IAM) ListInstanceProfilesForRole(input *ListInstanceProfilesForRoleInput) (*ListInstanceProfilesForRoleOutput, error)

Lists the instance profiles that have the specified associated role. If there are none, the action returns an empty list. For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListInstanceProfilesForRoleInput{
		RoleName: aws.String("roleNameType"), // Required
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListInstanceProfilesForRole(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListInstanceProfilesForRolePages

func (c *IAM) ListInstanceProfilesForRolePages(input *ListInstanceProfilesForRoleInput, fn func(p *ListInstanceProfilesForRoleOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListInstanceProfilesForRoleRequest

func (c *IAM) ListInstanceProfilesForRoleRequest(input *ListInstanceProfilesForRoleInput) (req *request.Request, output *ListInstanceProfilesForRoleOutput)

ListInstanceProfilesForRoleRequest generates a request for the ListInstanceProfilesForRole operation.

func (*IAM) ListInstanceProfilesPages

func (c *IAM) ListInstanceProfilesPages(input *ListInstanceProfilesInput, fn func(p *ListInstanceProfilesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListInstanceProfilesRequest

func (c *IAM) ListInstanceProfilesRequest(input *ListInstanceProfilesInput) (req *request.Request, output *ListInstanceProfilesOutput)

ListInstanceProfilesRequest generates a request for the ListInstanceProfiles operation.

func (*IAM) ListMFADevices

func (c *IAM) ListMFADevices(input *ListMFADevicesInput) (*ListMFADevicesOutput, error)

Lists the MFA devices. If the request includes the user name, then this action lists all the MFA devices associated with the specified user name. If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request.

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListMFADevicesInput{
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		UserName: aws.String("existingUserNameType"),
	}
	resp, err := svc.ListMFADevices(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListMFADevicesPages

func (c *IAM) ListMFADevicesPages(input *ListMFADevicesInput, fn func(p *ListMFADevicesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListMFADevicesRequest

func (c *IAM) ListMFADevicesRequest(input *ListMFADevicesInput) (req *request.Request, output *ListMFADevicesOutput)

ListMFADevicesRequest generates a request for the ListMFADevices operation.

func (*IAM) ListOpenIDConnectProviders

func (c *IAM) ListOpenIDConnectProviders(input *ListOpenIDConnectProvidersInput) (*ListOpenIDConnectProvidersOutput, error)

Lists information about the OpenID Connect providers in the AWS account.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.ListOpenIDConnectProvidersInput
	resp, err := svc.ListOpenIDConnectProviders(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListOpenIDConnectProvidersRequest

func (c *IAM) ListOpenIDConnectProvidersRequest(input *ListOpenIDConnectProvidersInput) (req *request.Request, output *ListOpenIDConnectProvidersOutput)

ListOpenIDConnectProvidersRequest generates a request for the ListOpenIDConnectProviders operation.

func (*IAM) ListPolicies

func (c *IAM) ListPolicies(input *ListPoliciesInput) (*ListPoliciesOutput, error)

Lists all the managed policies that are available to your account, including your own customer managed policies and all AWS managed policies.

You can filter the list of policies that is returned using the optional OnlyAttached, Scope, and PathPrefix parameters. For example, to list only the customer managed policies in your AWS account, set Scope to Local. To list only AWS managed policies, set Scope to AWS.

You can paginate the results using the MaxItems and Marker parameters.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListPoliciesInput{
		Marker:       aws.String("markerType"),
		MaxItems:     aws.Int64(1),
		OnlyAttached: aws.Bool(true),
		PathPrefix:   aws.String("policyPathType"),
		Scope:        aws.String("policyScopeType"),
	}
	resp, err := svc.ListPolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListPoliciesPages

func (c *IAM) ListPoliciesPages(input *ListPoliciesInput, fn func(p *ListPoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListPoliciesRequest

func (c *IAM) ListPoliciesRequest(input *ListPoliciesInput) (req *request.Request, output *ListPoliciesOutput)

ListPoliciesRequest generates a request for the ListPolicies operation.

func (*IAM) ListPolicyVersions

func (c *IAM) ListPolicyVersions(input *ListPolicyVersionsInput) (*ListPolicyVersionsOutput, error)

Lists information about the versions of the specified managed policy, including the version that is set as the policy's default version.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListPolicyVersionsInput{
		PolicyArn: aws.String("arnType"), // Required
		Marker:    aws.String("markerType"),
		MaxItems:  aws.Int64(1),
	}
	resp, err := svc.ListPolicyVersions(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListPolicyVersionsRequest

func (c *IAM) ListPolicyVersionsRequest(input *ListPolicyVersionsInput) (req *request.Request, output *ListPolicyVersionsOutput)

ListPolicyVersionsRequest generates a request for the ListPolicyVersions operation.

func (*IAM) ListRolePolicies

func (c *IAM) ListRolePolicies(input *ListRolePoliciesInput) (*ListRolePoliciesOutput, error)

Lists the names of the inline policies that are embedded in the specified role.

A role can also have managed policies attached to it. To list the managed policies that are attached to a role, use ListAttachedRolePolicies. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified role, the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListRolePoliciesInput{
		RoleName: aws.String("roleNameType"), // Required
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListRolePolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListRolePoliciesPages

func (c *IAM) ListRolePoliciesPages(input *ListRolePoliciesInput, fn func(p *ListRolePoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListRolePoliciesRequest

func (c *IAM) ListRolePoliciesRequest(input *ListRolePoliciesInput) (req *request.Request, output *ListRolePoliciesOutput)

ListRolePoliciesRequest generates a request for the ListRolePolicies operation.

func (*IAM) ListRoles

func (c *IAM) ListRoles(input *ListRolesInput) (*ListRolesOutput, error)

Lists the roles that have the specified path prefix. If there are none, the action returns an empty list. For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html).

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListRolesInput{
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("pathPrefixType"),
	}
	resp, err := svc.ListRoles(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListRolesPages

func (c *IAM) ListRolesPages(input *ListRolesInput, fn func(p *ListRolesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListRolesRequest

func (c *IAM) ListRolesRequest(input *ListRolesInput) (req *request.Request, output *ListRolesOutput)

ListRolesRequest generates a request for the ListRoles operation.

func (*IAM) ListSAMLProviders

func (c *IAM) ListSAMLProviders(input *ListSAMLProvidersInput) (*ListSAMLProvidersOutput, error)

Lists the SAML providers in the account.

This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	var params *iam.ListSAMLProvidersInput
	resp, err := svc.ListSAMLProviders(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListSAMLProvidersRequest

func (c *IAM) ListSAMLProvidersRequest(input *ListSAMLProvidersInput) (req *request.Request, output *ListSAMLProvidersOutput)

ListSAMLProvidersRequest generates a request for the ListSAMLProviders operation.

func (*IAM) ListSSHPublicKeys

func (c *IAM) ListSSHPublicKeys(input *ListSSHPublicKeysInput) (*ListSSHPublicKeysOutput, error)

Returns information about the SSH public keys associated with the specified IAM user. If there are none, the action returns an empty list.

The SSH public keys returned by this action are used only for authenticating the IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) in the AWS CodeCommit User Guide.

Although each user is limited to a small number of keys, you can still paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListSSHPublicKeysInput{
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		UserName: aws.String("userNameType"),
	}
	resp, err := svc.ListSSHPublicKeys(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListSSHPublicKeysRequest

func (c *IAM) ListSSHPublicKeysRequest(input *ListSSHPublicKeysInput) (req *request.Request, output *ListSSHPublicKeysOutput)

ListSSHPublicKeysRequest generates a request for the ListSSHPublicKeys operation.

func (*IAM) ListServerCertificates

func (c *IAM) ListServerCertificates(input *ListServerCertificatesInput) (*ListServerCertificatesOutput, error)

Lists the server certificates that have the specified path prefix. If none exist, the action returns an empty list.

You can paginate the results using the MaxItems and Marker parameters.

For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListServerCertificatesInput{
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("pathPrefixType"),
	}
	resp, err := svc.ListServerCertificates(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListServerCertificatesPages

func (c *IAM) ListServerCertificatesPages(input *ListServerCertificatesInput, fn func(p *ListServerCertificatesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListServerCertificatesRequest

func (c *IAM) ListServerCertificatesRequest(input *ListServerCertificatesInput) (req *request.Request, output *ListServerCertificatesOutput)

ListServerCertificatesRequest generates a request for the ListServerCertificates operation.

func (*IAM) ListSigningCertificates

func (c *IAM) ListSigningCertificates(input *ListSigningCertificatesInput) (*ListSigningCertificatesOutput, error)

Returns information about the signing certificates associated with the specified user. If there are none, the action returns an empty list.

Although each user is limited to a small number of signing certificates, you can still paginate the results using the MaxItems and Marker parameters.

If the UserName field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListSigningCertificatesInput{
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		UserName: aws.String("existingUserNameType"),
	}
	resp, err := svc.ListSigningCertificates(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListSigningCertificatesPages

func (c *IAM) ListSigningCertificatesPages(input *ListSigningCertificatesInput, fn func(p *ListSigningCertificatesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListSigningCertificatesRequest

func (c *IAM) ListSigningCertificatesRequest(input *ListSigningCertificatesInput) (req *request.Request, output *ListSigningCertificatesOutput)

ListSigningCertificatesRequest generates a request for the ListSigningCertificates operation.

func (*IAM) ListUserPolicies

func (c *IAM) ListUserPolicies(input *ListUserPoliciesInput) (*ListUserPoliciesOutput, error)

Lists the names of the inline policies embedded in the specified user.

A user can also have managed policies attached to it. To list the managed policies that are attached to a user, use ListAttachedUserPolicies. For more information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

You can paginate the results using the MaxItems and Marker parameters. If there are no inline policies embedded with the specified user, the action returns an empty list.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListUserPoliciesInput{
		UserName: aws.String("existingUserNameType"), // Required
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
	}
	resp, err := svc.ListUserPolicies(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListUserPoliciesPages

func (c *IAM) ListUserPoliciesPages(input *ListUserPoliciesInput, fn func(p *ListUserPoliciesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListUserPoliciesRequest

func (c *IAM) ListUserPoliciesRequest(input *ListUserPoliciesInput) (req *request.Request, output *ListUserPoliciesOutput)

ListUserPoliciesRequest generates a request for the ListUserPolicies operation.

func (*IAM) ListUsers

func (c *IAM) ListUsers(input *ListUsersInput) (*ListUsersOutput, error)

Lists the IAM users that have the specified path prefix. If no path prefix is specified, the action returns all users in the AWS account. If there are none, the action returns an empty list.

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListUsersInput{
		Marker:     aws.String("markerType"),
		MaxItems:   aws.Int64(1),
		PathPrefix: aws.String("pathPrefixType"),
	}
	resp, err := svc.ListUsers(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListUsersPages

func (c *IAM) ListUsersPages(input *ListUsersInput, fn func(p *ListUsersOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListUsersRequest

func (c *IAM) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput)

ListUsersRequest generates a request for the ListUsers operation.

func (*IAM) ListVirtualMFADevices

func (c *IAM) ListVirtualMFADevices(input *ListVirtualMFADevicesInput) (*ListVirtualMFADevicesOutput, error)

Lists the virtual MFA devices under the AWS account by assignment status. If you do not specify an assignment status, the action returns a list of all virtual MFA devices. Assignment status can be Assigned, Unassigned, or Any.

You can paginate the results using the MaxItems and Marker parameters.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ListVirtualMFADevicesInput{
		AssignmentStatus: aws.String("assignmentStatusType"),
		Marker:           aws.String("markerType"),
		MaxItems:         aws.Int64(1),
	}
	resp, err := svc.ListVirtualMFADevices(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ListVirtualMFADevicesPages

func (c *IAM) ListVirtualMFADevicesPages(input *ListVirtualMFADevicesInput, fn func(p *ListVirtualMFADevicesOutput, lastPage bool) (shouldContinue bool)) error

func (*IAM) ListVirtualMFADevicesRequest

func (c *IAM) ListVirtualMFADevicesRequest(input *ListVirtualMFADevicesInput) (req *request.Request, output *ListVirtualMFADevicesOutput)

ListVirtualMFADevicesRequest generates a request for the ListVirtualMFADevices operation.

func (*IAM) PutGroupPolicy

func (c *IAM) PutGroupPolicy(input *PutGroupPolicyInput) (*PutGroupPolicyOutput, error)

Adds (or updates) an inline policy document that is embedded in the specified group.

A user can also have managed policies attached to it. To attach a managed policy to a group, use AttachGroupPolicy. To create a new managed policy, use CreatePolicy. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

For information about limits on the number of inline policies that you can embed in a group, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Because policy documents can be large, you should use POST rather than GET when calling PutGroupPolicy. For general information about using the Query API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.PutGroupPolicyInput{
		GroupName:      aws.String("groupNameType"),      // Required
		PolicyDocument: aws.String("policyDocumentType"), // Required
		PolicyName:     aws.String("policyNameType"),     // Required
	}
	resp, err := svc.PutGroupPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) PutGroupPolicyRequest

func (c *IAM) PutGroupPolicyRequest(input *PutGroupPolicyInput) (req *request.Request, output *PutGroupPolicyOutput)

PutGroupPolicyRequest generates a request for the PutGroupPolicy operation.

func (*IAM) PutRolePolicy

func (c *IAM) PutRolePolicy(input *PutRolePolicyInput) (*PutRolePolicyOutput, error)

Adds (or updates) an inline policy document that is embedded in the specified role.

When you embed an inline policy in a role, the inline policy is used as the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using CreateRole. You can update a role's trust policy using UpdateAssumeRolePolicy. For more information about roles, go to Using Roles to Delegate Permissions and Federate Identities (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html).

A role can also have a managed policy attached to it. To attach a managed policy to a role, use AttachRolePolicy. To create a new managed policy, use CreatePolicy. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

For information about limits on the number of inline policies that you can embed with a role, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Because policy documents can be large, you should use POST rather than GET when calling PutRolePolicy. For general information about using the Query API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.PutRolePolicyInput{
		PolicyDocument: aws.String("policyDocumentType"), // Required
		PolicyName:     aws.String("policyNameType"),     // Required
		RoleName:       aws.String("roleNameType"),       // Required
	}
	resp, err := svc.PutRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) PutRolePolicyRequest

func (c *IAM) PutRolePolicyRequest(input *PutRolePolicyInput) (req *request.Request, output *PutRolePolicyOutput)

PutRolePolicyRequest generates a request for the PutRolePolicy operation.

func (*IAM) PutUserPolicy

func (c *IAM) PutUserPolicy(input *PutUserPolicyInput) (*PutUserPolicyOutput, error)

Adds (or updates) an inline policy document that is embedded in the specified user.

A user can also have a managed policy attached to it. To attach a managed policy to a user, use AttachUserPolicy. To create a new managed policy, use CreatePolicy. For information about policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

For information about limits on the number of inline policies that you can embed in a user, see Limitations on IAM Entities (http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the IAM User Guide.

Because policy documents can be large, you should use POST rather than GET when calling PutUserPolicy. For general information about using the Query API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.PutUserPolicyInput{
		PolicyDocument: aws.String("policyDocumentType"),   // Required
		PolicyName:     aws.String("policyNameType"),       // Required
		UserName:       aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.PutUserPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) PutUserPolicyRequest

func (c *IAM) PutUserPolicyRequest(input *PutUserPolicyInput) (req *request.Request, output *PutUserPolicyOutput)

PutUserPolicyRequest generates a request for the PutUserPolicy operation.

func (*IAM) RemoveClientIDFromOpenIDConnectProvider

func (c *IAM) RemoveClientIDFromOpenIDConnectProvider(input *RemoveClientIDFromOpenIDConnectProviderInput) (*RemoveClientIDFromOpenIDConnectProviderOutput, error)

Removes the specified client ID (also known as audience) from the list of client IDs registered for the specified IAM OpenID Connect provider.

This action is idempotent; it does not fail or return an error if you try to remove a client ID that was removed previously.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.RemoveClientIDFromOpenIDConnectProviderInput{
		ClientID:                 aws.String("clientIDType"), // Required
		OpenIDConnectProviderArn: aws.String("arnType"),      // Required
	}
	resp, err := svc.RemoveClientIDFromOpenIDConnectProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) RemoveClientIDFromOpenIDConnectProviderRequest

func (c *IAM) RemoveClientIDFromOpenIDConnectProviderRequest(input *RemoveClientIDFromOpenIDConnectProviderInput) (req *request.Request, output *RemoveClientIDFromOpenIDConnectProviderOutput)

RemoveClientIDFromOpenIDConnectProviderRequest generates a request for the RemoveClientIDFromOpenIDConnectProvider operation.

func (*IAM) RemoveRoleFromInstanceProfile

func (c *IAM) RemoveRoleFromInstanceProfile(input *RemoveRoleFromInstanceProfileInput) (*RemoveRoleFromInstanceProfileOutput, error)

Removes the specified role from the specified instance profile.

Make sure you do not have any Amazon EC2 instances running with the role

you are about to remove from the instance profile. Removing a role from an instance profile that is associated with a running instance will break any applications running on the instance. For more information about roles, go to Working with Roles (http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html). For more information about instance profiles, go to About Instance Profiles (http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.RemoveRoleFromInstanceProfileInput{
		InstanceProfileName: aws.String("instanceProfileNameType"), // Required
		RoleName:            aws.String("roleNameType"),            // Required
	}
	resp, err := svc.RemoveRoleFromInstanceProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) RemoveRoleFromInstanceProfileRequest

func (c *IAM) RemoveRoleFromInstanceProfileRequest(input *RemoveRoleFromInstanceProfileInput) (req *request.Request, output *RemoveRoleFromInstanceProfileOutput)

RemoveRoleFromInstanceProfileRequest generates a request for the RemoveRoleFromInstanceProfile operation.

func (*IAM) RemoveUserFromGroup

func (c *IAM) RemoveUserFromGroup(input *RemoveUserFromGroupInput) (*RemoveUserFromGroupOutput, error)

Removes the specified user from the specified group.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.RemoveUserFromGroupInput{
		GroupName: aws.String("groupNameType"),        // Required
		UserName:  aws.String("existingUserNameType"), // Required
	}
	resp, err := svc.RemoveUserFromGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) RemoveUserFromGroupRequest

func (c *IAM) RemoveUserFromGroupRequest(input *RemoveUserFromGroupInput) (req *request.Request, output *RemoveUserFromGroupOutput)

RemoveUserFromGroupRequest generates a request for the RemoveUserFromGroup operation.

func (*IAM) ResyncMFADevice

func (c *IAM) ResyncMFADevice(input *ResyncMFADeviceInput) (*ResyncMFADeviceOutput, error)

Synchronizes the specified MFA device with AWS servers.

For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html) in the Using IAM guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.ResyncMFADeviceInput{
		AuthenticationCode1: aws.String("authenticationCodeType"), // Required
		AuthenticationCode2: aws.String("authenticationCodeType"), // Required
		SerialNumber:        aws.String("serialNumberType"),       // Required
		UserName:            aws.String("existingUserNameType"),   // Required
	}
	resp, err := svc.ResyncMFADevice(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) ResyncMFADeviceRequest

func (c *IAM) ResyncMFADeviceRequest(input *ResyncMFADeviceInput) (req *request.Request, output *ResyncMFADeviceOutput)

ResyncMFADeviceRequest generates a request for the ResyncMFADevice operation.

func (*IAM) SetDefaultPolicyVersion

func (c *IAM) SetDefaultPolicyVersion(input *SetDefaultPolicyVersionInput) (*SetDefaultPolicyVersionOutput, error)

Sets the specified version of the specified policy as the policy's default (operative) version.

This action affects all users, groups, and roles that the policy is attached to. To list the users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API.

For information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.SetDefaultPolicyVersionInput{
		PolicyArn: aws.String("arnType"),             // Required
		VersionId: aws.String("policyVersionIdType"), // Required
	}
	resp, err := svc.SetDefaultPolicyVersion(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) SetDefaultPolicyVersionRequest

func (c *IAM) SetDefaultPolicyVersionRequest(input *SetDefaultPolicyVersionInput) (req *request.Request, output *SetDefaultPolicyVersionOutput)

SetDefaultPolicyVersionRequest generates a request for the SetDefaultPolicyVersion operation.

func (*IAM) SimulateCustomPolicy

func (c *IAM) SimulateCustomPolicy(input *SimulateCustomPolicyInput) (*SimulatePolicyResponse, error)

Simulate how a set of IAM policies and optionally a resource-based policy works with a list of API actions and AWS resources to determine the policies' effective permissions. The policies are provided as strings.

The simulation does not perform the API actions; it only checks the authorization to determine if the simulated policies allow or deny the actions.

If you want to simulate existing policies attached to an IAM user, group, or role, use SimulatePrincipalPolicy instead.

Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the Condition element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy.

If the output is long, you can use MaxItems and Marker parameters to paginate the results.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.SimulateCustomPolicyInput{
		ActionNames: []*string{ // Required
			aws.String("ActionNameType"), // Required
			// More values...
		},
		PolicyInputList: []*string{ // Required
			aws.String("policyDocumentType"), // Required
			// More values...
		},
		CallerArn: aws.String("ResourceNameType"),
		ContextEntries: []*iam.ContextEntry{
			{ // Required
				ContextKeyName: aws.String("ContextKeyNameType"),
				ContextKeyType: aws.String("ContextKeyTypeEnum"),
				ContextKeyValues: []*string{
					aws.String("ContextKeyValueType"), // Required
					// More values...
				},
			},
			// More values...
		},
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		ResourceArns: []*string{
			aws.String("ResourceNameType"), // Required
			// More values...
		},
		ResourceHandlingOption: aws.String("ResourceHandlingOptionType"),
		ResourceOwner:          aws.String("ResourceNameType"),
		ResourcePolicy:         aws.String("policyDocumentType"),
	}
	resp, err := svc.SimulateCustomPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) SimulateCustomPolicyRequest

func (c *IAM) SimulateCustomPolicyRequest(input *SimulateCustomPolicyInput) (req *request.Request, output *SimulatePolicyResponse)

SimulateCustomPolicyRequest generates a request for the SimulateCustomPolicy operation.

func (*IAM) SimulatePrincipalPolicy

func (c *IAM) SimulatePrincipalPolicy(input *SimulatePrincipalPolicyInput) (*SimulatePolicyResponse, error)

Simulate how a set of IAM policies attached to an IAM entity works with a list of API actions and AWS resources to determine the policies' effective permissions. The entity can be an IAM user, group, or role. If you specify a user, then the simulation also includes all of the policies that are attached to groups that the user belongs to .

You can optionally include a list of one or more additional policies specified as strings to include in the simulation. If you want to simulate only policies specified as strings, use SimulateCustomPolicy instead.

You can also optionally include one resource-based policy to be evaluated with each of the resources included in the simulation.

The simulation does not perform the API actions, it only checks the authorization to determine if the simulated policies allow or deny the actions.

Note: This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use SimulateCustomPolicy instead.

Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the Condition element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy.

If the output is long, you can use the MaxItems and Marker parameters to paginate the results.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.SimulatePrincipalPolicyInput{
		ActionNames: []*string{ // Required
			aws.String("ActionNameType"), // Required
			// More values...
		},
		PolicySourceArn: aws.String("arnType"), // Required
		CallerArn:       aws.String("ResourceNameType"),
		ContextEntries: []*iam.ContextEntry{
			{ // Required
				ContextKeyName: aws.String("ContextKeyNameType"),
				ContextKeyType: aws.String("ContextKeyTypeEnum"),
				ContextKeyValues: []*string{
					aws.String("ContextKeyValueType"), // Required
					// More values...
				},
			},
			// More values...
		},
		Marker:   aws.String("markerType"),
		MaxItems: aws.Int64(1),
		PolicyInputList: []*string{
			aws.String("policyDocumentType"), // Required
			// More values...
		},
		ResourceArns: []*string{
			aws.String("ResourceNameType"), // Required
			// More values...
		},
		ResourceHandlingOption: aws.String("ResourceHandlingOptionType"),
		ResourceOwner:          aws.String("ResourceNameType"),
		ResourcePolicy:         aws.String("policyDocumentType"),
	}
	resp, err := svc.SimulatePrincipalPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) SimulatePrincipalPolicyRequest

func (c *IAM) SimulatePrincipalPolicyRequest(input *SimulatePrincipalPolicyInput) (req *request.Request, output *SimulatePolicyResponse)

SimulatePrincipalPolicyRequest generates a request for the SimulatePrincipalPolicy operation.

func (*IAM) UpdateAccessKey

func (c *IAM) UpdateAccessKey(input *UpdateAccessKeyInput) (*UpdateAccessKeyOutput, error)

Changes the status of the specified access key from Active to Inactive, or vice versa. This action can be used to disable a user's key as part of a key rotation work flow.

If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

For information about rotating keys, see Managing Keys and Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateAccessKeyInput{
		AccessKeyId: aws.String("accessKeyIdType"), // Required
		Status:      aws.String("statusType"),      // Required
		UserName:    aws.String("existingUserNameType"),
	}
	resp, err := svc.UpdateAccessKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateAccessKeyRequest

func (c *IAM) UpdateAccessKeyRequest(input *UpdateAccessKeyInput) (req *request.Request, output *UpdateAccessKeyOutput)

UpdateAccessKeyRequest generates a request for the UpdateAccessKey operation.

func (*IAM) UpdateAccountPasswordPolicy

func (c *IAM) UpdateAccountPasswordPolicy(input *UpdateAccountPasswordPolicyInput) (*UpdateAccountPasswordPolicyOutput, error)

Updates the password policy settings for the AWS account.

This action does not support partial updates. No parameters are required,

but if you do not specify a parameter, that parameter's value reverts to its default value. See the Request Parameters section for each parameter's default value.

For more information about using a password policy, see Managing an IAM

Password Policy (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateAccountPasswordPolicyInput{
		AllowUsersToChangePassword: aws.Bool(true),
		HardExpiry:                 aws.Bool(true),
		MaxPasswordAge:             aws.Int64(1),
		MinimumPasswordLength:      aws.Int64(1),
		PasswordReusePrevention:    aws.Int64(1),
		RequireLowercaseCharacters: aws.Bool(true),
		RequireNumbers:             aws.Bool(true),
		RequireSymbols:             aws.Bool(true),
		RequireUppercaseCharacters: aws.Bool(true),
	}
	resp, err := svc.UpdateAccountPasswordPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateAccountPasswordPolicyRequest

func (c *IAM) UpdateAccountPasswordPolicyRequest(input *UpdateAccountPasswordPolicyInput) (req *request.Request, output *UpdateAccountPasswordPolicyOutput)

UpdateAccountPasswordPolicyRequest generates a request for the UpdateAccountPasswordPolicy operation.

func (*IAM) UpdateAssumeRolePolicy

func (c *IAM) UpdateAssumeRolePolicy(input *UpdateAssumeRolePolicyInput) (*UpdateAssumeRolePolicyOutput, error)

Updates the policy that grants an entity permission to assume a role. For more information about roles, go to Using Roles to Delegate Permissions and Federate Identities (http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateAssumeRolePolicyInput{
		PolicyDocument: aws.String("policyDocumentType"), // Required
		RoleName:       aws.String("roleNameType"),       // Required
	}
	resp, err := svc.UpdateAssumeRolePolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateAssumeRolePolicyRequest

func (c *IAM) UpdateAssumeRolePolicyRequest(input *UpdateAssumeRolePolicyInput) (req *request.Request, output *UpdateAssumeRolePolicyOutput)

UpdateAssumeRolePolicyRequest generates a request for the UpdateAssumeRolePolicy operation.

func (*IAM) UpdateGroup

func (c *IAM) UpdateGroup(input *UpdateGroupInput) (*UpdateGroupOutput, error)

Updates the name and/or the path of the specified group.

You should understand the implications of changing a group's path or name.

For more information, see Renaming Users and Groups (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html) in the IAM User Guide. To change a group name the requester must have appropriate permissions on both the source object and the target object. For example, to change Managers to MGRs, the entity making the request must have permission on Managers and MGRs, or must have permission on all (*). For more information about permissions, see Permissions and Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html" target="blank).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateGroupInput{
		GroupName:    aws.String("groupNameType"), // Required
		NewGroupName: aws.String("groupNameType"),
		NewPath:      aws.String("pathType"),
	}
	resp, err := svc.UpdateGroup(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateGroupRequest

func (c *IAM) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request, output *UpdateGroupOutput)

UpdateGroupRequest generates a request for the UpdateGroup operation.

func (*IAM) UpdateLoginProfile

func (c *IAM) UpdateLoginProfile(input *UpdateLoginProfileInput) (*UpdateLoginProfileOutput, error)

Changes the password for the specified user.

Users can change their own passwords by calling ChangePassword. For more information about modifying passwords, see Managing Passwords (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateLoginProfileInput{
		UserName:              aws.String("userNameType"), // Required
		Password:              aws.String("passwordType"),
		PasswordResetRequired: aws.Bool(true),
	}
	resp, err := svc.UpdateLoginProfile(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateLoginProfileRequest

func (c *IAM) UpdateLoginProfileRequest(input *UpdateLoginProfileInput) (req *request.Request, output *UpdateLoginProfileOutput)

UpdateLoginProfileRequest generates a request for the UpdateLoginProfile operation.

func (*IAM) UpdateOpenIDConnectProviderThumbprint

func (c *IAM) UpdateOpenIDConnectProviderThumbprint(input *UpdateOpenIDConnectProviderThumbprintInput) (*UpdateOpenIDConnectProviderThumbprintOutput, error)

Replaces the existing list of server certificate thumbprints with a new list.

The list that you pass with this action completely replaces the existing list of thumbprints. (The lists are not merged.)

Typically, you need to update a thumbprint only when the identity provider's certificate changes, which occurs rarely. However, if the provider's certificate does change, any attempt to assume an IAM role that specifies the OIDC provider as a principal will fail until the certificate thumbprint is updated.

Because trust for the OpenID Connect provider is ultimately derived from the provider's certificate and is validated by the thumbprint, it is a best practice to limit access to the UpdateOpenIDConnectProviderThumbprint action to highly-privileged users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateOpenIDConnectProviderThumbprintInput{
		OpenIDConnectProviderArn: aws.String("arnType"), // Required
		ThumbprintList: []*string{ // Required
			aws.String("thumbprintType"), // Required
			// More values...
		},
	}
	resp, err := svc.UpdateOpenIDConnectProviderThumbprint(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateOpenIDConnectProviderThumbprintRequest

func (c *IAM) UpdateOpenIDConnectProviderThumbprintRequest(input *UpdateOpenIDConnectProviderThumbprintInput) (req *request.Request, output *UpdateOpenIDConnectProviderThumbprintOutput)

UpdateOpenIDConnectProviderThumbprintRequest generates a request for the UpdateOpenIDConnectProviderThumbprint operation.

func (*IAM) UpdateSAMLProvider

func (c *IAM) UpdateSAMLProvider(input *UpdateSAMLProviderInput) (*UpdateSAMLProviderOutput, error)

Updates the metadata document for an existing SAML provider.

This operation requires Signature Version 4 (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateSAMLProviderInput{
		SAMLMetadataDocument: aws.String("SAMLMetadataDocumentType"), // Required
		SAMLProviderArn:      aws.String("arnType"),                  // Required
	}
	resp, err := svc.UpdateSAMLProvider(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateSAMLProviderRequest

func (c *IAM) UpdateSAMLProviderRequest(input *UpdateSAMLProviderInput) (req *request.Request, output *UpdateSAMLProviderOutput)

UpdateSAMLProviderRequest generates a request for the UpdateSAMLProvider operation.

func (*IAM) UpdateSSHPublicKey

func (c *IAM) UpdateSSHPublicKey(input *UpdateSSHPublicKeyInput) (*UpdateSSHPublicKeyOutput, error)

Sets the status of the specified SSH public key to active or inactive. SSH public keys that are inactive cannot be used for authentication. This action can be used to disable a user's SSH public key as part of a key rotation work flow.

The SSH public key affected by this action is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) in the AWS CodeCommit User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateSSHPublicKeyInput{
		SSHPublicKeyId: aws.String("publicKeyIdType"), // Required
		Status:         aws.String("statusType"),      // Required
		UserName:       aws.String("userNameType"),    // Required
	}
	resp, err := svc.UpdateSSHPublicKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateSSHPublicKeyRequest

func (c *IAM) UpdateSSHPublicKeyRequest(input *UpdateSSHPublicKeyInput) (req *request.Request, output *UpdateSSHPublicKeyOutput)

UpdateSSHPublicKeyRequest generates a request for the UpdateSSHPublicKey operation.

func (*IAM) UpdateServerCertificate

func (c *IAM) UpdateServerCertificate(input *UpdateServerCertificateInput) (*UpdateServerCertificateOutput, error)

Updates the name and/or the path of the specified server certificate.

For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) in the IAM User Guide.

You should understand the implications of changing a server certificate's path or name. For more information, see Renaming a Server Certificate (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs_manage.html#RenamingServerCerts) in the IAM User Guide. To change a server certificate name the requester must have appropriate permissions on both the source object and the target object. For example, to change the name from ProductionCert to ProdCert, the entity making the request must have permission on ProductionCert and ProdCert, or must have permission on all (*). For more information about permissions, see Access Management (http://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateServerCertificateInput{
		ServerCertificateName:    aws.String("serverCertificateNameType"), // Required
		NewPath:                  aws.String("pathType"),
		NewServerCertificateName: aws.String("serverCertificateNameType"),
	}
	resp, err := svc.UpdateServerCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateServerCertificateRequest

func (c *IAM) UpdateServerCertificateRequest(input *UpdateServerCertificateInput) (req *request.Request, output *UpdateServerCertificateOutput)

UpdateServerCertificateRequest generates a request for the UpdateServerCertificate operation.

func (*IAM) UpdateSigningCertificate

func (c *IAM) UpdateSigningCertificate(input *UpdateSigningCertificateInput) (*UpdateSigningCertificateOutput, error)

Changes the status of the specified signing certificate from active to disabled, or vice versa. This action can be used to disable a user's signing certificate as part of a certificate rotation work flow.

If the UserName field is not specified, the UserName is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateSigningCertificateInput{
		CertificateId: aws.String("certificateIdType"), // Required
		Status:        aws.String("statusType"),        // Required
		UserName:      aws.String("existingUserNameType"),
	}
	resp, err := svc.UpdateSigningCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateSigningCertificateRequest

func (c *IAM) UpdateSigningCertificateRequest(input *UpdateSigningCertificateInput) (req *request.Request, output *UpdateSigningCertificateOutput)

UpdateSigningCertificateRequest generates a request for the UpdateSigningCertificate operation.

func (*IAM) UpdateUser

func (c *IAM) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error)

Updates the name and/or the path of the specified user.

You should understand the implications of changing a user's path or name.

For more information, see Renaming Users and Groups (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html) in the IAM User Guide. To change a user name the requester must have appropriate permissions on both the source object and the target object. For example, to change Bob to Robert, the entity making the request must have permission on Bob and Robert, or must have permission on all (*). For more information about permissions, see Permissions and Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html" target="blank).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UpdateUserInput{
		UserName:    aws.String("existingUserNameType"), // Required
		NewPath:     aws.String("pathType"),
		NewUserName: aws.String("userNameType"),
	}
	resp, err := svc.UpdateUser(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UpdateUserRequest

func (c *IAM) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput)

UpdateUserRequest generates a request for the UpdateUser operation.

func (*IAM) UploadSSHPublicKey

func (c *IAM) UploadSSHPublicKey(input *UploadSSHPublicKeyInput) (*UploadSSHPublicKeyOutput, error)

Uploads an SSH public key and associates it with the specified IAM user.

The SSH public key uploaded by this action can be used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections (http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html) in the AWS CodeCommit User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UploadSSHPublicKeyInput{
		SSHPublicKeyBody: aws.String("publicKeyMaterialType"), // Required
		UserName:         aws.String("userNameType"),          // Required
	}
	resp, err := svc.UploadSSHPublicKey(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UploadSSHPublicKeyRequest

func (c *IAM) UploadSSHPublicKeyRequest(input *UploadSSHPublicKeyInput) (req *request.Request, output *UploadSSHPublicKeyOutput)

UploadSSHPublicKeyRequest generates a request for the UploadSSHPublicKey operation.

func (*IAM) UploadServerCertificate

func (c *IAM) UploadServerCertificate(input *UploadServerCertificateInput) (*UploadServerCertificateOutput, error)

Uploads a server certificate entity for the AWS account. The server certificate entity includes a public key certificate, a private key, and an optional certificate chain, which should all be PEM-encoded.

For more information about working with server certificates, including a list of AWS services that can use the server certificates that you manage with IAM, go to Working with Server Certificates (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html) in the IAM User Guide.

For information about the number of server certificates you can upload, see Limitations on IAM Entities and Objects (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html) in the IAM User Guide.

Because the body of the public key certificate, private key, and the certificate chain can be large, you should use POST rather than GET when calling UploadServerCertificate. For information about setting up signatures and authorization through the API, go to Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) in the AWS General Reference. For general information about using the Query API with IAM, go to Calling the API by Making HTTP Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/programming.html) in the IAM User Guide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UploadServerCertificateInput{
		CertificateBody:       aws.String("certificateBodyType"),       // Required
		PrivateKey:            aws.String("privateKeyType"),            // Required
		ServerCertificateName: aws.String("serverCertificateNameType"), // Required
		CertificateChain:      aws.String("certificateChainType"),
		Path:                  aws.String("pathType"),
	}
	resp, err := svc.UploadServerCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UploadServerCertificateRequest

func (c *IAM) UploadServerCertificateRequest(input *UploadServerCertificateInput) (req *request.Request, output *UploadServerCertificateOutput)

UploadServerCertificateRequest generates a request for the UploadServerCertificate operation.

func (*IAM) UploadSigningCertificate

func (c *IAM) UploadSigningCertificate(input *UploadSigningCertificateInput) (*UploadSigningCertificateOutput, error)

Uploads an X.509 signing certificate and associates it with the specified user. Some AWS services use X.509 signing certificates to validate requests that are signed with a corresponding private key. When you upload the certificate, its default status is Active.

If the UserName field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request. Because this action works for access keys under the AWS account, you can use this action to manage root credentials even if the AWS account has no associated users.

Because the body of a X.509 certificate can be large, you should use POST rather than GET when calling UploadSigningCertificate. For information about setting up signatures and authorization through the API, go to Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) in the AWS General Reference. For general information about using the Query API with IAM, go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) in the Using IAMguide.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iam"
)

func main() {
	svc := iam.New(session.New())

	params := &iam.UploadSigningCertificateInput{
		CertificateBody: aws.String("certificateBodyType"), // Required
		UserName:        aws.String("existingUserNameType"),
	}
	resp, err := svc.UploadSigningCertificate(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IAM) UploadSigningCertificateRequest

func (c *IAM) UploadSigningCertificateRequest(input *UploadSigningCertificateInput) (req *request.Request, output *UploadSigningCertificateOutput)

UploadSigningCertificateRequest generates a request for the UploadSigningCertificate operation.

func (*IAM) WaitUntilInstanceProfileExists

func (c *IAM) WaitUntilInstanceProfileExists(input *GetInstanceProfileInput) error

func (*IAM) WaitUntilUserExists

func (c *IAM) WaitUntilUserExists(input *GetUserInput) error

type InstanceProfile

type InstanceProfile struct {

	// The Amazon Resource Name (ARN) specifying the instance profile. For more
	// information about ARNs and how to use them in policies, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Arn *string `min:"20" type:"string" required:"true"`

	// The date when the instance profile was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The stable and unique string identifying the instance profile. For more information
	// about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	InstanceProfileId *string `min:"16" type:"string" required:"true"`

	// The name identifying the instance profile.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`

	// The path to the instance profile. For more information about paths, see IAM
	// Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string" required:"true"`

	// The role associated with the instance profile.
	Roles []*Role `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an instance profile.

This data type is used as a response element in the following actions:

CreateInstanceProfile

GetInstanceProfile

ListInstanceProfiles

ListInstanceProfilesForRole

func (InstanceProfile) GoString

func (s InstanceProfile) GoString() string

GoString returns the string representation

func (InstanceProfile) String

func (s InstanceProfile) String() string

String returns the string representation

type ListAccessKeysInput

type ListAccessKeysInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the user.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListAccessKeysInput) GoString

func (s ListAccessKeysInput) GoString() string

GoString returns the string representation

func (ListAccessKeysInput) String

func (s ListAccessKeysInput) String() string

String returns the string representation

type ListAccessKeysOutput

type ListAccessKeysOutput struct {

	// A list of access key metadata.
	AccessKeyMetadata []*AccessKeyMetadata `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListAccessKeys request.

func (ListAccessKeysOutput) GoString

func (s ListAccessKeysOutput) GoString() string

GoString returns the string representation

func (ListAccessKeysOutput) String

func (s ListAccessKeysOutput) String() string

String returns the string representation

type ListAccountAliasesInput

type ListAccountAliasesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

func (ListAccountAliasesInput) GoString

func (s ListAccountAliasesInput) GoString() string

GoString returns the string representation

func (ListAccountAliasesInput) String

func (s ListAccountAliasesInput) String() string

String returns the string representation

type ListAccountAliasesOutput

type ListAccountAliasesOutput struct {

	// A list of aliases associated with the account. AWS supports only one alias
	// per account.
	AccountAliases []*string `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListAccountAliases request.

func (ListAccountAliasesOutput) GoString

func (s ListAccountAliasesOutput) GoString() string

GoString returns the string representation

func (ListAccountAliasesOutput) String

func (s ListAccountAliasesOutput) String() string

String returns the string representation

type ListAttachedGroupPoliciesInput

type ListAttachedGroupPoliciesInput struct {

	// The name (friendly name, not ARN) of the group to list attached policies
	// for.
	GroupName *string `min:"1" type:"string" required:"true"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The path prefix for filtering the results. This parameter is optional. If
	// it is not included, it defaults to a slash (/), listing all policies.
	PathPrefix *string `type:"string"`
	// contains filtered or unexported fields
}

func (ListAttachedGroupPoliciesInput) GoString

GoString returns the string representation

func (ListAttachedGroupPoliciesInput) String

String returns the string representation

type ListAttachedGroupPoliciesOutput

type ListAttachedGroupPoliciesOutput struct {

	// A list of the attached policies.
	AttachedPolicies []*AttachedPolicy `type:"list"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListAttachedGroupPolicies request.

func (ListAttachedGroupPoliciesOutput) GoString

GoString returns the string representation

func (ListAttachedGroupPoliciesOutput) String

String returns the string representation

type ListAttachedRolePoliciesInput

type ListAttachedRolePoliciesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The path prefix for filtering the results. This parameter is optional. If
	// it is not included, it defaults to a slash (/), listing all policies.
	PathPrefix *string `type:"string"`

	// The name (friendly name, not ARN) of the role to list attached policies for.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListAttachedRolePoliciesInput) GoString

GoString returns the string representation

func (ListAttachedRolePoliciesInput) String

String returns the string representation

type ListAttachedRolePoliciesOutput

type ListAttachedRolePoliciesOutput struct {

	// A list of the attached policies.
	AttachedPolicies []*AttachedPolicy `type:"list"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListAttachedRolePolicies request.

func (ListAttachedRolePoliciesOutput) GoString

GoString returns the string representation

func (ListAttachedRolePoliciesOutput) String

String returns the string representation

type ListAttachedUserPoliciesInput

type ListAttachedUserPoliciesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The path prefix for filtering the results. This parameter is optional. If
	// it is not included, it defaults to a slash (/), listing all policies.
	PathPrefix *string `type:"string"`

	// The name (friendly name, not ARN) of the user to list attached policies for.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListAttachedUserPoliciesInput) GoString

GoString returns the string representation

func (ListAttachedUserPoliciesInput) String

String returns the string representation

type ListAttachedUserPoliciesOutput

type ListAttachedUserPoliciesOutput struct {

	// A list of the attached policies.
	AttachedPolicies []*AttachedPolicy `type:"list"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListAttachedUserPolicies request.

func (ListAttachedUserPoliciesOutput) GoString

GoString returns the string representation

func (ListAttachedUserPoliciesOutput) String

String returns the string representation

type ListEntitiesForPolicyInput

type ListEntitiesForPolicyInput struct {

	// 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.
	EntityFilter *string `type:"string" enum:"EntityType"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The path prefix for filtering the results. This parameter is optional. If
	// it is not included, it defaults to a slash (/), listing all entities.
	PathPrefix *string `min:"1" type:"string"`

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListEntitiesForPolicyInput) GoString

func (s ListEntitiesForPolicyInput) GoString() string

GoString returns the string representation

func (ListEntitiesForPolicyInput) String

String returns the string representation

type ListEntitiesForPolicyOutput

type ListEntitiesForPolicyOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of groups that the policy is attached to.
	PolicyGroups []*PolicyGroup `type:"list"`

	// A list of roles that the policy is attached to.
	PolicyRoles []*PolicyRole `type:"list"`

	// A list of users that the policy is attached to.
	PolicyUsers []*PolicyUser `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListEntitiesForPolicy request.

func (ListEntitiesForPolicyOutput) GoString

func (s ListEntitiesForPolicyOutput) GoString() string

GoString returns the string representation

func (ListEntitiesForPolicyOutput) String

String returns the string representation

type ListGroupPoliciesInput

type ListGroupPoliciesInput struct {

	// The name of the group to list policies for.
	GroupName *string `min:"1" type:"string" required:"true"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

func (ListGroupPoliciesInput) GoString

func (s ListGroupPoliciesInput) GoString() string

GoString returns the string representation

func (ListGroupPoliciesInput) String

func (s ListGroupPoliciesInput) String() string

String returns the string representation

type ListGroupPoliciesOutput

type ListGroupPoliciesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of policy names.
	PolicyNames []*string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListGroupPolicies request.

func (ListGroupPoliciesOutput) GoString

func (s ListGroupPoliciesOutput) GoString() string

GoString returns the string representation

func (ListGroupPoliciesOutput) String

func (s ListGroupPoliciesOutput) String() string

String returns the string representation

type ListGroupsForUserInput

type ListGroupsForUserInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the user to list groups for.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListGroupsForUserInput) GoString

func (s ListGroupsForUserInput) GoString() string

GoString returns the string representation

func (ListGroupsForUserInput) String

func (s ListGroupsForUserInput) String() string

String returns the string representation

type ListGroupsForUserOutput

type ListGroupsForUserOutput struct {

	// A list of groups.
	Groups []*Group `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListGroupsForUser request.

func (ListGroupsForUserOutput) GoString

func (s ListGroupsForUserOutput) GoString() string

GoString returns the string representation

func (ListGroupsForUserOutput) String

func (s ListGroupsForUserOutput) String() string

String returns the string representation

type ListGroupsInput

type ListGroupsInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PathPrefix *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListGroupsInput) GoString

func (s ListGroupsInput) GoString() string

GoString returns the string representation

func (ListGroupsInput) String

func (s ListGroupsInput) String() string

String returns the string representation

type ListGroupsOutput

type ListGroupsOutput struct {

	// A list of groups.
	Groups []*Group `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListGroups request.

func (ListGroupsOutput) GoString

func (s ListGroupsOutput) GoString() string

GoString returns the string representation

func (ListGroupsOutput) String

func (s ListGroupsOutput) String() string

String returns the string representation

type ListInstanceProfilesForRoleInput

type ListInstanceProfilesForRoleInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the role to list instance profiles for.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListInstanceProfilesForRoleInput) GoString

GoString returns the string representation

func (ListInstanceProfilesForRoleInput) String

String returns the string representation

type ListInstanceProfilesForRoleOutput

type ListInstanceProfilesForRoleOutput struct {

	// A list of instance profiles.
	InstanceProfiles []*InstanceProfile `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListInstanceProfilesForRole request.

func (ListInstanceProfilesForRoleOutput) GoString

GoString returns the string representation

func (ListInstanceProfilesForRoleOutput) String

String returns the string representation

type ListInstanceProfilesInput

type ListInstanceProfilesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PathPrefix *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListInstanceProfilesInput) GoString

func (s ListInstanceProfilesInput) GoString() string

GoString returns the string representation

func (ListInstanceProfilesInput) String

func (s ListInstanceProfilesInput) String() string

String returns the string representation

type ListInstanceProfilesOutput

type ListInstanceProfilesOutput struct {

	// A list of instance profiles.
	InstanceProfiles []*InstanceProfile `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListInstanceProfiles request.

func (ListInstanceProfilesOutput) GoString

func (s ListInstanceProfilesOutput) GoString() string

GoString returns the string representation

func (ListInstanceProfilesOutput) String

String returns the string representation

type ListMFADevicesInput

type ListMFADevicesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the user whose MFA devices you want to list.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListMFADevicesInput) GoString

func (s ListMFADevicesInput) GoString() string

GoString returns the string representation

func (ListMFADevicesInput) String

func (s ListMFADevicesInput) String() string

String returns the string representation

type ListMFADevicesOutput

type ListMFADevicesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// A list of MFA devices.
	MFADevices []*MFADevice `type:"list" required:"true"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListMFADevices request.

func (ListMFADevicesOutput) GoString

func (s ListMFADevicesOutput) GoString() string

GoString returns the string representation

func (ListMFADevicesOutput) String

func (s ListMFADevicesOutput) String() string

String returns the string representation

type ListOpenIDConnectProvidersInput

type ListOpenIDConnectProvidersInput struct {
	// contains filtered or unexported fields
}

func (ListOpenIDConnectProvidersInput) GoString

GoString returns the string representation

func (ListOpenIDConnectProvidersInput) String

String returns the string representation

type ListOpenIDConnectProvidersOutput

type ListOpenIDConnectProvidersOutput struct {

	// The list of IAM OpenID Connect providers in the AWS account.
	OpenIDConnectProviderList []*OpenIDConnectProviderListEntry `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListOpenIDConnectProviders request.

func (ListOpenIDConnectProvidersOutput) GoString

GoString returns the string representation

func (ListOpenIDConnectProvidersOutput) String

String returns the string representation

type ListPoliciesInput

type ListPoliciesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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 a user, group, or role. When OnlyAttached is false,
	// or when the parameter is not included, all policies are returned.
	OnlyAttached *bool `type:"boolean"`

	// The path prefix for filtering the results. This parameter is optional. If
	// it is not included, it defaults to a slash (/), listing all policies.
	PathPrefix *string `type:"string"`

	// 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.
	Scope *string `type:"string" enum:"policyScopeType"`
	// contains filtered or unexported fields
}

func (ListPoliciesInput) GoString

func (s ListPoliciesInput) GoString() string

GoString returns the string representation

func (ListPoliciesInput) String

func (s ListPoliciesInput) String() string

String returns the string representation

type ListPoliciesOutput

type ListPoliciesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of policies.
	Policies []*Policy `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListPolicies request.

func (ListPoliciesOutput) GoString

func (s ListPoliciesOutput) GoString() string

GoString returns the string representation

func (ListPoliciesOutput) String

func (s ListPoliciesOutput) String() string

String returns the string representation

type ListPolicyVersionsInput

type ListPolicyVersionsInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListPolicyVersionsInput) GoString

func (s ListPolicyVersionsInput) GoString() string

GoString returns the string representation

func (ListPolicyVersionsInput) String

func (s ListPolicyVersionsInput) String() string

String returns the string representation

type ListPolicyVersionsOutput

type ListPolicyVersionsOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of policy versions.
	//
	// For more information about managed policy versions, see Versioning for Managed
	// Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the IAM User Guide.
	Versions []*PolicyVersion `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListPolicyVersions request.

func (ListPolicyVersionsOutput) GoString

func (s ListPolicyVersionsOutput) GoString() string

GoString returns the string representation

func (ListPolicyVersionsOutput) String

func (s ListPolicyVersionsOutput) String() string

String returns the string representation

type ListRolePoliciesInput

type ListRolePoliciesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the role to list policies for.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListRolePoliciesInput) GoString

func (s ListRolePoliciesInput) GoString() string

GoString returns the string representation

func (ListRolePoliciesInput) String

func (s ListRolePoliciesInput) String() string

String returns the string representation

type ListRolePoliciesOutput

type ListRolePoliciesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of policy names.
	PolicyNames []*string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListRolePolicies request.

func (ListRolePoliciesOutput) GoString

func (s ListRolePoliciesOutput) GoString() string

GoString returns the string representation

func (ListRolePoliciesOutput) String

func (s ListRolePoliciesOutput) String() string

String returns the string representation

type ListRolesInput

type ListRolesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PathPrefix *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRolesInput) GoString

func (s ListRolesInput) GoString() string

GoString returns the string representation

func (ListRolesInput) String

func (s ListRolesInput) String() string

String returns the string representation

type ListRolesOutput

type ListRolesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of roles.
	Roles []*Role `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListRoles request.

func (ListRolesOutput) GoString

func (s ListRolesOutput) GoString() string

GoString returns the string representation

func (ListRolesOutput) String

func (s ListRolesOutput) String() string

String returns the string representation

type ListSAMLProvidersInput

type ListSAMLProvidersInput struct {
	// contains filtered or unexported fields
}

func (ListSAMLProvidersInput) GoString

func (s ListSAMLProvidersInput) GoString() string

GoString returns the string representation

func (ListSAMLProvidersInput) String

func (s ListSAMLProvidersInput) String() string

String returns the string representation

type ListSAMLProvidersOutput

type ListSAMLProvidersOutput struct {

	// The list of SAML providers for this account.
	SAMLProviderList []*SAMLProviderListEntry `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListSAMLProviders request.

func (ListSAMLProvidersOutput) GoString

func (s ListSAMLProvidersOutput) GoString() string

GoString returns the string representation

func (ListSAMLProvidersOutput) String

func (s ListSAMLProvidersOutput) String() string

String returns the string representation

type ListSSHPublicKeysInput

type ListSSHPublicKeysInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListSSHPublicKeysInput) GoString

func (s ListSSHPublicKeysInput) GoString() string

GoString returns the string representation

func (ListSSHPublicKeysInput) String

func (s ListSSHPublicKeysInput) String() string

String returns the string representation

type ListSSHPublicKeysOutput

type ListSSHPublicKeysOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of SSH public keys.
	SSHPublicKeys []*SSHPublicKeyMetadata `type:"list"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListSSHPublicKeys request.

func (ListSSHPublicKeysOutput) GoString

func (s ListSSHPublicKeysOutput) GoString() string

GoString returns the string representation

func (ListSSHPublicKeysOutput) String

func (s ListSSHPublicKeysOutput) String() string

String returns the string representation

type ListServerCertificatesInput

type ListServerCertificatesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PathPrefix *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListServerCertificatesInput) GoString

func (s ListServerCertificatesInput) GoString() string

GoString returns the string representation

func (ListServerCertificatesInput) String

String returns the string representation

type ListServerCertificatesOutput

type ListServerCertificatesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of server certificates.
	ServerCertificateMetadataList []*ServerCertificateMetadata `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListServerCertificates request.

func (ListServerCertificatesOutput) GoString

func (s ListServerCertificatesOutput) GoString() string

GoString returns the string representation

func (ListServerCertificatesOutput) String

String returns the string representation

type ListSigningCertificatesInput

type ListSigningCertificatesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the user.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListSigningCertificatesInput) GoString

func (s ListSigningCertificatesInput) GoString() string

GoString returns the string representation

func (ListSigningCertificatesInput) String

String returns the string representation

type ListSigningCertificatesOutput

type ListSigningCertificatesOutput struct {

	// A list of the user's signing certificate information.
	Certificates []*SigningCertificate `type:"list" required:"true"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListSigningCertificates request.

func (ListSigningCertificatesOutput) GoString

GoString returns the string representation

func (ListSigningCertificatesOutput) String

String returns the string representation

type ListUserPoliciesInput

type ListUserPoliciesInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// The name of the user to list policies for.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListUserPoliciesInput) GoString

func (s ListUserPoliciesInput) GoString() string

GoString returns the string representation

func (ListUserPoliciesInput) String

func (s ListUserPoliciesInput) String() string

String returns the string representation

type ListUserPoliciesOutput

type ListUserPoliciesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of policy names.
	PolicyNames []*string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListUserPolicies request.

func (ListUserPoliciesOutput) GoString

func (s ListUserPoliciesOutput) GoString() string

GoString returns the string representation

func (ListUserPoliciesOutput) String

func (s ListUserPoliciesOutput) String() string

String returns the string representation

type ListUsersInput

type ListUsersInput struct {

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PathPrefix *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListUsersInput) GoString

func (s ListUsersInput) GoString() string

GoString returns the string representation

func (ListUsersInput) String

func (s ListUsersInput) String() string

String returns the string representation

type ListUsersOutput

type ListUsersOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// A list of users.
	Users []*User `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListUsers request.

func (ListUsersOutput) GoString

func (s ListUsersOutput) GoString() string

GoString returns the string representation

func (ListUsersOutput) String

func (s ListUsersOutput) String() string

String returns the string representation

type ListVirtualMFADevicesInput

type ListVirtualMFADevicesInput struct {

	// The status (unassigned or assigned) of the devices to list. If you do not
	// specify an AssignmentStatus, the action defaults to Any which lists both
	// assigned and unassigned virtual MFA devices.
	AssignmentStatus *string `type:"string" enum:"assignmentStatusType"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

func (ListVirtualMFADevicesInput) GoString

func (s ListVirtualMFADevicesInput) GoString() string

GoString returns the string representation

func (ListVirtualMFADevicesInput) String

String returns the string representation

type ListVirtualMFADevicesOutput

type ListVirtualMFADevicesOutput struct {

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`

	// The list of virtual MFA devices in the current account that match the AssignmentStatus
	// value that was passed in the request.
	VirtualMFADevices []*VirtualMFADevice `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful ListVirtualMFADevices request.

func (ListVirtualMFADevicesOutput) GoString

func (s ListVirtualMFADevicesOutput) GoString() string

GoString returns the string representation

func (ListVirtualMFADevicesOutput) String

String returns the string representation

type LoginProfile

type LoginProfile struct {

	// The date when the password for the user was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// Specifies whether the user is required to set a new password on next sign-in.
	PasswordResetRequired *bool `type:"boolean"`

	// The name of the user, which can be used for signing in to the AWS Management
	// Console.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

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 actions.

func (LoginProfile) GoString

func (s LoginProfile) GoString() string

GoString returns the string representation

func (LoginProfile) String

func (s LoginProfile) String() string

String returns the string representation

type MFADevice

type MFADevice struct {

	// The date when the MFA device was enabled for the user.
	EnableDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The serial number that uniquely identifies the MFA device. For virtual MFA
	// devices, the serial number is the device ARN.
	SerialNumber *string `min:"9" type:"string" required:"true"`

	// The user with whom the MFA device is associated.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an MFA device.

This data type is used as a response element in the ListMFADevices action.

func (MFADevice) GoString

func (s MFADevice) GoString() string

GoString returns the string representation

func (MFADevice) String

func (s MFADevice) String() string

String returns the string representation

type ManagedPolicyDetail

type ManagedPolicyDetail struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`

	// The number of principal entities (users, groups, and roles) that the policy
	// is attached to.
	AttachmentCount *int64 `type:"integer"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the policy was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// 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
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the Using IAM guide.
	DefaultVersionId *string `type:"string"`

	// A friendly description of the policy.
	Description *string `type:"string"`

	// Specifies whether the policy can be attached to an IAM user, group, or role.
	IsAttachable *bool `type:"boolean"`

	// The path to the policy.
	//
	// For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `type:"string"`

	// The stable and unique string identifying the policy.
	//
	// For more information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	PolicyId *string `min:"16" type:"string"`

	// The friendly name (not ARN) identifying the policy.
	PolicyName *string `min:"1" type:"string"`

	// A list containing information about the versions of the policy.
	PolicyVersionList []*PolicyVersion `type:"list"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// 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.
	UpdateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

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 action.

For more information about managed policies, see Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (ManagedPolicyDetail) GoString

func (s ManagedPolicyDetail) GoString() string

GoString returns the string representation

func (ManagedPolicyDetail) String

func (s ManagedPolicyDetail) String() string

String returns the string representation

type OpenIDConnectProviderListEntry

type OpenIDConnectProviderListEntry struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`
	// contains filtered or unexported fields
}

Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect provider.

func (OpenIDConnectProviderListEntry) GoString

GoString returns the string representation

func (OpenIDConnectProviderListEntry) String

String returns the string representation

type PasswordPolicy

type PasswordPolicy struct {

	// Specifies whether IAM users are allowed to change their own password.
	AllowUsersToChangePassword *bool `type:"boolean"`

	// Indicates whether passwords in the account expire. Returns true if MaxPasswordAge
	// is contains a value greater than 0. Returns false if MaxPasswordAge is 0
	// or not present.
	ExpirePasswords *bool `type:"boolean"`

	// Specifies whether IAM users are prevented from setting a new password after
	// their password has expired.
	HardExpiry *bool `type:"boolean"`

	// The number of days that an IAM user password is valid.
	MaxPasswordAge *int64 `min:"1" type:"integer"`

	// Minimum length to require for IAM user passwords.
	MinimumPasswordLength *int64 `min:"6" type:"integer"`

	// Specifies the number of previous passwords that IAM users are prevented from
	// reusing.
	PasswordReusePrevention *int64 `min:"1" type:"integer"`

	// Specifies whether to require lowercase characters for IAM user passwords.
	RequireLowercaseCharacters *bool `type:"boolean"`

	// Specifies whether to require numbers for IAM user passwords.
	RequireNumbers *bool `type:"boolean"`

	// Specifies whether to require symbols for IAM user passwords.
	RequireSymbols *bool `type:"boolean"`

	// Specifies whether to require uppercase characters for IAM user passwords.
	RequireUppercaseCharacters *bool `type:"boolean"`
	// contains filtered or unexported fields
}

Contains information about the account password policy.

This data type is used as a response element in the GetAccountPasswordPolicy

action.

func (PasswordPolicy) GoString

func (s PasswordPolicy) GoString() string

GoString returns the string representation

func (PasswordPolicy) String

func (s PasswordPolicy) String() string

String returns the string representation

type Policy

type Policy struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`

	// The number of entities (users, groups, and roles) that the policy is attached
	// to.
	AttachmentCount *int64 `type:"integer"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the policy was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The identifier for the version of the policy that is set as the default version.
	DefaultVersionId *string `type:"string"`

	// 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.
	Description *string `type:"string"`

	// Specifies whether the policy can be attached to an IAM user, group, or role.
	IsAttachable *bool `type:"boolean"`

	// The path to the policy.
	//
	// For more information about paths, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `type:"string"`

	// The stable and unique string identifying the policy.
	//
	// For more information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	PolicyId *string `min:"16" type:"string"`

	// The friendly name (not ARN) identifying the policy.
	PolicyName *string `min:"1" type:"string"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// 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.
	UpdateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

Contains information about a managed policy.

This data type is used as a response element in the CreatePolicy, GetPolicy, and ListPolicies actions.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (Policy) GoString

func (s Policy) GoString() string

GoString returns the string representation

func (Policy) String

func (s Policy) String() string

String returns the string representation

type PolicyDetail

type PolicyDetail struct {

	// The policy document.
	PolicyDocument *string `min:"1" type:"string"`

	// The name of the policy.
	PolicyName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains information about an IAM policy, including the policy document.

This data type is used as a response element in the GetAccountAuthorizationDetails action.

func (PolicyDetail) GoString

func (s PolicyDetail) GoString() string

GoString returns the string representation

func (PolicyDetail) String

func (s PolicyDetail) String() string

String returns the string representation

type PolicyGroup

type PolicyGroup struct {

	// The name (friendly name, not ARN) identifying the group.
	GroupName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains information about a group that a managed policy is attached to.

This data type is used as a response element in the ListEntitiesForPolicy action.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (PolicyGroup) GoString

func (s PolicyGroup) GoString() string

GoString returns the string representation

func (PolicyGroup) String

func (s PolicyGroup) String() string

String returns the string representation

type PolicyRole

type PolicyRole struct {

	// The name (friendly name, not ARN) identifying the role.
	RoleName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains information about a role that a managed policy is attached to.

This data type is used as a response element in the ListEntitiesForPolicy action.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (PolicyRole) GoString

func (s PolicyRole) GoString() string

GoString returns the string representation

func (PolicyRole) String

func (s PolicyRole) String() string

String returns the string representation

type PolicyUser

type PolicyUser struct {

	// The name (friendly name, not ARN) identifying the user.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains information about a user that a managed policy is attached to.

This data type is used as a response element in the ListEntitiesForPolicy action.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (PolicyUser) GoString

func (s PolicyUser) GoString() string

GoString returns the string representation

func (PolicyUser) String

func (s PolicyUser) String() string

String returns the string representation

type PolicyVersion

type PolicyVersion struct {

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the policy version was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// 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.
	Document *string `min:"1" type:"string"`

	// Specifies whether the policy version is set as the policy's default version.
	IsDefaultVersion *bool `type:"boolean"`

	// 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.
	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

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 actions.

For more information about managed policies, refer to Managed Policies and Inline Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the Using IAM guide.

func (PolicyVersion) GoString

func (s PolicyVersion) GoString() string

GoString returns the string representation

func (PolicyVersion) String

func (s PolicyVersion) String() string

String returns the string representation

type Position

type Position struct {

	// The column in the line containing the specified position in the document.
	Column *int64 `type:"integer"`

	// The line containing the specified position in the document.
	Line *int64 `type:"integer"`
	// contains filtered or unexported fields
}

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.

func (Position) GoString

func (s Position) GoString() string

GoString returns the string representation

func (Position) String

func (s Position) String() string

String returns the string representation

type PutGroupPolicyInput

type PutGroupPolicyInput struct {

	// The name of the group to associate the policy with.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy document.
	PolicyName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutGroupPolicyInput) GoString

func (s PutGroupPolicyInput) GoString() string

GoString returns the string representation

func (PutGroupPolicyInput) String

func (s PutGroupPolicyInput) String() string

String returns the string representation

type PutGroupPolicyOutput

type PutGroupPolicyOutput struct {
	// contains filtered or unexported fields
}

func (PutGroupPolicyOutput) GoString

func (s PutGroupPolicyOutput) GoString() string

GoString returns the string representation

func (PutGroupPolicyOutput) String

func (s PutGroupPolicyOutput) String() string

String returns the string representation

type PutRolePolicyInput

type PutRolePolicyInput struct {

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy document.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name of the role to associate the policy with.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutRolePolicyInput) GoString

func (s PutRolePolicyInput) GoString() string

GoString returns the string representation

func (PutRolePolicyInput) String

func (s PutRolePolicyInput) String() string

String returns the string representation

type PutRolePolicyOutput

type PutRolePolicyOutput struct {
	// contains filtered or unexported fields
}

func (PutRolePolicyOutput) GoString

func (s PutRolePolicyOutput) GoString() string

GoString returns the string representation

func (PutRolePolicyOutput) String

func (s PutRolePolicyOutput) String() string

String returns the string representation

type PutUserPolicyInput

type PutUserPolicyInput struct {

	// The policy document.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the policy document.
	PolicyName *string `min:"1" type:"string" required:"true"`

	// The name of the user to associate the policy with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutUserPolicyInput) GoString

func (s PutUserPolicyInput) GoString() string

GoString returns the string representation

func (PutUserPolicyInput) String

func (s PutUserPolicyInput) String() string

String returns the string representation

type PutUserPolicyOutput

type PutUserPolicyOutput struct {
	// contains filtered or unexported fields
}

func (PutUserPolicyOutput) GoString

func (s PutUserPolicyOutput) GoString() string

GoString returns the string representation

func (PutUserPolicyOutput) String

func (s PutUserPolicyOutput) String() string

String returns the string representation

type RemoveClientIDFromOpenIDConnectProviderInput

type RemoveClientIDFromOpenIDConnectProviderInput struct {

	// The client ID (also known as audience) to remove from the IAM OpenID Connect
	// provider. For more information about client IDs, see CreateOpenIDConnectProvider.
	ClientID *string `min:"1" type:"string" required:"true"`

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider
	// to remove the client ID from. You can get a list of OIDC provider ARNs by
	// using the ListOpenIDConnectProviders action.
	OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (RemoveClientIDFromOpenIDConnectProviderInput) GoString

GoString returns the string representation

func (RemoveClientIDFromOpenIDConnectProviderInput) String

String returns the string representation

type RemoveClientIDFromOpenIDConnectProviderOutput

type RemoveClientIDFromOpenIDConnectProviderOutput struct {
	// contains filtered or unexported fields
}

func (RemoveClientIDFromOpenIDConnectProviderOutput) GoString

GoString returns the string representation

func (RemoveClientIDFromOpenIDConnectProviderOutput) String

String returns the string representation

type RemoveRoleFromInstanceProfileInput

type RemoveRoleFromInstanceProfileInput struct {

	// The name of the instance profile to update.
	InstanceProfileName *string `min:"1" type:"string" required:"true"`

	// The name of the role to remove.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (RemoveRoleFromInstanceProfileInput) GoString

GoString returns the string representation

func (RemoveRoleFromInstanceProfileInput) String

String returns the string representation

type RemoveRoleFromInstanceProfileOutput

type RemoveRoleFromInstanceProfileOutput struct {
	// contains filtered or unexported fields
}

func (RemoveRoleFromInstanceProfileOutput) GoString

GoString returns the string representation

func (RemoveRoleFromInstanceProfileOutput) String

String returns the string representation

type RemoveUserFromGroupInput

type RemoveUserFromGroupInput struct {

	// The name of the group to update.
	GroupName *string `min:"1" type:"string" required:"true"`

	// The name of the user to remove.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (RemoveUserFromGroupInput) GoString

func (s RemoveUserFromGroupInput) GoString() string

GoString returns the string representation

func (RemoveUserFromGroupInput) String

func (s RemoveUserFromGroupInput) String() string

String returns the string representation

type RemoveUserFromGroupOutput

type RemoveUserFromGroupOutput struct {
	// contains filtered or unexported fields
}

func (RemoveUserFromGroupOutput) GoString

func (s RemoveUserFromGroupOutput) GoString() string

GoString returns the string representation

func (RemoveUserFromGroupOutput) String

func (s RemoveUserFromGroupOutput) String() string

String returns the string representation

type ResourceSpecificResult

type ResourceSpecificResult struct {

	// 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.
	EvalDecisionDetails map[string]*string `type:"map"`

	// The result of the simulation of the simulated API action on the resource
	// specified in EvalResourceName.
	EvalResourceDecision *string `type:"string" required:"true" enum:"PolicyEvaluationDecisionType"`

	// The name of the simulated resource, in Amazon Resource Name (ARN) format.
	EvalResourceName *string `min:"1" type:"string" required:"true"`

	// 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 action on the resource, if any statement denies that action, then
	// the explicit deny overrides any allow, and the deny statement is the only
	// entry included in the result.
	MatchedStatements []*Statement `type:"list"`

	// A list of context keys that are required by the included input policies but
	// that were not provided by one of the input parameters. To discover the context
	// keys used by a set of policies, you can call GetContextKeysForCustomPolicy
	// or GetContextKeysForPrincipalPolicy.
	MissingContextValues []*string `type:"list"`
	// contains filtered or unexported fields
}

Contains the result of the simulation of a single API action call on a single resource.

This data type is used by a member of the EvaluationResult data type.

func (ResourceSpecificResult) GoString

func (s ResourceSpecificResult) GoString() string

GoString returns the string representation

func (ResourceSpecificResult) String

func (s ResourceSpecificResult) String() string

String returns the string representation

type ResyncMFADeviceInput

type ResyncMFADeviceInput struct {

	// An authentication code emitted by the device.
	AuthenticationCode1 *string `min:"6" type:"string" required:"true"`

	// A subsequent authentication code emitted by the device.
	AuthenticationCode2 *string `min:"6" type:"string" required:"true"`

	// Serial number that uniquely identifies the MFA device.
	SerialNumber *string `min:"9" type:"string" required:"true"`

	// The name of the user whose MFA device you want to resynchronize.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ResyncMFADeviceInput) GoString

func (s ResyncMFADeviceInput) GoString() string

GoString returns the string representation

func (ResyncMFADeviceInput) String

func (s ResyncMFADeviceInput) String() string

String returns the string representation

type ResyncMFADeviceOutput

type ResyncMFADeviceOutput struct {
	// contains filtered or unexported fields
}

func (ResyncMFADeviceOutput) GoString

func (s ResyncMFADeviceOutput) GoString() string

GoString returns the string representation

func (ResyncMFADeviceOutput) String

func (s ResyncMFADeviceOutput) String() string

String returns the string representation

type Role

type Role struct {

	// The Amazon Resource Name (ARN) specifying the role. For more information
	// about ARNs and how to use them in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Arn *string `min:"20" type:"string" required:"true"`

	// The policy that grants an entity permission to assume the role.
	AssumeRolePolicyDocument *string `min:"1" type:"string"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the role was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The path to the role. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string" required:"true"`

	// The stable and unique string identifying the role. For more information about
	// IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	RoleId *string `min:"16" type:"string" required:"true"`

	// The friendly name that identifies the role.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an IAM role.

This data type is used as a response element in the following actions:

  CreateRole

  GetRole

  ListRoles

func (Role) GoString

func (s Role) GoString() string

GoString returns the string representation

func (Role) String

func (s Role) String() string

String returns the string representation

type RoleDetail

type RoleDetail struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`

	// The trust policy that grants permission to assume the role.
	AssumeRolePolicyDocument *string `min:"1" type:"string"`

	// A list of managed policies attached to the role. These policies are the role's
	// access (permissions) policies.
	AttachedManagedPolicies []*AttachedPolicy `type:"list"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the role was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// Contains a list of instance profiles.
	InstanceProfileList []*InstanceProfile `type:"list"`

	// The path to the role. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string"`

	// The stable and unique string identifying the role. For more information about
	// IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	RoleId *string `min:"16" type:"string"`

	// The friendly name that identifies the role.
	RoleName *string `min:"1" type:"string"`

	// A list of inline policies embedded in the role. These policies are the role's
	// access (permissions) policies.
	RolePolicyList []*PolicyDetail `type:"list"`
	// contains filtered or unexported fields
}

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 action.

func (RoleDetail) GoString

func (s RoleDetail) GoString() string

GoString returns the string representation

func (RoleDetail) String

func (s RoleDetail) String() string

String returns the string representation

type SAMLProviderListEntry

type SAMLProviderListEntry struct {

	// The Amazon Resource Name (ARN) of the SAML provider.
	Arn *string `min:"20" type:"string"`

	// The date and time when the SAML provider was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The expiration date and time for the SAML provider.
	ValidUntil *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

Contains the list of SAML providers for this account.

func (SAMLProviderListEntry) GoString

func (s SAMLProviderListEntry) GoString() string

GoString returns the string representation

func (SAMLProviderListEntry) String

func (s SAMLProviderListEntry) String() string

String returns the string representation

type SSHPublicKey

type SSHPublicKey struct {

	// The MD5 message digest of the SSH public key.
	Fingerprint *string `min:"48" type:"string" required:"true"`

	// The SSH public key.
	SSHPublicKeyBody *string `min:"1" type:"string" required:"true"`

	// The unique identifier for the SSH public key.
	SSHPublicKeyId *string `min:"20" type:"string" required:"true"`

	// The status of the SSH public key. Active means the key can be used for authentication
	// with an AWS CodeCommit repository. Inactive means the key cannot be used.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the SSH public key was uploaded.
	UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The name of the IAM user associated with the SSH public key.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an SSH public key.

This data type is used as a response element in the GetSSHPublicKey and UploadSSHPublicKey actions.

func (SSHPublicKey) GoString

func (s SSHPublicKey) GoString() string

GoString returns the string representation

func (SSHPublicKey) String

func (s SSHPublicKey) String() string

String returns the string representation

type SSHPublicKeyMetadata

type SSHPublicKeyMetadata struct {

	// The unique identifier for the SSH public key.
	SSHPublicKeyId *string `min:"20" type:"string" required:"true"`

	// The status of the SSH public key. Active means the key can be used for authentication
	// with an AWS CodeCommit repository. Inactive means the key cannot be used.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the SSH public key was uploaded.
	UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The name of the IAM user associated with the SSH public key.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

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 action.

func (SSHPublicKeyMetadata) GoString

func (s SSHPublicKeyMetadata) GoString() string

GoString returns the string representation

func (SSHPublicKeyMetadata) String

func (s SSHPublicKeyMetadata) String() string

String returns the string representation

type ServerCertificate

type ServerCertificate struct {

	// The contents of the public key certificate.
	CertificateBody *string `min:"1" type:"string" required:"true"`

	// The contents of the public key certificate chain.
	CertificateChain *string `min:"1" type:"string"`

	// The meta information of the server certificate, such as its name, path, ID,
	// and ARN.
	ServerCertificateMetadata *ServerCertificateMetadata `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains information about a server certificate.

This data type is used as a response element in the GetServerCertificate

action.

func (ServerCertificate) GoString

func (s ServerCertificate) GoString() string

GoString returns the string representation

func (ServerCertificate) String

func (s ServerCertificate) String() string

String returns the string representation

type ServerCertificateMetadata

type ServerCertificateMetadata struct {

	// The Amazon Resource Name (ARN) specifying the server certificate. For more
	// information about ARNs and how to use them in policies, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Arn *string `min:"20" type:"string" required:"true"`

	// The date on which the certificate is set to expire.
	Expiration *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The path to the server certificate. For more information about paths, see
	// IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string" required:"true"`

	// The stable and unique string identifying the server certificate. For more
	// information about IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	ServerCertificateId *string `min:"16" type:"string" required:"true"`

	// The name that identifies the server certificate.
	ServerCertificateName *string `min:"1" type:"string" required:"true"`

	// The date when the server certificate was uploaded.
	UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

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 actions.

func (ServerCertificateMetadata) GoString

func (s ServerCertificateMetadata) GoString() string

GoString returns the string representation

func (ServerCertificateMetadata) String

func (s ServerCertificateMetadata) String() string

String returns the string representation

type SetDefaultPolicyVersionInput

type SetDefaultPolicyVersionInput struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	PolicyArn *string `min:"20" type:"string" required:"true"`

	// The version of the policy to set as the default (operative) version.
	//
	// For more information about managed policy versions, see Versioning for Managed
	// Policies (http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html)
	// in the IAM User Guide.
	VersionId *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (SetDefaultPolicyVersionInput) GoString

func (s SetDefaultPolicyVersionInput) GoString() string

GoString returns the string representation

func (SetDefaultPolicyVersionInput) String

String returns the string representation

type SetDefaultPolicyVersionOutput

type SetDefaultPolicyVersionOutput struct {
	// contains filtered or unexported fields
}

func (SetDefaultPolicyVersionOutput) GoString

GoString returns the string representation

func (SetDefaultPolicyVersionOutput) String

String returns the string representation

type SigningCertificate

type SigningCertificate struct {

	// The contents of the signing certificate.
	CertificateBody *string `min:"1" type:"string" required:"true"`

	// The ID for the signing certificate.
	CertificateId *string `min:"24" type:"string" required:"true"`

	// The status of the signing certificate. Active means the key is valid for
	// API calls, while Inactive means it is not.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The date when the signing certificate was uploaded.
	UploadDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The name of the user the signing certificate is associated with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an X.509 signing certificate.

This data type is used as a response element in the UploadSigningCertificate and ListSigningCertificates actions.

func (SigningCertificate) GoString

func (s SigningCertificate) GoString() string

GoString returns the string representation

func (SigningCertificate) String

func (s SigningCertificate) String() string

String returns the string representation

type SimulateCustomPolicyInput

type SimulateCustomPolicyInput struct {

	// A list of names of API actions to evaluate in the simulation. Each action
	// is evaluated against each resource. Each action must include the service
	// identifier, such as iam:CreateUser.
	ActionNames []*string `type:"list" required:"true"`

	// The ARN of the user that you want to use as the simulated caller of the APIs.
	// 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.
	CallerArn *string `min:"1" type:"string"`

	// A list of context keys and corresponding values for the simulation to use.
	// Whenever a context key is evaluated by a Condition element in one of the
	// simulated IAM permission policies, the corresponding value is supplied.
	ContextEntries []*ContextEntry `type:"list"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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 (http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html)
	// or one of the AssumeRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html)
	// APIs to restrict what a user can do while using the temporary credentials.
	PolicyInputList []*string `type:"list" required:"true"`

	// 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.
	ResourceArns []*string `type:"list"`

	// Specifies the type of simulation to run. Different APIs 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 (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html)
	// in the AWS 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
	ResourceHandlingOption *string `min:"1" type:"string"`

	// 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.
	ResourceOwner *string `min:"1" type:"string"`

	// 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.
	ResourcePolicy *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (SimulateCustomPolicyInput) GoString

func (s SimulateCustomPolicyInput) GoString() string

GoString returns the string representation

func (SimulateCustomPolicyInput) String

func (s SimulateCustomPolicyInput) String() string

String returns the string representation

type SimulatePolicyResponse

type SimulatePolicyResponse struct {

	// The results of the simulation.
	EvaluationResults []*EvaluationResult `type:"list"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// When IsTruncated is true, this element is present and contains the value
	// to use for the Marker parameter in a subsequent pagination request.
	Marker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful SimulatePrincipalPolicy or SimulateCustomPolicy request.

func (SimulatePolicyResponse) GoString

func (s SimulatePolicyResponse) GoString() string

GoString returns the string representation

func (SimulatePolicyResponse) String

func (s SimulatePolicyResponse) String() string

String returns the string representation

type SimulatePrincipalPolicyInput

type SimulatePrincipalPolicyInput struct {

	// A list of names of API actions to evaluate in the simulation. Each action
	// is evaluated for each resource. Each action must include the service identifier,
	// such as iam:CreateUser.
	ActionNames []*string `type:"list" required:"true"`

	// The ARN of the user that you want to specify as the simulated caller of the
	// APIs. 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 APIs 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.
	CallerArn *string `min:"1" type:"string"`

	// A list of context keys and corresponding values for the simulation to use.
	// Whenever a context key is evaluated by a Condition element in one of the
	// simulated policies, the corresponding value is supplied.
	ContextEntries []*ContextEntry `type:"list"`

	// 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.
	Marker *string `min:"1" type:"string"`

	// 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.
	//
	// This parameter is optional. If you do not include it, 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.
	MaxItems *int64 `min:"1" type:"integer"`

	// 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.
	PolicyInputList []*string `type:"list"`

	// 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.
	PolicySourceArn *string `min:"20" type:"string" required:"true"`

	// 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.
	ResourceArns []*string `type:"list"`

	// Specifies the type of simulation to run. Different APIs 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 (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html)
	// in the AWS 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
	ResourceHandlingOption *string `min:"1" type:"string"`

	// 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.
	ResourceOwner *string `min:"1" type:"string"`

	// 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.
	ResourcePolicy *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (SimulatePrincipalPolicyInput) GoString

func (s SimulatePrincipalPolicyInput) GoString() string

GoString returns the string representation

func (SimulatePrincipalPolicyInput) String

String returns the string representation

type Statement

type Statement struct {

	// The row and column of the end of a Statement in an IAM policy.
	EndPosition *Position `type:"structure"`

	// The identifier of the policy that was provided as an input.
	SourcePolicyId *string `type:"string"`

	// The type of the policy.
	SourcePolicyType *string `type:"string" enum:"PolicySourceType"`

	// The row and column of the beginning of the Statement in an IAM policy.
	StartPosition *Position `type:"structure"`
	// contains filtered or unexported fields
}

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.

func (Statement) GoString

func (s Statement) GoString() string

GoString returns the string representation

func (Statement) String

func (s Statement) String() string

String returns the string representation

type UpdateAccessKeyInput

type UpdateAccessKeyInput struct {

	// The access key ID of the secret access key you want to update.
	AccessKeyId *string `min:"16" type:"string" required:"true"`

	// The status you want to assign to the secret access key. Active means the
	// key can be used for API calls to AWS, while Inactive means the key cannot
	// be used.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The name of the user whose key you want to update.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateAccessKeyInput) GoString

func (s UpdateAccessKeyInput) GoString() string

GoString returns the string representation

func (UpdateAccessKeyInput) String

func (s UpdateAccessKeyInput) String() string

String returns the string representation

type UpdateAccessKeyOutput

type UpdateAccessKeyOutput struct {
	// contains filtered or unexported fields
}

func (UpdateAccessKeyOutput) GoString

func (s UpdateAccessKeyOutput) GoString() string

GoString returns the string representation

func (UpdateAccessKeyOutput) String

func (s UpdateAccessKeyOutput) String() string

String returns the string representation

type UpdateAccountPasswordPolicyInput

type UpdateAccountPasswordPolicyInput struct {

	// 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/HowToPwdIAMUser.html)
	// in the IAM User Guide.
	//
	// Default value: false
	AllowUsersToChangePassword *bool `type:"boolean"`

	// Prevents IAM users from setting a new password after their password has expired.
	//
	// Default value: false
	HardExpiry *bool `type:"boolean"`

	// The number of days that an IAM user password is valid. The default value
	// of 0 means IAM user passwords never expire.
	//
	// Default value: 0
	MaxPasswordAge *int64 `min:"1" type:"integer"`

	// The minimum number of characters allowed in an IAM user password.
	//
	// Default value: 6
	MinimumPasswordLength *int64 `min:"6" type:"integer"`

	// Specifies the number of previous passwords that IAM users are prevented from
	// reusing. The default value of 0 means IAM users are not prevented from reusing
	// previous passwords.
	//
	// Default value: 0
	PasswordReusePrevention *int64 `min:"1" type:"integer"`

	// Specifies whether IAM user passwords must contain at least one lowercase
	// character from the ISO basic Latin alphabet (a to z).
	//
	// Default value: false
	RequireLowercaseCharacters *bool `type:"boolean"`

	// Specifies whether IAM user passwords must contain at least one numeric character
	// (0 to 9).
	//
	// Default value: false
	RequireNumbers *bool `type:"boolean"`

	// Specifies whether IAM user passwords must contain at least one of the following
	// non-alphanumeric characters:
	//
	// ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '
	//
	// Default value: false
	RequireSymbols *bool `type:"boolean"`

	// Specifies whether IAM user passwords must contain at least one uppercase
	// character from the ISO basic Latin alphabet (A to Z).
	//
	// Default value: false
	RequireUppercaseCharacters *bool `type:"boolean"`
	// contains filtered or unexported fields
}

func (UpdateAccountPasswordPolicyInput) GoString

GoString returns the string representation

func (UpdateAccountPasswordPolicyInput) String

String returns the string representation

type UpdateAccountPasswordPolicyOutput

type UpdateAccountPasswordPolicyOutput struct {
	// contains filtered or unexported fields
}

func (UpdateAccountPasswordPolicyOutput) GoString

GoString returns the string representation

func (UpdateAccountPasswordPolicyOutput) String

String returns the string representation

type UpdateAssumeRolePolicyInput

type UpdateAssumeRolePolicyInput struct {

	// The policy that grants an entity permission to assume the role.
	PolicyDocument *string `min:"1" type:"string" required:"true"`

	// The name of the role to update.
	RoleName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateAssumeRolePolicyInput) GoString

func (s UpdateAssumeRolePolicyInput) GoString() string

GoString returns the string representation

func (UpdateAssumeRolePolicyInput) String

String returns the string representation

type UpdateAssumeRolePolicyOutput

type UpdateAssumeRolePolicyOutput struct {
	// contains filtered or unexported fields
}

func (UpdateAssumeRolePolicyOutput) GoString

func (s UpdateAssumeRolePolicyOutput) GoString() string

GoString returns the string representation

func (UpdateAssumeRolePolicyOutput) String

String returns the string representation

type UpdateGroupInput

type UpdateGroupInput struct {

	// Name of the group to update. If you're changing the name of the group, this
	// is the original name.
	GroupName *string `min:"1" type:"string" required:"true"`

	// New name for the group. Only include this if changing the group's name.
	NewGroupName *string `min:"1" type:"string"`

	// New path for the group. Only include this if changing the group's path.
	NewPath *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateGroupInput) GoString

func (s UpdateGroupInput) GoString() string

GoString returns the string representation

func (UpdateGroupInput) String

func (s UpdateGroupInput) String() string

String returns the string representation

type UpdateGroupOutput

type UpdateGroupOutput struct {
	// contains filtered or unexported fields
}

func (UpdateGroupOutput) GoString

func (s UpdateGroupOutput) GoString() string

GoString returns the string representation

func (UpdateGroupOutput) String

func (s UpdateGroupOutput) String() string

String returns the string representation

type UpdateLoginProfileInput

type UpdateLoginProfileInput struct {

	// The new password for the specified user.
	Password *string `min:"1" type:"string"`

	// Require the specified user to set a new password on next sign-in.
	PasswordResetRequired *bool `type:"boolean"`

	// The name of the user whose password you want to update.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateLoginProfileInput) GoString

func (s UpdateLoginProfileInput) GoString() string

GoString returns the string representation

func (UpdateLoginProfileInput) String

func (s UpdateLoginProfileInput) String() string

String returns the string representation

type UpdateLoginProfileOutput

type UpdateLoginProfileOutput struct {
	// contains filtered or unexported fields
}

func (UpdateLoginProfileOutput) GoString

func (s UpdateLoginProfileOutput) GoString() string

GoString returns the string representation

func (UpdateLoginProfileOutput) String

func (s UpdateLoginProfileOutput) String() string

String returns the string representation

type UpdateOpenIDConnectProviderThumbprintInput

type UpdateOpenIDConnectProviderThumbprintInput struct {

	// The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider
	// to update the thumbprint for. You can get a list of OIDC provider ARNs by
	// using the ListOpenIDConnectProviders action.
	OpenIDConnectProviderArn *string `min:"20" type:"string" required:"true"`

	// A list of certificate thumbprints that are associated with the specified
	// IAM OpenID Connect provider. For more information, see CreateOpenIDConnectProvider.
	ThumbprintList []*string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateOpenIDConnectProviderThumbprintInput) GoString

GoString returns the string representation

func (UpdateOpenIDConnectProviderThumbprintInput) String

String returns the string representation

type UpdateOpenIDConnectProviderThumbprintOutput

type UpdateOpenIDConnectProviderThumbprintOutput struct {
	// contains filtered or unexported fields
}

func (UpdateOpenIDConnectProviderThumbprintOutput) GoString

GoString returns the string representation

func (UpdateOpenIDConnectProviderThumbprintOutput) String

String returns the string representation

type UpdateSAMLProviderInput

type UpdateSAMLProviderInput struct {

	// 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.
	SAMLMetadataDocument *string `min:"1000" type:"string" required:"true"`

	// The Amazon Resource Name (ARN) of the SAML provider to update.
	SAMLProviderArn *string `min:"20" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateSAMLProviderInput) GoString

func (s UpdateSAMLProviderInput) GoString() string

GoString returns the string representation

func (UpdateSAMLProviderInput) String

func (s UpdateSAMLProviderInput) String() string

String returns the string representation

type UpdateSAMLProviderOutput

type UpdateSAMLProviderOutput struct {

	// The Amazon Resource Name (ARN) of the SAML provider that was updated.
	SAMLProviderArn *string `min:"20" type:"string"`
	// contains filtered or unexported fields
}

Contains the response to a successful UpdateSAMLProvider request.

func (UpdateSAMLProviderOutput) GoString

func (s UpdateSAMLProviderOutput) GoString() string

GoString returns the string representation

func (UpdateSAMLProviderOutput) String

func (s UpdateSAMLProviderOutput) String() string

String returns the string representation

type UpdateSSHPublicKeyInput

type UpdateSSHPublicKeyInput struct {

	// The unique identifier for the SSH public key.
	SSHPublicKeyId *string `min:"20" type:"string" required:"true"`

	// The status to assign to the SSH public key. Active means the key can be used
	// for authentication with an AWS CodeCommit repository. Inactive means the
	// key cannot be used.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The name of the IAM user associated with the SSH public key.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateSSHPublicKeyInput) GoString

func (s UpdateSSHPublicKeyInput) GoString() string

GoString returns the string representation

func (UpdateSSHPublicKeyInput) String

func (s UpdateSSHPublicKeyInput) String() string

String returns the string representation

type UpdateSSHPublicKeyOutput

type UpdateSSHPublicKeyOutput struct {
	// contains filtered or unexported fields
}

func (UpdateSSHPublicKeyOutput) GoString

func (s UpdateSSHPublicKeyOutput) GoString() string

GoString returns the string representation

func (UpdateSSHPublicKeyOutput) String

func (s UpdateSSHPublicKeyOutput) String() string

String returns the string representation

type UpdateServerCertificateInput

type UpdateServerCertificateInput struct {

	// The new path for the server certificate. Include this only if you are updating
	// the server certificate's path.
	NewPath *string `min:"1" type:"string"`

	// 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.
	NewServerCertificateName *string `min:"1" type:"string"`

	// The name of the server certificate that you want to update.
	ServerCertificateName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateServerCertificateInput) GoString

func (s UpdateServerCertificateInput) GoString() string

GoString returns the string representation

func (UpdateServerCertificateInput) String

String returns the string representation

type UpdateServerCertificateOutput

type UpdateServerCertificateOutput struct {
	// contains filtered or unexported fields
}

func (UpdateServerCertificateOutput) GoString

GoString returns the string representation

func (UpdateServerCertificateOutput) String

String returns the string representation

type UpdateSigningCertificateInput

type UpdateSigningCertificateInput struct {

	// The ID of the signing certificate you want to update.
	CertificateId *string `min:"24" type:"string" required:"true"`

	// The status you want to assign to the certificate. Active means the certificate
	// can be used for API calls to AWS, while Inactive means the certificate cannot
	// be used.
	Status *string `type:"string" required:"true" enum:"statusType"`

	// The name of the user the signing certificate belongs to.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateSigningCertificateInput) GoString

GoString returns the string representation

func (UpdateSigningCertificateInput) String

String returns the string representation

type UpdateSigningCertificateOutput

type UpdateSigningCertificateOutput struct {
	// contains filtered or unexported fields
}

func (UpdateSigningCertificateOutput) GoString

GoString returns the string representation

func (UpdateSigningCertificateOutput) String

String returns the string representation

type UpdateUserInput

type UpdateUserInput struct {

	// New path for the user. Include this parameter only if you're changing the
	// user's path.
	NewPath *string `min:"1" type:"string"`

	// New name for the user. Include this parameter only if you're changing the
	// user's name.
	NewUserName *string `min:"1" type:"string"`

	// Name of the user to update. If you're changing the name of the user, this
	// is the original user name.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateUserInput) GoString

func (s UpdateUserInput) GoString() string

GoString returns the string representation

func (UpdateUserInput) String

func (s UpdateUserInput) String() string

String returns the string representation

type UpdateUserOutput

type UpdateUserOutput struct {
	// contains filtered or unexported fields
}

func (UpdateUserOutput) GoString

func (s UpdateUserOutput) GoString() string

GoString returns the string representation

func (UpdateUserOutput) String

func (s UpdateUserOutput) String() string

String returns the string representation

type UploadSSHPublicKeyInput

type UploadSSHPublicKeyInput struct {

	// The SSH public key. The public key must be encoded in ssh-rsa format or PEM
	// format.
	SSHPublicKeyBody *string `min:"1" type:"string" required:"true"`

	// The name of the IAM user to associate the SSH public key with.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UploadSSHPublicKeyInput) GoString

func (s UploadSSHPublicKeyInput) GoString() string

GoString returns the string representation

func (UploadSSHPublicKeyInput) String

func (s UploadSSHPublicKeyInput) String() string

String returns the string representation

type UploadSSHPublicKeyOutput

type UploadSSHPublicKeyOutput struct {

	// Contains information about the SSH public key.
	SSHPublicKey *SSHPublicKey `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful UploadSSHPublicKey request.

func (UploadSSHPublicKeyOutput) GoString

func (s UploadSSHPublicKeyOutput) GoString() string

GoString returns the string representation

func (UploadSSHPublicKeyOutput) String

func (s UploadSSHPublicKeyOutput) String() string

String returns the string representation

type UploadServerCertificateInput

type UploadServerCertificateInput struct {

	// The contents of the public key certificate in PEM-encoded format.
	CertificateBody *string `min:"1" type:"string" required:"true"`

	// The contents of the certificate chain. This is typically a concatenation
	// of the PEM-encoded public key certificates of the chain.
	CertificateChain *string `min:"1" type:"string"`

	// The path for the server certificate. For more information about paths, see
	// IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	//
	// This parameter is optional. If it is not included, it defaults to a slash
	// (/).
	//
	//  If you are uploading a server certificate specifically for use with Amazon
	// CloudFront distributions, you must specify a path using the --path option.
	// The path must begin with /cloudfront and must include a trailing slash (for
	// example, /cloudfront/test/).
	Path *string `min:"1" type:"string"`

	// The contents of the private key in PEM-encoded format.
	PrivateKey *string `min:"1" type:"string" required:"true"`

	// The name for the server certificate. Do not include the path in this value.
	// The name of the certificate cannot contain any spaces.
	ServerCertificateName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UploadServerCertificateInput) GoString

func (s UploadServerCertificateInput) GoString() string

GoString returns the string representation

func (UploadServerCertificateInput) String

String returns the string representation

type UploadServerCertificateOutput

type UploadServerCertificateOutput struct {

	// The meta information of the uploaded server certificate without its certificate
	// body, certificate chain, and private key.
	ServerCertificateMetadata *ServerCertificateMetadata `type:"structure"`
	// contains filtered or unexported fields
}

Contains the response to a successful UploadServerCertificate request.

func (UploadServerCertificateOutput) GoString

GoString returns the string representation

func (UploadServerCertificateOutput) String

String returns the string representation

type UploadSigningCertificateInput

type UploadSigningCertificateInput struct {

	// The contents of the signing certificate.
	CertificateBody *string `min:"1" type:"string" required:"true"`

	// The name of the user the signing certificate is for.
	UserName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UploadSigningCertificateInput) GoString

GoString returns the string representation

func (UploadSigningCertificateInput) String

String returns the string representation

type UploadSigningCertificateOutput

type UploadSigningCertificateOutput struct {

	// Information about the certificate.
	Certificate *SigningCertificate `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Contains the response to a successful UploadSigningCertificate request.

func (UploadSigningCertificateOutput) GoString

GoString returns the string representation

func (UploadSigningCertificateOutput) String

String returns the string representation

type User

type User struct {

	// The Amazon Resource Name (ARN) that identifies the user. For more information
	// about ARNs and how to use ARNs in policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Arn *string `min:"20" type:"string" required:"true"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the user was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// 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 (http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html)
	// 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. This field is null (not
	// present) when:
	//
	//   The user does not have a password
	//
	//   The password exists but has never been used (at least not since IAM started
	// tracking this information on October 20th, 2014
	//
	//   there is no sign-in data associated with the user
	//
	//   This value is returned only in the GetUser and ListUsers actions.
	PasswordLastUsed *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The path to the user. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string" required:"true"`

	// The stable and unique string identifying the user. For more information about
	// IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	UserId *string `min:"16" type:"string" required:"true"`

	// The friendly name identifying the user.
	UserName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about an IAM user entity.

This data type is used as a response element in the following actions:

  CreateUser

  GetUser

  ListUsers

func (User) GoString

func (s User) GoString() string

GoString returns the string representation

func (User) String

func (s User) String() string

String returns the string representation

type UserDetail

type UserDetail struct {

	// 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 (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
	// in the AWS General Reference.
	Arn *string `min:"20" type:"string"`

	// A list of the managed policies attached to the user.
	AttachedManagedPolicies []*AttachedPolicy `type:"list"`

	// The date and time, in ISO 8601 date-time format (http://www.iso.org/iso/iso8601),
	// when the user was created.
	CreateDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// A list of IAM groups that the user is in.
	GroupList []*string `type:"list"`

	// The path to the user. For more information about paths, see IAM Identifiers
	// (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	Path *string `min:"1" type:"string"`

	// The stable and unique string identifying the user. For more information about
	// IDs, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html)
	// in the Using IAM guide.
	UserId *string `min:"16" type:"string"`

	// The friendly name identifying the user.
	UserName *string `min:"1" type:"string"`

	// A list of the inline policies embedded in the user.
	UserPolicyList []*PolicyDetail `type:"list"`
	// contains filtered or unexported fields
}

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 action.

func (UserDetail) GoString

func (s UserDetail) GoString() string

GoString returns the string representation

func (UserDetail) String

func (s UserDetail) String() string

String returns the string representation

type VirtualMFADevice

type VirtualMFADevice struct {

	// The Base32 seed defined as specified in RFC3548 (http://www.ietf.org/rfc/rfc3548.txt).
	// The Base32StringSeed is Base64-encoded.
	Base32StringSeed []byte `type:"blob"`

	// The date and time on which the virtual MFA device was enabled.
	EnableDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// 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.
	QRCodePNG []byte `type:"blob"`

	// The serial number associated with VirtualMFADevice.
	SerialNumber *string `min:"9" type:"string" required:"true"`

	// Contains information about an IAM user entity.
	//
	//  This data type is used as a response element in the following actions:
	//
	//    CreateUser
	//
	//    GetUser
	//
	//    ListUsers
	User *User `type:"structure"`
	// contains filtered or unexported fields
}

Contains information about a virtual MFA device.

func (VirtualMFADevice) GoString

func (s VirtualMFADevice) GoString() string

GoString returns the string representation

func (VirtualMFADevice) String

func (s VirtualMFADevice) String() string

String returns the string representation

Directories

Path Synopsis
Package iamiface provides an interface for the AWS Identity and Access Management.
Package iamiface provides an interface for the AWS Identity and Access Management.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL