Documentation ¶
Index ¶
- Constants
- Variables
- type AdminEventRepresentation
- type AuthDetailsRepresentation
- type AuthenticationExecutionExportRepresentation
- type AuthenticationExecutionInfoRepresentation
- type AuthenticationExecutionRepresentation
- type AuthenticationFlowRepresentation
- type AuthenticatorConfigInfoRepresentation
- type AuthenticatorConfigRepresentation
- type CertificateRepresentation
- type Client
- func (c *Client) AddClientRolesToUserRoleMapping(accessToken string, realmName, userID, clientID string, ...) error
- func (c *Client) AddDefaultClientScope(accessToken string, realmName, client, scope string) error
- func (c *Client) AddDefaultGroup(accessToken string, realmName string, groupID string) error
- func (c *Client) AddGroupClientRoleMappings(accessToken, realmName, groupId, clientId string, ...) error
- func (c *Client) AddGroupRealmRoleMappings(accessToken, realmName, groupId string, roleMappings []RoleRepresentation) error
- func (c *Client) AddOptionalClientScope(accessToken string, realmName, client, scope string) error
- func (c *Client) AddRealmDefaultClientScope(accessToken string, realmName, scope string) error
- func (c *Client) AddRealmOptionalClientScope(accessToken string, realmName, scope string) error
- func (c *Client) AutoRefreshToken(realm string, username string, password string, onFailure func(error))
- func (c *Client) CancelAutoRefreshToken(realm string, username string)
- func (c *Client) ClearAllLoginFailures(accessToken string, realmName string) error
- func (c *Client) ClearUserLoginFailures(accessToken string, realmName, userID string) error
- func (c *Client) CopyExistingAuthenticationFlow(accessToken string, realmName, flowAlias, newName string) error
- func (c *Client) CountUsers(accessToken string, realmName string) (int, error)
- func (c *Client) CreateAuthenticationExecution(accessToken string, realmName string, ...) (string, error)
- func (c *Client) CreateAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias, provider string) (string, error)
- func (c *Client) CreateAuthenticationFlow(accessToken string, realmName string, ...) (string, error)
- func (c *Client) CreateClient(accessToken string, realmName string, client ClientCreateRequest) (string, error)
- func (c *Client) CreateClientInitialAccess(accessToken string, realmName string, ...) (ClientInitialAccessPresentation, error)
- func (c *Client) CreateClientRole(accessToken string, realmName string, clientID string, role RoleRepresentation) (string, error)
- func (c *Client) CreateFlowWithExecutionForExistingFlow(accessToken string, ...) (string, error)
- func (c *Client) CreateGroup(accessToken string, realmName string, group GroupRepresentation) (string, error)
- func (c *Client) CreateProtocolMapper(accessToken string, realmName string, clientId string, ...) (string, error)
- func (c *Client) CreateRealm(accessToken string, realm RealmRepresentation) (string, error)
- func (c *Client) CreateRealmRole(accessToken string, realmName string, role RoleRepresentation) (string, error)
- func (c *Client) CreateUser(accessToken string, reqRealmName, targetRealmName string, ...) (string, error)
- func (c *Client) CreateUserFederationProvider(accessToken string, realmName string, ...) (string, error)
- func (c *Client) CreateUserFederationProviderMapper(accessToken string, realmName string, ...) (string, error)
- func (c *Client) DeleteAuthenticationExecution(accessToken string, realmName, executionID string) error
- func (c *Client) DeleteAuthenticationFlow(accessToken string, realmName, flowID string) error
- func (c *Client) DeleteAuthenticatorConfig(accessToken string, realmName, configID string) error
- func (c *Client) DeleteClient(accessToken string, realmName, id string) error
- func (c *Client) DeleteClientInitialAccess(accessToken string, realmName, accessID string) error
- func (c *Client) DeleteClientRolesFromUserRoleMapping(accessToken string, realmName, userID, clientID string) error
- func (c *Client) DeleteCredentialsForUser(accessToken string, realmReq, realmName string, userID string, ...) error
- func (c *Client) DeleteGroup(accessToken string, realmName string, groupID string) error
- func (c *Client) DeleteProtocolMapper(accessToken string, realmName string, clientId string, protocolMapperID string) error
- func (c *Client) DeleteRealm(accessToken string, realmName string) error
- func (c *Client) DeleteRealmRole(accessToken string, realmName string, roleId string) error
- func (c *Client) DeleteRequiredAction(accessToken string, realmName, actionAlias string) error
- func (c *Client) DeleteRole(accessToken string, realmName string, clientID string, roleID string) error
- func (c *Client) DeleteUser(accessToken string, realmName, userID string) error
- func (c *Client) DeleteUserFederationProvider(accessToken string, realmName, userFederationProviderID string) error
- func (c *Client) DeleteUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string) error
- func (c *Client) ExecuteActionsEmail(accessToken string, realmName string, userID string, actions []string, ...) error
- func (c *Client) ExpireSession(accessToken, realmName, sessionToken string) error
- func (c *Client) ExportRealm(accessToken string, realmName string) (RealmRepresentation, error)
- func (c *Client) FetchToken(realm string, username string, password string) (*TokenInfo, error)
- func (c *Client) GenerateCertificate(accessToken string, realmName, idClient, attr string) (CertificateRepresentation, error)
- func (c *Client) GenerateKeyPairAndCertificate(accessToken string, realmName, idClient, attr string, ...) ([]byte, error)
- func (c *Client) GetAttackDetectionStatus(accessToken string, realmName, userID string) (map[string]interface{}, error)
- func (c *Client) GetAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias string) ([]AuthenticationExecutionInfoRepresentation, error)
- func (c *Client) GetAuthenticationFlow(accessToken string, realmName, flowID string) (AuthenticationFlowRepresentation, error)
- func (c *Client) GetAuthenticationFlows(accessToken string, realmName string) ([]AuthenticationFlowRepresentation, error)
- func (c *Client) GetAuthenticatorConfig(accessToken string, realmName, configID string) (AuthenticatorConfigRepresentation, error)
- func (c *Client) GetAuthenticatorProviderConfig(accessToken string, realmName, providerID string) (AuthenticatorConfigInfoRepresentation, error)
- func (c *Client) GetAuthenticatorProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
- func (c *Client) GetClient(accessToken string, realmName, idClient string) (ClientRepresentation, error)
- func (c *Client) GetClientAuthenticatorProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
- func (c *Client) GetClientInitialAccess(accessToken string, realmName string) ([]ClientInitialAccessPresentation, error)
- func (c *Client) GetClientRegistrationPolicy(accessToken string, realmName, configID string) ([]ComponentTypeRepresentation, error)
- func (c *Client) GetClientRole(accessToken string, realmName string, clientID string, roleID string) (RoleRepresentation, error)
- func (c *Client) GetClientRoleMappings(accessToken string, realmName, userID, clientID string) ([]RoleRepresentation, error)
- func (c *Client) GetClientRoles(accessToken string, realmName string, clientID string) ([]RoleRepresentation, error)
- func (c *Client) GetClients(accessToken string, realmName string, paramKV ...string) ([]ClientRepresentation, error)
- func (c *Client) GetConfigDescriptionForClients(accessToken string, realmName string) (map[string]interface{}, error)
- func (c *Client) GetCredentialsForUser(accessToken string, realmReq, realmName string, userID string) ([]CredentialRepresentation, error)
- func (c *Client) GetDefaultClientScopes(accessToken string, realmName, client string) ([]ClientScopeRepresentation, error)
- func (c *Client) GetDefaultGroups(accessToken string, realmName string) ([]GroupRepresentation, error)
- func (c *Client) GetFormActionProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
- func (c *Client) GetFormProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
- func (c *Client) GetGroup(accessToken string, realmName string, groupID string) (GroupRepresentation, error)
- func (c *Client) GetGroupClientRoleMappings(accessToken, realmName, groupId, clientId string) ([]RoleRepresentation, error)
- func (c *Client) GetGroupRealmRoleMappings(accessToken, realmName, groupId string) ([]RoleRepresentation, error)
- func (c *Client) GetGroups(accessToken string, realmName string) ([]GroupRepresentation, error)
- func (c *Client) GetGroupsOfUser(accessToken string, realmName, userID string) ([]GroupRepresentation, error)
- func (c *Client) GetKeyInfo(accessToken string, realmName, idClient, attr string) (CertificateRepresentation, error)
- func (c *Client) GetKeyStore(accessToken string, realmName, idClient, attr string, ...) ([]byte, error)
- func (c *Client) GetOptionalClientScopes(accessToken string, realmName, client string) ([]ClientScopeRepresentation, error)
- func (c *Client) GetProtocolMapper(accessToken string, realmName string, clientId string, protocolmapperID string) (ProtocolMapperRepresentation, error)
- func (c *Client) GetProtocolMappers(accessToken string, realmName string, clientId string, protocol string) ([]ProtocolMapperRepresentation, error)
- func (c *Client) GetRealm(accessToken string, realmName string) (RealmRepresentation, error)
- func (c *Client) GetRealmDefaultClientScopes(accessToken string, realmName string) ([]ClientScopeRepresentation, error)
- func (c *Client) GetRealmLevelRoleMappings(accessToken string, realmName, userID string) ([]RoleRepresentation, error)
- func (c *Client) GetRealmOptionalClientScopes(accessToken string, realmName string) ([]ClientScopeRepresentation, error)
- func (c *Client) GetRealmRoleByID(accessToken string, realmName string, roleId string) (RoleRepresentation, error)
- func (c *Client) GetRealmRoleByName(accessToken string, realmName string, roleName string) (RoleRepresentation, error)
- func (c *Client) GetRealmRoles(accessToken string, realmName string) ([]RoleRepresentation, error)
- func (c *Client) GetRealms(accessToken string) ([]RealmRepresentation, error)
- func (c *Client) GetRequiredAction(accessToken string, realmName, actionAlias string) (RequiredActionProviderRepresentation, error)
- func (c *Client) GetRequiredActions(accessToken string, realmName string) ([]RequiredActionProviderRepresentation, error)
- func (c *Client) GetSAMLDescription(accessToken string, realmName string, idClient string, format string) (string, error)
- func (c *Client) GetSAMLDescriptor(realmName string) (string, error)
- func (c *Client) GetSecret(accessToken string, realmName, idClient string) (CredentialRepresentation, error)
- func (c *Client) GetToken(realm string, username string, password string) (string, error)
- func (c *Client) GetTokenInfo(realm string, username string, password string, force bool) (*TokenInfo, error)
- func (c *Client) GetUnregisteredRequiredActions(accessToken string, realmName string) ([]map[string]interface{}, error)
- func (c *Client) GetUser(accessToken string, realmName, userID string) (UserRepresentation, error)
- func (c *Client) GetUserDetails(accessToken string, realmName, username string) (UserDetailsRepresentation, error)
- func (c *Client) GetUserFederationProvider(accessToken string, realmName, userFederationProviderID string) (UserFederationProviderRepresentation, error)
- func (c *Client) GetUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string) (UserFederationProviderMapperRepresentation, error)
- func (c *Client) GetUserFederationProviderMappers(accessToken string, realmName string, userFederationProviderID string, ...) ([]UserFederationProviderMapperRepresentation, error)
- func (c *Client) GetUserFederationProviders(accessToken string, realmName string, realmId string) ([]UserFederationProviderRepresentation, error)
- func (c *Client) GetUsers(accessToken string, reqRealmName, targetRealmName string, paramKV ...string) (Users, error)
- func (c *Client) InitiateLogin(realmName string, loginURLEncoded InitiatePKCELogin) (*http.Response, error)
- func (c *Client) JoinGroup(accessToken string, realmName, userID, groupID string) error
- func (c *Client) LeaveGroup(accessToken string, realmName, userID, groupID string) error
- func (c *Client) LogRequests(logger RequestLogger)
- func (c *Client) LowerExecutionPriority(accessToken string, realmName, executionID string) error
- func (c *Client) RaiseExecutionPriority(accessToken string, realmName, executionID string) error
- func (c *Client) RefreshToken(realm string, info *TokenInfo) (*TokenInfo, error)
- func (c *Client) RegisterRequiredAction(accessToken string, realmName, providerID, name string) error
- func (c *Client) RemoveDefaultClientScope(accessToken string, realmName, client, scope string) error
- func (c *Client) RemoveDefaultGroup(accessToken string, realmName string, groupID string) error
- func (c *Client) RemoveGroupClientRoleMappings(accessToken, realmName, groupId, clientId string, ...) error
- func (c *Client) RemoveGroupRealmRoleMappings(accessToken, realmName, groupId string, roleMappings []RoleRepresentation) error
- func (c *Client) RemoveOptionalClientScope(accessToken string, realmName, client, scope string) error
- func (c *Client) RemoveRealmDefaultClientScope(accessToken string, realmName, scope string) error
- func (c *Client) RemoveRealmOptionalClientScope(accessToken string, realmName, scope string) error
- func (c *Client) ResetPassword(accessToken string, realmName, userID string, cred CredentialRepresentation) error
- func (c *Client) SendNewEnrolmentCode(accessToken string, realmName string, userID string) (SmsCodeRepresentation, error)
- func (c *Client) SendReminderEmail(accessToken string, realmName string, userID string, paramKV ...string) error
- func (c *Client) SendVerifyEmail(accessToken string, realmName string, userID string, paramKV ...string) error
- func (c *Client) UpdateAuthenticationExecution(accessToken string, realmName, executionID string, ...) error
- func (c *Client) UpdateAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias string, ...) error
- func (c *Client) UpdateAuthenticatorConfig(accessToken string, realmName, configID string, ...) error
- func (c *Client) UpdateClient(accessToken string, realmName, clientID string, client ClientRepresentation) error
- func (c *Client) UpdatePassword(accessToken, realm, currentPassword, newPassword, confirmPassword string) (string, error)
- func (c *Client) UpdateRealm(accessToken string, realmName string, realm RealmRepresentation) error
- func (c *Client) UpdateRealmRoleByID(accessToken string, realmName string, roleId string, role RoleRepresentation) error
- func (c *Client) UpdateRequiredAction(accessToken string, realmName, actionAlias string, ...) error
- func (c *Client) UpdateUser(accessToken string, realmName, userID string, user UserRepresentation) error
- func (c *Client) UpdateUserFederationProvider(accessToken string, realmName, userFederationProviderID string, ...) error
- func (c *Client) UpdateUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string, ...) error
- func (c *Client) UploadCertificate(accessToken string, realmName, idClient, attr string, file []byte) (CertificateRepresentation, error)
- func (c *Client) UploadCertificatePrivateKey(accessToken string, realmName, idClient, attr string, file []byte) (CertificateRepresentation, error)
- func (c *Client) VerifyToken(realmName string, accessToken string) error
- type ClientCreateRequest
- type ClientInitialAccessCreatePresentation
- type ClientInitialAccessPresentation
- type ClientMappingsRepresentation
- type ClientRepresentation
- type ClientScopeRepresentation
- type ClientTemplateRepresentation
- type ComponentExportRepresentation
- type ComponentRepresentation
- type ComponentTypeRepresentation
- type Config
- type ConfigPropertyRepresentation
- type CredentialRepresentation
- type EventRepresentation
- type FederatedIdentityRepresentation
- type GlobalRequestResult
- type GroupRepresentation
- type HTTPError
- type IdentityProviderMapperRepresentation
- type IdentityProviderRepresentation
- type InitiatePKCELogin
- type KeyStoreConfig
- type KeysMetadataRepresentation
- type KeysMetadataRepresentationKeyMetadataRepresentation
- type ManagementPermissionReference
- type MappingsRepresentation
- type MemoryInfoRepresentation
- type MultivaluedHashMap
- type PartialImportRepresentation
- type PasswordPolicyTypeRepresentation
- type PolicyRepresentation
- type ProfileInfoRepresentation
- type ProtocolMapperRepresentation
- type ProviderRepresentation
- type RealmEventsConfigRepresentation
- type RealmRepresentation
- type RequestLogger
- type RequiredActionProviderRepresentation
- type ResourceOwnerRepresentation
- type ResourceRepresentation
- type ResourceServerRepresentation
- type RoleRepresentation
- type RoleRepresentationComposites
- type RolesRepresentation
- type ScopeMappingRepresentation
- type ScopeRepresentation
- type ServerInfoRepresentation
- type SmsCodeRepresentation
- type SpiInfoRepresentation
- type SynchronizationResult
- type SystemInfoRepresentation
- type Token
- type TokenInfo
- type UserConsentRepresentation
- type UserDetailsRepresentation
- type UserFederationProviderMapperRepresentation
- type UserFederationProviderRepresentation
- type UserRepresentation
- type UserSessionRepresentation
- type Users
Constants ¶
const ( UserSessionNoteOIDCApplicationMapperType = "oidc-usersessionmodel-note-mapper" UserAttributeOIDCApplicationMapperType = "oidc-usermodel-attribute-mapper" GroupMembershipOIDCApplicationMapperType = "oidc-group-membership-mapper" RoleListSAMLApplicationMapperType = "saml-role-list-mapper" UserPropertySAMLApplicationMapperType = "saml-user-property-mapper" )
const (
UserFederationProviderLDAPMapperType = "org.keycloak.storage.ldap.mappers.LDAPStorageMapper"
)
const (
UserFederationProviderType = "org.keycloak.storage.UserStorageProvider"
)
Variables ¶
var ErrRefreshExhausted = errors.New("refresh token exhausted")
ErrRefreshExhausted indicates a refresh token has been used too many times and is no longer valid. A new token must be fetched.
var ErrSessionExpired = errors.New("auth session expired")
ErrSessionExpired indicates a login session has reached its maximum allowed time, and a new session is required to continue.
var KeycloakTokenInfoLock = &sync.Mutex{}
KeycloakTokenInfoLock allows for access control so only one routine is able to access the Keycloak Token Info
Functions ¶
This section is empty.
Types ¶
type AdminEventRepresentation ¶
type AdminEventRepresentation struct { AuthDetails *AuthDetailsRepresentation `json:"authDetails,omitempty"` Error *string `json:"error,omitempty"` OperationType *string `json:"operationType,omitempty"` RealmId *string `json:"realmId,omitempty"` Representation *string `json:"representation,omitempty"` ResourcePath *string `json:"resourcePath,omitempty"` ResourceType *string `json:"resourceType,omitempty"` Time *int64 `json:"time,omitempty"` }
type AuthenticationExecutionExportRepresentation ¶
type AuthenticationExecutionExportRepresentation struct { Authenticator *string `json:"authenticator,omitempty"` AuthenticatorConfig *string `json:"authenticatorConfig,omitempty"` AuthenticatorFlow *bool `json:"authenticatorFlow,omitempty"` AutheticatorFlow *bool `json:"autheticatorFlow,omitempty"` FlowAlias *string `json:"flowAlias,omitempty"` Priority *int32 `json:"priority,omitempty"` Requirement *string `json:"requirement,omitempty"` UserSetupAllowed *bool `json:"userSetupAllowed,omitempty"` }
type AuthenticationExecutionInfoRepresentation ¶
type AuthenticationExecutionInfoRepresentation struct { Alias *string `json:"alias,omitempty"` AuthenticationConfig *string `json:"authenticationConfig,omitempty"` AuthenticationFlow *bool `json:"authenticationFlow,omitempty"` Configurable *bool `json:"configurable,omitempty"` DisplayName *string `json:"displayName,omitempty"` FlowId *string `json:"flowId,omitempty"` Id *string `json:"id,omitempty"` Index *int32 `json:"index,omitempty"` Level *int32 `json:"level,omitempty"` ProviderId *string `json:"providerId,omitempty"` Requirement *string `json:"requirement,omitempty"` RequirementChoices *[]string `json:"requirementChoices,omitempty"` }
type AuthenticationExecutionRepresentation ¶
type AuthenticationExecutionRepresentation struct { Authenticator *string `json:"authenticator,omitempty"` AuthenticatorConfig *string `json:"authenticatorConfig,omitempty"` AuthenticatorFlow *bool `json:"authenticatorFlow,omitempty"` AutheticatorFlow *bool `json:"autheticatorFlow,omitempty"` FlowId *string `json:"flowId,omitempty"` Id *string `json:"id,omitempty"` ParentFlow *string `json:"parentFlow,omitempty"` Priority *int32 `json:"priority,omitempty"` Requirement *string `json:"requirement,omitempty"` }
type AuthenticationFlowRepresentation ¶
type AuthenticationFlowRepresentation struct { Alias *string `json:"alias,omitempty"` AuthenticationExecutions *[]AuthenticationExecutionExportRepresentation `json:"authenticationExecutions,omitempty"` BuiltIn *bool `json:"builtIn,omitempty"` Description *string `json:"description,omitempty"` Id *string `json:"id,omitempty"` ProviderId *string `json:"providerId,omitempty"` TopLevel *bool `json:"topLevel,omitempty"` }
type AuthenticatorConfigInfoRepresentation ¶
type AuthenticatorConfigInfoRepresentation struct { HelpText *string `json:"helpText,omitempty"` Name *string `json:"name,omitempty"` Properties *[]ConfigPropertyRepresentation `json:"properties,omitempty"` ProviderId *string `json:"providerId,omitempty"` }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is the keycloak client.
func (*Client) AddClientRolesToUserRoleMapping ¶
func (c *Client) AddClientRolesToUserRoleMapping(accessToken string, realmName, userID, clientID string, roles []RoleRepresentation) error
AddClientRoleMapping add client-level roles to the user role mapping.
func (*Client) AddDefaultClientScope ¶ added in v0.0.13
AddDefaultClientScope changes the default client scopes for a realm to add the scope represented by scopeId PUT /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/default-client-scopes/7efa02d9-0a1e-496d-abf7-d9edb80e47b3 HTTP/1.1 204
func (*Client) AddDefaultGroup ¶ added in v0.0.18
AddDefaultGroup places a new group for in the default realm groups by ID
func (*Client) AddGroupClientRoleMappings ¶ added in v0.0.10
func (c *Client) AddGroupClientRoleMappings(accessToken, realmName, groupId, clientId string, roleMappings []RoleRepresentation) error
AddGroupClientRoleMappings adds client role mappings for a group, returning error (if any) > POST http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/clients/a3bdb226-f718-4c69-9f59-76df1dda1362 ```json [
{ "id": "945ae18b-5cd5-48c5-9fa8-e5b43555d71f", "name": "Admin", "description": "Allow all.", "composite": false, "clientRole": true, "containerId": "a3bdb226-f718-4c69-9f59-76df1dda1362" }
]
func (*Client) AddGroupRealmRoleMappings ¶ added in v0.0.10
func (c *Client) AddGroupRealmRoleMappings(accessToken, realmName, groupId string, roleMappings []RoleRepresentation) error
AddGroupRealmRoleMappings adds realm role mapping(s) for the group, returning error (if any). > POST http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/realm ```json [
{ "id": "f815fc8a-5eb6-46c1-a454-5fbc8e1c6492", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "4f0f8206-0ec4-4fd6-99eb-4e8c4b986c43" }
] ```
func (*Client) AddOptionalClientScope ¶ added in v0.0.13
AddOptionalClientScope changes the optional client scopes for a realm to add the scope represented by scopeId PUT /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/optional-client-scopes/7efa02d9-0a1e-496d-abf7-d9edb80e47b3 HTTP/1.1 204
func (*Client) AddRealmDefaultClientScope ¶ added in v0.0.13
AddRealmDefaultClientScope changes the default client scopes for a realm to add the scope represented by scopeId PUT /auth/admin/realms/demorealm/default-default-client-scopes/2c683450-ae2d-48ef-ace3-bc9101b2c4d1 HTTP/1.1 204
func (*Client) AddRealmOptionalClientScope ¶ added in v0.0.13
AddRealmOptionalClientScope changes the optional client scopes for a realm to add the scope represented by scopeId PUT /auth/admin/realms/demorealm/default-optional-client-scopes/2c683450-ae2d-48ef-ace3-bc9101b2c4d1 HTTP/1.1 204
func (*Client) AutoRefreshToken ¶ added in v0.0.16
func (c *Client) AutoRefreshToken(realm string, username string, password string, onFailure func(error))
AutoRefreshToken starts a process where an access token is kept perpetually warm in the cache, refreshing itself five seconds before it expires.
func (*Client) CancelAutoRefreshToken ¶ added in v0.0.16
CancelAutoRefreshToken turns off the auto-refresh loop for a token. It will still get cached on use, but the cache is not guaranteed to be warm.
func (*Client) ClearAllLoginFailures ¶
ClearAllLoginFailures clears any user login failures for all users. This can release temporary disabled users.
func (*Client) ClearUserLoginFailures ¶
ClearUserLoginFailures clear any user login failures for the user. This can release temporary disabled user.
func (*Client) CopyExistingAuthenticationFlow ¶
func (c *Client) CopyExistingAuthenticationFlow(accessToken string, realmName, flowAlias, newName string) error
CopyExistingAuthenticationFlow copy the existing authentication flow under a new name. 'flowAlias' is the name of the existing authentication flow, 'newName' is the new name of the authentication flow.
func (*Client) CountUsers ¶
CountUsers returns the number of users in the realm.
func (*Client) CreateAuthenticationExecution ¶
func (c *Client) CreateAuthenticationExecution(accessToken string, realmName string, authExec AuthenticationExecutionRepresentation) (string, error)
CreateAuthenticationExecution add new authentication execution
func (*Client) CreateAuthenticationExecutionForFlow ¶
func (c *Client) CreateAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias, provider string) (string, error)
CreateAuthenticationExecutionForFlow add a new authentication execution to a flow. 'flowAlias' is the alias of the parent flow.
func (*Client) CreateAuthenticationFlow ¶
func (c *Client) CreateAuthenticationFlow(accessToken string, realmName string, authFlow AuthenticationFlowRepresentation) (string, error)
CreateAuthenticationFlow creates a new authentication flow.
func (*Client) CreateClient ¶ added in v0.0.4
func (c *Client) CreateClient(accessToken string, realmName string, client ClientCreateRequest) (string, error)
CreateClient creates a client
func (*Client) CreateClientInitialAccess ¶
func (c *Client) CreateClientInitialAccess(accessToken string, realmName string, access ClientInitialAccessCreatePresentation) (ClientInitialAccessPresentation, error)
CreateClientInitialAccess creates a new initial access token.
func (*Client) CreateClientRole ¶
func (c *Client) CreateClientRole(accessToken string, realmName string, clientID string, role RoleRepresentation) (string, error)
CreateClientRole creates a new role for the realm or client
func (*Client) CreateFlowWithExecutionForExistingFlow ¶
func (c *Client) CreateFlowWithExecutionForExistingFlow(accessToken string, realmName, flowAlias, alias, flowType, provider, description string) (string, error)
CreateFlowWithExecutionForExistingFlow add a new flow with a new execution to an existing flow. 'flowAlias' is the alias of the parent authentication flow.
func (*Client) CreateGroup ¶ added in v0.0.9
func (c *Client) CreateGroup(accessToken string, realmName string, group GroupRepresentation) (string, error)
CreateGroup creates a new group for the realm
func (*Client) CreateProtocolMapper ¶ added in v0.0.14
func (c *Client) CreateProtocolMapper(accessToken string, realmName string, clientId string, protocolMapper ProtocolMapperRepresentation) (string, error)
CreateProtocolMapper creates a new protocol mapper for the client
func (*Client) CreateRealm ¶
func (c *Client) CreateRealm(accessToken string, realm RealmRepresentation) (string, error)
CreateRealm creates the realm from its RealmRepresentation.
func (*Client) CreateRealmRole ¶ added in v0.0.11
func (c *Client) CreateRealmRole(accessToken string, realmName string, role RoleRepresentation) (string, error)
CreateRealmRole creates a new role for the specified realm POST /auth/admin/realms/demorealm/roles HTTP/1.1 {"name":"Admin Role","description":"Allow all."} 201 Header: Location: http://localhost:8000/auth/admin/realms/demorealm/roles/Admin%sRole
func (*Client) CreateUser ¶
func (c *Client) CreateUser(accessToken string, reqRealmName, targetRealmName string, user UserRepresentation) (string, error)
CreateUser creates the user from its UserRepresentation. The username must be unique.
func (*Client) CreateUserFederationProvider ¶ added in v0.0.7
func (c *Client) CreateUserFederationProvider(accessToken string, realmName string, userFederationProvider UserFederationProviderRepresentation) (string, error)
CreateUserFederationProvider creates a user federation provider for a realm for syncing users from an external source, returning the location of the created provider or error (if any).
func (*Client) CreateUserFederationProviderMapper ¶ added in v0.0.7
func (c *Client) CreateUserFederationProviderMapper(accessToken string, realmName string, userFederationProviderMapper UserFederationProviderMapperRepresentation) (string, error)
CreateUserFederationProviderMapper creates a user federation provider mapper for a realm for mapping attributes from synced users from an external source, returning the location of the created provider mapper or error (if any).
func (*Client) DeleteAuthenticationExecution ¶
func (c *Client) DeleteAuthenticationExecution(accessToken string, realmName, executionID string) error
DeleteAuthenticationExecution deletes the execution.
func (*Client) DeleteAuthenticationFlow ¶
DeleteAuthenticationFlow deletes an authentication flow.
func (*Client) DeleteAuthenticatorConfig ¶
DeleteAuthenticatorConfig deletes the authenticator configuration.
func (*Client) DeleteClient ¶ added in v0.0.6
DeleteClient deletes specified client from the realm. id is the id of client (not client-id).
func (*Client) DeleteClientInitialAccess ¶
DeleteClientInitialAccess deletes the client initial access.
func (*Client) DeleteClientRolesFromUserRoleMapping ¶
func (c *Client) DeleteClientRolesFromUserRoleMapping(accessToken string, realmName, userID, clientID string) error
DeleteClientRolesFromUserRoleMapping deletes client-level roles from user role mapping.
func (*Client) DeleteCredentialsForUser ¶
func (c *Client) DeleteCredentialsForUser(accessToken string, realmReq, realmName string, userID string, credentialID string) error
DeleteCredentialsForUser remove credentials for a user
func (*Client) DeleteGroup ¶ added in v0.0.9
DeleteGroup deletes a group from the realm
func (*Client) DeleteProtocolMapper ¶ added in v0.0.14
func (c *Client) DeleteProtocolMapper(accessToken string, realmName string, clientId string, protocolMapperID string) error
DeleteProtocolMapper deletes a protocol mapper from the client
func (*Client) DeleteRealm ¶
DeleteRealm deletes the realm.
func (*Client) DeleteRealmRole ¶ added in v0.0.11
DeleteRealmRole deletes the specified role from the specified realm DELETE /auth/admin/realms/demorealm/roles-by-id/c4d3c739-ad50-421e-a9af-63b04ae4105d HTTP/1.1
func (*Client) DeleteRequiredAction ¶
DeleteRequiredAction deletes the required action.
func (*Client) DeleteRole ¶ added in v0.0.9
func (c *Client) DeleteRole(accessToken string, realmName string, clientID string, roleID string) error
DeleteRole deletes a role
func (*Client) DeleteUser ¶
DeleteUser deletes the user.
func (*Client) DeleteUserFederationProvider ¶ added in v0.0.7
func (c *Client) DeleteUserFederationProvider(accessToken string, realmName, userFederationProviderID string) error
DeleteUserFederationProvider deletes the specified UserFederationProvider from the realm.
func (*Client) DeleteUserFederationProviderMapper ¶ added in v0.0.7
func (c *Client) DeleteUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string) error
DeleteUserFederationProviderMapper deletes the specified UserFederationProviderMapper from the realm.
func (*Client) ExecuteActionsEmail ¶
func (c *Client) ExecuteActionsEmail(accessToken string, realmName string, userID string, actions []string, paramKV ...string) error
ExecuteActionsEmail sends an update account email to the user. An email contains a link the user can click to perform a set of required actions.
func (*Client) ExpireSession ¶ added in v0.0.20
ExpireSession clears a session based on a valid session token
func (*Client) ExportRealm ¶
func (c *Client) ExportRealm(accessToken string, realmName string) (RealmRepresentation, error)
ExportRealm recovers the full realm.
func (*Client) FetchToken ¶ added in v0.0.15
FetchToken fetches a valid token from keycloak.
func (*Client) GenerateCertificate ¶
func (c *Client) GenerateCertificate(accessToken string, realmName, idClient, attr string) (CertificateRepresentation, error)
GenerateCertificate generates a new certificate with new key pair. idClient is the id of client (not client-id).
func (*Client) GenerateKeyPairAndCertificate ¶
func (c *Client) GenerateKeyPairAndCertificate(accessToken string, realmName, idClient, attr string, keyStoreConfig KeyStoreConfig) ([]byte, error)
GenerateKeyPairAndCertificate generates a keypair and certificate and serves the private key in a specified keystore format.
func (*Client) GetAttackDetectionStatus ¶
func (c *Client) GetAttackDetectionStatus(accessToken string, realmName, userID string) (map[string]interface{}, error)
GetAttackDetectionStatus gets the status of a username in brute force detection.
func (*Client) GetAuthenticationExecutionForFlow ¶
func (c *Client) GetAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias string) ([]AuthenticationExecutionInfoRepresentation, error)
GetAuthenticationExecutionForFlow returns the authentication executions for a flow.
func (*Client) GetAuthenticationFlow ¶
func (c *Client) GetAuthenticationFlow(accessToken string, realmName, flowID string) (AuthenticationFlowRepresentation, error)
GetAuthenticationFlow gets the authentication flow for id.
func (*Client) GetAuthenticationFlows ¶
func (c *Client) GetAuthenticationFlows(accessToken string, realmName string) ([]AuthenticationFlowRepresentation, error)
GetAuthenticationFlows returns a list of authentication flows.
func (*Client) GetAuthenticatorConfig ¶
func (c *Client) GetAuthenticatorConfig(accessToken string, realmName, configID string) (AuthenticatorConfigRepresentation, error)
GetAuthenticatorConfig returns the authenticator configuration.
func (*Client) GetAuthenticatorProviderConfig ¶
func (c *Client) GetAuthenticatorProviderConfig(accessToken string, realmName, providerID string) (AuthenticatorConfigInfoRepresentation, error)
GetAuthenticatorProviderConfig returns the authenticator provider’s configuration description.
func (*Client) GetAuthenticatorProviders ¶
func (c *Client) GetAuthenticatorProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
GetAuthenticatorProviders returns a list of authenticator providers.
func (*Client) GetClient ¶
func (c *Client) GetClient(accessToken string, realmName, idClient string) (ClientRepresentation, error)
GetClient get the representation of the client. idClient is the id of client (not client-id).
func (*Client) GetClientAuthenticatorProviders ¶
func (c *Client) GetClientAuthenticatorProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
GetClientAuthenticatorProviders returns a list of client authenticator providers.
func (*Client) GetClientInitialAccess ¶
func (c *Client) GetClientInitialAccess(accessToken string, realmName string) ([]ClientInitialAccessPresentation, error)
GetClientInitialAccess returns a list of clients initial access.
func (*Client) GetClientRegistrationPolicy ¶
func (c *Client) GetClientRegistrationPolicy(accessToken string, realmName, configID string) ([]ComponentTypeRepresentation, error)
GetClientRegistrationPolicy is the base path to retrieve providers with the configProperties properly filled.
func (*Client) GetClientRole ¶ added in v0.0.9
func (c *Client) GetClientRole(accessToken string, realmName string, clientID string, roleID string) (RoleRepresentation, error)
GetClientRole gets a specific client role’s representation
func (*Client) GetClientRoleMappings ¶
func (c *Client) GetClientRoleMappings(accessToken string, realmName, userID, clientID string) ([]RoleRepresentation, error)
GetClientRoleMappings gets client-level role mappings for the user, and the app.
func (*Client) GetClientRoles ¶
func (c *Client) GetClientRoles(accessToken string, realmName string, clientID string) ([]RoleRepresentation, error)
GetClientRoles gets all roles for the realm or client
func (*Client) GetClients ¶
func (c *Client) GetClients(accessToken string, realmName string, paramKV ...string) ([]ClientRepresentation, error)
GetClients returns a list of clients belonging to the realm. Parameters: clientId (filter by clientId), viewableOnly (filter clients that cannot be viewed in full by admin, default="false")
func (*Client) GetConfigDescriptionForClients ¶
func (c *Client) GetConfigDescriptionForClients(accessToken string, realmName string) (map[string]interface{}, error)
GetConfigDescriptionForClients returns the configuration descriptions for all clients.
func (*Client) GetCredentialsForUser ¶
func (c *Client) GetCredentialsForUser(accessToken string, realmReq, realmName string, userID string) ([]CredentialRepresentation, error)
GetCredentialsForUser gets the credential list for a user
func (*Client) GetDefaultClientScopes ¶ added in v0.0.13
func (c *Client) GetDefaultClientScopes(accessToken string, realmName, client string) ([]ClientScopeRepresentation, error)
GetDefaultClientScopes gets realm configuration for scopes which are added as client default scopes when a new client is created GET /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/default-client-scopes HTTP/1.1 [
{ "id":"3f4f9602-f843-48a6-9d24-0f9563eed5b0", "name":"profile" }, { "id":"7efa02d9-0a1e-496d-abf7-d9edb80e47b3", "name":"email" }, { "id":"2c683450-ae2d-48ef-ace3-bc9101b2c4d1", "name":"web-origins" }
]
func (*Client) GetDefaultGroups ¶ added in v0.0.18
func (c *Client) GetDefaultGroups(accessToken string, realmName string) ([]GroupRepresentation, error)
GetDefaultGroups fetches the list of default groups for a realm
func (*Client) GetFormActionProviders ¶
func (c *Client) GetFormActionProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
GetFormActionProviders returns a list of form action providers.
func (*Client) GetFormProviders ¶
func (c *Client) GetFormProviders(accessToken string, realmName string) ([]map[string]interface{}, error)
GetFormProviders returns a list of form providers.
func (*Client) GetGroup ¶
func (c *Client) GetGroup(accessToken string, realmName string, groupID string) (GroupRepresentation, error)
GetGroup gets a specific group’s representation
func (*Client) GetGroupClientRoleMappings ¶ added in v0.0.10
func (c *Client) GetGroupClientRoleMappings(accessToken, realmName, groupId, clientId string) ([]RoleRepresentation, error)
GetGroupClientRoleMappings returns the assigned client roles for a group and error (if any). > GET http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/clients/a3bdb226-f718-4c69-9f59-76df1dda1362 ```json [
{ "id": "945ae18b-5cd5-48c5-9fa8-e5b43555d71f", "name": "Admin", "description": "Allow all.", "composite": false, "clientRole": true, "containerId": "a3bdb226-f718-4c69-9f59-76df1dda1362" }
]
func (*Client) GetGroupRealmRoleMappings ¶ added in v0.0.10
func (c *Client) GetGroupRealmRoleMappings(accessToken, realmName, groupId string) ([]RoleRepresentation, error)
GetGroupRealmRoleMappings get the realm level roles for the group or error (if any). > GET http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/realm ```json [
{ "id": "f815fc8a-5eb6-46c1-a454-5fbc8e1c6492", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "4f0f8206-0ec4-4fd6-99eb-4e8c4b986c43" }
] ```
func (*Client) GetGroups ¶
func (c *Client) GetGroups(accessToken string, realmName string) ([]GroupRepresentation, error)
GetGroups gets all groups for the realm
func (*Client) GetGroupsOfUser ¶
func (c *Client) GetGroupsOfUser(accessToken string, realmName, userID string) ([]GroupRepresentation, error)
GetGroupsOfUser get the groups of the user.
func (*Client) GetKeyInfo ¶
func (c *Client) GetKeyInfo(accessToken string, realmName, idClient, attr string) (CertificateRepresentation, error)
GetKeyInfo returns the key info. idClient is the id of client (not client-id).
func (*Client) GetKeyStore ¶
func (c *Client) GetKeyStore(accessToken string, realmName, idClient, attr string, keyStoreConfig KeyStoreConfig) ([]byte, error)
GetKeyStore returns a keystore file for the client, containing private key and public certificate. idClient is the id of client (not client-id).
func (*Client) GetOptionalClientScopes ¶ added in v0.0.13
func (c *Client) GetOptionalClientScopes(accessToken string, realmName, client string) ([]ClientScopeRepresentation, error)
GetOptionalClientScopes gets realm configuration for scopes which are added as client optional scopes when a new client is created GET /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/optional-client-scopes HTTP/1.1 [
{ "id":"3f4f9602-f843-48a6-9d24-0f9563eed5b0", "name":"profile" }, { "id":"7efa02d9-0a1e-496d-abf7-d9edb80e47b3", "name":"email" }, { "id":"2c683450-ae2d-48ef-ace3-bc9101b2c4d1", "name":"web-origins" }
]
func (*Client) GetProtocolMapper ¶ added in v0.0.14
func (c *Client) GetProtocolMapper(accessToken string, realmName string, clientId string, protocolmapperID string) (ProtocolMapperRepresentation, error)
GetProtocolMapper gets a specific protocol mapper’s representation
func (*Client) GetProtocolMappers ¶ added in v0.0.14
func (c *Client) GetProtocolMappers(accessToken string, realmName string, clientId string, protocol string) ([]ProtocolMapperRepresentation, error)
GetProtocolMappers gets all mappers of a given protocol for the client
func (*Client) GetRealm ¶
func (c *Client) GetRealm(accessToken string, realmName string) (RealmRepresentation, error)
GetRealm get the top level represention of the realm. Nested information like users are not included.
func (*Client) GetRealmDefaultClientScopes ¶ added in v0.0.13
func (c *Client) GetRealmDefaultClientScopes(accessToken string, realmName string) ([]ClientScopeRepresentation, error)
GetRealmDefaultClientScopes gets realm configuration for scopes which are added as client default scopes when a new client is created GET /auth/admin/realms/demorealm/default-default-client-scopes HTTP/1.1 [
{ "id":"3f4f9602-f843-48a6-9d24-0f9563eed5b0", "name":"profile" }, { "id":"7efa02d9-0a1e-496d-abf7-d9edb80e47b3", "name":"email" }, { "id":"2c683450-ae2d-48ef-ace3-bc9101b2c4d1", "name":"web-origins" }
]
func (*Client) GetRealmLevelRoleMappings ¶
func (c *Client) GetRealmLevelRoleMappings(accessToken string, realmName, userID string) ([]RoleRepresentation, error)
func (*Client) GetRealmOptionalClientScopes ¶ added in v0.0.13
func (c *Client) GetRealmOptionalClientScopes(accessToken string, realmName string) ([]ClientScopeRepresentation, error)
GetRealmOptionalClientScopes gets realm configuration for scopes which are added as client optional scopes when a new client is created GET /auth/admin/realms/demorealm/default-optional-client-scopes HTTP/1.1 [
{ "id":"3f4f9602-f843-48a6-9d24-0f9563eed5b0", "name":"profile" }, { "id":"7efa02d9-0a1e-496d-abf7-d9edb80e47b3", "name":"email" }, { "id":"2c683450-ae2d-48ef-ace3-bc9101b2c4d1", "name":"web-origins" }
]
func (*Client) GetRealmRoleByID ¶ added in v0.0.11
func (c *Client) GetRealmRoleByID(accessToken string, realmName string, roleId string) (RoleRepresentation, error)
GetRealmRole gets a specific realm role’s representation GET /auth/admin/realms/demorealm/roles-by-id/f19e86ad-ddf2-4397-9a36-63bf02119fe8
{ "id": "f19e86ad-ddf2-4397-9a36-63bf02119fe8", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "b0b76f0e-3405-4d43-97da-4556d4cff122", "attributes": {} }
func (*Client) GetRealmRoleByName ¶ added in v0.0.11
func (c *Client) GetRealmRoleByName(accessToken string, realmName string, roleName string) (RoleRepresentation, error)
GetRealmRole gets a specific realm role’s representation GET /auth/admin/realms/demorealm/roles/Admin HTTP/1.1
{ "id": "c4d3c739-ad50-421e-a9af-63b04ae4105d", "name": "Admin", "description": "Allow all.", "composite": false, "clientRole": false, "containerId": "b0b76f0e-3405-4d43-97da-4556d4cff122", "attributes": {} }
func (*Client) GetRealmRoles ¶ added in v0.0.11
func (c *Client) GetRealmRoles(accessToken string, realmName string) ([]RoleRepresentation, error)
GetRealmRoles gets all roles for the realm GET /auth/admin/realms/demorealm/roles HTTP/1.1
[{ "id": "f19e86ad-ddf2-4397-9a36-63bf02119fe8", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "b0b76f0e-3405-4d43-97da-4556d4cff122" }, {
"id": "1776d0d5-5ed6-49fa-83fc-f589b9c43eed", "name": "uma_authorization", "description": "${role_uma_authorization}", "composite": false, "clientRole": false, "containerId": "b0b76f0e-3405-4d43-97da-4556d4cff122" }]
func (*Client) GetRealms ¶
func (c *Client) GetRealms(accessToken string) ([]RealmRepresentation, error)
GetRealms get the top level represention of all the realms. Nested information like users are not included.
func (*Client) GetRequiredAction ¶
func (c *Client) GetRequiredAction(accessToken string, realmName, actionAlias string) (RequiredActionProviderRepresentation, error)
GetRequiredAction returns the required action for the alias.
func (*Client) GetRequiredActions ¶
func (c *Client) GetRequiredActions(accessToken string, realmName string) ([]RequiredActionProviderRepresentation, error)
GetRequiredActions returns a list of required actions.
func (*Client) GetSAMLDescription ¶ added in v0.0.14
func (c *Client) GetSAMLDescription(accessToken string, realmName string, idClient string, format string) (string, error)
GetSAMLDescription gets the saml description for a client. idClient is the id of client (not client-id). GET https://id.tozny.com/auth/admin/realms/demorealm/clients/13be9337-b349-4e1a-9b1a-32fd227e0d0f/installation/providers/saml-idp-descriptor <?xml version="1.0" encoding="UTF-8"?> <EntityDescriptor entityID="https://id.tozny.com/auth/realms/demorealm"
xmlns="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <IDPSSODescriptor WantAuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://id.tozny.com/auth/realms/demorealm/protocol/saml" /> <SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://id.tozny.com/auth/realms/demorealm/protocol/saml" /> <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</NameIDFormat> <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat> <NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat> <NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</NameIDFormat> <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://id.tozny.com/auth/realms/demorealm/protocol/saml" /> <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://id.tozny.com/auth/realms/demorealm/protocol/saml" /> <KeyDescriptor use="signing"> <dsig:KeyInfo> <dsig:KeyName>xKHm8qTWp9Dppc6jOtcKkN8thWLSJ8OVHeVND7rH-1s</dsig:KeyName> <dsig:X509Data> <dsig:X509Certificate>MIICoTCCAYkCBgF1BX2OcTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDDAlkZW1vcmVhbG0wHhcNMjAxMDA3MjM1MzM1WhcNMzAxMDA3MjM1NTE1WjAUMRIwEAYDVQQDDAlkZW1vcmVhbG0wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCnwsBYFAnxrr36yjXen3+2LxuDqeBl7+qy+qkAOD91Pe7gokeY9aXkyQedb4kII37i6iPAwtCHg/PjwU3unufqB8hGmy/GTdq95u8DOrKcFDutNG8P/51qxGTDZVni5NzO6kchXSK/RHJgi47vbmPN7MzLZopuw2q1ulXmPkRYEGNALuW3Ofv8AwdvADRj7+Fq7VpIZmHsgMS+ujnnMYtISqENDP5qXAm+k2Ux69rgba5hNcFwwu9sipD+Ybc6MxtQxcKJh9ciPLoq+HYFpoF5uiBSzbgCZ7mrK/7/dZrrYC73+65ZGt6f0VHWMVjwpKUkqlCYOxGqRx7lrpZ967wfAgMBAAEwDQYJKoZIhvcNAQELBQADggEBABTSiOQ+Gi5Qer3nf7xoXbYuzv5/RwcilWOrnEmqLiM84nkH1nAiF0axDBFUv5NpqqEEb2VyyZz+pIfLiEhPwjpy03t24XLAz+S9CsQW7LNtfVobrf52dzofe/5NHymq2WtnBeOtt7HSgHVPUmTzBbA3HDKP5N4p359j32ElxcgSZOmC2IFNDcoVC39pylmTHuZ6MGOD6skeIANXxtU77HKPATLl9AkxOz7k5y+AiBJjsTmYxZVhhr72+8jyumeWq30K8SeO5CryU+JFvz5rljacZspGEgWoqaiqXxtENs9+K29lB1EB9delhSJkZ+u7gxQwkSTVYhkS6FZQfH2tuTE=</dsig:X509Certificate> </dsig:X509Data> </dsig:KeyInfo> </KeyDescriptor> </IDPSSODescriptor>
</EntityDescriptor>
func (*Client) GetSAMLDescriptor ¶ added in v0.0.19
GetSAMLDescriptor fetches the public XML IDP descriptor document for a realm
func (*Client) GetSecret ¶
func (c *Client) GetSecret(accessToken string, realmName, idClient string) (CredentialRepresentation, error)
GetSecret get the client secret. idClient is the id of client (not client-id).
func (*Client) GetTokenInfo ¶ added in v0.0.16
func (c *Client) GetTokenInfo(realm string, username string, password string, force bool) (*TokenInfo, error)
GetTokenInfo fetches a set of token info, from the cache, or from the server, refreshing as necessary by either starting a new session, or utilizing the refresh token to extend the current session
func (*Client) GetUnregisteredRequiredActions ¶
func (c *Client) GetUnregisteredRequiredActions(accessToken string, realmName string) ([]map[string]interface{}, error)
GetUnregisteredRequiredActions returns a list of unregistered required actions.
func (*Client) GetUser ¶
func (c *Client) GetUser(accessToken string, realmName, userID string) (UserRepresentation, error)
GetUser get the represention of the user.
func (*Client) GetUserDetails ¶ added in v0.0.8
func (c *Client) GetUserDetails(accessToken string, realmName, username string) (UserDetailsRepresentation, error)
GetUserDetails gets a detailed represention of the user with resolved groups and roles.
func (*Client) GetUserFederationProvider ¶ added in v0.0.7
func (c *Client) GetUserFederationProvider(accessToken string, realmName, userFederationProviderID string) (UserFederationProviderRepresentation, error)
GetUserFederationProvider returns the representation of the specified UserFederationProvider or error (if any).
func (*Client) GetUserFederationProviderMapper ¶ added in v0.0.7
func (c *Client) GetUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string) (UserFederationProviderMapperRepresentation, error)
GetUserFederationProviderMapper returns the representation of the specified UserFederationProviderMapper or error (if any).
func (*Client) GetUserFederationProviderMappers ¶ added in v0.0.7
func (c *Client) GetUserFederationProviderMappers(accessToken string, realmName string, userFederationProviderID string, mapperType string) ([]UserFederationProviderMapperRepresentation, error)
GetUserFederationProviderMappers returns a list of UserFederationProviderMappers belonging to the realm or error (if any).
func (*Client) GetUserFederationProviders ¶ added in v0.0.7
func (c *Client) GetUserFederationProviders(accessToken string, realmName string, realmId string) ([]UserFederationProviderRepresentation, error)
GetUserFederationProviders returns a list of UserFederationProviders belonging to the realm or error (if any).
func (*Client) GetUsers ¶
func (c *Client) GetUsers(accessToken string, reqRealmName, targetRealmName string, paramKV ...string) (Users, error)
GetUsers returns a list of users, filtered according to the query parameters. Parameters: email, first (paging offset, int), firstName, lastName, username, max (maximum result size, default = 100), search (string contained in username, firstname, lastname or email)
func (*Client) InitiateLogin ¶ added in v0.0.22
func (c *Client) InitiateLogin(realmName string, loginURLEncoded InitiatePKCELogin) (*http.Response, error)
InitiateLogin begins the login flow
func (*Client) LeaveGroup ¶ added in v0.0.18
LeaveGroup removes a user from a group by ID.
func (*Client) LogRequests ¶ added in v0.0.17
func (c *Client) LogRequests(logger RequestLogger)
LogRequests sets up a client plugin to log requests
func (*Client) LowerExecutionPriority ¶
LowerExecutionPriority lowers the execution’s priority.
func (*Client) RaiseExecutionPriority ¶
RaiseExecutionPriority raise the execution’s priority.
func (*Client) RefreshToken ¶ added in v0.0.15
RefreshToken fetches a valid token from keycloak using the refresh token.
func (*Client) RegisterRequiredAction ¶
func (c *Client) RegisterRequiredAction(accessToken string, realmName, providerID, name string) error
RegisterRequiredAction register a new required action.
func (*Client) RemoveDefaultClientScope ¶ added in v0.0.13
func (c *Client) RemoveDefaultClientScope(accessToken string, realmName, client, scope string) error
RemoveDefaultClientScope changes the default client scopes for a realm to add the scope represented by scopeId DELETE /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/default-client-scopes/7efa02d9-0a1e-496d-abf7-d9edb80e47b3 HTTP/1.1 204
func (*Client) RemoveDefaultGroup ¶ added in v0.0.18
RemoveDefaultGroup deletes removes a group from the realm default groups list by ID
func (*Client) RemoveGroupClientRoleMappings ¶ added in v0.0.10
func (c *Client) RemoveGroupClientRoleMappings(accessToken, realmName, groupId, clientId string, roleMappings []RoleRepresentation) error
RemoveGroupClientRoleMappings removes client role mapping(s) from a group, returning error (if any) > DELETE http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/clients/a3bdb226-f718-4c69-9f59-76df1dda1362 ```json [
{ "id": "945ae18b-5cd5-48c5-9fa8-e5b43555d71f", "name": "Admin", "description": "Allow all.", "composite": false, "clientRole": true, "containerId": "a3bdb226-f718-4c69-9f59-76df1dda1362" }
]
func (*Client) RemoveGroupRealmRoleMappings ¶ added in v0.0.10
func (c *Client) RemoveGroupRealmRoleMappings(accessToken, realmName, groupId string, roleMappings []RoleRepresentation) error
RemoveGroupRealmRoleMappings removes realm role mapping(s) from the group > DELETE http://localhost:8000/auth/admin/realms/demo/groups/80206962-5dcb-4252-8cbb-2e828c1d010b/role-mappings/realm ```json [
{ "id": "f815fc8a-5eb6-46c1-a454-5fbc8e1c6492", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "4f0f8206-0ec4-4fd6-99eb-4e8c4b986c43" }
] ```
func (*Client) RemoveOptionalClientScope ¶ added in v0.0.13
func (c *Client) RemoveOptionalClientScope(accessToken string, realmName, client, scope string) error
RemoveOptionalClientScope changes the optional client scopes for a realm to add the scope represented by scopeId DELETE /auth/admin/realms/demorealm/clients/0d55d933-09f4-427d-a385-13f5ceb1656e/optional-client-scopes/7efa02d9-0a1e-496d-abf7-d9edb80e47b3 HTTP/1.1 204
func (*Client) RemoveRealmDefaultClientScope ¶ added in v0.0.13
RemoveRealmDefaultClientScope changes the default client scopes for a realm to add the scope represented by scopeId DELETE /auth/admin/realms/demorealm/default-default-client-scopes/2c683450-ae2d-48ef-ace3-bc9101b2c4d1 HTTP/1.1 204
func (*Client) RemoveRealmOptionalClientScope ¶ added in v0.0.13
RemoveRealmOptionalClientScope changes the optional client scopes for a realm to add the scope represented by scopeId DELETE /auth/admin/realms/demorealm/default-optional-client-scopes/2c683450-ae2d-48ef-ace3-bc9101b2c4d1 HTTP/1.1 204
func (*Client) ResetPassword ¶
func (c *Client) ResetPassword(accessToken string, realmName, userID string, cred CredentialRepresentation) error
ResetPassword resets password of the user.
func (*Client) SendNewEnrolmentCode ¶
func (c *Client) SendNewEnrolmentCode(accessToken string, realmName string, userID string) (SmsCodeRepresentation, error)
SendNewEnrolmentCode sends a new enrolment code and return it
func (*Client) SendReminderEmail ¶
func (c *Client) SendReminderEmail(accessToken string, realmName string, userID string, paramKV ...string) error
SendReminderEmail sends a reminder email to a user
func (*Client) SendVerifyEmail ¶
func (c *Client) SendVerifyEmail(accessToken string, realmName string, userID string, paramKV ...string) error
SendVerifyEmail sends an email-verification email to the user An email contains a link the user can click to verify their email address.
func (*Client) UpdateAuthenticationExecution ¶
func (c *Client) UpdateAuthenticationExecution(accessToken string, realmName, executionID string, authConfig AuthenticatorConfigRepresentation) error
UpdateAuthenticationExecution update execution with new configuration.
func (*Client) UpdateAuthenticationExecutionForFlow ¶
func (c *Client) UpdateAuthenticationExecutionForFlow(accessToken string, realmName, flowAlias string, authExecInfo AuthenticationExecutionInfoRepresentation) error
UpdateAuthenticationExecutionForFlow updates the authentication executions of a flow.
func (*Client) UpdateAuthenticatorConfig ¶
func (c *Client) UpdateAuthenticatorConfig(accessToken string, realmName, configID string, config AuthenticatorConfigRepresentation) error
UpdateAuthenticatorConfig updates the authenticator configuration.
func (*Client) UpdateClient ¶ added in v0.0.2
func (c *Client) UpdateClient(accessToken string, realmName, clientID string, client ClientRepresentation) error
UpdateClient updates the client.
func (*Client) UpdatePassword ¶
func (c *Client) UpdatePassword(accessToken, realm, currentPassword, newPassword, confirmPassword string) (string, error)
UpdatePassword updates the user's password Parameters: realm, currentPassword, newPassword, confirmPassword
func (*Client) UpdateRealm ¶
func (c *Client) UpdateRealm(accessToken string, realmName string, realm RealmRepresentation) error
UpdateRealm update the top lovel information of the realm. Any user, role or client information from the realm representation will be ignored.
func (*Client) UpdateRealmRoleByID ¶ added in v0.0.24
func (c *Client) UpdateRealmRoleByID(accessToken string, realmName string, roleId string, role RoleRepresentation) error
UpdateRealmRole updates a specific realm role’s representation PUT /auth/admin/realms/demorealm/roles-by-id/f19e86ad-ddf2-4397-9a36-63bf02119fe8
{ "id": "f19e86ad-ddf2-4397-9a36-63bf02119fe8", "name": "offline_access", "description": "${role_offline-access}", "composite": false, "clientRole": false, "containerId": "b0b76f0e-3405-4d43-97da-4556d4cff122", "attributes": {} }
func (*Client) UpdateRequiredAction ¶
func (c *Client) UpdateRequiredAction(accessToken string, realmName, actionAlias string, action RequiredActionProviderRepresentation) error
UpdateRequiredAction updates the required action.
func (*Client) UpdateUser ¶
func (c *Client) UpdateUser(accessToken string, realmName, userID string, user UserRepresentation) error
UpdateUser updates the user.
func (*Client) UpdateUserFederationProvider ¶ added in v0.0.7
func (c *Client) UpdateUserFederationProvider(accessToken string, realmName, userFederationProviderID string, userFederationProvider UserFederationProviderRepresentation) error
UpdateUserFederationProvider updates the UserFederationProvider.
func (*Client) UpdateUserFederationProviderMapper ¶ added in v0.0.7
func (c *Client) UpdateUserFederationProviderMapper(accessToken string, realmName, userFederationProviderMapperID string, userFederationProviderMapper UserFederationProviderMapperRepresentation) error
UpdateUserFederationProviderMapper updates the UserFederationProviderMapper.
func (*Client) UploadCertificate ¶
func (c *Client) UploadCertificate(accessToken string, realmName, idClient, attr string, file []byte) (CertificateRepresentation, error)
UploadCertificate uploads only a certificate, not the private key.
func (*Client) UploadCertificatePrivateKey ¶
func (c *Client) UploadCertificatePrivateKey(accessToken string, realmName, idClient, attr string, file []byte) (CertificateRepresentation, error)
UploadCertificatePrivateKey uploads a certificate and eventually a private key.
type ClientCreateRequest ¶ added in v0.0.4
type ClientInitialAccessPresentation ¶
type ClientInitialAccessPresentation struct { Count *int32 `json:"count,omitempty"` Expiration *int32 `json:"expiration,omitempty"` Id *string `json:"id,omitempty"` RemainingCount *int32 `json:"remainingCount,omitempty"` Timestamp *int32 `json:"timestamp,omitempty"` Token *string `json:"token,omitempty"` }
type ClientMappingsRepresentation ¶
type ClientMappingsRepresentation struct { Client *string `json:"client,omitempty"` Id *string `json:"id,omitempty"` Mappings *[]RoleRepresentation `json:"mappings,omitempty"` }
type ClientRepresentation ¶
type ClientRepresentation struct { Access *map[string]interface{} `json:"access,omitempty"` AdminUrl *string `json:"adminUrl,omitempty"` Attributes *map[string]interface{} `json:"attributes,omitempty"` AuthorizationServicesEnabled *bool `json:"authorizationServicesEnabled,omitempty"` AuthorizationSettings *ResourceServerRepresentation `json:"authorizationSettings,omitempty"` BaseUrl *string `json:"baseUrl,omitempty"` BearerOnly *bool `json:"bearerOnly,omitempty"` ClientAuthenticatorType *string `json:"clientAuthenticatorType,omitempty"` ClientId *string `json:"clientId,omitempty"` ClientTemplate *string `json:"clientTemplate,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` DefaultRoles *[]string `json:"defaultRoles,omitempty"` Description *string `json:"description,omitempty"` DirectAccessGrantsEnabled *bool `json:"directAccessGrantsEnabled,omitempty"` Enabled *bool `json:"enabled,omitempty"` FrontchannelLogout *bool `json:"frontchannelLogout,omitempty"` FullScopeAllowed *bool `json:"fullScopeAllowed,omitempty"` Id *string `json:"id,omitempty"` ImplicitFlowEnabled *bool `json:"implicitFlowEnabled,omitempty"` Name *string `json:"name,omitempty"` NodeReRegistrationTimeout *int32 `json:"nodeReRegistrationTimeout,omitempty"` NotBefore *int32 `json:"notBefore,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` PublicClient *bool `json:"publicClient,omitempty"` RedirectUris *[]string `json:"redirectUris,omitempty"` RegisteredNodes *map[string]interface{} `json:"registeredNodes,omitempty"` RegistrationAccessToken *string `json:"registrationAccessToken,omitempty"` RootUrl *string `json:"rootUrl,omitempty"` Secret *string `json:"secret,omitempty"` ServiceAccountsEnabled *bool `json:"serviceAccountsEnabled,omitempty"` StandardFlowEnabled *bool `json:"standardFlowEnabled,omitempty"` SurrogateAuthRequired *bool `json:"surrogateAuthRequired,omitempty"` UseTemplateConfig *bool `json:"useTemplateConfig,omitempty"` UseTemplateMappers *bool `json:"useTemplateMappers,omitempty"` UseTemplateScope *bool `json:"useTemplateScope,omitempty"` WebOrigins *[]string `json:"webOrigins,omitempty"` AuthenticationFlowBindingOverrides *map[string]interface{} `json:"authenticationFlowBindingOverrides,omitempty"` }
type ClientScopeRepresentation ¶ added in v0.0.13
type ClientScopeRepresentation struct { Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Description *string `json:"description,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` }
ClientScopeRepresentation wraps keycloak client scope data
type ClientTemplateRepresentation ¶
type ClientTemplateRepresentation struct { Attributes *map[string]interface{} `json:"attributes,omitempty"` BearerOnly *bool `json:"bearerOnly,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` Description *string `json:"description,omitempty"` DirectAccessGrantsEnabled *bool `json:"directAccessGrantsEnabled,omitempty"` FrontchannelLogout *bool `json:"frontchannelLogout,omitempty"` FullScopeAllowed *bool `json:"fullScopeAllowed,omitempty"` Id *string `json:"id,omitempty"` ImplicitFlowEnabled *bool `json:"implicitFlowEnabled,omitempty"` Name *string `json:"name,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` PublicClient *bool `json:"publicClient,omitempty"` ServiceAccountsEnabled *bool `json:"serviceAccountsEnabled,omitempty"` StandardFlowEnabled *bool `json:"standardFlowEnabled,omitempty"` }
type ComponentExportRepresentation ¶
type ComponentExportRepresentation struct { Config *MultivaluedHashMap `json:"config,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` ProviderId *string `json:"providerId,omitempty"` SubComponents *MultivaluedHashMap `json:"subComponents,omitempty"` SubType *string `json:"subType,omitempty"` }
type ComponentRepresentation ¶
type ComponentRepresentation struct { Config *MultivaluedHashMap `json:"config,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` ParentId *string `json:"parentId,omitempty"` ProviderId *string `json:"providerId,omitempty"` ProviderType *string `json:"providerType,omitempty"` SubType *string `json:"subType,omitempty"` }
type ComponentTypeRepresentation ¶
type ComponentTypeRepresentation struct { HelpText *string `json:"helpText,omitempty"` Id *string `json:"id,omitempty"` Metadata *map[string]interface{} `json:"metadata,omitempty"` Properties *[]ConfigPropertyRepresentation `json:"properties,omitempty"` }
type ConfigPropertyRepresentation ¶
type ConfigPropertyRepresentation struct { DefaultValue *map[string]interface{} `json:"defaultValue,omitempty"` HelpText *string `json:"helpText,omitempty"` Label *string `json:"label,omitempty"` Name *string `json:"name,omitempty"` Options *[]string `json:"options,omitempty"` Secret *bool `json:"secret,omitempty"` Type *string `json:"type,omitempty"` }
type CredentialRepresentation ¶
type CredentialRepresentation struct { Id *string `json:"id,omitempty"` Algorithm *string `json:"algorithm,omitempty"` Config *map[string][]string `json:"config,omitempty"` Counter *int32 `json:"counter,omitempty"` CreatedDate *int64 `json:"createdDate,omitempty"` Device *string `json:"device,omitempty"` Digits *int32 `json:"digits,omitempty"` HashIterations *int32 `json:"hashIterations,omitempty"` HashedSaltedValue *string `json:"hashedSaltedValue,omitempty"` Period *int32 `json:"period,omitempty"` Salt *string `json:"salt,omitempty"` Temporary *bool `json:"temporary,omitempty"` Type *string `json:"type,omitempty"` Value *string `json:"value,omitempty"` }
type EventRepresentation ¶
type EventRepresentation struct { ClientId *string `json:"clientId,omitempty"` Details *map[string]interface{} `json:"details,omitempty"` Error *string `json:"error,omitempty"` IpAddress *string `json:"ipAddress,omitempty"` RealmId *string `json:"realmId,omitempty"` SessionId *string `json:"sessionId,omitempty"` Time *int64 `json:"time,omitempty"` Type *string `json:"type,omitempty"` UserId *string `json:"userId,omitempty"` }
type GlobalRequestResult ¶
type GroupRepresentation ¶
type GroupRepresentation struct { Access *map[string]interface{} `json:"access,omitempty"` Attributes *map[string]interface{} `json:"attributes,omitempty"` ClientRoles *map[string]interface{} `json:"clientRoles,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` RealmRoles *[]string `json:"realmRoles,omitempty"` SubGroups *[]GroupRepresentation `json:"subGroups,omitempty"` }
type HTTPError ¶
HTTPError is returned when an error occurred while contacting the keycloak instance.
type IdentityProviderMapperRepresentation ¶
type IdentityProviderMapperRepresentation struct { Config *map[string]interface{} `json:"config,omitempty"` Id *string `json:"id,omitempty"` IdentityProviderAlias *string `json:"identityProviderAlias,omitempty"` IdentityProviderMapper *string `json:"identityProviderMapper,omitempty"` Name *string `json:"name,omitempty"` }
type IdentityProviderRepresentation ¶
type IdentityProviderRepresentation struct { AddReadTokenRoleOnCreate *bool `json:"addReadTokenRoleOnCreate,omitempty"` Alias *string `json:"alias,omitempty"` Config *map[string]interface{} `json:"config,omitempty"` DisplayName *string `json:"displayName,omitempty"` Enabled *bool `json:"enabled,omitempty"` FirstBrokerLoginFlowAlias *string `json:"firstBrokerLoginFlowAlias,omitempty"` InternalId *string `json:"internalId,omitempty"` LinkOnly *bool `json:"linkOnly,omitempty"` PostBrokerLoginFlowAlias *string `json:"postBrokerLoginFlowAlias,omitempty"` ProviderId *string `json:"providerId,omitempty"` StoreToken *bool `json:"storeToken,omitempty"` TrustEmail *bool `json:"trustEmail,omitempty"` }
type InitiatePKCELogin ¶ added in v0.0.22
type InitiatePKCELogin struct { Nonce string `schema:"nonce"` ClientID string `schema:"client_id"` ResponseType string `schema:"response_type"` Scope string `schema:"scope"` RedirectURI string `schema:"redirect_uri"` ResponseMode string `schema:"response_mode"` State string `schema:"state"` Username string `schema:"username"` Target string `schema:"target"` AuthSessionID string `schema:"auth_session_id"` CodeChallenge string `schema:"code_challenge"` CodeChallengeMethod string `schema:"code_challenge_method"` }
type KeyStoreConfig ¶
type KeyStoreConfig struct { Format *string `json:"format,omitempty"` KeyAlias *string `json:"keyAlias,omitempty"` KeyPassword *string `json:"keyPassword,omitempty"` RealmAlias *string `json:"realmAlias,omitempty"` RealmCertificate *bool `json:"realmCertificate,omitempty"` StorePassword *string `json:"storePassword,omitempty"` }
type KeysMetadataRepresentation ¶
type KeysMetadataRepresentation struct { Active *map[string]interface{} `json:"active,omitempty"` Keys *[]KeysMetadataRepresentationKeyMetadataRepresentation `json:"keys,omitempty"` }
type KeysMetadataRepresentationKeyMetadataRepresentation ¶
type KeysMetadataRepresentationKeyMetadataRepresentation struct { Certificate *string `json:"certificate,omitempty"` Kid *string `json:"kid,omitempty"` ProviderId *string `json:"providerId,omitempty"` ProviderPriority *int64 `json:"providerPriority,omitempty"` PublicKey *string `json:"publicKey,omitempty"` Status *string `json:"status,omitempty"` Type *string `json:"type,omitempty"` }
type MappingsRepresentation ¶
type MappingsRepresentation struct { ClientMappings *map[string]interface{} `json:"clientMappings,omitempty"` RealmMappings *[]RoleRepresentation `json:"realmMappings,omitempty"` }
type MemoryInfoRepresentation ¶
type MemoryInfoRepresentation struct { Free *int64 `json:"free,omitempty"` FreeFormated *string `json:"freeFormated,omitempty"` FreePercentage *int64 `json:"freePercentage,omitempty"` Total *int64 `json:"total,omitempty"` TotalFormated *string `json:"totalFormated,omitempty"` Used *int64 `json:"used,omitempty"` UsedFormated *string `json:"usedFormated,omitempty"` }
type MultivaluedHashMap ¶
type PartialImportRepresentation ¶
type PartialImportRepresentation struct { Clients *[]ClientRepresentation `json:"clients,omitempty"` Groups *[]GroupRepresentation `json:"groups,omitempty"` IdentityProviders *[]IdentityProviderRepresentation `json:"identityProviders,omitempty"` IfResourceExists *string `json:"ifResourceExists,omitempty"` Policy *string `json:"policy,omitempty"` Roles *RolesRepresentation `json:"roles,omitempty"` Users *[]UserRepresentation `json:"users,omitempty"` }
type PolicyRepresentation ¶
type PolicyRepresentation struct { Config *map[string]interface{} `json:"config,omitempty"` DecisionStrategy *string `json:"decisionStrategy,omitempty"` Description *string `json:"description,omitempty"` Id *string `json:"id,omitempty"` Logic *string `json:"logic,omitempty"` Name *string `json:"name,omitempty"` Policies *[]string `json:"policies,omitempty"` Resources *[]string `json:"resources,omitempty"` Scopes *[]string `json:"scopes,omitempty"` Type *string `json:"type,omitempty"` }
type ProtocolMapperRepresentation ¶
type ProtocolMapperRepresentation struct { Config *map[string]interface{} `json:"config,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` ConsentText *string `json:"consentText,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMapper *string `json:"protocolMapper,omitempty"` }
type ProviderRepresentation ¶
type RealmEventsConfigRepresentation ¶
type RealmEventsConfigRepresentation struct { AdminEventsDetailsEnabled *bool `json:"adminEventsDetailsEnabled,omitempty"` AdminEventsEnabled *bool `json:"adminEventsEnabled,omitempty"` EnabledEventTypes *[]string `json:"enabledEventTypes,omitempty"` EventsEnabled *bool `json:"eventsEnabled,omitempty"` EventsExpiration *int64 `json:"eventsExpiration,omitempty"` EventsListeners *[]string `json:"eventsListeners,omitempty"` }
type RealmRepresentation ¶
type RealmRepresentation struct { AccessCodeLifespan *int32 `json:"accessCodeLifespan,omitempty"` AccessCodeLifespanLogin *int32 `json:"accessCodeLifespanLogin,omitempty"` AccessCodeLifespanUserAction *int32 `json:"accessCodeLifespanUserAction,omitempty"` AccessTokenLifespan *int32 `json:"accessTokenLifespan,omitempty"` AccessTokenLifespanForImplicitFlow *int32 `json:"accessTokenLifespanForImplicitFlow,omitempty"` AccountTheme *string `json:"accountTheme,omitempty"` ActionTokenGeneratedByAdminLifespan *int32 `json:"actionTokenGeneratedByAdminLifespan,omitempty"` ActionTokenGeneratedByUserLifespan *int32 `json:"actionTokenGeneratedByUserLifespan,omitempty"` AdminEventsDetailsEnabled *bool `json:"adminEventsDetailsEnabled,omitempty"` AdminEventsEnabled *bool `json:"adminEventsEnabled,omitempty"` AdminTheme *string `json:"adminTheme,omitempty"` Attributes *map[string]interface{} `json:"attributes,omitempty"` AuthenticationFlows *[]AuthenticationFlowRepresentation `json:"authenticationFlows,omitempty"` AuthenticatorConfig *[]AuthenticatorConfigRepresentation `json:"authenticatorConfig,omitempty"` BrowserFlow *string `json:"browserFlow,omitempty"` BrowserSecurityHeaders *map[string]interface{} `json:"browserSecurityHeaders,omitempty"` BruteForceProtected *bool `json:"bruteForceProtected,omitempty"` ClientAuthenticationFlow *string `json:"clientAuthenticationFlow,omitempty"` ClientScopeMappings *map[string]interface{} `json:"clientScopeMappings,omitempty"` ClientTemplates *[]ClientTemplateRepresentation `json:"clientTemplates,omitempty"` Clients *[]ClientRepresentation `json:"clients,omitempty"` Components *MultivaluedHashMap `json:"components,omitempty"` DefaultGroups *[]string `json:"defaultGroups,omitempty"` DefaultLocale *string `json:"defaultLocale,omitempty"` DefaultRoles *[]string `json:"defaultRoles,omitempty"` DirectGrantFlow *string `json:"directGrantFlow,omitempty"` DisplayName *string `json:"displayName,omitempty"` DisplayNameHtml *string `json:"displayNameHtml,omitempty"` DockerAuthenticationFlow *string `json:"dockerAuthenticationFlow,omitempty"` DuplicateEmailsAllowed *bool `json:"duplicateEmailsAllowed,omitempty"` EditUsernameAllowed *bool `json:"editUsernameAllowed,omitempty"` EmailTheme *string `json:"emailTheme,omitempty"` Enabled *bool `json:"enabled,omitempty"` EnabledEventTypes *[]string `json:"enabledEventTypes,omitempty"` EventsEnabled *bool `json:"eventsEnabled,omitempty"` EventsExpiration *int64 `json:"eventsExpiration,omitempty"` EventsListeners *[]string `json:"eventsListeners,omitempty"` FailureFactor *int32 `json:"failureFactor,omitempty"` FederatedUsers *[]UserRepresentation `json:"federatedUsers,omitempty"` Groups *[]GroupRepresentation `json:"groups,omitempty"` Id *string `json:"id,omitempty"` IdentityProviderMappers *[]IdentityProviderMapperRepresentation `json:"identityProviderMappers,omitempty"` IdentityProviders *[]IdentityProviderRepresentation `json:"identityProviders,omitempty"` InternationalizationEnabled *bool `json:"internationalizationEnabled,omitempty"` KeycloakVersion *string `json:"keycloakVersion,omitempty"` LoginTheme *string `json:"loginTheme,omitempty"` LoginWithEmailAllowed *bool `json:"loginWithEmailAllowed,omitempty"` MaxDeltaTimeSeconds *int32 `json:"maxDeltaTimeSeconds,omitempty"` MaxFailureWaitSeconds *int32 `json:"maxFailureWaitSeconds,omitempty"` MinimumQuickLoginWaitSeconds *int32 `json:"minimumQuickLoginWaitSeconds,omitempty"` NotBefore *int32 `json:"notBefore,omitempty"` OfflineSessionIdleTimeout *int32 `json:"offlineSessionIdleTimeout,omitempty"` OtpPolicyAlgorithm *string `json:"otpPolicyAlgorithm,omitempty"` OtpPolicyDigits *int32 `json:"otpPolicyDigits,omitempty"` OtpPolicyInitialCounter *int32 `json:"otpPolicyInitialCounter,omitempty"` OtpPolicyLookAheadWindow *int32 `json:"otpPolicyLookAheadWindow,omitempty"` OtpPolicyPeriod *int32 `json:"otpPolicyPeriod,omitempty"` OtpPolicyType *string `json:"otpPolicyType,omitempty"` OtpSupportedApplications *[]string `json:"otpSupportedApplications,omitempty"` PasswordPolicy *string `json:"passwordPolicy,omitempty"` PermanentLockout *bool `json:"permanentLockout,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` QuickLoginCheckMilliSeconds *int64 `json:"quickLoginCheckMilliSeconds,omitempty"` Realm *string `json:"realm,omitempty"` RefreshTokenMaxReuse *int32 `json:"refreshTokenMaxReuse,omitempty"` RegistrationAllowed *bool `json:"registrationAllowed,omitempty"` RegistrationEmailAsUsername *bool `json:"registrationEmailAsUsername,omitempty"` RegistrationFlow *string `json:"registrationFlow,omitempty"` RememberMe *bool `json:"rememberMe,omitempty"` RequiredActions *[]RequiredActionProviderRepresentation `json:"requiredActions,omitempty"` ResetCredentialsFlow *string `json:"resetCredentialsFlow,omitempty"` ResetPasswordAllowed *bool `json:"resetPasswordAllowed,omitempty"` RevokeRefreshToken *bool `json:"revokeRefreshToken,omitempty"` Roles *RolesRepresentation `json:"roles,omitempty"` ScopeMappings *[]ScopeMappingRepresentation `json:"scopeMappings,omitempty"` SmtpServer *map[string]interface{} `json:"smtpServer,omitempty"` SslRequired *string `json:"sslRequired,omitempty"` SSOSessionIdleTimeout *int32 `json:"ssoSessionIdleTimeout,omitempty"` SSOSessionMaxLifespan *int32 `json:"ssoSessionMaxLifespan,omitempty"` SupportedLocales *[]string `json:"supportedLocales,omitempty"` Users *[]UserRepresentation `json:"users,omitempty"` VerifyEmail *bool `json:"verifyEmail,omitempty"` WaitIncrementSeconds *int32 `json:"waitIncrementSeconds,omitempty"` }
type RequestLogger ¶ added in v0.0.17
type RequestLogger interface {
Debugf(string, ...interface{})
}
RequestLogger wraps indicates a logger with a Debugf method
type RequiredActionProviderRepresentation ¶
type RequiredActionProviderRepresentation struct { Alias *string `json:"alias,omitempty"` Config *map[string]interface{} `json:"config,omitempty"` DefaultAction *bool `json:"defaultAction,omitempty"` Enabled *bool `json:"enabled,omitempty"` Name *string `json:"name,omitempty"` ProviderId *string `json:"providerId,omitempty"` Priority *int `json:"priority,omitempty"` }
type ResourceRepresentation ¶
type ResourceRepresentation struct { Id *string `json:"id,omitempty"` Icon_uri *string `json:"icon_uri,omitempty"` Name *string `json:"name,omitempty"` Owner *ResourceOwnerRepresentation `json:"owner,omitempty"` Policies *[]PolicyRepresentation `json:"policies,omitempty"` Scopes *[]ScopeRepresentation `json:"scopes,omitempty"` Type *string `json:"type,omitempty"` TypedScopes *[]ScopeRepresentation `json:"typedScopes,omitempty"` Uri *string `json:"uri,omitempty"` }
type ResourceServerRepresentation ¶
type ResourceServerRepresentation struct { AllowRemoteResourceManagement *bool `json:"allowRemoteResourceManagement,omitempty"` ClientId *string `json:"clientId,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Policies *[]PolicyRepresentation `json:"policies,omitempty"` PolicyEnforcementMode *string `json:"policyEnforcementMode,omitempty"` Resources *[]ResourceRepresentation `json:"resources,omitempty"` Scopes *[]ScopeRepresentation `json:"scopes,omitempty"` }
type RoleRepresentation ¶
type RoleRepresentation struct { ClientRole *bool `json:"clientRole,omitempty"` Composite *bool `json:"composite,omitempty"` Composites *RoleRepresentationComposites `json:"composites,omitempty"` ContainerId *string `json:"containerId,omitempty"` Description *string `json:"description,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` ScopeParamRequired *bool `json:"scopeParamRequired,omitempty"` }
type RolesRepresentation ¶
type RolesRepresentation struct { Client *map[string]interface{} `json:"client,omitempty"` Realm *[]RoleRepresentation `json:"realm,omitempty"` }
type ScopeRepresentation ¶
type ScopeRepresentation struct { IconUri *string `json:"iconUri,omitempty"` Id *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Policies *[]PolicyRepresentation `json:"policies,omitempty"` Resources *[]ResourceRepresentation `json:"resources,omitempty"` }
type ServerInfoRepresentation ¶
type ServerInfoRepresentation struct { BuiltinProtocolMappers *map[string]interface{} `json:"builtinProtocolMappers,omitempty"` ClientImporters *[]map[string]interface{} `json:"clientImporters,omitempty"` ClientInstallations *map[string]interface{} `json:"clientInstallations,omitempty"` ComponentTypes *map[string]interface{} `json:"componentTypes,omitempty"` Enums *map[string]interface{} `json:"enums,omitempty"` IdentityProviders *[]map[string]interface{} `json:"identityProviders,omitempty"` MemoryInfo *MemoryInfoRepresentation `json:"memoryInfo,omitempty"` PasswordPolicies *[]PasswordPolicyTypeRepresentation `json:"passwordPolicies,omitempty"` ProfileInfo *ProfileInfoRepresentation `json:"profileInfo,omitempty"` ProtocolMapperTypes *map[string]interface{} `json:"protocolMapperTypes,omitempty"` Providers *map[string]interface{} `json:"providers,omitempty"` SocialProviders *[]map[string]interface{} `json:"socialProviders,omitempty"` SystemInfo *SystemInfoRepresentation `json:"systemInfo,omitempty"` Themes *map[string]interface{} `json:"themes,omitempty"` }
type SmsCodeRepresentation ¶
type SmsCodeRepresentation struct {
Code *string `json:"code,omitempty"`
}
type SpiInfoRepresentation ¶
type SynchronizationResult ¶
type SystemInfoRepresentation ¶
type SystemInfoRepresentation struct { FileEncoding *string `json:"fileEncoding,omitempty"` JavaHome *string `json:"javaHome,omitempty"` JavaRuntime *string `json:"javaRuntime,omitempty"` JavaVendor *string `json:"javaVendor,omitempty"` JavaVersion *string `json:"javaVersion,omitempty"` JavaVm *string `json:"javaVm,omitempty"` JavaVmVersion *string `json:"javaVmVersion,omitempty"` OsArchitecture *string `json:"osArchitecture,omitempty"` OsName *string `json:"osName,omitempty"` OsVersion *string `json:"osVersion,omitempty"` ServerTime *string `json:"serverTime,omitempty"` Uptime *string `json:"uptime,omitempty"` UptimeMillis *int64 `json:"uptimeMillis,omitempty"` UserDir *string `json:"userDir,omitempty"` UserLocale *string `json:"userLocale,omitempty"` UserName *string `json:"userName,omitempty"` UserTimezone *string `json:"userTimezone,omitempty"` Version *string `json:"version,omitempty"` }
type Token ¶
type Token struct { Issuer string `json:"iss,omitempty"` Subject string `json:"sub,omitempty"` ExpirationTime int64 `json:"exp,omitempty"` NotBefore int64 `json:"nbf,omitempty"` IssuedAt int64 `json:"iat,omitempty"` ID string `json:"jti,omitempty"` Username string `json:"preferred_username,omitempty"` // contains filtered or unexported fields }
Token is JWT token. We need to define our own structure as the library define aud as a string but it can also be a string array. To fix this issue, we remove aud as we do not use it here.
type TokenInfo ¶ added in v0.0.15
type TokenInfo struct { TokenType string AccessToken string Expires time.Time RefreshToken string RefreshExpires time.Time // contains filtered or unexported fields }
TokenInfo represents a full oAuth2 JWT token response with expiration and refresh
type UserConsentRepresentation ¶
type UserConsentRepresentation struct { ClientId *string `json:"clientId,omitempty"` CreatedDate *int64 `json:"createdDate,omitempty"` GrantedClientRoles *map[string]interface{} `json:"grantedClientRoles,omitempty"` GrantedProtocolMappers *map[string]interface{} `json:"grantedProtocolMappers,omitempty"` GrantedRealmRoles *[]string `json:"grantedRealmRoles,omitempty"` LastUpdatedDate *int64 `json:"lastUpdatedDate,omitempty"` }
type UserDetailsRepresentation ¶ added in v0.0.8
type UserDetailsRepresentation struct { ID *string `json:"id,omitempty"` Username *string `json:"username,omitempty"` FirstName *string `json:"firstName,omitempty"` LastName *string `json:"lastName,omitempty"` Email *string `json:"email,omitempty"` Enabled *bool `json:"enabled,omitempty"` FederationLink *string `json:"federationLink,omitempty"` Roles *MappingsRepresentation `json:"roles,omitempty"` Groups *[]GroupRepresentation `json:"groups,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` }
type UserFederationProviderMapperRepresentation ¶ added in v0.0.7
type UserFederationProviderMapperRepresentation = UserFederationProviderRepresentation
type UserFederationProviderRepresentation ¶
type UserFederationProviderRepresentation struct { Id *string `json:"id,omitempty"` DisplayName *string `json:"name,omitempty"` // The id of the resource the provider is attached to // will be realm id for a user federation provider or // provider id for a user federation provider mapper ParentId *string `json:"parentId,omitempty"` // User viewable type of the provider ProviderId *string `json:"providerId,omitempty"` // Keycloak defined type corresponding to the ProviderId ProviderType *string `json:"providerType,omitempty"` Config *map[string][]string `json:"config,omitempty"` }
type UserRepresentation ¶
type UserRepresentation struct { Access *map[string]bool `json:"access,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` ClientConsents *[]UserConsentRepresentation `json:"clientConsents,omitempty"` ClientRoles *map[string][]string `json:"clientRoles,omitempty"` CreatedTimestamp *int64 `json:"createdTimestamp,omitempty"` Credentials *[]CredentialRepresentation `json:"credentials,omitempty"` DisableableCredentialTypes *[]string `json:"disableableCredentialTypes,omitempty"` Email *string `json:"email,omitempty"` EmailVerified *bool `json:"emailVerified,omitempty"` Enabled *bool `json:"enabled,omitempty"` FederatedIdentities *[]FederatedIdentityRepresentation `json:"federatedIdentities,omitempty"` FederationLink *string `json:"federationLink,omitempty"` FirstName *string `json:"firstName,omitempty"` Groups *[]string `json:"groups,omitempty"` Id *string `json:"id,omitempty"` LastName *string `json:"lastName,omitempty"` NotBefore *int32 `json:"notBefore,omitempty"` Origin *string `json:"origin,omitempty"` RealmRoles *[]string `json:"realmRoles,omitempty"` RequiredActions *[]string `json:"requiredActions,omitempty"` Self *string `json:"self,omitempty"` ServiceAccountClientId *string `json:"serviceAccountClientId,omitempty"` Username *string `json:"username,omitempty"` }
type UserSessionRepresentation ¶
type UserSessionRepresentation struct { Clients *map[string]interface{} `json:"clients,omitempty"` Id *string `json:"id,omitempty"` IpAddress *string `json:"ipAddress,omitempty"` LastAccess *int64 `json:"lastAccess,omitempty"` Start *int64 `json:"start,omitempty"` UserId *string `json:"userId,omitempty"` Username *string `json:"username,omitempty"` }
type Users ¶ added in v0.0.3
type Users []UserRepresentation
Source Files ¶
- attack_detection.go
- authentication_management.go
- client_attribute_certificate.go
- client_initial_access.go
- client_registration_policy.go
- client_role_mappings.go
- client_scopes.go
- clients.go
- definitions.go
- group_role_mappings.go
- groups.go
- keycloak_client.go
- logger.go
- login.go
- protocol_mappers.go
- realm.go
- roles.go
- user_federation_provider_mappers.go
- user_federation_providers.go
- users.go
- well_known.go