Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface {
AddUserToGroup(*User, *Group) error
CreateGroup(*Group) (*Group, error)
CreateUser(*User) (*User, error)
DeleteGroup(*Group) error
DeleteUser(*User) error
FindGroupByDisplayName(string) (*Group, error)
FindUserByEmail(string) (*User, error)
FindUserByID(string) (*User, error)
GetUsers() ([]*User, error)
GetGroupMembers(*Group) ([]*User, error)
IsUserInGroup(*User, *Group) (bool, error)
GetGroups() ([]*Group, error)
UpdateUser(*User) (*User, error)
RemoveUserFromGroup(*User, *Group) error
}
Client represents an interface of methods used to communicate with AWS SSO
type Config ¶
Config specifes the configuration needed for AWS SSO SCIM
func ReadConfigFromFile ¶
ReadConfigFromFile will read a TOML file into the Config Struct
type Group ¶
type Group struct {
ID string `json:"id,omitempty"`
Schemas []string `json:"schemas"`
DisplayName string `json:"displayName"`
Members []string `json:"members"`
}
Group represents a Group in AWS SSO
type GroupFilterResults ¶
type GroupFilterResults struct {
Schemas []string `json:"schemas"`
TotalResults int `json:"totalResults"`
ItemsPerPage int `json:"itemsPerPage"`
StartIndex int `json:"startIndex"`
Resources []Group `json:"Resources"`
}
GroupFilterResults represents filtered results when we search for groups or List all groups
type GroupMemberChange ¶
type GroupMemberChange struct {
Schemas []string `json:"schemas"`
Operations []GroupMemberChangeOperation `json:"Operations"`
}
GroupMemberChange represents a change operation for a group
type GroupMemberChangeMember ¶
type GroupMemberChangeMember struct {
Value string `json:"value"`
}
GroupMemberChangeMember is a value needed for the ID of the member to add/remove
type GroupMemberChangeOperation ¶
type GroupMemberChangeOperation struct {
Operation string `json:"op"`
Path string `json:"path"`
Members []GroupMemberChangeMember `json:"value"`
}
GroupMemberChangeOperation details the operation to take place on a group
type HttpClient ¶ added in v1.1.0
HttpClient is a generic HTTP Do interface
type OperationType ¶
type OperationType string
OperationType handle patch operations for add/remove
const ( // OperationAdd is the add operation for a patch OperationAdd OperationType = "add" // OperationRemove is the remove operation for a patch OperationRemove = "remove" )
type User ¶
type User struct {
ID string `json:"id,omitempty"`
Schemas []string `json:"schemas"`
Username string `json:"userName"`
Name struct {
FamilyName string `json:"familyName"`
GivenName string `json:"givenName"`
} `json:"name"`
DisplayName string `json:"displayName"`
Active bool `json:"active"`
Emails []UserEmail `json:"emails"`
Addresses []UserAddress `json:"addresses"`
}
User represents a User in AWS SSO
type UserAddress ¶
type UserAddress struct {
Type string `json:"type"`
}
UserAddress represents address values of users
type UserEmail ¶
type UserEmail struct {
Value string `json:"value"`
Type string `json:"type"`
Primary bool `json:"primary"`
}
UserEmail represents a user email address
type UserFilterResults ¶
type UserFilterResults struct {
Schemas []string `json:"schemas"`
TotalResults int `json:"totalResults"`
ItemsPerPage int `json:"itemsPerPage"`
StartIndex int `json:"startIndex"`
Resources []User `json:"Resources"`
}
UserFilterResults represents filtered results when we search for users or List all users