Documentation ¶
Index ¶
- Variables
- func BoolP(value bool) *bool
- func Float32P(value float32) *float32
- func Float64P(value float64) *float64
- func GetQueryParams(s interface{}) (map[string]string, error)
- func Int32P(value int32) *int32
- func Int64P(value int64) *int64
- func IntP(value int) *int
- func NilOrEmpty(value *string) bool
- func NilOrEmptyArray(value *[]string) bool
- func NilOrEmptySlice(value *[]string) bool
- func PBool(value *bool) bool
- func PFloat32(value *float32) float32
- func PFloat64(value *float64) float64
- func PInt(value *int) int
- func PInt32(value *int32) int32
- func PInt64(value *int64) int64
- func PString(value *string) string
- func PStringSlice(value *[]string) []string
- func SetAuthAdminRealms(url string) func(client *gocloak)
- func SetAuthRealms(url string) func(client *gocloak)
- func SetCertCacheInvalidationTime(duration time.Duration) func(client *gocloak)
- func SetLogoutEndpoint(url string) func(client *gocloak)
- func SetOpenIDConnectEndpoint(url string) func(client *gocloak)
- func SetTokenEndpoint(url string) func(client *gocloak)
- func StringP(value string) *string
- func UserAttributeContains(attributes map[string][]string, attribute, value string) bool
- func WithTracer(ctx context.Context, tracer opentracing.Tracer) context.Context
- type APIErrType
- type APIError
- type Access
- type AccessRepresentation
- type ActiveKeys
- type AdapterConfiguration
- type AggregatedPolicyRepresentation
- type Attributes
- type AuthenticationExecutionRepresentation
- type AuthenticationFlowRepresentation
- type BuiltinProtocolMappers
- type CertResponse
- type CertResponseKey
- type Client
- type ClientMappingsRepresentation
- type ClientPolicyRepresentation
- type ClientScope
- type ClientScopeAttributes
- type Component
- type CompositesRepresentation
- type CreateAuthenticationExecutionFlowRepresentation
- type CreateAuthenticationExecutionRepresentation
- type CreatePermissionTicketParams
- type CredentialRepresentation
- type DecisionStrategy
- type EnforcedString
- type EventRepresentation
- type ExecuteActionsEmail
- type FederatedIdentityRepresentation
- type GetClientsParams
- type GetComponentsParams
- type GetEventsParams
- type GetGroupsParams
- type GetPermissionParams
- type GetPolicyParams
- type GetResourceParams
- type GetResourcePoliciesParams
- type GetRoleParams
- type GetScopeParams
- type GetUserPermissionParams
- type GetUsersByRoleParams
- type GetUsersParams
- type GoCloak
- type Group
- type GroupDefinition
- type GroupPolicyRepresentation
- type GroupsCount
- type HTTPErrorResponse
- type IdentityProviderMapper
- type IdentityProviderRepresentation
- type IssuerResponse
- type JSPolicyRepresentation
- type JWT
- type Key
- type KeyStoreConfig
- type Logic
- type MappingsRepresentation
- type MemoryInfoRepresentation
- type ModifyAuthenticationExecutionRepresentation
- type MultiValuedHashMap
- type PasswordPolicy
- type PermissionGrantParams
- type PermissionGrantResponseRepresentation
- type PermissionRepresentation
- type PermissionResource
- type PermissionScope
- type PermissionTicketDescriptionRepresentation
- type PermissionTicketPermissionRepresentation
- type PermissionTicketRepresentation
- type PermissionTicketResponseRepresentation
- type PolicyEnforcementMode
- type PolicyRepresentation
- type PolicyResourceRepresentation
- type PolicyScopeRepresentation
- type ProtocolMapperRepresentation
- type ProtocolMapperType
- type ProtocolMapperTypeProperty
- type ProtocolMapperTypes
- type ProtocolMappers
- type ProtocolMappersConfig
- type RealmRepresentation
- type RequestingPartyPermission
- type RequestingPartyPermissionDecision
- type RequestingPartyTokenOptions
- type RequiredActionProviderRepresentation
- type ResourceOwnerRepresentation
- type ResourcePermission
- type ResourcePolicyRepresentation
- type ResourceRepresentation
- type ResourceServerRepresentation
- type RetrospecTokenResult
- type Role
- type RoleDefinition
- type RolePolicyRepresentation
- type RolesRepresentation
- type ScopeRepresentation
- type ServerInfoRepesentation
- type SetPasswordRequest
- type StringOrArray
- type SystemInfoRepresentation
- type TimePolicyRepresentation
- type TokenOptions
- type User
- type UserGroup
- type UserInfo
- type UserInfoAddress
- type UserPolicyRepresentation
- type UserSessionRepresentation
Constants ¶
This section is empty.
Variables ¶
var ( ENFORCING = PolicyEnforcementModeP("ENFORCING") PERMISSIVE = PolicyEnforcementModeP("PERMISSIVE") DISABLED = PolicyEnforcementModeP("DISABLED") )
PolicyEnforcementMode values
var ( POSITIVE = LogicP("POSITIVE") NEGATIVE = LogicP("NEGATIVE") )
Logic values
var ( AFFIRMATIVE = DecisionStrategyP("AFFIRMATIVE") UNANIMOUS = DecisionStrategyP("UNANIMOUS") CONSENSUS = DecisionStrategyP("CONSENSUS") )
DecisionStrategy values
Functions ¶
func GetQueryParams ¶
GetQueryParams converts the struct to map[string]string The fields tags must have `json:"<name>,string,omitempty"` format for all types, except strings The string fields must have: `json:"<name>,omitempty"`. The `json:"<name>,string,omitempty"` tag for string field will add additional double quotes. "string" tag allows to convert the non-string fields of a structure to map[string]string. "omitempty" allows to skip the fields with default values.
func NilOrEmpty ¶
NilOrEmpty returns true if string is empty or has a nil value
func NilOrEmptyArray ¶
NilOrEmptyArray returns true if string is empty or has a nil value
func NilOrEmptySlice ¶
NilOrEmptySlice returns true if list is empty or has a nil value
func PStringSlice ¶
PStringSlice converts a pointer to []string or returns ampty slice if nill value
func SetAuthAdminRealms ¶
func SetAuthAdminRealms(url string) func(client *gocloak)
SetAuthAdminRealms sets the auth admin realm
func SetAuthRealms ¶
func SetAuthRealms(url string) func(client *gocloak)
SetAuthRealms sets the auth realm
func SetCertCacheInvalidationTime ¶
SetCertCacheInvalidationTime sets the logout
func SetLogoutEndpoint ¶
func SetLogoutEndpoint(url string) func(client *gocloak)
SetLogoutEndpoint sets the logout
func SetOpenIDConnectEndpoint ¶
func SetOpenIDConnectEndpoint(url string) func(client *gocloak)
SetOpenIDConnectEndpoint sets the logout
func SetTokenEndpoint ¶
func SetTokenEndpoint(url string) func(client *gocloak)
SetTokenEndpoint sets the token endpoint
func UserAttributeContains ¶
UserAttributeContains checks if the given attribute value is set
Types ¶
type APIErrType ¶
type APIErrType string
APIErrType is a field containing more specific API error types that may be checked by the receiver.
const ( // APIErrTypeUnknown is for API errors that are not strongly // typed. APIErrTypeUnknown APIErrType = "unknown" // APIErrTypeInvalidGrant corresponds with Keycloak's // OAuthErrorException due to "invalid_grant". APIErrTypeInvalidGrant = "oauth: invalid grant" )
func ParseAPIErrType ¶
func ParseAPIErrType(err error) APIErrType
ParseAPIErrType is a convenience method for returning strongly typed API errors.
type APIError ¶
type APIError struct { Code int `json:"code"` Message string `json:"message"` Type APIErrType `json:"type"` }
APIError holds message and statusCode for api errors
type Access ¶
type Access struct { ManageGroupMembership *bool `json:"manageGroupMembership,omitempty"` View *bool `json:"view,omitempty"` MapRoles *bool `json:"mapRoles,omitempty"` Impersonate *bool `json:"impersonate,omitempty"` Manage *bool `json:"manage,omitempty"` }
Access represents access
type AccessRepresentation ¶
type AccessRepresentation struct { ManageGroupMembership *bool `json:"manageGroupMembership,omitempty"` View *bool `json:"view,omitempty"` MapRoles *bool `json:"mapRoles,omitempty"` Impersonate *bool `json:"impersonate,omitempty"` Manage *bool `json:"manage,omitempty"` }
AccessRepresentation represents the access parameters returned in the permission ticket description
func (*AccessRepresentation) String ¶
func (v *AccessRepresentation) String() string
type ActiveKeys ¶
type ActiveKeys struct { HS256 *string `json:"HS256,omitempty"` RS256 *string `json:"RS256,omitempty"` AES *string `json:"AES,omitempty"` }
ActiveKeys holds the active keys
func (*ActiveKeys) String ¶
func (v *ActiveKeys) String() string
type AdapterConfiguration ¶
type AdapterConfiguration struct { Realm *string `json:"realm"` AuthServerURL *string `json:"auth-server-url"` SSLRequired *string `json:"ssl-required"` Resource *string `json:"resource"` Credentials interface{} `json:"credentials"` ConfidentialPort *int `json:"confidential-port"` }
AdapterConfiguration represents adapter configuration of a client
type AggregatedPolicyRepresentation ¶
type AggregatedPolicyRepresentation struct {
Policies *[]string `json:"policies,omitempty"`
}
AggregatedPolicyRepresentation represents aggregated policies
func (*AggregatedPolicyRepresentation) String ¶
func (v *AggregatedPolicyRepresentation) String() string
type Attributes ¶
type Attributes struct { LDAPENTRYDN *[]string `json:"LDAP_ENTRY_DN,omitempty"` LDAPID *[]string `json:"LDAP_ID,omitempty"` }
Attributes holds Attributes
func (*Attributes) String ¶
func (v *Attributes) String() string
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"` FlowAlias *string `json:"flowAlias,omitempty"` Priority *int `json:"priority,omitempty"` Requirement *string `json:"requirement,omitempty"` UserSetupAllowed *bool `json:"userSetupAllowed,omitempty"` }
AuthenticationExecutionRepresentation represents the authentication execution of an AuthenticationFlowRepresentation
type AuthenticationFlowRepresentation ¶
type AuthenticationFlowRepresentation struct { Alias *string `json:"alias,omitempty"` AuthenticationExecutions *[]AuthenticationExecutionRepresentation `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"` }
AuthenticationFlowRepresentation represents an authentication flow of a realm
type BuiltinProtocolMappers ¶
type BuiltinProtocolMappers struct { SAML []ProtocolMapperRepresentation `json:"saml,omitempty"` OpenIDConnect []ProtocolMapperRepresentation `json:"openid-connect,omitempty"` }
BuiltinProtocolMappers holds the currently available built-in blueprints of ProtocolMapper-s grouped by protocol
type CertResponse ¶
type CertResponse struct {
Keys *[]CertResponseKey `json:"keys,omitempty"`
}
CertResponse is returned by the certs endpoint
func (*CertResponse) String ¶
func (v *CertResponse) String() string
type CertResponseKey ¶
type CertResponseKey struct { Kid *string `json:"kid,omitempty"` Kty *string `json:"kty,omitempty"` Alg *string `json:"alg,omitempty"` Use *string `json:"use,omitempty"` N *string `json:"n,omitempty"` E *string `json:"e,omitempty"` X *string `json:"x,omitempty"` Y *string `json:"y,omitempty"` Crv *string `json:"crv,omitempty"` KeyOps *[]string `json:"key_ops,omitempty"` X5u *string `json:"x5u,omitempty"` X5c *[]string `json:"x5c,omitempty"` X5t *string `json:"x5t,omitempty"` X5tS256 *string `json:"x5t#S256,omitempty"` }
CertResponseKey is returned by the certs endpoint. JSON Web Key structure is described here: https://self-issued.info/docs/draft-ietf-jose-json-web-key.html#JWKContents
func (*CertResponseKey) String ¶
func (v *CertResponseKey) String() string
Stringer implementations for all struct types
type Client ¶
type Client struct { Access *map[string]interface{} `json:"access,omitempty"` AdminURL *string `json:"adminUrl,omitempty"` Attributes *map[string]string `json:"attributes,omitempty"` AuthenticationFlowBindingOverrides *map[string]string `json:"authenticationFlowBindingOverrides,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"` ConsentRequired *bool `json:"consentRequired,omitempty"` DefaultClientScopes *[]string `json:"defaultClientScopes,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"` OptionalClientScopes *[]string `json:"optionalClientScopes,omitempty"` Origin *string `json:"origin,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` PublicClient *bool `json:"publicClient,omitempty"` RedirectURIs *[]string `json:"redirectUris,omitempty"` RegisteredNodes *map[string]string `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"` WebOrigins *[]string `json:"webOrigins,omitempty"` }
Client is a ClientRepresentation
type ClientMappingsRepresentation ¶
type ClientMappingsRepresentation struct { ID *string `json:"id,omitempty"` Client *string `json:"client,omitempty"` Mappings *[]Role `json:"mappings,omitempty"` }
ClientMappingsRepresentation is a client role mappings
func (*ClientMappingsRepresentation) String ¶
func (v *ClientMappingsRepresentation) String() string
type ClientPolicyRepresentation ¶
type ClientPolicyRepresentation struct {
Clients *[]string `json:"clients,omitempty"`
}
ClientPolicyRepresentation represents client based policies
func (*ClientPolicyRepresentation) String ¶
func (v *ClientPolicyRepresentation) String() string
type ClientScope ¶
type ClientScope struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Description *string `json:"description,omitempty"` Protocol *string `json:"protocol,omitempty"` ClientScopeAttributes *ClientScopeAttributes `json:"attributes,omitempty"` ProtocolMappers *[]ProtocolMappers `json:"protocolMappers,omitempty"` }
ClientScope is a ClientScope
func (*ClientScope) String ¶
func (v *ClientScope) String() string
type ClientScopeAttributes ¶
type ClientScopeAttributes struct { ConsentScreenText *string `json:"consent.screen.text,omitempty"` DisplayOnConsentScreen *string `json:"display.on.consent.screen,omitempty"` IncludeInTokenScope *string `json:"include.in.token.scope,omitempty"` }
ClientScopeAttributes are attributes of client scopes
func (*ClientScopeAttributes) String ¶
func (v *ClientScopeAttributes) String() string
type Component ¶
type Component struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` ProviderID *string `json:"providerId,omitempty"` ProviderType *string `json:"providerType,omitempty"` ParentID *string `json:"parentId,omitempty"` ComponentConfig *map[string][]string `json:"config,omitempty"` SubType *string `json:"subType,omitempty"` }
Component is a component
type CompositesRepresentation ¶
type CompositesRepresentation struct { Client *map[string][]string `json:"client,omitempty"` Realm *[]string `json:"realm,omitempty"` }
CompositesRepresentation represents the composite roles of a role
func (*CompositesRepresentation) String ¶
func (v *CompositesRepresentation) String() string
type CreateAuthenticationExecutionFlowRepresentation ¶
type CreateAuthenticationExecutionFlowRepresentation struct { Alias *string `json:"alias,omitempty"` Description *string `json:"description,omitempty"` Provider *string `json:"provider,omitempty"` Type *string `json:"type,omitempty"` }
CreateAuthenticationExecutionFlowRepresentation contains the provider to be used for a new authentication representation
type CreateAuthenticationExecutionRepresentation ¶
type CreateAuthenticationExecutionRepresentation struct {
Provider *string `json:"provider,omitempty"`
}
CreateAuthenticationExecutionRepresentation contains the provider to be used for a new authentication representation
type CreatePermissionTicketParams ¶
type CreatePermissionTicketParams struct { ResourceID *string `json:"resource_id,omitempty"` ResourceScopes *[]string `json:"resource_scopes,omitempty"` Claims *map[string][]string `json:"claims,omitempty"` }
CreatePermissionTicketParams represents the optional parameters for getting a permission ticket
func (*CreatePermissionTicketParams) String ¶
func (v *CreatePermissionTicketParams) String() string
type CredentialRepresentation ¶
type CredentialRepresentation struct { // Common part CreatedDate *int64 `json:"createdDate,omitempty"` Temporary *bool `json:"temporary,omitempty"` Type *string `json:"type,omitempty"` Value *string `json:"value,omitempty"` // <= v7 Algorithm *string `json:"algorithm,omitempty"` Config *MultiValuedHashMap `json:"config,omitempty"` Counter *int32 `json:"counter,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"` // >= v8 CredentialData *string `json:"credentialData,omitempty"` ID *string `json:"id,omitempty"` Priority *int32 `json:"priority,omitempty"` SecretData *string `json:"secretData,omitempty"` UserLabel *string `json:"userLabel,omitempty"` }
CredentialRepresentation is a representations of the credentials v7: https://www.keycloak.org/docs-api/7.0/rest-api/index.html#_credentialrepresentation v8: https://www.keycloak.org/docs-api/8.0/rest-api/index.html#_credentialrepresentation
func (*CredentialRepresentation) String ¶
func (v *CredentialRepresentation) String() string
type DecisionStrategy ¶
type DecisionStrategy string
DecisionStrategy is an enum type for DecisionStrategy of PolicyRepresentation
func DecisionStrategyP ¶
func DecisionStrategyP(value DecisionStrategy) *DecisionStrategy
DecisionStrategyP returns a pointer for a DecisionStrategy value
type EnforcedString ¶
type EnforcedString string
EnforcedString can be used when the expected value is string but Keycloak in some cases gives you mixed types
func (*EnforcedString) MarshalJSON ¶
func (s *EnforcedString) MarshalJSON() ([]byte, error)
MarshalJSON return json marshal
func (*EnforcedString) UnmarshalJSON ¶
func (s *EnforcedString) UnmarshalJSON(data []byte) error
UnmarshalJSON modify data as string before json unmarshal
type EventRepresentation ¶
type EventRepresentation struct { Time int64 `json:"time,omitempty"` Type *string `json:"type,omitempty"` RealmID *string `json:"realmId,omitempty"` ClientID *string `json:"clientId,omitempty"` UserID *string `json:"userId,omitempty"` SessionID *string `json:"sessionId,omitempty"` IPAddress *string `json:"ipAddress,omitempty"` Details map[string]string `json:"details,omitempty"` }
EventRepresentation is a representation of a Event
type ExecuteActionsEmail ¶
type ExecuteActionsEmail struct { UserID *string `json:"-"` ClientID *string `json:"client_id,omitempty"` Lifespan *int `json:"lifespan,string,omitempty"` RedirectURI *string `json:"redirect_uri,omitempty"` Actions *[]string `json:"-"` }
ExecuteActionsEmail represents parameters for executing action emails
func (*ExecuteActionsEmail) String ¶
func (v *ExecuteActionsEmail) String() string
type FederatedIdentityRepresentation ¶
type FederatedIdentityRepresentation struct { IdentityProvider *string `json:"identityProvider,omitempty"` UserID *string `json:"userId,omitempty"` UserName *string `json:"userName,omitempty"` }
FederatedIdentityRepresentation represents an user federated identity
func (*FederatedIdentityRepresentation) String ¶
func (v *FederatedIdentityRepresentation) String() string
type GetClientsParams ¶
type GetClientsParams struct { ClientID *string `json:"clientId,omitempty"` ViewableOnly *bool `json:"viewableOnly,string,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Search *bool `json:"search,string,omitempty"` SearchableAttributes *string `json:"q,omitempty"` }
GetClientsParams represents the query parameters
func (*GetClientsParams) String ¶
func (v *GetClientsParams) String() string
type GetComponentsParams ¶
type GetComponentsParams struct { Name *string `json:"name,omitempty"` ProviderType *string `json:"provider,omitempty"` ParentID *string `json:"parent,omitempty"` }
GetComponentsParams represents the optional parameters for getting components
func (*GetComponentsParams) String ¶
func (v *GetComponentsParams) String() string
type GetEventsParams ¶
type GetEventsParams struct { Client *string `json:"client,omitempty"` DateFrom *string `json:"dateFrom,omitempty"` DateTo *string `json:"dateTo,omitempty"` First *int32 `json:"first,string,omitempty"` IPAddress *string `json:"ipAddress,omitempty"` Max *int32 `json:"max,string,omitempty"` Type []string `json:"type,omitempty"` UserID *string `json:"user,omitempty"` }
GetEventsParams represents the optional parameters for getting events
type GetGroupsParams ¶
type GetGroupsParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Search *string `json:"search,omitempty"` Full *bool `json:"full,string,omitempty"` BriefRepresentation *bool `json:"briefRepresentation,string,omitempty"` }
GetGroupsParams represents the optional parameters for getting groups
func (GetGroupsParams) MarshalJSON ¶
func (obj GetGroupsParams) MarshalJSON() ([]byte, error)
MarshalJSON is a custom json marshaling function to automatically set the Full and BriefRepresentation properties for backward compatibility
func (*GetGroupsParams) String ¶
func (obj *GetGroupsParams) String() string
type GetPermissionParams ¶
type GetPermissionParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Name *string `json:"name,omitempty"` Resource *string `json:"resource,omitempty"` Scope *string `json:"scope,omitempty"` Type *string `json:"type,omitempty"` }
GetPermissionParams represents the optional parameters for getting permissions
func (*GetPermissionParams) String ¶
func (v *GetPermissionParams) String() string
type GetPolicyParams ¶
type GetPolicyParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Name *string `json:"name,omitempty"` Permission *bool `json:"permission,string,omitempty"` Type *string `json:"type,omitempty"` }
GetPolicyParams represents the optional parameters for getting policies TODO: more policy params?
func (*GetPolicyParams) String ¶
func (v *GetPolicyParams) String() string
type GetResourceParams ¶
type GetResourceParams struct { Deep *bool `json:"deep,string,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Name *string `json:"name,omitempty"` Owner *string `json:"owner,omitempty"` Type *string `json:"type,omitempty"` URI *string `json:"uri,omitempty"` Scope *string `json:"scope,omitempty"` MatchingURI *bool `json:"matchingUri,string,omitempty"` ExactName *bool `json:"exactName,string,omitempty"` }
GetResourceParams represents the optional parameters for getting resources
func (*GetResourceParams) String ¶
func (v *GetResourceParams) String() string
type GetResourcePoliciesParams ¶
type GetResourcePoliciesParams struct { ResourceID *string `json:"resource,omitempty"` Name *string `json:"name,omitempty"` Scope *string `json:"scope,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` }
GetResourcePoliciesParams is a representation of the query params for getting policies
func (*GetResourcePoliciesParams) String ¶
func (v *GetResourcePoliciesParams) String() string
type GetRoleParams ¶
type GetRoleParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Search *string `json:"search,omitempty"` BriefRepresentation *bool `json:"briefRepresentation,string,omitempty"` }
GetRoleParams represents the optional parameters for getting roles
func (*GetRoleParams) String ¶
func (v *GetRoleParams) String() string
type GetScopeParams ¶
type GetScopeParams struct { Deep *bool `json:"deep,string,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Name *string `json:"name,omitempty"` }
GetScopeParams represents the optional parameters for getting scopes
func (*GetScopeParams) String ¶
func (v *GetScopeParams) String() string
type GetUserPermissionParams ¶
type GetUserPermissionParams struct { ScopeID *string `json:"scopeId,omitempty"` ResourceID *string `json:"resourceId,omitempty"` Owner *string `json:"owner,omitempty"` Requester *string `json:"requester,omitempty"` Granted *bool `json:"granted,omitempty"` ReturnNames *string `json:"returnNames,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` }
GetUserPermissionParams represents the optional parameters for getting user permissions
func (*GetUserPermissionParams) String ¶
func (v *GetUserPermissionParams) String() string
type GetUsersByRoleParams ¶
type GetUsersByRoleParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` }
GetUsersByRoleParams represents the optional parameters for getting users by role
func (*GetUsersByRoleParams) String ¶
func (v *GetUsersByRoleParams) String() string
type GetUsersParams ¶
type GetUsersParams struct { BriefRepresentation *bool `json:"briefRepresentation,string,omitempty"` Email *string `json:"email,omitempty"` EmailVerified *bool `json:"emailVerified,string,omitempty"` Enabled *bool `json:"enabled,string,omitempty"` Exact *bool `json:"exact,string,omitempty"` First *int `json:"first,string,omitempty"` FirstName *string `json:"firstName,omitempty"` IDPAlias *string `json:"idpAlias,omitempty"` IDPUserID *string `json:"idpUserId,omitempty"` LastName *string `json:"lastName,omitempty"` Max *int `json:"max,string,omitempty"` Q *string `json:"q,omitempty"` Search *string `json:"search,omitempty"` Username *string `json:"username,omitempty"` }
GetUsersParams represents the optional parameters for getting users
func (*GetUsersParams) String ¶
func (v *GetUsersParams) String() string
type GoCloak ¶
type GoCloak interface { // RestyClient returns a resty client that gocloak uses RestyClient() *resty.Client // Sets the resty Client that gocloak uses SetRestyClient(restyClient *resty.Client) // GetToken returns a token GetToken(ctx context.Context, realm string, options TokenOptions) (*JWT, error) // GetRequestingPartyToken returns a requesting party token with permissions granted by the server GetRequestingPartyToken(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*JWT, error) // GetRequestingPartyPermissions returns a permissions granted by the server to requesting party GetRequestingPartyPermissions(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*[]RequestingPartyPermission, error) // GetRequestingPartyPermissionDecision returns a permission decision granted by the server to requesting party GetRequestingPartyPermissionDecision(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*RequestingPartyPermissionDecision, error) // Login sends a request to the token endpoint using user and client credentials Login(ctx context.Context, clientID, clientSecret, realm, username, password string) (*JWT, error) // LoginOtp performs a login with user credentials and otp token LoginOtp(ctx context.Context, clientID, clientSecret, realm, username, password, totp string) (*JWT, error) // Logout sends a request to the logout endpoint using refresh token Logout(ctx context.Context, clientID, clientSecret, realm, refreshToken string) error // LogoutPublicClient sends a request to the logout endpoint using refresh token LogoutPublicClient(ctx context.Context, idOfClient, realm, accessToken, refreshToken string) error // LogoutAllSessions logs out all sessions of a user given an id LogoutAllSessions(ctx context.Context, accessToken, realm, userID string) error // RevokeConsents revoke consent and offline tokens for particular client from user RevokeUserConsents(ctx context.Context, accessToken, realm, userID, clientID string) error // LogoutUserSessions logs out a single sessions of a user given a session id. // NOTE: this uses bearer token, but this token must belong to a user with proper privileges LogoutUserSession(ctx context.Context, accessToken, realm, session string) error // LoginClient sends a request to the token endpoint using client credentials LoginClient(ctx context.Context, clientID, clientSecret, realm string) (*JWT, error) // LoginClientTokenExchange requests a login on a specified users behalf. Returning a user's tokens. LoginClientTokenExchange(ctx context.Context, clientID, token, clientSecret, realm, targetClient, userID string) (*JWT, error) // LoginClientSignedJWT performs a login with client credentials and signed jwt claims LoginClientSignedJWT(ctx context.Context, idOfClient, realm string, key interface{}, signedMethod jwt.SigningMethod, expiresAt *jwt.NumericDate) (*JWT, error) // LoginAdmin login as admin LoginAdmin(ctx context.Context, username, password, realm string) (*JWT, error) // RefreshToken used to refresh the token RefreshToken(ctx context.Context, refreshToken, clientID, clientSecret, realm string) (*JWT, error) // DecodeAccessToken decodes the accessToken DecodeAccessToken(ctx context.Context, accessToken, realm string) (*jwt.Token, *jwt.MapClaims, error) // DecodeAccessTokenCustomClaims decodes the accessToken and fills the given claims DecodeAccessTokenCustomClaims(ctx context.Context, accessToken, realm string, claims jwt.Claims) (*jwt.Token, error) // RetrospectToken calls the openid-connect introspect endpoint RetrospectToken(ctx context.Context, accessToken, clientID, clientSecret, realm string) (*RetrospecTokenResult, error) // GetIssuer calls the issuer endpoint for the given realm GetIssuer(ctx context.Context, realm string) (*IssuerResponse, error) // GetCerts gets the public keys for the given realm GetCerts(ctx context.Context, realm string) (*CertResponse, error) // GetServerInfo returns the server info GetServerInfo(ctx context.Context, accessToken string) (*ServerInfoRepesentation, error) // GetUserInfo gets the user info for the given realm GetUserInfo(ctx context.Context, accessToken, realm string) (*UserInfo, error) // GetRawUserInfo calls the UserInfo endpoint and returns a raw json object GetRawUserInfo(ctx context.Context, accessToken, realm string) (map[string]interface{}, error) // ExecuteActionsEmail executes an actions email ExecuteActionsEmail(ctx context.Context, token, realm string, params ExecuteActionsEmail) error // CreateGroup creates a new group CreateGroup(ctx context.Context, accessToken, realm string, group Group) (string, error) // CreateChildGroup creates a new child group CreateChildGroup(ctx context.Context, token, realm, groupID string, group Group) (string, error) // CreateClient creates a new client CreateClient(ctx context.Context, accessToken, realm string, newClient Client) (string, error) // CreateClientScope creates a new clientScope CreateClientScope(ctx context.Context, accessToken, realm string, scope ClientScope) (string, error) // CreateClientScopeProtocolMapper creates a new protocolMapper under the given client scope CreateClientScopeProtocolMapper(ctx context.Context, accessToken, realm, scopeID string, protocolMapper ProtocolMappers) (string, error) // CreateComponent creates a new component CreateComponent(ctx context.Context, accessToken, realm string, component Component) (string, error) // CreateClientScopeMappingsRealmRoles creates realm-level roles to the client’s scope CreateClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error // CreateClientScopeMappingsClientRoles creates client-level roles from the client’s scope CreateClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error // CreateClientScopesScopeMappingsRealmRoles creates realm-level roles to the client-scope CreateClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClientScope string, roles []Role) error // CreateClientScopesScopeMappingsClientRoles creates client-level roles to the client-scope CreateClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string, roles []Role) error // CreateClientRepresentation creates a new client representation CreateClientRepresentation(ctx context.Context, realm string) (*Client, error) // UpdateGroup updates the given group UpdateGroup(ctx context.Context, accessToken, realm string, updatedGroup Group) error // UpdateRole updates the given role UpdateRole(ctx context.Context, accessToken, realm, idOfClient string, role Role) error // UpdateClient updates the given client UpdateClient(ctx context.Context, accessToken, realm string, updatedClient Client) error // UpdateClientScope updates the given clientScope UpdateClientScope(ctx context.Context, accessToken, realm string, scope ClientScope) error // UpdateClientScopeProtocolMapper updates the given protocol mapper for a client scope UpdateClientScopeProtocolMapper(ctx context.Context, accessToken, realm, scopeID string, protocolMapper ProtocolMappers) error // UpdateClientRepresentation updates the given client representation UpdateClientRepresentation(ctx context.Context, accessToken, realm string, updatedClient Client) (*Client, error) // DeleteComponent deletes the given component DeleteComponent(ctx context.Context, accessToken, realm, componentID string) error // DeleteGroup deletes the given group DeleteGroup(ctx context.Context, accessToken, realm, groupID string) error // DeleteClient deletes the given client DeleteClient(ctx context.Context, accessToken, realm, idOfClient string) error // DeleteClientScope DeleteClientScope(ctx context.Context, accessToken, realm, scopeID string) error // DeleteClientScopeProtocolMapper deletes the given protocol mapper from the client scope DeleteClientScopeProtocolMapper(ctx context.Context, accessToken, realm, scopeID, protocolMapperID string) error // DeleteClientScopeMappingsRealmRoles deletes realm-level roles from the client’s scope DeleteClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error // DeleteClientScopeMappingsClientRoles deletes client-level roles from the client’s scope DeleteClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error // DeleteClientScopesScopeMappingsRealmRoles deletes realm-level roles from the client-scope DeleteClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClientScope string, roles []Role) error // DeleteClientScopesScopeMappingsClientRoles deletes client-level roles from the client-scope DeleteClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, ifOfClient string, roles []Role) error // DeleteClientRepresentation deletes a given client representation DeleteClientRepresentation(ctx context.Context, accessToken, realm, clientID string) error // GetClient returns a client GetClient(ctx context.Context, accessToken, realm, idOfClient string) (*Client, error) // GetClientsDefaultScopes returns a list of the client's default scopes GetClientsDefaultScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error) // AddDefaultScopeToClient adds a client scope to the list of client's default scopes AddDefaultScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error // RemoveDefaultScopeFromClient removes a client scope from the list of client's default scopes RemoveDefaultScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error // GetClientsOptionalScopes returns a list of the client's optional scopes GetClientsOptionalScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error) // AddOptionalScopeToClient adds a client scope to the list of client's optional scopes AddOptionalScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error // RemoveOptionalScopeFromClient deletes a client scope from the list of client's optional scopes RemoveOptionalScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error // GetDefaultOptionalClientScopes returns a list of default realm optional scopes GetDefaultOptionalClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error) // GetDefaultDefaultClientScopes returns a list of default realm default scopes GetDefaultDefaultClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error) // GetClientScope returns a clientscope GetClientScope(ctx context.Context, token, realm, scopeID string) (*ClientScope, error) // GetClientScopes returns all client scopes GetClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error) // GetClientScopeProtocolMappers returns all protocol mappers of a client scope GetClientScopeProtocolMappers(ctx context.Context, token, realm, scopeID string) ([]*ProtocolMappers, error) // GetClientScopeProtocolMapper returns a protocol mapper of a client scope GetClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID, protocolMapperID string) (*ProtocolMappers, error) // GetClientScopeMappings returns all scope mappings for the client GetClientScopeMappings(ctx context.Context, token, realm, idOfClient string) (*MappingsRepresentation, error) // GetClientScopeMappingsRealmRoles returns realm-level roles associated with the client’s scope GetClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string) ([]*Role, error) // GetClientScopeMappingsRealmRolesAvailable returns realm-level roles that are available to attach to this client’s scope GetClientScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClient string) ([]*Role, error) // GetClientScopesScopeMappingsRealmRolesAvailable returns realm-level roles that are available to attach to this client-scope GetClientScopesScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClientScope string) ([]*Role, error) // GetClientScopesScopeMappingsClientRolesAvailable returns client-level roles that are available to attach to this client-scope GetClientScopesScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error) // GetClientScopeMappingsClientRoles returns roles associated with a client’s scope GetClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error) // GetClientScopesScopeMappingsRealmRoles returns roles associated with a client-scope GetClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClientScope string) ([]*Role, error) // GetClientScopesScopeMappingsClientRoles returns client roles associated with a client-scope GetClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error) // GetClientScopeMappingsClientRolesAvailable returns available roles associated with a client’s scope GetClientScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error) // GetClientSecret returns a client's secret GetClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error) // GetClientServiceAccount retrieves the service account "user" for a client if enabled GetClientServiceAccount(ctx context.Context, token, realm, idOfClient string) (*User, error) // RegenerateClientSecret creates a new client secret returning the updated CredentialRepresentation RegenerateClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error) // GetKeyStoreConfig gets the keyStoreConfig GetKeyStoreConfig(ctx context.Context, accessToken, realm string) (*KeyStoreConfig, error) // GetComponents gets components of the given realm GetComponents(ctx context.Context, accessToken, realm string) ([]*Component, error) // GetComponentsWithParams get all components in realm with query params GetComponentsWithParams(ctx context.Context, token, realm string, params GetComponentsParams) ([]*Component, error) // GetComponent get exactly one component by ID GetComponent(ctx context.Context, token, realm string, componentID string) (*Component, error) // UpdateComponent updates the given component UpdateComponent(ctx context.Context, token, realm string, component Component) error // GetDefaultGroups returns a list of default groups GetDefaultGroups(ctx context.Context, accessToken, realm string) ([]*Group, error) // AddDefaultGroup adds group to the list of default groups AddDefaultGroup(ctx context.Context, accessToken, realm, groupID string) error // RemoveDefaultGroup removes group from the list of default groups RemoveDefaultGroup(ctx context.Context, accessToken, realm, groupID string) error // GetGroups gets all groups of the given realm GetGroups(ctx context.Context, accessToken, realm string, params GetGroupsParams) ([]*Group, error) // GetGroupsByRole gets groups with specified roles assigned of given realm GetGroupsByRole(ctx context.Context, accessToken, realm string, roleName string) ([]*Group, error) // GetGroupsCount gets groups count of the given realm GetGroupsCount(ctx context.Context, token, realm string, params GetGroupsParams) (int, error) // GetGroup gets the given group GetGroup(ctx context.Context, accessToken, realm, groupID string) (*Group, error) // GetGroupMembers get a list of users of group with id in realm GetGroupMembers(ctx context.Context, accessToken, realm, groupID string, params GetGroupsParams) ([]*User, error) // GetRoleMappingByGroupID gets the rolemapping for the given group id GetRoleMappingByGroupID(ctx context.Context, accessToken, realm, groupID string) (*MappingsRepresentation, error) // GetRoleMappingByUserID gets the rolemapping for the given user id GetRoleMappingByUserID(ctx context.Context, accessToken, realm, userID string) (*MappingsRepresentation, error) // GetClients gets the clients in the realm GetClients(ctx context.Context, accessToken, realm string, params GetClientsParams) ([]*Client, error) // GetClientOfflineSessions returns offline sessions associated with the client GetClientOfflineSessions(ctx context.Context, token, realm, idOfClient string) ([]*UserSessionRepresentation, error) // GetClientUserSessions returns user sessions associated with the client GetClientUserSessions(ctx context.Context, token, realm, idOfClient string) ([]*UserSessionRepresentation, error) // CreateClientProtocolMapper creates a protocol mapper in client scope CreateClientProtocolMapper(ctx context.Context, token, realm, idOfClient string, mapper ProtocolMapperRepresentation) (string, error) // CreateClientProtocolMapper updates a protocol mapper in client scope UpdateClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string, mapper ProtocolMapperRepresentation) error // DeleteClientProtocolMapper deletes a protocol mapper in client scope DeleteClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string) error // GetClientRepresentation return a client representation GetClientRepresentation(ctx context.Context, accessToken, realm, clientID string) (*Client, error) // GetAdapterConfiguration returns a adapter configuration GetAdapterConfiguration(ctx context.Context, accessToken, realm, clientID string) (*AdapterConfiguration, error) // CreateRealmRole creates a role in a realm CreateRealmRole(ctx context.Context, token, realm string, role Role) (string, error) // GetRealmRole returns a role from a realm by role's name GetRealmRole(ctx context.Context, token, realm, roleName string) (*Role, error) // GetRealmRoleByID returns a role from a realm by role's ID GetRealmRoleByID(ctx context.Context, token, realm, roleID string) (*Role, error) // GetRealmRoles get all roles of the given realm. It's an alias for the GetRoles function GetRealmRoles(ctx context.Context, accessToken, realm string, params GetRoleParams) ([]*Role, error) // GetRealmRolesByUserID returns all roles assigned to the given user GetRealmRolesByUserID(ctx context.Context, accessToken, realm, userID string) ([]*Role, error) // GetRealmRolesByGroupID returns all roles assigned to the given group GetRealmRolesByGroupID(ctx context.Context, accessToken, realm, groupID string) ([]*Role, error) // UpdateRealmRole updates a role in a realm UpdateRealmRole(ctx context.Context, token, realm, roleName string, role Role) error // UpdateRealmRoleByID updates a role in a realm by role's ID UpdateRealmRoleByID(ctx context.Context, token, realm, roleID string, role Role) error // DeleteRealmRole deletes a role in a realm by role's name DeleteRealmRole(ctx context.Context, token, realm, roleName string) error // AddRealmRoleToUser adds realm-level role mappings AddRealmRoleToUser(ctx context.Context, token, realm, userID string, roles []Role) error // DeleteRealmRoleFromUser deletes realm-level role mappings DeleteRealmRoleFromUser(ctx context.Context, token, realm, userID string, roles []Role) error // AddRealmRoleToGroup adds realm-level role mappings AddRealmRoleToGroup(ctx context.Context, token, realm, groupID string, roles []Role) error // DeleteRealmRoleFromGroup deletes realm-level role mappings DeleteRealmRoleFromGroup(ctx context.Context, token, realm, groupID string, roles []Role) error // AddRealmRoleComposite adds roles as composite AddRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error // AddRealmRoleComposite adds roles as composite DeleteRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error // GetCompositeRealmRoles returns all realm composite roles associated with the given realm role GetCompositeRealmRoles(ctx context.Context, token, realm, roleName string) ([]*Role, error) // GetCompositeRealmRolesByRoleID returns all realm composite roles associated with the given client role GetCompositeRealmRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error) // GetCompositeRealmRolesByUserID returns all realm roles and composite roles assigned to the given user GetCompositeRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error) // GetCompositeRealmRolesByGroupID returns all realm roles and composite roles assigned to the given group GetCompositeRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error) // GetAvailableRealmRolesByUserID returns all available realm roles to the given user GetAvailableRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error) // GetAvailableRealmRolesByGroupID returns all available realm roles to the given group GetAvailableRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error) // AddClientRoleToUser adds a client role to the user AddClientRoleToUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error // AddClientRoleToGroup adds a client role to the group AddClientRoleToGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error // CreateClientRole creates a new role for a client CreateClientRole(ctx context.Context, accessToken, realm, idOfClient string, role Role) (string, error) // DeleteClientRole deletes the given role DeleteClientRole(ctx context.Context, accessToken, realm, idOfClient, roleName string) error // DeleteClientRoleFromUser removes a client role from from the user DeleteClientRoleFromUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error // DeleteClientRoleFromGroup removes a client role from from the group DeleteClientRoleFromGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error // GetClientRoles gets roles for the given client GetClientRoles(ctx context.Context, accessToken, realm, idOfClient string, params GetRoleParams) ([]*Role, error) // GetClientRoleById gets role for the given client using role id GetClientRoleByID(ctx context.Context, accessToken, realm, roleID string) (*Role, error) // GetRealmRolesByUserID returns all client roles assigned to the given user GetClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error) // GetClientRolesByGroupID returns all client roles assigned to the given group GetClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error) // GetCompositeClientRolesByRoleID returns all client composite roles associated with the given client role GetCompositeClientRolesByRoleID(ctx context.Context, token, realm, idOfClient, roleID string) ([]*Role, error) // GetCompositeClientRolesByUserID returns all client roles and composite roles assigned to the given user GetCompositeClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error) // GetCompositeClientRolesByGroupID returns all client roles and composite roles assigned to the given group GetCompositeClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error) // GetAvailableClientRolesByUserID returns all available client roles to the given user GetAvailableClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error) // GetAvailableClientRolesByGroupID returns all available client roles to the given group GetAvailableClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error) // GetClientRole get a role for the given client in a realm by role name GetClientRole(ctx context.Context, token, realm, idOfClient, roleName string) (*Role, error) // AddClientRoleComposite adds roles as composite AddClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error // DeleteClientRoleComposite deletes composites from a role DeleteClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error // GetRealm returns top-level representation of the realm GetRealm(ctx context.Context, token, realm string) (*RealmRepresentation, error) // GetRealms returns top-level representation of all realms GetRealms(ctx context.Context, token string) ([]*RealmRepresentation, error) // CreateRealm creates a realm CreateRealm(ctx context.Context, token string, realm RealmRepresentation) (string, error) // UpdateRealm updates a given realm UpdateRealm(ctx context.Context, token string, realm RealmRepresentation) error // DeleteRealm removes a realm DeleteRealm(ctx context.Context, token, realm string) error // ClearRealmCache clears realm cache ClearRealmCache(ctx context.Context, token, realm string) error // ClearUserCache clears realm cache ClearUserCache(ctx context.Context, token, realm string) error // ClearKeysCache clears realm cache ClearKeysCache(ctx context.Context, token, realm string) error // GetAuthenticationFlows get all authentication flows from a realm GetAuthenticationFlows(ctx context.Context, token, realm string) ([]*AuthenticationFlowRepresentation, error) // Create a new Authentication flow in a realm CreateAuthenticationFlow(ctx context.Context, token, realm string, flow AuthenticationFlowRepresentation) error // DeleteAuthenticationFlow deletes a flow in a realm with the given ID DeleteAuthenticationFlow(ctx context.Context, token, realm, flowID string) error // GetAuthenticationExecutions retrieves all executions of a given flow GetAuthenticationExecutions(ctx context.Context, token, realm, flow string) ([]*ModifyAuthenticationExecutionRepresentation, error) // CreateAuthenticationExecution creates a new execution for the given flow name in the given realm CreateAuthenticationExecution(ctx context.Context, token, realm, flow string, execution CreateAuthenticationExecutionRepresentation) error // UpdateAuthenticationExecution updates an authentication execution for the given flow in the given realm UpdateAuthenticationExecution(ctx context.Context, token, realm, flow string, execution ModifyAuthenticationExecutionRepresentation) error // DeleteAuthenticationExecution delete a single execution with the given ID DeleteAuthenticationExecution(ctx context.Context, token, realm, executionID string) error // CreateAuthenticationExecutionFlow creates a new flow execution for the given flow name in the given realm CreateAuthenticationExecutionFlow(ctx context.Context, token, realm, flow string, execution CreateAuthenticationExecutionFlowRepresentation) error // *** Users *** // CreateUser creates a new user CreateUser(ctx context.Context, token, realm string, user User) (string, error) // DeleteUser deletes the given user DeleteUser(ctx context.Context, accessToken, realm, userID string) error // GetUserByID gets the user with the given id GetUserByID(ctx context.Context, accessToken, realm, userID string) (*User, error) // GetUser count returns the userCount of the given realm GetUserCount(ctx context.Context, accessToken, realm string, params GetUsersParams) (int, error) // GetUsers gets all users of the given realm GetUsers(ctx context.Context, accessToken, realm string, params GetUsersParams) ([]*User, error) // GetUserGroups gets the groups of the given user GetUserGroups(ctx context.Context, accessToken, realm, userID string, params GetGroupsParams) ([]*Group, error) // GetUsersByRoleName returns all users have a given role GetUsersByRoleName(ctx context.Context, token, realm, roleName string) ([]*User, error) // GetUsersByClientRoleName returns all users have a given client role GetUsersByClientRoleName(ctx context.Context, token, realm, idOfClient, roleName string, params GetUsersByRoleParams) ([]*User, error) // SetPassword sets a new password for the user with the given id. Needs elevated privileges SetPassword(ctx context.Context, token, userID, realm, password string, temporary bool) error // UpdateUser updates the given user UpdateUser(ctx context.Context, accessToken, realm string, user User) error // AddUserToGroup puts given user to given group AddUserToGroup(ctx context.Context, token, realm, userID, groupID string) error // DeleteUserFromGroup deletes given user from given group DeleteUserFromGroup(ctx context.Context, token, realm, userID, groupID string) error // GetUserSessions returns user sessions associated with the user GetUserSessions(ctx context.Context, token, realm, userID string) ([]*UserSessionRepresentation, error) // GetUserOfflineSessionsForClient returns offline sessions associated with the user and client GetUserOfflineSessionsForClient(ctx context.Context, token, realm, userID, idOfClient string) ([]*UserSessionRepresentation, error) // GetUserFederatedIdentities gets all user federated identities GetUserFederatedIdentities(ctx context.Context, token, realm, userID string) ([]*FederatedIdentityRepresentation, error) // CreateUserFederatedIdentity creates an user federated identity CreateUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string, federatedIdentityRep FederatedIdentityRepresentation) error // DeleteUserFederatedIdentity deletes an user federated identity DeleteUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string) error // *** Identity Provider ** // CreateIdentityProvider creates an identity provider in a realm CreateIdentityProvider(ctx context.Context, token, realm string, providerRep IdentityProviderRepresentation) (string, error) // GetIdentityProviders gets identity providers in a realm GetIdentityProviders(ctx context.Context, token, realm string) ([]*IdentityProviderRepresentation, error) // GetIdentityProvider gets the identity provider in a realm GetIdentityProvider(ctx context.Context, token, realm, alias string) (*IdentityProviderRepresentation, error) // UpdateIdentityProvider updates the identity provider in a realm UpdateIdentityProvider(ctx context.Context, token, realm, alias string, providerRep IdentityProviderRepresentation) error // DeleteIdentityProvider deletes the identity provider in a realm DeleteIdentityProvider(ctx context.Context, token, realm, alias string) error // ImportIdentityProviderConfig parses and returns the identity provider config at a given URL ImportIdentityProviderConfig(ctx context.Context, token, realm, fromURL, providerID string) (map[string]string, error) // ImportIdentityProviderConfigFromFile parses and returns the identity provider config from a given file ImportIdentityProviderConfigFromFile(ctx context.Context, token, realm, providerID, fileName string, fileBody io.Reader) (map[string]string, error) // ExportIDPPublicBrokerConfig exports the broker config for a given alias ExportIDPPublicBrokerConfig(ctx context.Context, token, realm, alias string) (*string, error) // CreateIdentityProviderMapper creates an instance of an identity provider mapper associated with the given alias CreateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) (string, error) // GetIdentityProviderMapperByID gets the mapper of an identity provider GetIdentityProviderMapperByID(ctx context.Context, token, realm, alias, mapperID string) (*IdentityProviderMapper, error) // UpdateIdentityProviderMapper updates mapper of an identity provider UpdateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) error // DeleteIdentityProviderMapper deletes an instance of an identity provider mapper associated with the given alias and mapper ID DeleteIdentityProviderMapper(ctx context.Context, token, realm, alias, mapperID string) error // GetIdentityProviderMappers returns list of mappers associated with an identity provider GetIdentityProviderMappers(ctx context.Context, token, realm, alias string) ([]*IdentityProviderMapper, error) // *** Protection API *** // GetResource returns a client's resource with the given id, using access token from client GetResourceClient(ctx context.Context, token, realm, resourceID string) (*ResourceRepresentation, error) // GetResources a returns resources associated with the client, using access token from client GetResourcesClient(ctx context.Context, token, realm string, params GetResourceParams) ([]*ResourceRepresentation, error) // CreateResource creates a resource associated with the client, using access token from client CreateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) (*ResourceRepresentation, error) // UpdateResource updates a resource associated with the client, using access token from client UpdateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) error // DeleteResource deletes a resource associated with the client, using access token from client DeleteResourceClient(ctx context.Context, token, realm, resourceID string) error // GetResource returns a client's resource with the given id, using access token from admin GetResource(ctx context.Context, token, realm, idOfClient, resourceID string) (*ResourceRepresentation, error) // GetResources a returns resources associated with the client, using access token from admin GetResources(ctx context.Context, token, realm, idOfClient string, params GetResourceParams) ([]*ResourceRepresentation, error) // CreateResource creates a resource associated with the client, using access token from admin CreateResource(ctx context.Context, token, realm, idOfClient string, resource ResourceRepresentation) (*ResourceRepresentation, error) // UpdateResource updates a resource associated with the client, using access token from admin UpdateResource(ctx context.Context, token, realm, idOfClient string, resource ResourceRepresentation) error // DeleteResource deletes a resource associated with the client, using access token from admin DeleteResource(ctx context.Context, token, realm, idOfClient, resourceID string) error // GetScope returns a client's scope with the given id, using access token from admin GetScope(ctx context.Context, token, realm, idOfClient, scopeID string) (*ScopeRepresentation, error) // GetScopes returns scopes associated with the client, using access token from admin GetScopes(ctx context.Context, token, realm, idOfClient string, params GetScopeParams) ([]*ScopeRepresentation, error) // CreateScope creates a scope associated with the client, using access token from admin CreateScope(ctx context.Context, token, realm, idOfClient string, scope ScopeRepresentation) (*ScopeRepresentation, error) // UpdateScope updates a scope associated with the client, using access token from admin UpdateScope(ctx context.Context, token, realm, idOfClient string, resource ScopeRepresentation) error // DeleteScope deletes a scope associated with the client, using access token from admin DeleteScope(ctx context.Context, token, realm, idOfClient, scopeID string) error // CreatePermissionTicket creates a permission ticket for a resource, using access token from client (typically a resource server) CreatePermissionTicket(ctx context.Context, token, realm string, permissions []CreatePermissionTicketParams) (*PermissionTicketResponseRepresentation, error) // GrantUserPermission lets resource owner grant permission for specific resource ID to specific user ID GrantUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error) // GrantPermission lets resource owner update permission for specific resource ID to specific user ID UpdateUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error) // GetUserPermission gets granted permissions according query parameters GetUserPermissions(ctx context.Context, token, realm string, params GetUserPermissionParams) ([]*PermissionGrantResponseRepresentation, error) // DeleteUserPermission lets resource owner delete permission for specific resource ID to specific user ID DeleteUserPermission(ctx context.Context, token, realm, ticketID string) error // GetPermission returns a client's permission with the given id GetPermission(ctx context.Context, token, realm, idOfClient, permissionID string) (*PermissionRepresentation, error) // GetPermissions returns permissions associated with the client GetPermissions(ctx context.Context, token, realm, idOfClient string, params GetPermissionParams) ([]*PermissionRepresentation, error) // CreatePermission creates a permission associated with the client CreatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) (*PermissionRepresentation, error) // UpdatePermission updates a permission associated with the client UpdatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) error // DeletePermission deletes a permission associated with the client DeletePermission(ctx context.Context, token, realm, idOfClient, permissionID string) error // GetDependentPermissions returns client's permissions dependent on the policy with given ID GetDependentPermissions(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PermissionRepresentation, error) GetPermissionResources(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionResource, error) GetPermissionScopes(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionScope, error) // GetPolicy returns a client's policy with the given id, using access token from admin GetPolicy(ctx context.Context, token, realm, idOfClient, policyID string) (*PolicyRepresentation, error) // GetPolicies returns policies associated with the client, using access token from admin GetPolicies(ctx context.Context, token, realm, idOfClient string, params GetPolicyParams) ([]*PolicyRepresentation, error) // CreatePolicy creates a policy associated with the client, using access token from admin CreatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) (*PolicyRepresentation, error) // UpdatePolicy updates a policy associated with the client, using access token from admin UpdatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) error // DeletePolicy deletes a policy associated with the client, using access token from admin DeletePolicy(ctx context.Context, token, realm, idOfClient, policyID string) error // GetPolicyAssociatedPolicies returns a client's policy associated policies with the given policy id, using access token from admin GetAuthorizationPolicyAssociatedPolicies(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyRepresentation, error) // GetPolicyResources returns a client's resources of specific policy with the given policy id, using access token from admin GetAuthorizationPolicyResources(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyResourceRepresentation, error) // GetPolicyScopes returns a client's scopes of specific policy with the given policy id, using access token from admin GetAuthorizationPolicyScopes(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyScopeRepresentation, error) // GetResourcePolicy updates a permission for a specifc resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange GetResourcePolicy(ctx context.Context, token, realm, permissionID string) (*ResourcePolicyRepresentation, error) // GetResources returns resources associated with the client, using token obtained by Resource Owner Password Credentials Grant or Token exchange GetResourcePolicies(ctx context.Context, token, realm string, params GetResourcePoliciesParams) ([]*ResourcePolicyRepresentation, error) // GetResources returns all resources associated with the client, using token obtained by Resource Owner Password Credentials Grant or Token exchange CreateResourcePolicy(ctx context.Context, token, realm, resourceID string, policy ResourcePolicyRepresentation) (*ResourcePolicyRepresentation, error) // UpdateResourcePolicy updates a permission for a specifc resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange UpdateResourcePolicy(ctx context.Context, token, realm, permissionID string, policy ResourcePolicyRepresentation) error // DeleteResourcePolicy deletes a permission for a specifc resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange DeleteResourcePolicy(ctx context.Context, token, realm, permissionID string) error UserStorageAction(ctx context.Context, token, realm string, id string, action string, params map[string]string) error // GetCredentialRegistrators returns credentials registrators GetCredentialRegistrators(ctx context.Context, token, realm string) ([]string, error) // GetConfiguredUserStorageCredentialTypes returns credential types, which are provided by the user storage where user is stored GetConfiguredUserStorageCredentialTypes(ctx context.Context, token, realm, userID string) ([]string, error) // GetCredentials returns credentials available for a given user GetCredentials(ctx context.Context, token, realm, UserID string) ([]*CredentialRepresentation, error) // DeleteCredentials deletes the given credential for a given user DeleteCredentials(ctx context.Context, token, realm, UserID, CredentialID string) error // UpdateCredentialUserLabel updates label for the given credential for the given user UpdateCredentialUserLabel(ctx context.Context, token, realm, userID, credentialID, userLabel string) error // DisableAllCredentialsByType disables all credentials for a user of a specific type DisableAllCredentialsByType(ctx context.Context, token, realm, userID string, types []string) error // MoveCredentialBehind move a credential to a position behind another credential MoveCredentialBehind(ctx context.Context, token, realm, userID, credentialID, newPreviousCredentialID string) error // MoveCredentialToFirst move a credential to a first position in the credentials list of the user MoveCredentialToFirst(ctx context.Context, token, realm, userID, credentialID string) error // GetEvents returns events GetEvents(ctx context.Context, token string, realm string, params GetEventsParams) ([]*EventRepresentation, error) // UpdateRequiredAction updates a required action for a given realm UpdateRequiredAction(ctx context.Context, token string, realm string, requiredAction RequiredActionProviderRepresentation) error }
GoCloak holds all methods a client should fulfill
type Group ¶
type Group struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` SubGroups *[]Group `json:"subGroups,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` Access *map[string]bool `json:"access,omitempty"` ClientRoles *map[string][]string `json:"clientRoles,omitempty"` RealmRoles *[]string `json:"realmRoles,omitempty"` }
Group is a Group
type GroupDefinition ¶
type GroupDefinition struct { ID *string `json:"id,omitempty"` Path *string `json:"path,omitempty"` ExtendChildren *bool `json:"extendChildren,omitempty"` }
GroupDefinition represents a group in a GroupPolicyRepresentation
func (*GroupDefinition) String ¶
func (v *GroupDefinition) String() string
type GroupPolicyRepresentation ¶
type GroupPolicyRepresentation struct { Groups *[]GroupDefinition `json:"groups,omitempty"` GroupsClaim *string `json:"groupsClaim,omitempty"` }
GroupPolicyRepresentation represents group based policies
func (*GroupPolicyRepresentation) String ¶
func (v *GroupPolicyRepresentation) String() string
type GroupsCount ¶
type GroupsCount struct {
Count int `json:"count,omitempty"`
}
GroupsCount represents the groups count response from keycloak
func (*GroupsCount) String ¶
func (v *GroupsCount) String() string
type HTTPErrorResponse ¶
type HTTPErrorResponse struct { Error string `json:"error,omitempty"` Message string `json:"errorMessage,omitempty"` Description string `json:"error_description,omitempty"` }
HTTPErrorResponse is a model of an error response
func (HTTPErrorResponse) NotEmpty ¶
func (e HTTPErrorResponse) NotEmpty() bool
NotEmpty validates that error is not emptyp
func (HTTPErrorResponse) String ¶
func (e HTTPErrorResponse) String() string
String returns a string representation of an error
type IdentityProviderMapper ¶
type IdentityProviderMapper struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` IdentityProviderMapper *string `json:"identityProviderMapper,omitempty"` IdentityProviderAlias *string `json:"identityProviderAlias,omitempty"` Config *map[string]string `json:"config"` }
IdentityProviderMapper represents the body of a call to add a mapper to an identity provider
type IdentityProviderRepresentation ¶
type IdentityProviderRepresentation struct { AddReadTokenRoleOnCreate *bool `json:"addReadTokenRoleOnCreate,omitempty"` Alias *string `json:"alias,omitempty"` Config *map[string]string `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"` }
IdentityProviderRepresentation represents an identity provider
func (*IdentityProviderRepresentation) String ¶
func (v *IdentityProviderRepresentation) String() string
type IssuerResponse ¶
type IssuerResponse struct { Realm *string `json:"realm,omitempty"` PublicKey *string `json:"public_key,omitempty"` TokenService *string `json:"token-service,omitempty"` AccountService *string `json:"account-service,omitempty"` TokensNotBefore *int `json:"tokens-not-before,omitempty"` }
IssuerResponse is returned by the issuer endpoint
func (*IssuerResponse) String ¶
func (v *IssuerResponse) String() string
type JSPolicyRepresentation ¶
type JSPolicyRepresentation struct {
Code *string `json:"code,omitempty"`
}
JSPolicyRepresentation represents js based policies
func (*JSPolicyRepresentation) String ¶
func (v *JSPolicyRepresentation) String() string
type JWT ¶
type JWT struct { AccessToken string `json:"access_token"` IDToken string `json:"id_token"` ExpiresIn int `json:"expires_in"` RefreshExpiresIn int `json:"refresh_expires_in"` RefreshToken string `json:"refresh_token"` TokenType string `json:"token_type"` NotBeforePolicy int `json:"not-before-policy"` SessionState string `json:"session_state"` Scope string `json:"scope"` }
JWT is a JWT
type Key ¶
type Key struct { ProviderID *string `json:"providerId,omitempty"` ProviderPriority *int `json:"providerPriority,omitempty"` Kid *string `json:"kid,omitempty"` Status *string `json:"status,omitempty"` Type *string `json:"type,omitempty"` Algorithm *string `json:"algorithm,omitempty"` PublicKey *string `json:"publicKey,omitempty"` Certificate *string `json:"certificate,omitempty"` }
Key is a key
type KeyStoreConfig ¶
type KeyStoreConfig struct { ActiveKeys *ActiveKeys `json:"active,omitempty"` Key *[]Key `json:"keys,omitempty"` }
KeyStoreConfig holds the keyStoreConfig
func (*KeyStoreConfig) String ¶
func (v *KeyStoreConfig) String() string
type MappingsRepresentation ¶
type MappingsRepresentation struct { ClientMappings map[string]*ClientMappingsRepresentation `json:"clientMappings,omitempty"` RealmMappings *[]Role `json:"realmMappings,omitempty"` }
MappingsRepresentation is a representation of role mappings
func (*MappingsRepresentation) String ¶
func (v *MappingsRepresentation) String() string
type MemoryInfoRepresentation ¶
type MemoryInfoRepresentation struct { Free *int `json:"free,omitempty"` FreeFormated *string `json:"freeFormated,omitempty"` FreePercentage *int `json:"freePercentage,omitempty"` Total *int `json:"total,omitempty"` TotalFormated *string `json:"totalFormated,omitempty"` Used *int `json:"used,omitempty"` UsedFormated *string `json:"usedFormated,omitempty"` }
MemoryInfoRepresentation represents a memory info
func (*MemoryInfoRepresentation) String ¶
func (v *MemoryInfoRepresentation) String() string
type ModifyAuthenticationExecutionRepresentation ¶
type ModifyAuthenticationExecutionRepresentation struct { ID *string `json:"id,omitempty"` ProviderID *string `json:"providerId,omitempty"` AuthenticationConfig *string `json:"authenticationConfig,omitempty"` AuthenticationFlow *bool `json:"authenticationFlow,omitempty"` Requirement *string `json:"requirement,omitempty"` FlowID *string `json:"flowId"` DisplayName *string `json:"displayName,omitempty"` Alias *string `json:"alias,omitempty"` RequirementChoices *[]string `json:"requirementChoices,omitempty"` Configurable *bool `json:"configurable,omitempty"` Level *int `json:"level,omitempty"` Index *int `json:"index,omitempty"` Description *string `json:"description"` }
ModifyAuthenticationExecutionRepresentation is the payload for updating an execution representation
type MultiValuedHashMap ¶
type MultiValuedHashMap struct { Empty *bool `json:"empty,omitempty"` LoadFactor *float32 `json:"loadFactor,omitempty"` Threshold *int32 `json:"threshold,omitempty"` }
MultiValuedHashMap represents something
func (*MultiValuedHashMap) String ¶
func (v *MultiValuedHashMap) String() string
type PasswordPolicy ¶
type PasswordPolicy struct { ConfigType string `json:"configType,omitempty"` DefaultValue string `json:"defaultValue,omitempty"` DisplayName string `json:"displayName,omitempty"` ID string `json:"id,omitempty"` MultipleSupported bool `json:"multipleSupported,omitempty"` }
PasswordPolicy represents the configuration for a supported password policy
type PermissionGrantParams ¶
type PermissionGrantParams struct { ResourceID *string `json:"resource,omitempty"` RequesterID *string `json:"requester,omitempty"` Granted *bool `json:"granted,omitempty"` ScopeName *string `json:"scopeName,omitempty"` TicketID *string `json:"id,omitempty"` }
PermissionGrantParams represents the permission which the resource owner is granting to a specific user
func (*PermissionGrantParams) String ¶
func (v *PermissionGrantParams) String() string
type PermissionGrantResponseRepresentation ¶
type PermissionGrantResponseRepresentation struct { ID *string `json:"id,omitempty"` Owner *string `json:"owner,omitempty"` ResourceID *string `json:"resource,omitempty"` Scope *string `json:"scope,omitempty"` Granted *bool `json:"granted,omitempty"` RequesterID *string `json:"requester,omitempty"` }
PermissionGrantResponseRepresentation represents the reply from Keycloack after granting permission
func (*PermissionGrantResponseRepresentation) String ¶
func (v *PermissionGrantResponseRepresentation) String() string
type PermissionRepresentation ¶
type PermissionRepresentation struct { DecisionStrategy *DecisionStrategy `json:"decisionStrategy,omitempty"` Description *string `json:"description,omitempty"` ID *string `json:"id,omitempty"` Logic *Logic `json:"logic,omitempty"` Name *string `json:"name,omitempty"` Policies *[]string `json:"policies,omitempty"` Resources *[]string `json:"resources,omitempty"` ResourceType *string `json:"resourceType,omitempty"` Scopes *[]string `json:"scopes,omitempty"` Type *string `json:"type,omitempty"` }
PermissionRepresentation is a representation of a RequestingPartyPermission
func (*PermissionRepresentation) String ¶
func (v *PermissionRepresentation) String() string
type PermissionResource ¶
type PermissionResource struct { ResourceID *string `json:"_id,omitempty"` ResourceName *string `json:"name,omitempty"` }
PermissionResource represents a resources asscoiated with a permission
func (*PermissionResource) String ¶
func (v *PermissionResource) String() string
type PermissionScope ¶
type PermissionScope struct { ScopeID *string `json:"id,omitempty"` ScopeName *string `json:"name,omitempty"` }
PermissionScope represents scopes associated with a permission
func (*PermissionScope) String ¶
func (v *PermissionScope) String() string
type PermissionTicketDescriptionRepresentation ¶
type PermissionTicketDescriptionRepresentation struct { ID *string `json:"id,omitempty"` CreatedTimeStamp *int64 `json:"createdTimestamp,omitempty"` UserName *string `json:"username,omitempty"` Enabled *bool `json:"enabled,omitempty"` TOTP *bool `json:"totp,omitempty"` EmailVerified *bool `json:"emailVerified,omitempty"` FirstName *string `json:"firstName,omitempty"` LastName *string `json:"lastName,omitempty"` Email *string `json:"email,omitempty"` DisableCredentialTypes *[]string `json:"disableCredentialTypes,omitempty"` RequiredActions *[]string `json:"requiredActions,omitempty"` NotBefore *int64 `json:"notBefore,omitempty"` Access *AccessRepresentation `json:"access,omitempty"` }
PermissionTicketDescriptionRepresentation represents the parameters returned along with a permission ticket
func (*PermissionTicketDescriptionRepresentation) String ¶
func (v *PermissionTicketDescriptionRepresentation) String() string
type PermissionTicketPermissionRepresentation ¶
type PermissionTicketPermissionRepresentation struct { Scopes *[]string `json:"scopes,omitempty"` RSID *string `json:"rsid,omitempty"` }
PermissionTicketPermissionRepresentation represents the individual permissions in a permission ticket
func (*PermissionTicketPermissionRepresentation) String ¶
func (v *PermissionTicketPermissionRepresentation) String() string
type PermissionTicketRepresentation ¶
type PermissionTicketRepresentation struct { AZP *string `json:"azp,omitempty"` Claims *map[string][]string `json:"claims,omitempty"` Permissions *[]PermissionTicketPermissionRepresentation `json:"permissions,omitempty"` jwt.StandardClaims }
PermissionTicketRepresentation represents the permission ticket contents
func (*PermissionTicketRepresentation) String ¶
func (v *PermissionTicketRepresentation) String() string
type PermissionTicketResponseRepresentation ¶
type PermissionTicketResponseRepresentation struct {
Ticket *string `json:"ticket,omitempty"`
}
PermissionTicketResponseRepresentation represents the keycloak response containing the permission ticket
func (*PermissionTicketResponseRepresentation) String ¶
func (v *PermissionTicketResponseRepresentation) String() string
type PolicyEnforcementMode ¶
type PolicyEnforcementMode string
PolicyEnforcementMode is an enum type for PolicyEnforcementMode of ResourceServerRepresentation
func PolicyEnforcementModeP ¶
func PolicyEnforcementModeP(value PolicyEnforcementMode) *PolicyEnforcementMode
PolicyEnforcementModeP returns a pointer for a PolicyEnforcementMode value
type PolicyRepresentation ¶
type PolicyRepresentation struct { Config *map[string]string `json:"config,omitempty"` DecisionStrategy *DecisionStrategy `json:"decisionStrategy,omitempty"` Description *string `json:"description,omitempty"` ID *string `json:"id,omitempty"` Logic *Logic `json:"logic,omitempty"` Name *string `json:"name,omitempty"` Owner *string `json:"owner,omitempty"` Policies *[]string `json:"policies,omitempty"` Resources *[]string `json:"resources,omitempty"` Scopes *[]string `json:"scopes,omitempty"` Type *string `json:"type,omitempty"` RolePolicyRepresentation JSPolicyRepresentation ClientPolicyRepresentation TimePolicyRepresentation UserPolicyRepresentation AggregatedPolicyRepresentation GroupPolicyRepresentation }
PolicyRepresentation is a representation of a Policy
func (*PolicyRepresentation) String ¶
func (v *PolicyRepresentation) String() string
type PolicyResourceRepresentation ¶
type PolicyResourceRepresentation struct { ID *string `json:"_id,omitempty"` Name *string `json:"name,omitempty"` }
PolicyResourceRepresentation is a representation of a resource of specific policy
type PolicyScopeRepresentation ¶
type PolicyScopeRepresentation struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` }
PolicyScopeRepresentation is a representation of a scopes of specific policy
type ProtocolMapperRepresentation ¶
type ProtocolMapperRepresentation struct { Config *map[string]string `json:"config,omitempty"` ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMapper *string `json:"protocolMapper,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` }
ProtocolMapperRepresentation represents....
func (*ProtocolMapperRepresentation) String ¶
func (v *ProtocolMapperRepresentation) String() string
type ProtocolMapperType ¶
type ProtocolMapperType struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Category string `json:"category,omitempty"` HelpText string `json:"helpText,omitempty"` Priority int `json:"priority,omitempty"` Properties []ProtocolMapperTypeProperty `json:"properties,omitempty"` }
ProtocolMapperType represents a type of protocol mapper
type ProtocolMapperTypeProperty ¶
type ProtocolMapperTypeProperty struct { Name string `json:"name,omitempty"` Label string `json:"label,omitempty"` HelpText string `json:"helpText,omitempty"` Type string `json:"type,omitempty"` Options []string `json:"options,omitempty"` DefaultValue EnforcedString `json:"defaultValue,omitempty"` Secret bool `json:"secret,omitempty"` ReadOnly bool `json:"readOnly,omitempty"` }
ProtocolMapperTypeProperty represents a property of a ProtocolMapperType
type ProtocolMapperTypes ¶
type ProtocolMapperTypes struct { DockerV2 []ProtocolMapperType `json:"docker-v2,omitempty"` SAML []ProtocolMapperType `json:"saml,omitempty"` OpenIDConnect []ProtocolMapperType `json:"openid-connect,omitempty"` }
ProtocolMapperTypes holds the currently available ProtocolMapperType-s grouped by protocol
type ProtocolMappers ¶
type ProtocolMappers struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMapper *string `json:"protocolMapper,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` ProtocolMappersConfig *ProtocolMappersConfig `json:"config,omitempty"` }
ProtocolMappers are protocolmappers
func (*ProtocolMappers) String ¶
func (v *ProtocolMappers) String() string
type ProtocolMappersConfig ¶
type ProtocolMappersConfig struct { UserinfoTokenClaim *string `json:"userinfo.token.claim,omitempty"` UserAttribute *string `json:"user.attribute,omitempty"` IDTokenClaim *string `json:"id.token.claim,omitempty"` AccessTokenClaim *string `json:"access.token.claim,omitempty"` ClaimName *string `json:"claim.name,omitempty"` ClaimValue *string `json:"claim.value,omitempty"` JSONTypeLabel *string `json:"jsonType.label,omitempty"` Multivalued *string `json:"multivalued,omitempty"` UsermodelClientRoleMappingClientID *string `json:"usermodel.clientRoleMapping.clientId,omitempty"` IncludedClientAudience *string `json:"included.client.audience,omitempty"` FullPath *string `json:"full.path,omitempty"` }
ProtocolMappersConfig is a config of a protocol mapper
func (*ProtocolMappersConfig) String ¶
func (v *ProtocolMappersConfig) String() string
type RealmRepresentation ¶
type RealmRepresentation struct { AccessCodeLifespan *int `json:"accessCodeLifespan,omitempty"` AccessCodeLifespanLogin *int `json:"accessCodeLifespanLogin,omitempty"` AccessCodeLifespanUserAction *int `json:"accessCodeLifespanUserAction,omitempty"` AccessTokenLifespan *int `json:"accessTokenLifespan,omitempty"` AccessTokenLifespanForImplicitFlow *int `json:"accessTokenLifespanForImplicitFlow,omitempty"` AccountTheme *string `json:"accountTheme,omitempty"` ActionTokenGeneratedByAdminLifespan *int `json:"actionTokenGeneratedByAdminLifespan,omitempty"` ActionTokenGeneratedByUserLifespan *int `json:"actionTokenGeneratedByUserLifespan,omitempty"` AdminEventsDetailsEnabled *bool `json:"adminEventsDetailsEnabled,omitempty"` AdminEventsEnabled *bool `json:"adminEventsEnabled,omitempty"` AdminTheme *string `json:"adminTheme,omitempty"` Attributes *map[string]string `json:"attributes,omitempty"` AuthenticationFlows *[]interface{} `json:"authenticationFlows,omitempty"` AuthenticatorConfig *[]interface{} `json:"authenticatorConfig,omitempty"` BrowserFlow *string `json:"browserFlow,omitempty"` BrowserSecurityHeaders *map[string]string `json:"browserSecurityHeaders,omitempty"` BruteForceProtected *bool `json:"bruteForceProtected,omitempty"` ClientAuthenticationFlow *string `json:"clientAuthenticationFlow,omitempty"` ClientScopeMappings *map[string]string `json:"clientScopeMappings,omitempty"` ClientScopes *[]ClientScope `json:"clientScopes,omitempty"` Clients *[]Client `json:"clients,omitempty"` Components interface{} `json:"components,omitempty"` DefaultDefaultClientScopes *[]string `json:"defaultDefaultClientScopes,omitempty"` DefaultGroups *[]string `json:"defaultGroups,omitempty"` DefaultLocale *string `json:"defaultLocale,omitempty"` DefaultOptionalClientScopes *[]string `json:"defaultOptionalClientScopes,omitempty"` DefaultRole *Role `json:"defaultRole,omitempty"` DefaultRoles *[]string `json:"defaultRoles,omitempty"` DefaultSignatureAlgorithm *string `json:"defaultSignatureAlgorithm,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 *int `json:"failureFactor,omitempty"` FederatedUsers *[]interface{} `json:"federatedUsers,omitempty"` Groups *[]interface{} `json:"groups,omitempty"` ID *string `json:"id,omitempty"` IdentityProviderMappers *[]interface{} `json:"identityProviderMappers,omitempty"` IdentityProviders *[]interface{} `json:"identityProviders,omitempty"` InternationalizationEnabled *bool `json:"internationalizationEnabled,omitempty"` KeycloakVersion *string `json:"keycloakVersion,omitempty"` LoginTheme *string `json:"loginTheme,omitempty"` LoginWithEmailAllowed *bool `json:"loginWithEmailAllowed,omitempty"` MaxDeltaTimeSeconds *int `json:"maxDeltaTimeSeconds,omitempty"` MaxFailureWaitSeconds *int `json:"maxFailureWaitSeconds,omitempty"` MinimumQuickLoginWaitSeconds *int `json:"minimumQuickLoginWaitSeconds,omitempty"` NotBefore *int `json:"notBefore,omitempty"` OfflineSessionIdleTimeout *int `json:"offlineSessionIdleTimeout,omitempty"` OfflineSessionMaxLifespan *int `json:"offlineSessionMaxLifespan,omitempty"` OfflineSessionMaxLifespanEnabled *bool `json:"offlineSessionMaxLifespanEnabled,omitempty"` OtpPolicyAlgorithm *string `json:"otpPolicyAlgorithm,omitempty"` OtpPolicyDigits *int `json:"otpPolicyDigits,omitempty"` OtpPolicyInitialCounter *int `json:"otpPolicyInitialCounter,omitempty"` OtpPolicyLookAheadWindow *int `json:"otpPolicyLookAheadWindow,omitempty"` OtpPolicyPeriod *int `json:"otpPolicyPeriod,omitempty"` OtpPolicyType *string `json:"otpPolicyType,omitempty"` OtpSupportedApplications *[]string `json:"otpSupportedApplications,omitempty"` PasswordPolicy *string `json:"passwordPolicy,omitempty"` PermanentLockout *bool `json:"permanentLockout,omitempty"` ProtocolMappers *[]interface{} `json:"protocolMappers,omitempty"` QuickLoginCheckMilliSeconds *int64 `json:"quickLoginCheckMilliSeconds,omitempty"` Realm *string `json:"realm,omitempty"` RefreshTokenMaxReuse *int `json:"refreshTokenMaxReuse,omitempty"` RegistrationAllowed *bool `json:"registrationAllowed,omitempty"` RegistrationEmailAsUsername *bool `json:"registrationEmailAsUsername,omitempty"` RegistrationFlow *string `json:"registrationFlow,omitempty"` RememberMe *bool `json:"rememberMe,omitempty"` RequiredActions *[]interface{} `json:"requiredActions,omitempty"` ResetCredentialsFlow *string `json:"resetCredentialsFlow,omitempty"` ResetPasswordAllowed *bool `json:"resetPasswordAllowed,omitempty"` RevokeRefreshToken *bool `json:"revokeRefreshToken,omitempty"` Roles *RolesRepresentation `json:"roles,omitempty"` ScopeMappings *[]interface{} `json:"scopeMappings,omitempty"` SMTPServer *map[string]string `json:"smtpServer,omitempty"` SslRequired *string `json:"sslRequired,omitempty"` SsoSessionIdleTimeout *int `json:"ssoSessionIdleTimeout,omitempty"` SsoSessionIdleTimeoutRememberMe *int `json:"ssoSessionIdleTimeoutRememberMe,omitempty"` SsoSessionMaxLifespan *int `json:"ssoSessionMaxLifespan,omitempty"` SsoSessionMaxLifespanRememberMe *int `json:"ssoSessionMaxLifespanRememberMe,omitempty"` SupportedLocales *[]string `json:"supportedLocales,omitempty"` UserFederationMappers *[]interface{} `json:"userFederationMappers,omitempty"` UserFederationProviders *[]interface{} `json:"userFederationProviders,omitempty"` UserManagedAccessAllowed *bool `json:"userManagedAccessAllowed,omitempty"` Users *[]User `json:"users,omitempty"` VerifyEmail *bool `json:"verifyEmail,omitempty"` WaitIncrementSeconds *int `json:"waitIncrementSeconds,omitempty"` }
RealmRepresentation represents a realm
func (*RealmRepresentation) String ¶
func (v *RealmRepresentation) String() string
type RequestingPartyPermission ¶
type RequestingPartyPermission struct { Claims *map[string]string `json:"claims,omitempty"` ResourceID *string `json:"rsid,omitempty"` ResourceName *string `json:"rsname,omitempty"` Scopes *[]string `json:"scopes,omitempty"` }
RequestingPartyPermission is returned by request party token with response type set to "permissions"
func (*RequestingPartyPermission) String ¶
func (v *RequestingPartyPermission) String() string
type RequestingPartyPermissionDecision ¶
type RequestingPartyPermissionDecision struct {
Result *bool `json:"result,omitempty"`
}
RequestingPartyPermissionDecision is returned by request party token with response type set to "decision"
type RequestingPartyTokenOptions ¶
type RequestingPartyTokenOptions struct { GrantType *string `json:"grant_type,omitempty"` Ticket *string `json:"ticket,omitempty"` ClaimToken *string `json:"claim_token,omitempty"` ClaimTokenFormat *string `json:"claim_token_format,omitempty"` RPT *string `json:"rpt,omitempty"` Permissions *[]string `json:"-"` Audience *string `json:"audience,omitempty"` ResponseIncludeResourceName *bool `json:"response_include_resource_name,string,omitempty"` ResponsePermissionsLimit *uint32 `json:"response_permissions_limit,omitempty"` SubmitRequest *bool `json:"submit_request,string,omitempty"` ResponseMode *string `json:"response_mode,omitempty"` SubjectToken *string `json:"subject_token,omitempty"` }
RequestingPartyTokenOptions represents the options to obtain a requesting party token
func (*RequestingPartyTokenOptions) FormData ¶
func (t *RequestingPartyTokenOptions) FormData() map[string]string
FormData returns a map of options to be used in SetFormData function
func (*RequestingPartyTokenOptions) String ¶
func (t *RequestingPartyTokenOptions) String() string
type RequiredActionProviderRepresentation ¶
type RequiredActionProviderRepresentation struct { Alias *string `json:"alias,omitempty"` Config *map[string]string `json:"config,omitempty"` DefaultAction *bool `json:"defaultAction,omitempty"` Enabled *bool `json:"enabled,omitempty"` Name *string `json:"name,omitempty"` Priority *int32 `json:"priority,omitempty"` ProviderID *string `json:"providerId,omitempty"` }
RequiredActionProviderRepresentation is a representation of required actions v15: https://www.keycloak.org/docs-api/15.0/rest-api/index.html#_requiredactionproviderrepresentation
func (*RequiredActionProviderRepresentation) String ¶
func (v *RequiredActionProviderRepresentation) String() string
type ResourceOwnerRepresentation ¶
type ResourceOwnerRepresentation struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` }
ResourceOwnerRepresentation represents a resource's owner
func (*ResourceOwnerRepresentation) String ¶
func (v *ResourceOwnerRepresentation) String() string
type ResourcePermission ¶
type ResourcePermission struct { RSID *string `json:"rsid,omitempty"` ResourceID *string `json:"resource_id,omitempty"` RSName *string `json:"rsname,omitempty"` Scopes *[]string `json:"scopes,omitempty"` ResourceScopes *[]string `json:"resource_scopes,omitempty"` }
ResourcePermission represents a permission granted to a resource
func (*ResourcePermission) String ¶
func (v *ResourcePermission) String() string
type ResourcePolicyRepresentation ¶
type ResourcePolicyRepresentation struct { Name *string `json:"name,omitempty"` Description *string `json:"description,omitempty"` Scopes *[]string `json:"scopes,omitempty"` Roles *[]string `json:"roles,omitempty"` Groups *[]string `json:"groups,omitempty"` Clients *[]string `json:"clients,omitempty"` ID *string `json:"id,omitempty"` Logic *Logic `json:"logic,omitempty"` DecisionStrategy *DecisionStrategy `json:"decisionStrategy,omitempty"` Owner *string `json:"owner,omitempty"` Type *string `json:"type,omitempty"` Users *[]string `json:"users,omitempty"` }
ResourcePolicyRepresentation is a representation of a Policy applied to a resource
func (*ResourcePolicyRepresentation) String ¶
func (v *ResourcePolicyRepresentation) String() string
type ResourceRepresentation ¶
type ResourceRepresentation struct { ID *string `json:"_id,omitempty"` // TODO: is marked "_optional" in template, input error or deliberate? Attributes *map[string][]string `json:"attributes,omitempty"` DisplayName *string `json:"displayName,omitempty"` IconURI *string `json:"icon_uri,omitempty"` // TODO: With "_" because that's how it's written down in the template Name *string `json:"name,omitempty"` Owner *ResourceOwnerRepresentation `json:"owner,omitempty"` OwnerManagedAccess *bool `json:"ownerManagedAccess,omitempty"` ResourceScopes *[]ScopeRepresentation `json:"resource_scopes,omitempty"` Scopes *[]ScopeRepresentation `json:"scopes,omitempty"` Type *string `json:"type,omitempty"` URIs *[]string `json:"uris,omitempty"` }
ResourceRepresentation is a representation of a Resource
func (*ResourceRepresentation) String ¶
func (v *ResourceRepresentation) String() string
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 *PolicyEnforcementMode `json:"policyEnforcementMode,omitempty"` Resources *[]ResourceRepresentation `json:"resources,omitempty"` Scopes *[]ScopeRepresentation `json:"scopes,omitempty"` DecisionStrategy *DecisionStrategy `json:"decisionStrategy,omitempty"` }
ResourceServerRepresentation represents the resources of a Server
func (*ResourceServerRepresentation) String ¶
func (v *ResourceServerRepresentation) String() string
type RetrospecTokenResult ¶
type RetrospecTokenResult struct { Permissions *[]ResourcePermission `json:"permissions,omitempty"` Exp *int `json:"exp,omitempty"` Nbf *int `json:"nbf,omitempty"` Iat *int `json:"iat,omitempty"` Aud *StringOrArray `json:"aud,omitempty"` Active *bool `json:"active,omitempty"` AuthTime *int `json:"auth_time,omitempty"` Jti *string `json:"jti,omitempty"` Type *string `json:"typ,omitempty"` }
RetrospecTokenResult is returned when a token was checked
func (*RetrospecTokenResult) String ¶
func (v *RetrospecTokenResult) String() string
type Role ¶
type Role struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` ScopeParamRequired *bool `json:"scopeParamRequired,omitempty"` Composite *bool `json:"composite,omitempty"` Composites *CompositesRepresentation `json:"composites,omitempty"` ClientRole *bool `json:"clientRole,omitempty"` ContainerID *string `json:"containerId,omitempty"` Description *string `json:"description,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` }
Role is a role
type RoleDefinition ¶
type RoleDefinition struct { ID *string `json:"id,omitempty"` Private *bool `json:"private,omitempty"` Required *bool `json:"required,omitempty"` }
RoleDefinition represents a role in a RolePolicyRepresentation
func (*RoleDefinition) String ¶
func (v *RoleDefinition) String() string
type RolePolicyRepresentation ¶
type RolePolicyRepresentation struct {
Roles *[]RoleDefinition `json:"roles,omitempty"`
}
RolePolicyRepresentation represents role based policies
func (*RolePolicyRepresentation) String ¶
func (v *RolePolicyRepresentation) String() string
type RolesRepresentation ¶
type RolesRepresentation struct { Client *map[string][]Role `json:"client,omitempty"` Realm *[]Role `json:"realm,omitempty"` }
RolesRepresentation represents the roles of a realm
func (*RolesRepresentation) String ¶
func (v *RolesRepresentation) String() string
type ScopeRepresentation ¶
type ScopeRepresentation struct { DisplayName *string `json:"displayName,omitempty"` 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"` }
ScopeRepresentation is a represents a Scope
func (*ScopeRepresentation) String ¶
func (v *ScopeRepresentation) String() string
type ServerInfoRepesentation ¶
type ServerInfoRepesentation struct { SystemInfo *SystemInfoRepresentation `json:"systemInfo,omitempty"` MemoryInfo *MemoryInfoRepresentation `json:"memoryInfo,omitempty"` PasswordPolicies []*PasswordPolicy `json:"passwordPolicies,omitempty"` ProtocolMapperTypes *ProtocolMapperTypes `json:"protocolMapperTypes,omitempty"` BuiltinProtocolMappers *BuiltinProtocolMappers `json:"builtinProtocolMappers,omitempty"` }
ServerInfoRepesentation represents a server info
func (*ServerInfoRepesentation) String ¶
func (v *ServerInfoRepesentation) String() string
type SetPasswordRequest ¶
type SetPasswordRequest struct { Type *string `json:"type,omitempty"` Temporary *bool `json:"temporary,omitempty"` Password *string `json:"value,omitempty"` }
SetPasswordRequest sets a new password
func (*SetPasswordRequest) String ¶
func (v *SetPasswordRequest) String() string
type StringOrArray ¶
type StringOrArray []string
StringOrArray represents a value that can either be a string or an array of strings
func (*StringOrArray) MarshalJSON ¶
func (s *StringOrArray) MarshalJSON() ([]byte, error)
MarshalJSON converts the array of strings to a JSON array or JSON string if there is only one item in the array
func (*StringOrArray) UnmarshalJSON ¶
func (s *StringOrArray) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals a string or an array object from a JSON array or a JSON string
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 *int `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"` }
SystemInfoRepresentation represents a system info
func (*SystemInfoRepresentation) String ¶
func (v *SystemInfoRepresentation) String() string
type TimePolicyRepresentation ¶
type TimePolicyRepresentation struct { NotBefore *string `json:"notBefore,omitempty"` NotOnOrAfter *string `json:"notOnOrAfter,omitempty"` DayMonth *string `json:"dayMonth,omitempty"` DayMonthEnd *string `json:"dayMonthEnd,omitempty"` Month *string `json:"month,omitempty"` MonthEnd *string `json:"monthEnd,omitempty"` Year *string `json:"year,omitempty"` YearEnd *string `json:"yearEnd,omitempty"` Hour *string `json:"hour,omitempty"` HourEnd *string `json:"hourEnd,omitempty"` Minute *string `json:"minute,omitempty"` MinuteEnd *string `json:"minuteEnd,omitempty"` }
TimePolicyRepresentation represents time based policies
func (*TimePolicyRepresentation) String ¶
func (v *TimePolicyRepresentation) String() string
type TokenOptions ¶
type TokenOptions struct { ClientID *string `json:"client_id,omitempty"` ClientSecret *string `json:"-"` GrantType *string `json:"grant_type,omitempty"` RefreshToken *string `json:"refresh_token,omitempty"` Scopes *[]string `json:"-"` Scope *string `json:"scope,omitempty"` ResponseTypes *[]string `json:"-"` ResponseType *string `json:"response_type,omitempty"` Permission *string `json:"permission,omitempty"` Username *string `json:"username,omitempty"` Password *string `json:"password,omitempty"` Totp *string `json:"totp,omitempty"` Code *string `json:"code,omitempty"` RedirectURI *string `json:"redirect_uri,omitempty"` ClientAssertionType *string `json:"client_assertion_type,omitempty"` ClientAssertion *string `json:"client_assertion,omitempty"` SubjectToken *string `json:"subject_token,omitempty"` RequestedSubject *string `json:"requested_subject,omitempty"` Audience *string `json:"audience,omitempty"` RequestedTokenType *string `json:"requested_token_type,omitempty"` }
TokenOptions represents the options to obtain a token
func (*TokenOptions) FormData ¶
func (t *TokenOptions) FormData() map[string]string
FormData returns a map of options to be used in SetFormData function
func (*TokenOptions) String ¶
func (t *TokenOptions) String() string
type User ¶
type User struct { ID *string `json:"id,omitempty"` CreatedTimestamp *int64 `json:"createdTimestamp,omitempty"` Username *string `json:"username,omitempty"` Enabled *bool `json:"enabled,omitempty"` Totp *bool `json:"totp,omitempty"` EmailVerified *bool `json:"emailVerified,omitempty"` FirstName *string `json:"firstName,omitempty"` LastName *string `json:"lastName,omitempty"` Email *string `json:"email,omitempty"` FederationLink *string `json:"federationLink,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` DisableableCredentialTypes *[]interface{} `json:"disableableCredentialTypes,omitempty"` RequiredActions *[]string `json:"requiredActions,omitempty"` Access *map[string]bool `json:"access,omitempty"` ClientRoles *map[string][]string `json:"clientRoles,omitempty"` RealmRoles *[]string `json:"realmRoles,omitempty"` Groups *[]string `json:"groups,omitempty"` ServiceAccountClientID *string `json:"serviceAccountClientId,omitempty"` Credentials *[]CredentialRepresentation `json:"credentials,omitempty"` }
User represents the Keycloak User Structure
type UserGroup ¶
type UserGroup struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` }
UserGroup is a UserGroup
type UserInfo ¶
type UserInfo struct { Sub *string `json:"sub,omitempty"` Name *string `json:"name,omitempty"` GivenName *string `json:"given_name,omitempty"` FamilyName *string `json:"family_name,omitempty"` MiddleName *string `json:"middle_name,omitempty"` Nickname *string `json:"nickname,omitempty"` PreferredUsername *string `json:"preferred_username,omitempty"` Profile *string `json:"profile,omitempty"` Picture *string `json:"picture,omitempty"` Website *string `json:"website,omitempty"` Email *string `json:"email,omitempty"` EmailVerified *bool `json:"email_verified,omitempty"` Gender *string `json:"gender,omitempty"` ZoneInfo *string `json:"zoneinfo,omitempty"` Locale *string `json:"locale,omitempty"` PhoneNumber *string `json:"phone_number,omitempty"` PhoneNumberVerified *bool `json:"phone_number_verified,omitempty"` Address *UserInfoAddress `json:"address,omitempty"` UpdatedAt *int `json:"updated_at,omitempty"` }
UserInfo is returned by the userinfo endpoint https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
type UserInfoAddress ¶
type UserInfoAddress struct { Formatted *string `json:"formatted,omitempty"` StreetAddress *string `json:"street_address,omitempty"` Locality *string `json:"locality,omitempty"` Region *string `json:"region,omitempty"` PostalCode *string `json:"postal_code,omitempty"` Country *string `json:"country,omitempty"` }
UserInfoAddress is representation of the address sub-filed of UserInfo https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim
func (*UserInfoAddress) String ¶
func (v *UserInfoAddress) String() string
type UserPolicyRepresentation ¶
type UserPolicyRepresentation struct {
Users *[]string `json:"users,omitempty"`
}
UserPolicyRepresentation represents user based policies
func (*UserPolicyRepresentation) String ¶
func (v *UserPolicyRepresentation) String() string
type UserSessionRepresentation ¶
type UserSessionRepresentation struct { Clients *map[string]string `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"` }
UserSessionRepresentation represents a list of user's sessions
func (*UserSessionRepresentation) String ¶
func (v *UserSessionRepresentation) String() string