Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
Client interacts with the Keycloak API
func (Client) DeleteGroup ¶
DeleteGroup deletes the Keycloak group by name. The method is idempotent and will not do anything if the group does not exits.
func (Client) ListGroups ¶
ListGroups returns all Keycloak groups in the realm. This is potentially very expensive, as it needs to iterate over all groups to get their members.
type ErrEvent ¶
type ErrEvent string
ErrEvent is the reason this error was thrown. It should be short and unique, imagine people writing switch statements to handle them.
var UserAddError ErrEvent = "AddUserFailed"
UserAddError indicates that the client was unable to add the user to the group
var UserRemoveError ErrEvent = "RemoveUserFailed"
UserRemoveError indicates that the client was unable to remove the user from the group
type GoCloak ¶
type GoCloak interface { LoginAdmin(ctx context.Context, username, password, realm string) (*gocloak.JWT, error) LogoutUserSession(ctx context.Context, accessToken, realm, session string) error CreateGroup(ctx context.Context, accessToken, realm string, group gocloak.Group) (string, error) GetGroups(ctx context.Context, accessToken, realm string, params gocloak.GetGroupsParams) ([]*gocloak.Group, error) DeleteGroup(ctx context.Context, accessToken, realm, groupID string) error GetGroupMembers(ctx context.Context, accessToken, realm, groupID string, params gocloak.GetGroupsParams) ([]*gocloak.User, error) GetUsers(ctx context.Context, accessToken, realm string, params gocloak.GetUsersParams) ([]*gocloak.User, error) AddUserToGroup(ctx context.Context, token, realm, userID, groupID string) error DeleteUserFromGroup(ctx context.Context, token, realm, userID, groupID string) error }
GoCloak is the subset of methods of the humongous gocloak.GoCloak interface that we actually need. This keeps the mock at a more reasonable size
type MembershipSyncError ¶
MembershipSyncError is a custom error indicating the failure of syncing the membership of a single user.
func (MembershipSyncError) Error ¶
func (err MembershipSyncError) Error() string
type MembershipSyncErrors ¶
type MembershipSyncErrors []MembershipSyncError
MembershipSyncErrors is a cusom error that can be used to indicate that the client failed to sync one or more memberships.
func (*MembershipSyncErrors) Error ¶
func (errs *MembershipSyncErrors) Error() string