Documentation
¶
Index ¶
- type AccessKey
- type AccessKeyEntry
- type AccessKeyLastUsed
- type AccessKeyMetadata
- type AccessKeyMetadataList
- type ActionResponse
- type AddClientIDToOpenIDConnectProviderResponse
- type AssumeRoleWithWebIdentityResponse
- type AssumeRoleWithWebIdentityResult
- type AssumedRoleUser
- type CreateAccessKeyResponse
- type CreateAccessKeyResult
- type CreateOpenIDConnectProviderResponse
- type CreateOpenIDConnectProviderResult
- type CreateRoleResponse
- type CreateRoleResult
- type CreateUserResponse
- type CreateUserResult
- type Credentials
- type DeleteAccessKeyResponse
- type DeleteOpenIDConnectProviderResponse
- type DeleteRolePolicyResponse
- type DeleteRoleResponse
- type DeleteUserPolicyResponse
- type DeleteUserResponse
- type GetAccessKeyLastUsedResponse
- type GetAccessKeyLastUsedResult
- type GetCallerIdentityResponse
- type GetCallerIdentityResult
- type GetOpenIDConnectProviderResponse
- type GetOpenIDConnectProviderResult
- type GetRolePolicyResponse
- type GetRolePolicyResult
- type GetRoleResponse
- type GetRoleResult
- type GetUserPolicyResponse
- type GetUserPolicyResult
- type GetUserResponse
- type GetUserResult
- type Identity
- type ListAccessKeysResponse
- type ListAccessKeysResult
- type ListOpenIDConnectProviderTagsResponse
- type ListOpenIDConnectProviderTagsResult
- type ListOpenIDConnectProvidersResponse
- type ListOpenIDConnectProvidersResult
- type ListRolePoliciesResponse
- type ListRolePoliciesResult
- type ListRoleTagsResponse
- type ListRoleTagsResult
- type ListRolesResponse
- type ListRolesResult
- type ListUserPoliciesResponse
- type ListUserPoliciesResult
- type ListUserTagsResponse
- type ListUserTagsResult
- type ListUsersResponse
- type ListUsersResult
- type OIDCProvider
- type OpenIDConnectProviderList
- type OpenIDConnectProviderListEntry
- type Policies
- type PolicyEntry
- type PolicyNameList
- type PutRolePolicyResponse
- type PutUserPolicyResponse
- type RemoveClientIDFromOpenIDConnectProviderResponse
- type ResponseMetadata
- type Role
- type RoleLastUsed
- type Roles
- type Session
- type Tag
- type TagOpenIDConnectProviderResponse
- type TagRoleResponse
- type TagUserResponse
- type Tags
- type UntagOpenIDConnectProviderResponse
- type UntagRoleResponse
- type UntagUserResponse
- type UpdateAccessKeyResponse
- type UpdateAssumeRolePolicyResponse
- type UpdateOpenIDConnectProviderThumbprintResponse
- type UpdateUserResponse
- type UpdateUserResult
- type User
- type Users
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessKeyEntry ¶
type AccessKeyEntry struct {
AccessKeyId string
SecretAccessKey string
Status string
CreateDate time.Time
LastUsedDate time.Time
LastUsedService string
LastUsedRegion string
}
AccessKeyEntry is the storage representation of an access key belonging to a User. It is never marshaled to XML directly; it round-trips through JSON for the internal and Vault storers.
type AccessKeyLastUsed ¶
type AccessKeyMetadata ¶
type AccessKeyMetadataList ¶
type AccessKeyMetadataList struct {
Members []AccessKeyMetadata `xml:"member"`
}
type ActionResponse ¶
type ActionResponse interface {
SetRequestID(string)
}
type AddClientIDToOpenIDConnectProviderResponse ¶
type AddClientIDToOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ AddClientIDToOpenIDConnectProviderResponse"`
ResponseMetadata ResponseMetadata
}
func (*AddClientIDToOpenIDConnectProviderResponse) SetRequestID ¶
func (r *AddClientIDToOpenIDConnectProviderResponse) SetRequestID(requestID string)
type AssumeRoleWithWebIdentityResponse ¶
type AssumeRoleWithWebIdentityResponse struct {
XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleWithWebIdentityResponse"`
Result AssumeRoleWithWebIdentityResult `xml:"AssumeRoleWithWebIdentityResult"`
ResponseMetadata ResponseMetadata
}
func (*AssumeRoleWithWebIdentityResponse) SetRequestID ¶
func (r *AssumeRoleWithWebIdentityResponse) SetRequestID(requestID string)
type AssumeRoleWithWebIdentityResult ¶
type AssumeRoleWithWebIdentityResult struct {
Audience string `xml:",omitempty"`
AssumedRoleUser AssumedRoleUser
Provider string
Credentials Credentials
SubjectFromWebIdentityToken string
// PackedPolicySize is a percentage indicating how close the request's
// session policy came to its size quota; nil (and therefore omitted,
// matching AWS) when no session Policy parameter was supplied.
PackedPolicySize *int64 `xml:",omitempty"`
}
type AssumedRoleUser ¶
AssumedRoleUser identifies the principal produced by assuming a role.
type CreateAccessKeyResponse ¶
type CreateAccessKeyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ CreateAccessKeyResponse"`
Result CreateAccessKeyResult `xml:"CreateAccessKeyResult"`
ResponseMetadata ResponseMetadata
}
func (*CreateAccessKeyResponse) SetRequestID ¶
func (r *CreateAccessKeyResponse) SetRequestID(requestID string)
type CreateAccessKeyResult ¶
type CreateAccessKeyResult struct {
AccessKey AccessKey
}
type CreateOpenIDConnectProviderResponse ¶
type CreateOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ CreateOpenIDConnectProviderResponse"`
Result CreateOpenIDConnectProviderResult `xml:"CreateOpenIDConnectProviderResult"`
ResponseMetadata ResponseMetadata
}
func (*CreateOpenIDConnectProviderResponse) SetRequestID ¶
func (r *CreateOpenIDConnectProviderResponse) SetRequestID(requestID string)
type CreateRoleResponse ¶
type CreateRoleResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ CreateRoleResponse"`
Result CreateRoleResult `xml:"CreateRoleResult"`
ResponseMetadata ResponseMetadata
}
func (*CreateRoleResponse) SetRequestID ¶
func (r *CreateRoleResponse) SetRequestID(requestID string)
type CreateRoleResult ¶
type CreateRoleResult struct {
Role *Role
}
type CreateUserResponse ¶
type CreateUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ CreateUserResponse"`
Result CreateUserResult `xml:"CreateUserResult"`
ResponseMetadata ResponseMetadata
}
func (*CreateUserResponse) SetRequestID ¶
func (r *CreateUserResponse) SetRequestID(requestID string)
type CreateUserResult ¶
type CreateUserResult struct {
User User
}
type Credentials ¶
type Credentials struct {
AccessKeyId string
SecretAccessKey string
SessionToken string
Expiration time.Time
}
Credentials is the temporary security credential set returned by AssumeRoleWithWebIdentity.
type DeleteAccessKeyResponse ¶
type DeleteAccessKeyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteAccessKeyResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteAccessKeyResponse) SetRequestID ¶
func (r *DeleteAccessKeyResponse) SetRequestID(requestID string)
type DeleteOpenIDConnectProviderResponse ¶
type DeleteOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteOpenIDConnectProviderResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteOpenIDConnectProviderResponse) SetRequestID ¶
func (r *DeleteOpenIDConnectProviderResponse) SetRequestID(requestID string)
type DeleteRolePolicyResponse ¶
type DeleteRolePolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteRolePolicyResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteRolePolicyResponse) SetRequestID ¶
func (r *DeleteRolePolicyResponse) SetRequestID(requestID string)
type DeleteRoleResponse ¶
type DeleteRoleResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteRoleResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteRoleResponse) SetRequestID ¶
func (r *DeleteRoleResponse) SetRequestID(requestID string)
type DeleteUserPolicyResponse ¶
type DeleteUserPolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteUserPolicyResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteUserPolicyResponse) SetRequestID ¶
func (r *DeleteUserPolicyResponse) SetRequestID(requestID string)
type DeleteUserResponse ¶
type DeleteUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ DeleteUserResponse"`
ResponseMetadata ResponseMetadata
}
func (*DeleteUserResponse) SetRequestID ¶
func (r *DeleteUserResponse) SetRequestID(requestID string)
type GetAccessKeyLastUsedResponse ¶
type GetAccessKeyLastUsedResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetAccessKeyLastUsedResponse"`
Result GetAccessKeyLastUsedResult `xml:"GetAccessKeyLastUsedResult"`
ResponseMetadata ResponseMetadata
}
func (*GetAccessKeyLastUsedResponse) SetRequestID ¶
func (r *GetAccessKeyLastUsedResponse) SetRequestID(requestID string)
type GetAccessKeyLastUsedResult ¶
type GetAccessKeyLastUsedResult struct {
UserName string `xml:",omitempty"`
AccessKeyLastUsed AccessKeyLastUsed
}
type GetCallerIdentityResponse ¶
type GetCallerIdentityResponse struct {
XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ GetCallerIdentityResponse"`
Result GetCallerIdentityResult `xml:"GetCallerIdentityResult"`
ResponseMetadata ResponseMetadata
}
func (*GetCallerIdentityResponse) SetRequestID ¶
func (r *GetCallerIdentityResponse) SetRequestID(requestID string)
type GetCallerIdentityResult ¶
type GetOpenIDConnectProviderResponse ¶
type GetOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetOpenIDConnectProviderResponse"`
Result GetOpenIDConnectProviderResult `xml:"GetOpenIDConnectProviderResult"`
ResponseMetadata ResponseMetadata
}
func (*GetOpenIDConnectProviderResponse) SetRequestID ¶
func (r *GetOpenIDConnectProviderResponse) SetRequestID(requestID string)
type GetRolePolicyResponse ¶
type GetRolePolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetRolePolicyResponse"`
Result GetRolePolicyResult `xml:"GetRolePolicyResult"`
ResponseMetadata ResponseMetadata
}
func (*GetRolePolicyResponse) SetRequestID ¶
func (r *GetRolePolicyResponse) SetRequestID(requestID string)
type GetRolePolicyResult ¶
type GetRoleResponse ¶
type GetRoleResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetRoleResponse"`
Result GetRoleResult `xml:"GetRoleResult"`
ResponseMetadata ResponseMetadata
}
func (*GetRoleResponse) SetRequestID ¶
func (r *GetRoleResponse) SetRequestID(requestID string)
type GetRoleResult ¶
type GetRoleResult struct {
Role *Role
}
type GetUserPolicyResponse ¶
type GetUserPolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetUserPolicyResponse"`
Result GetUserPolicyResult `xml:"GetUserPolicyResult"`
ResponseMetadata ResponseMetadata
}
func (*GetUserPolicyResponse) SetRequestID ¶
func (r *GetUserPolicyResponse) SetRequestID(requestID string)
type GetUserPolicyResult ¶
GetUserPolicyResult's PolicyDocument must be RFC 3986 percent-encoded by the caller before assignment — see iamutil.EncodePolicyDocument. Real IAM returns PolicyDocument URL-encoded; xml.Marshal does not do this encoding on its own.
type GetUserResponse ¶
type GetUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ GetUserResponse"`
Result GetUserResult `xml:"GetUserResult"`
ResponseMetadata ResponseMetadata
}
func (*GetUserResponse) SetRequestID ¶
func (r *GetUserResponse) SetRequestID(requestID string)
type GetUserResult ¶
type GetUserResult struct {
User User
}
type Identity ¶
type Identity struct {
IsRoot bool
User *User
Role *Role
Session *Session
// IdentityPolicies are the inline policies to evaluate for
// authorization: the User's own policies, or the assumed Role's
// policies for a Session. Unset (nil) when IsRoot.
IdentityPolicies []PolicyEntry
// SessionPolicy is the session's own inline policy document (the
// AssumeRoleWithWebIdentity Policy parameter), or "" if none was
// supplied. Only ever set alongside Session.
SessionPolicy string
}
Identity is the caller identity the auth middleware resolves for a request, shared across the auth middleware, the policy middleware, and controllers (GetCallerIdentity) so the access key only ever needs to be resolved once per request.
Exactly one of IsRoot, User, or Session is set:
- IsRoot: the configured root credential. Bypasses policy evaluation entirely, matching real AWS's root user.
- User: a long-term (AKIA…) IAM user credential. IdentityPolicies holds that user's own inline policy documents.
- Session: a temporary (ASIA…) credential minted by AssumeRoleWithWebIdentity. Role is the assumed role; IdentityPolicies holds the role's inline policy documents, and SessionPolicy — if non-empty — is an additional filter that can only narrow, never widen, what the role otherwise allows (Effective permissions = Role identity-based permissions ∩ Session policy permissions).
type ListAccessKeysResponse ¶
type ListAccessKeysResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListAccessKeysResponse"`
Result ListAccessKeysResult `xml:"ListAccessKeysResult"`
ResponseMetadata ResponseMetadata
}
func (*ListAccessKeysResponse) SetRequestID ¶
func (r *ListAccessKeysResponse) SetRequestID(requestID string)
type ListAccessKeysResult ¶
type ListAccessKeysResult struct {
AccessKeyMetadata AccessKeyMetadataList
IsTruncated bool
Marker string `xml:",omitempty"`
}
type ListOpenIDConnectProviderTagsResponse ¶
type ListOpenIDConnectProviderTagsResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListOpenIDConnectProviderTagsResponse"`
Result ListOpenIDConnectProviderTagsResult `xml:"ListOpenIDConnectProviderTagsResult"`
ResponseMetadata ResponseMetadata
}
func (*ListOpenIDConnectProviderTagsResponse) SetRequestID ¶
func (r *ListOpenIDConnectProviderTagsResponse) SetRequestID(requestID string)
type ListOpenIDConnectProvidersResponse ¶
type ListOpenIDConnectProvidersResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListOpenIDConnectProvidersResponse"`
Result ListOpenIDConnectProvidersResult `xml:"ListOpenIDConnectProvidersResult"`
ResponseMetadata ResponseMetadata
}
func (*ListOpenIDConnectProvidersResponse) SetRequestID ¶
func (r *ListOpenIDConnectProvidersResponse) SetRequestID(requestID string)
type ListOpenIDConnectProvidersResult ¶
type ListOpenIDConnectProvidersResult struct {
OpenIDConnectProviderList OpenIDConnectProviderList
}
type ListRolePoliciesResponse ¶
type ListRolePoliciesResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListRolePoliciesResponse"`
Result ListRolePoliciesResult `xml:"ListRolePoliciesResult"`
ResponseMetadata ResponseMetadata
}
func (*ListRolePoliciesResponse) SetRequestID ¶
func (r *ListRolePoliciesResponse) SetRequestID(requestID string)
type ListRolePoliciesResult ¶
type ListRolePoliciesResult struct {
PolicyNames PolicyNameList
IsTruncated bool
Marker string `xml:",omitempty"`
}
type ListRoleTagsResponse ¶
type ListRoleTagsResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListRoleTagsResponse"`
Result ListRoleTagsResult `xml:"ListRoleTagsResult"`
ResponseMetadata ResponseMetadata
}
func (*ListRoleTagsResponse) SetRequestID ¶
func (r *ListRoleTagsResponse) SetRequestID(requestID string)
type ListRoleTagsResult ¶
type ListRolesResponse ¶
type ListRolesResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListRolesResponse"`
Result ListRolesResult `xml:"ListRolesResult"`
ResponseMetadata ResponseMetadata
}
func (*ListRolesResponse) SetRequestID ¶
func (r *ListRolesResponse) SetRequestID(requestID string)
type ListRolesResult ¶
type ListUserPoliciesResponse ¶
type ListUserPoliciesResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListUserPoliciesResponse"`
Result ListUserPoliciesResult `xml:"ListUserPoliciesResult"`
ResponseMetadata ResponseMetadata
}
func (*ListUserPoliciesResponse) SetRequestID ¶
func (r *ListUserPoliciesResponse) SetRequestID(requestID string)
type ListUserPoliciesResult ¶
type ListUserPoliciesResult struct {
PolicyNames PolicyNameList
IsTruncated bool
Marker string `xml:",omitempty"`
}
type ListUserTagsResponse ¶
type ListUserTagsResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListUserTagsResponse"`
Result ListUserTagsResult `xml:"ListUserTagsResult"`
ResponseMetadata ResponseMetadata
}
func (*ListUserTagsResponse) SetRequestID ¶
func (r *ListUserTagsResponse) SetRequestID(requestID string)
type ListUserTagsResult ¶
type ListUsersResponse ¶
type ListUsersResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ ListUsersResponse"`
Result ListUsersResult `xml:"ListUsersResult"`
ResponseMetadata ResponseMetadata
}
func (*ListUsersResponse) SetRequestID ¶
func (r *ListUsersResponse) SetRequestID(requestID string)
type ListUsersResult ¶
type OIDCProvider ¶
type OIDCProvider struct {
// Arn is the full arn:aws:iam::<account>:oidc-provider/<url> ARN.
Arn string `json:"arn"`
// Url is stored WITHOUT the "https://" scheme prefix. This is both the
// ARN's resource-path suffix and the exact string
// GetOpenIDConnectProvider echoes back in its own Url field. It is never
// case-folded or otherwise normalized
Url string `json:"url"`
ClientIDList []string `json:"clientIDList,omitempty"`
ThumbprintList []string `json:"thumbprintList,omitempty"`
CreateDate time.Time `json:"createDate"`
Tags []Tag `json:"tags,omitempty"`
}
OIDCProvider is the storage-layer representation of an IAM OIDC identity provider. Unlike Role, it is never marshaled to XML directly — each real IAM action returns a different subset of its fields — so it is copied field-by-field into the narrower XML result types
type OpenIDConnectProviderList ¶
type OpenIDConnectProviderList struct {
Members []OpenIDConnectProviderListEntry `xml:"member"`
}
type OpenIDConnectProviderListEntry ¶
type OpenIDConnectProviderListEntry struct {
Arn string `xml:"Arn"`
}
type Policies ¶
type Policies struct {
Inline []PolicyEntry `json:"inline,omitempty"`
}
Policies holds every kind of policy attached to an identity (user, role ...) Inline is the only populated field for now
type PolicyEntry ¶
type PolicyEntry struct {
PolicyName string
PolicyDocument string
CreateDate time.Time
UpdateDate time.Time
}
PolicyEntry is the storage representation of a single inline policy. It round-trips through JSON for the internal and Vault storers and is never marshaled to XML directly — mirrors AccessKeyEntry. PolicyDocument holds the exact bytes submitted by the caller (after validation), not a re-serialized form
type PolicyNameList ¶
type PolicyNameList struct {
Members []string `xml:"member"`
}
type PutRolePolicyResponse ¶
type PutRolePolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ PutRolePolicyResponse"`
ResponseMetadata ResponseMetadata
}
func (*PutRolePolicyResponse) SetRequestID ¶
func (r *PutRolePolicyResponse) SetRequestID(requestID string)
type PutUserPolicyResponse ¶
type PutUserPolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ PutUserPolicyResponse"`
ResponseMetadata ResponseMetadata
}
func (*PutUserPolicyResponse) SetRequestID ¶
func (r *PutUserPolicyResponse) SetRequestID(requestID string)
type RemoveClientIDFromOpenIDConnectProviderResponse ¶
type RemoveClientIDFromOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ RemoveClientIDFromOpenIDConnectProviderResponse"`
ResponseMetadata ResponseMetadata
}
func (*RemoveClientIDFromOpenIDConnectProviderResponse) SetRequestID ¶
func (r *RemoveClientIDFromOpenIDConnectProviderResponse) SetRequestID(requestID string)
type ResponseMetadata ¶
type ResponseMetadata struct {
RequestID string `xml:"RequestId"`
}
type Role ¶
type Role struct {
Path string `xml:",omitempty"`
RoleName string `xml:",omitempty"`
RoleID string `xml:"RoleId"`
Arn string `xml:"Arn"`
CreateDate time.Time `xml:"CreateDate"`
AssumeRolePolicyDocument string `xml:",omitempty"`
Description string `xml:",omitempty"`
MaxSessionDuration int32 `xml:"MaxSessionDuration,omitempty"`
RoleLastUsed *RoleLastUsed
Tags []Tag `xml:"Tags>member,omitempty"`
Policies Policies `xml:"-"` // unused until role inline-policy CRUD exists; see DeleteRole conflict check
}
func (*Role) EnsureRoleLastUsed ¶
func (r *Role) EnsureRoleLastUsed()
EnsureRoleLastUsed defaults RoleLastUsed to a never-used value if unset, without clobbering an already-set one. A zero LastUsedDate is normalized away to nil: a role stored before last-used tracking existed persists the zero time, which must still report as never used.
type RoleLastUsed ¶
type RoleLastUsed struct {
LastUsedDate *time.Time `xml:",omitempty"`
Region string `xml:",omitempty"`
}
RoleLastUsed reports when, and in which region, a role was last used. LastUsedDate is a pointer so a never-used role renders as the empty <RoleLastUsed></RoleLastUsed> element AWS returns, rather than as a role used at the zero time.
type Session ¶
type Session struct {
AccessKeyId string `json:"accessKeyId"`
SecretAccessKey string `json:"secretAccessKey"`
SessionToken string `json:"sessionToken"`
RoleArn string `json:"roleArn"`
RoleName string `json:"roleName"`
RoleID string `json:"roleId"`
RoleSessionName string `json:"roleSessionName"`
Provider string `json:"provider"`
Audience string `json:"audience"`
Subject string `json:"subject"`
CreateDate time.Time `json:"createDate"`
Expiration time.Time `json:"expiration"`
// Policy is the optional inline session policy document supplied via
// AssumeRoleWithWebIdentity's Policy parameter, or "" if none was
// supplied. It can only narrow, never widen, the assumed role's own
// permissions.
Policy string `json:"policy,omitempty"`
}
Session is the storage-layer representation of a temporary credential set minted by AssumeRoleWithWebIdentity. It is never marshaled to XML directly — GetCallerIdentity and (in a later change) S3 request authentication read it back by AccessKeyId to resolve the calling identity.
type TagOpenIDConnectProviderResponse ¶
type TagOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ TagOpenIDConnectProviderResponse"`
ResponseMetadata ResponseMetadata
}
func (*TagOpenIDConnectProviderResponse) SetRequestID ¶
func (r *TagOpenIDConnectProviderResponse) SetRequestID(requestID string)
type TagRoleResponse ¶
type TagRoleResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ TagRoleResponse"`
ResponseMetadata ResponseMetadata
}
func (*TagRoleResponse) SetRequestID ¶
func (r *TagRoleResponse) SetRequestID(requestID string)
type TagUserResponse ¶
type TagUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ TagUserResponse"`
ResponseMetadata ResponseMetadata
}
func (*TagUserResponse) SetRequestID ¶
func (r *TagUserResponse) SetRequestID(requestID string)
type Tags ¶
type Tags struct {
Members []Tag `xml:"member"`
}
Tags is the XML wrapper for a tag list, rendering as <Tags><member>…</member></Tags> — and, when empty, as <Tags/> rather than being omitted, matching AWS's response for an untagged user.
type UntagOpenIDConnectProviderResponse ¶
type UntagOpenIDConnectProviderResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UntagOpenIDConnectProviderResponse"`
ResponseMetadata ResponseMetadata
}
func (*UntagOpenIDConnectProviderResponse) SetRequestID ¶
func (r *UntagOpenIDConnectProviderResponse) SetRequestID(requestID string)
type UntagRoleResponse ¶
type UntagRoleResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UntagRoleResponse"`
ResponseMetadata ResponseMetadata
}
func (*UntagRoleResponse) SetRequestID ¶
func (r *UntagRoleResponse) SetRequestID(requestID string)
type UntagUserResponse ¶
type UntagUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UntagUserResponse"`
ResponseMetadata ResponseMetadata
}
func (*UntagUserResponse) SetRequestID ¶
func (r *UntagUserResponse) SetRequestID(requestID string)
type UpdateAccessKeyResponse ¶
type UpdateAccessKeyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UpdateAccessKeyResponse"`
ResponseMetadata ResponseMetadata
}
func (*UpdateAccessKeyResponse) SetRequestID ¶
func (r *UpdateAccessKeyResponse) SetRequestID(requestID string)
type UpdateAssumeRolePolicyResponse ¶
type UpdateAssumeRolePolicyResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UpdateAssumeRolePolicyResponse"`
ResponseMetadata ResponseMetadata
}
func (*UpdateAssumeRolePolicyResponse) SetRequestID ¶
func (r *UpdateAssumeRolePolicyResponse) SetRequestID(requestID string)
type UpdateOpenIDConnectProviderThumbprintResponse ¶
type UpdateOpenIDConnectProviderThumbprintResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UpdateOpenIDConnectProviderThumbprintResponse"`
ResponseMetadata ResponseMetadata
}
func (*UpdateOpenIDConnectProviderThumbprintResponse) SetRequestID ¶
func (r *UpdateOpenIDConnectProviderThumbprintResponse) SetRequestID(requestID string)
type UpdateUserResponse ¶
type UpdateUserResponse struct {
XMLName xml.Name `xml:"https://iam.amazonaws.com/doc/2010-05-08/ UpdateUserResponse"`
Result UpdateUserResult `xml:"UpdateUserResult"`
ResponseMetadata ResponseMetadata
}
func (*UpdateUserResponse) SetRequestID ¶
func (r *UpdateUserResponse) SetRequestID(requestID string)
type UpdateUserResult ¶
type UpdateUserResult struct {
User *User
}