Documentation ¶
Index ¶
- func BuildIAMTags(tags []v1alpha1.Tag) []iam.Tag
- func CreatePatch(in *iam.Role, target *v1beta1.IAMRoleParameters) (*v1beta1.IAMRoleParameters, error)
- func DiffIAMTags(local []v1beta1.Tag, remote []iam.Tag) (add []iam.Tag, remove []string)
- func GenerateCreateRoleInput(name string, p *v1beta1.IAMRoleParameters) *iam.CreateRoleInput
- func GenerateIAMRole(in v1beta1.IAMRoleParameters, role *iam.Role) error
- func GenerateRoleObservation(role iam.Role) v1beta1.IAMRoleExternalStatus
- func GenerateRolePolicyObservation(policy iam.AttachedPolicy) v1beta1.IAMRolePolicyAttachmentExternalStatus
- func IsErrorNotFound(err error) bool
- func IsPolicyUpToDate(in v1alpha1.IAMPolicyParameters, policy iam.PolicyVersion) (bool, error)
- func IsRoleUpToDate(in v1beta1.IAMRoleParameters, observed iam.Role) (bool, error)
- func LateInitializeGroupPolicy(in *v1alpha1.IAMGroupPolicyAttachmentParameters, policy *iam.AttachedPolicy)
- func LateInitializePolicy(in *v1beta1.IAMRolePolicyAttachmentParameters, policy *iam.AttachedPolicy)
- func LateInitializeRole(in *v1beta1.IAMRoleParameters, role *iam.Role)
- func LateInitializeUser(in *v1alpha1.IAMUserParameters, user *iam.User)
- func LateInitializeUserPolicy(in *v1alpha1.IAMUserPolicyAttachmentParameters, policy *iam.AttachedPolicy)
- type AccessClient
- type Client
- type GroupClient
- type GroupPolicyAttachmentClient
- type GroupUserMembershipClient
- type PolicyClient
- type PolicyDocument
- type RoleClient
- type RolePolicyAttachmentClient
- type StatementEntry
- type UserClient
- type UserPolicyAttachmentClient
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildIAMTags ¶ added in v0.9.0
BuildIAMTags build a tag array with type that IAM client expects.
func CreatePatch ¶ added in v0.8.0
func CreatePatch(in *iam.Role, target *v1beta1.IAMRoleParameters) (*v1beta1.IAMRoleParameters, error)
CreatePatch creates a *v1beta1.IAMRoleParameters that has only the changed values between the target *v1beta1.IAMRoleParameters and the current *iam.Role
func DiffIAMTags ¶ added in v0.17.0
DiffIAMTags returns the lists of tags that need to be removed and added according to current and desired states.
func GenerateCreateRoleInput ¶ added in v0.8.0
func GenerateCreateRoleInput(name string, p *v1beta1.IAMRoleParameters) *iam.CreateRoleInput
GenerateCreateRoleInput from IAMRoleSpec
func GenerateIAMRole ¶ added in v0.8.0
func GenerateIAMRole(in v1beta1.IAMRoleParameters, role *iam.Role) error
GenerateIAMRole assigns the in IAMRoleParamters to role.
func GenerateRoleObservation ¶ added in v0.8.0
func GenerateRoleObservation(role iam.Role) v1beta1.IAMRoleExternalStatus
GenerateRoleObservation is used to produce IAMRoleExternalStatus from iam.Role
func GenerateRolePolicyObservation ¶ added in v0.8.0
func GenerateRolePolicyObservation(policy iam.AttachedPolicy) v1beta1.IAMRolePolicyAttachmentExternalStatus
GenerateRolePolicyObservation is used to produce IAMRolePolicyAttachmentExternalStatus from iam.AttachedPolicy
func IsErrorNotFound ¶
IsErrorNotFound returns true if the error code indicates that the item was not found
func IsPolicyUpToDate ¶ added in v0.10.0
func IsPolicyUpToDate(in v1alpha1.IAMPolicyParameters, policy iam.PolicyVersion) (bool, error)
IsPolicyUpToDate checks whether there is a change in any of the modifiable fields in policy.
func IsRoleUpToDate ¶ added in v0.8.0
IsRoleUpToDate checks whether there is a change in any of the modifiable fields in role.
func LateInitializeGroupPolicy ¶ added in v0.11.0
func LateInitializeGroupPolicy(in *v1alpha1.IAMGroupPolicyAttachmentParameters, policy *iam.AttachedPolicy)
LateInitializeGroupPolicy fills the empty fields in v1alpha1.GroupPolicyAttachmentParameters with the values seen in iam.AttachedPolicy.
func LateInitializePolicy ¶ added in v0.8.0
func LateInitializePolicy(in *v1beta1.IAMRolePolicyAttachmentParameters, policy *iam.AttachedPolicy)
LateInitializePolicy fills the empty fields in *v1beta1.IAMRolePolicyAttachmentParameters with the values seen in iam.AttachedPolicy.
func LateInitializeRole ¶ added in v0.8.0
func LateInitializeRole(in *v1beta1.IAMRoleParameters, role *iam.Role)
LateInitializeRole fills the empty fields in *v1beta1.IAMRoleParameters with the values seen in iam.Role.
func LateInitializeUser ¶ added in v0.9.0
func LateInitializeUser(in *v1alpha1.IAMUserParameters, user *iam.User)
LateInitializeUser fills the empty fields in *v1alpha1.User with the values seen in iam.User.
func LateInitializeUserPolicy ¶ added in v0.9.0
func LateInitializeUserPolicy(in *v1alpha1.IAMUserPolicyAttachmentParameters, policy *iam.AttachedPolicy)
LateInitializeUserPolicy fills the empty fields in v1alpha1.UserPolicyAttachmentParameters with the values seen in iam.AttachedPolicy.
Types ¶
type AccessClient ¶ added in v0.15.0
type AccessClient interface { CreateAccessKeyRequest(*iam.CreateAccessKeyInput) iam.CreateAccessKeyRequest DeleteAccessKeyRequest(*iam.DeleteAccessKeyInput) iam.DeleteAccessKeyRequest ListAccessKeysRequest(*iam.ListAccessKeysInput) iam.ListAccessKeysRequest UpdateAccessKeyRequest(*iam.UpdateAccessKeyInput) iam.UpdateAccessKeyRequest }
AccessClient is the external client used for IAMAccessKey Custom Resource
func NewAccessClient ¶ added in v0.15.0
func NewAccessClient(conf aws.Config) AccessClient
NewAccessClient returns a new client using AWS credentials as JSON encoded data.
type Client ¶
type Client interface { CreateUser(username string) (*iam.AccessKey, error) DeleteUser(username string) error CreatePolicyAndAttach(username string, policyName string, policyDocument string) (string, error) GetPolicyVersion(policyName string) (string, error) UpdatePolicy(policyName string, policyDocument string) (string, error) DeletePolicyAndDetach(username string, policyName string) error GetAccountID() (string, error) }
Client defines IAM Client operations mockery -case snake -name Client -output fake -outpkg fake
type GroupClient ¶ added in v0.11.0
type GroupClient interface { CreateGroupRequest(*iam.CreateGroupInput) iam.CreateGroupRequest GetGroupRequest(*iam.GetGroupInput) iam.GetGroupRequest UpdateGroupRequest(*iam.UpdateGroupInput) iam.UpdateGroupRequest DeleteGroupRequest(*iam.DeleteGroupInput) iam.DeleteGroupRequest }
GroupClient is the external client used for IAMGroup Custom Resource
func NewGroupClient ¶ added in v0.11.0
func NewGroupClient(cfg aws.Config) GroupClient
NewGroupClient returns a new client using AWS credentials as JSON encoded data.
type GroupPolicyAttachmentClient ¶ added in v0.11.0
type GroupPolicyAttachmentClient interface { AttachGroupPolicyRequest(*iam.AttachGroupPolicyInput) iam.AttachGroupPolicyRequest DetachGroupPolicyRequest(*iam.DetachGroupPolicyInput) iam.DetachGroupPolicyRequest ListAttachedGroupPoliciesRequest(*iam.ListAttachedGroupPoliciesInput) iam.ListAttachedGroupPoliciesRequest }
GroupPolicyAttachmentClient is the external client used for GroupPolicyAttachment Custom Resource
func NewGroupPolicyAttachmentClient ¶ added in v0.11.0
func NewGroupPolicyAttachmentClient(cfg aws.Config) GroupPolicyAttachmentClient
NewGroupPolicyAttachmentClient creates new RDS RDSClient with provided AWS Configurations/Credentials
type GroupUserMembershipClient ¶ added in v0.11.0
type GroupUserMembershipClient interface { AddUserToGroupRequest(*iam.AddUserToGroupInput) iam.AddUserToGroupRequest RemoveUserFromGroupRequest(*iam.RemoveUserFromGroupInput) iam.RemoveUserFromGroupRequest ListGroupsForUserRequest(*iam.ListGroupsForUserInput) iam.ListGroupsForUserRequest }
GroupUserMembershipClient is the external client used for GroupUserMembership Custom Resource
func NewGroupUserMembershipClient ¶ added in v0.11.0
func NewGroupUserMembershipClient(cfg aws.Config) GroupUserMembershipClient
NewGroupUserMembershipClient creates new RDS RDSClient with provided AWS Configurations/Credentials
type PolicyClient ¶ added in v0.10.0
type PolicyClient interface { CreatePolicyRequest(*iam.CreatePolicyInput) iam.CreatePolicyRequest GetPolicyRequest(*iam.GetPolicyInput) iam.GetPolicyRequest DeletePolicyRequest(*iam.DeletePolicyInput) iam.DeletePolicyRequest GetPolicyVersionRequest(*iam.GetPolicyVersionInput) iam.GetPolicyVersionRequest CreatePolicyVersionRequest(*iam.CreatePolicyVersionInput) iam.CreatePolicyVersionRequest ListPolicyVersionsRequest(*iam.ListPolicyVersionsInput) iam.ListPolicyVersionsRequest DeletePolicyVersionRequest(*iam.DeletePolicyVersionInput) iam.DeletePolicyVersionRequest }
PolicyClient is the external client used for IAMPolicy Custom Resource
func NewPolicyClient ¶ added in v0.10.0
func NewPolicyClient(cfg aws.Config) PolicyClient
NewPolicyClient returns a new client using AWS credentials as JSON encoded data.
type PolicyDocument ¶
type PolicyDocument struct { Version string Statement []StatementEntry }
PolicyDocument is the structure of IAM policy document
type RoleClient ¶
type RoleClient interface { GetRoleRequest(*iam.GetRoleInput) iam.GetRoleRequest CreateRoleRequest(*iam.CreateRoleInput) iam.CreateRoleRequest DeleteRoleRequest(*iam.DeleteRoleInput) iam.DeleteRoleRequest UpdateRoleRequest(*iam.UpdateRoleInput) iam.UpdateRoleRequest UpdateAssumeRolePolicyRequest(*iam.UpdateAssumeRolePolicyInput) iam.UpdateAssumeRolePolicyRequest TagRoleRequest(input *iam.TagRoleInput) iam.TagRoleRequest UntagRoleRequest(input *iam.UntagRoleInput) iam.UntagRoleRequest }
RoleClient is the external client used for IAMRole Custom Resource
func NewRoleClient ¶
func NewRoleClient(conf aws.Config) RoleClient
NewRoleClient returns a new client using AWS credentials as JSON encoded data.
type RolePolicyAttachmentClient ¶
type RolePolicyAttachmentClient interface { AttachRolePolicyRequest(*iam.AttachRolePolicyInput) iam.AttachRolePolicyRequest ListAttachedRolePoliciesRequest(*iam.ListAttachedRolePoliciesInput) iam.ListAttachedRolePoliciesRequest DetachRolePolicyRequest(*iam.DetachRolePolicyInput) iam.DetachRolePolicyRequest }
RolePolicyAttachmentClient is the external client used for IAMRolePolicyAttachment Custom Resource
func NewRolePolicyAttachmentClient ¶
func NewRolePolicyAttachmentClient(conf aws.Config) RolePolicyAttachmentClient
NewRolePolicyAttachmentClient returns a new client given an aws config
type StatementEntry ¶
StatementEntry is used to define permission statements in a PolicyDocument
type UserClient ¶ added in v0.9.0
type UserClient interface { GetUserRequest(*iam.GetUserInput) iam.GetUserRequest CreateUserRequest(*iam.CreateUserInput) iam.CreateUserRequest UpdateUserRequest(*iam.UpdateUserInput) iam.UpdateUserRequest DeleteUserRequest(*iam.DeleteUserInput) iam.DeleteUserRequest }
UserClient is the external client used for IAM User Custom Resource
func NewUserClient ¶ added in v0.9.0
func NewUserClient(cfg aws.Config) UserClient
NewUserClient returns a new client using AWS credentials as JSON encoded data.
type UserPolicyAttachmentClient ¶ added in v0.9.0
type UserPolicyAttachmentClient interface { AttachUserPolicyRequest(*iam.AttachUserPolicyInput) iam.AttachUserPolicyRequest DetachUserPolicyRequest(*iam.DetachUserPolicyInput) iam.DetachUserPolicyRequest ListAttachedUserPoliciesRequest(*iam.ListAttachedUserPoliciesInput) iam.ListAttachedUserPoliciesRequest }
UserPolicyAttachmentClient is the external client used for UserPolicyAttachment Custom Resource
func NewUserPolicyAttachmentClient ¶ added in v0.9.0
func NewUserPolicyAttachmentClient(cfg aws.Config) UserPolicyAttachmentClient
NewUserPolicyAttachmentClient creates new RDS RDSClient with provided AWS Configurations/Credentials