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 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
func WithTracer ¶
WithTracer generates a context that has a tracer attached
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"`
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 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)
// 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
// 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"`
FederatedIdentities *[]FederatedIdentityRepresentation `json:"federatedIdentities,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