README ¶
gocloak
Golang Keycloak API Package
This client is based on: go-keycloak
For Questions either raise an issue, or come to the gopher-slack into the channel #gocloak
If u are using the echo framework have a look at gocloak-echo
Benchmarks can be found here
Contribution
(WIP) https://github.com/Nerzal/gocloak/wiki/Contribute
Changelog
For release notes please consult the specific releases here
Usage
Installation
go get github.com/Nerzal/gocloak/v13
Importing
import "github.com/Nerzal/gocloak/v13"
Create New User
client := gocloak.NewClient("https://mycool.keycloak.instance")
ctx := context.Background()
token, err := client.LoginAdmin(ctx, "user", "password", "realmName")
if err != nil {
panic("Something wrong with the credentials or url")
}
user := gocloak.User{
FirstName: gocloak.StringP("Bob"),
LastName: gocloak.StringP("Uncle"),
Email: gocloak.StringP("something@really.wrong"),
Enabled: gocloak.BoolP(true),
Username: gocloak.StringP("CoolGuy"),
}
_, err = client.CreateUser(ctx, token.AccessToken, "realm", user)
if err != nil {
panic("Oh no!, failed to create user :(")
}
Introspect Token
client := gocloak.NewClient(hostname)
ctx := context.Background()
token, err := client.LoginClient(ctx, clientID, clientSecret, realm)
if err != nil {
panic("Login failed:"+ err.Error())
}
rptResult, err := client.RetrospectToken(ctx, token.AccessToken, clientID, clientSecret, realm)
if err != nil {
panic("Inspection failed:"+ err.Error())
}
if !*rptResult.Active {
panic("Token is not active")
}
permissions := rptResult.Permissions
// Do something with the permissions ;)
Get Client id
Client has 2 identity fields- id
and clientId
and both are unique in one realm.
id
is generated automatically by Keycloak.clientId
is configured by users inAdd client
page.
To get the clientId
from id
, use GetClients
method with GetClientsParams{ClientID: &clientName}
.
clients, err := c.Client.GetClients(
c.Ctx,
c.JWT.AccessToken,
c.Realm,
gocloak.GetClientsParams{
ClientID: &clientName,
},
)
if err != nil {
panic("List clients failed:"+ err.Error())
}
for _, client := range clients {
return *client.ID, nil
}
Features
// GoCloak holds all methods a client should fulfill
type GoCloak interface {
RestyClient() *resty.Client
SetRestyClient(restyClient *resty.Client)
GetToken(ctx context.Context, realm string, options TokenOptions) (*JWT, error)
GetRequestingPartyToken(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*JWT, error)
GetRequestingPartyPermissions(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*[]RequestingPartyPermission, error)
GetRequestingPartyPermissionDecision(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*RequestingPartyPermissionDecision, error)
Login(ctx context.Context, clientID, clientSecret, realm, username, password string) (*JWT, error)
LoginOtp(ctx context.Context, clientID, clientSecret, realm, username, password, totp string) (*JWT, error)
Logout(ctx context.Context, clientID, clientSecret, realm, refreshToken string) error
LogoutPublicClient(ctx context.Context, clientID, realm, accessToken, refreshToken string) error
LogoutAllSessions(ctx context.Context, accessToken, realm, userID string) error
RevokeUserConsents(ctx context.Context, accessToken, realm, userID, clientID string) error
LogoutUserSession(ctx context.Context, accessToken, realm, session string) error
LoginClient(ctx context.Context, clientID, clientSecret, realm string) (*JWT, error)
LoginClientSignedJWT(ctx context.Context, clientID, realm string, key interface{}, signedMethod jwt.SigningMethod, expiresAt *jwt.Time) (*JWT, error)
LoginAdmin(ctx context.Context, username, password, realm string) (*JWT, error)
RefreshToken(ctx context.Context, refreshToken, clientID, clientSecret, realm string) (*JWT, error)
DecodeAccessToken(ctx context.Context, accessToken, realm, expectedAudience string) (*jwt.Token, *jwt.MapClaims, error)
DecodeAccessTokenCustomClaims(ctx context.Context, accessToken, realm, expectedAudience string, claims jwt.Claims) (*jwt.Token, error)
RetrospectToken(ctx context.Context, accessToken, clientID, clientSecret, realm string) (*RetrospecTokenResult, error)
GetIssuer(ctx context.Context, realm string) (*IssuerResponse, error)
GetCerts(ctx context.Context, realm string) (*CertResponse, error)
GetServerInfo(ctx context.Context, accessToken string) (*ServerInfoRepesentation, error)
GetUserInfo(ctx context.Context, accessToken, realm string) (*UserInfo, error)
GetRawUserInfo(ctx context.Context, accessToken, realm string) (map[string]interface{}, error)
SetPassword(ctx context.Context, token, userID, realm, password string, temporary bool) error
ExecuteActionsEmail(ctx context.Context, token, realm string, params ExecuteActionsEmail) error
CreateUser(ctx context.Context, token, realm string, user User) (string, error)
CreateGroup(ctx context.Context, accessToken, realm string, group Group) (string, error)
CreateChildGroup(ctx context.Context, token, realm, groupID string, group Group) (string, error)
CreateClientRole(ctx context.Context, accessToken, realm, idOfClient string, role Role) (string, error)
CreateClient(ctx context.Context, accessToken, realm string, newClient Client) (string, error)
CreateClientScope(ctx context.Context, accessToken, realm string, scope ClientScope) (string, error)
CreateComponent(ctx context.Context, accessToken, realm string, component Component) (string, error)
CreateClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
CreateClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error
CreateClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfCLientScope string, roles []Role) error
CreateClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string, roles []Role) error
UpdateUser(ctx context.Context, accessToken, realm string, user User) error
UpdateGroup(ctx context.Context, accessToken, realm string, updatedGroup Group) error
UpdateRole(ctx context.Context, accessToken, realm, idOfClient string, role Role) error
UpdateClient(ctx context.Context, accessToken, realm string, updatedClient Client) error
UpdateClientScope(ctx context.Context, accessToken, realm string, scope ClientScope) error
DeleteUser(ctx context.Context, accessToken, realm, userID string) error
DeleteComponent(ctx context.Context, accessToken, realm, componentID string) error
DeleteGroup(ctx context.Context, accessToken, realm, groupID string) error
DeleteClientRole(ctx context.Context, accessToken, realm, idOfClient, roleName string) error
DeleteClientRoleFromUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
DeleteClient(ctx context.Context, accessToken, realm, idOfClient string) error
DeleteClientScope(ctx context.Context, accessToken, realm, scopeID string) error
DeleteClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
DeleteClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error
DeleteClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfCLientScope string, roles []Role) error
DeleteClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, ifOfClient string, roles []Role) error
GetClient(ctx context.Context, accessToken, realm, idOfClient string) (*Client, error)
GetClientsDefaultScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
AddDefaultScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
RemoveDefaultScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
GetClientsOptionalScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
AddOptionalScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
RemoveOptionalScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
GetDefaultOptionalClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
GetDefaultDefaultClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
GetClientScope(ctx context.Context, token, realm, scopeID string) (*ClientScope, error)
GetClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
GetClientScopeMappings(ctx context.Context, token, realm, idOfClient string) (*MappingsRepresentation, error)
GetClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
GetClientScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
GetClientScopesScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClientScope string) ([]*Role, error)
GetClientScopesScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
GetClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
GetClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClientScope string) ([]*Role, error)
GetClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
GetClientScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
GetClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
GetClientServiceAccount(ctx context.Context, token, realm, idOfClient string) (*User, error)
RegenerateClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
GetKeyStoreConfig(ctx context.Context, accessToken, realm string) (*KeyStoreConfig, error)
GetUserByID(ctx context.Context, accessToken, realm, userID string) (*User, error)
GetUserCount(ctx context.Context, accessToken, realm string, params GetUsersParams) (int, error)
GetUsers(ctx context.Context, accessToken, realm string, params GetUsersParams) ([]*User, error)
GetUserGroups(ctx context.Context, accessToken, realm, userID string, params GetGroupsParams) ([]*UserGroup, error)
AddUserToGroup(ctx context.Context, token, realm, userID, groupID string) error
DeleteUserFromGroup(ctx context.Context, token, realm, userID, groupID string) error
GetComponents(ctx context.Context, accessToken, realm string) ([]*Component, error)
GetGroups(ctx context.Context, accessToken, realm string, params GetGroupsParams) ([]*Group, error)
GetGroupsCount(ctx context.Context, token, realm string, params GetGroupsParams) (int, error)
GetGroup(ctx context.Context, accessToken, realm, groupID string) (*Group, error)
GetDefaultGroups(ctx context.Context, accessToken, realm string) ([]*Group, error)
AddDefaultGroup(ctx context.Context, accessToken, realm, groupID string) error
RemoveDefaultGroup(ctx context.Context, accessToken, realm, groupID string) error
GetGroupMembers(ctx context.Context, accessToken, realm, groupID string, params GetGroupsParams) ([]*User, error)
GetRoleMappingByGroupID(ctx context.Context, accessToken, realm, groupID string) (*MappingsRepresentation, error)
GetRoleMappingByUserID(ctx context.Context, accessToken, realm, userID string) (*MappingsRepresentation, error)
GetClientRoles(ctx context.Context, accessToken, realm, idOfClient string, params GetRoleParams) ([]*Role, error)
GetClientRole(ctx context.Context, token, realm, idOfClient, roleName string) (*Role, error)
GetClientRoleByID(ctx context.Context, accessToken, realm, roleID string) (*Role, error)
GetClients(ctx context.Context, accessToken, realm string, params GetClientsParams) ([]*Client, error)
AddClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
DeleteClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
GetUsersByRoleName(ctx context.Context, token, realm, roleName string) ([]*User, error)
GetUsersByClientRoleName(ctx context.Context, token, realm, idOfClient, roleName string, params GetUsersByRoleParams) ([]*User, error)
CreateClientProtocolMapper(ctx context.Context, token, realm, idOfClient string, mapper ProtocolMapperRepresentation) (string, error)
UpdateClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string, mapper ProtocolMapperRepresentation) error
DeleteClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string) error
// *** Realm Roles ***
CreateRealmRole(ctx context.Context, token, realm string, role Role) (string, error)
GetRealmRole(ctx context.Context, token, realm, roleName string) (*Role, error)
GetRealmRoles(ctx context.Context, accessToken, realm string, params GetRoleParams) ([]*Role, error)
GetRealmRoleByID(ctx context.Context, token, realm, roleID string) (*Role, error)
GetRealmRolesByUserID(ctx context.Context, accessToken, realm, userID string) ([]*Role, error)
GetRealmRolesByGroupID(ctx context.Context, accessToken, realm, groupID string) ([]*Role, error)
UpdateRealmRole(ctx context.Context, token, realm, roleName string, role Role) error
UpdateRealmRoleByID(ctx context.Context, token, realm, roleID string, role Role) error
DeleteRealmRole(ctx context.Context, token, realm, roleName string) error
AddRealmRoleToUser(ctx context.Context, token, realm, userID string, roles []Role) error
DeleteRealmRoleFromUser(ctx context.Context, token, realm, userID string, roles []Role) error
AddRealmRoleToGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
DeleteRealmRoleFromGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
AddRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
DeleteRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
GetCompositeRealmRoles(ctx context.Context, token, realm, roleName string) ([]*Role, error)
GetCompositeRealmRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error)
GetCompositeRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
GetCompositeRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
GetAvailableRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
GetAvailableRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
// *** Client Roles ***
AddClientRoleToUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
AddClientRoleToGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
DeleteClientRoleFromGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
GetCompositeClientRolesByRoleID(ctx context.Context, token, realm, idOfClient, roleID string) ([]*Role, error)
GetClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
GetCompositeClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetCompositeClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
GetAvailableClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetAvailableClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
// *** Realm ***
GetRealm(ctx context.Context, token, realm string) (*RealmRepresentation, error)
GetRealms(ctx context.Context, token string) ([]*RealmRepresentation, error)
CreateRealm(ctx context.Context, token string, realm RealmRepresentation) (string, error)
UpdateRealm(ctx context.Context, token string, realm RealmRepresentation) error
DeleteRealm(ctx context.Context, token, realm string) error
ClearRealmCache(ctx context.Context, token, realm string) error
ClearUserCache(ctx context.Context, token, realm string) error
ClearKeysCache(ctx context.Context, token, realm string) error
GetClientUserSessions(ctx context.Context, token, realm, idOfClient string, params ...GetClientUserSessionsParams) ([]*UserSessionRepresentation, error)
GetClientOfflineSessions(ctx context.Context, token, realm, idOfClient string, params ...GetClientUserSessionsParams) ([]*UserSessionRepresentation, error)
GetUserSessions(ctx context.Context, token, realm, userID string) ([]*UserSessionRepresentation, error)
GetUserOfflineSessionsForClient(ctx context.Context, token, realm, userID, idOfClient string) ([]*UserSessionRepresentation, error)
// *** Protection API ***
GetResource(ctx context.Context, token, realm, idOfClient, resourceID string) (*ResourceRepresentation, error)
GetResources(ctx context.Context, token, realm, idOfClient string, params GetResourceParams) ([]*ResourceRepresentation, error)
CreateResource(ctx context.Context, token, realm, idOfClient string, resource ResourceRepresentation) (*ResourceRepresentation, error)
UpdateResource(ctx context.Context, token, realm, idOfClient string, resource ResourceRepresentation) error
DeleteResource(ctx context.Context, token, realm, idOfClient, resourceID string) error
GetResourceClient(ctx context.Context, token, realm, resourceID string) (*ResourceRepresentation, error)
GetResourcesClient(ctx context.Context, token, realm string, params GetResourceParams) ([]*ResourceRepresentation, error)
CreateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) (*ResourceRepresentation, error)
UpdateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) error
DeleteResourceClient(ctx context.Context, token, realm, resourceID string) error
GetScope(ctx context.Context, token, realm, idOfClient, scopeID string) (*ScopeRepresentation, error)
GetScopes(ctx context.Context, token, realm, idOfClient string, params GetScopeParams) ([]*ScopeRepresentation, error)
CreateScope(ctx context.Context, token, realm, idOfClient string, scope ScopeRepresentation) (*ScopeRepresentation, error)
UpdateScope(ctx context.Context, token, realm, idOfClient string, resource ScopeRepresentation) error
DeleteScope(ctx context.Context, token, realm, idOfClient, scopeID string) error
GetPolicy(ctx context.Context, token, realm, idOfClient, policyID string) (*PolicyRepresentation, error)
GetPolicies(ctx context.Context, token, realm, idOfClient string, params GetPolicyParams) ([]*PolicyRepresentation, error)
CreatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) (*PolicyRepresentation, error)
UpdatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) error
DeletePolicy(ctx context.Context, token, realm, idOfClient, policyID string) error
GetResourcePolicy(ctx context.Context, token, realm, permissionID string) (*ResourcePolicyRepresentation, error)
GetResourcePolicies(ctx context.Context, token, realm string, params GetResourcePoliciesParams) ([]*ResourcePolicyRepresentation, error)
CreateResourcePolicy(ctx context.Context, token, realm, resourceID string, policy ResourcePolicyRepresentation) (*ResourcePolicyRepresentation, error)
UpdateResourcePolicy(ctx context.Context, token, realm, permissionID string, policy ResourcePolicyRepresentation) error
DeleteResourcePolicy(ctx context.Context, token, realm, permissionID string) error
GetPermission(ctx context.Context, token, realm, idOfClient, permissionID string) (*PermissionRepresentation, error)
GetPermissions(ctx context.Context, token, realm, idOfClient string, params GetPermissionParams) ([]*PermissionRepresentation, error)
GetPermissionResources(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionResource, error)
GetPermissionScopes(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionScope, error)
GetDependentPermissions(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PermissionRepresentation, error)
CreatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) (*PermissionRepresentation, error)
UpdatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) error
DeletePermission(ctx context.Context, token, realm, idOfClient, permissionID string) error
CreatePermissionTicket(ctx context.Context, token, realm string, permissions []CreatePermissionTicketParams) (*PermissionTicketResponseRepresentation, error)
GrantUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
UpdateUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
GetUserPermissions(ctx context.Context, token, realm string, params GetUserPermissionParams) ([]*PermissionGrantResponseRepresentation, error)
DeleteUserPermission(ctx context.Context, token, realm, ticketID string) error
// *** Credentials API ***
GetCredentialRegistrators(ctx context.Context, token, realm string) ([]string, error)
GetConfiguredUserStorageCredentialTypes(ctx context.Context, token, realm, userID string) ([]string, error)
GetCredentials(ctx context.Context, token, realm, UserID string) ([]*CredentialRepresentation, error)
DeleteCredentials(ctx context.Context, token, realm, UserID, CredentialID string) error
UpdateCredentialUserLabel(ctx context.Context, token, realm, userID, credentialID, userLabel string) error
DisableAllCredentialsByType(ctx context.Context, token, realm, userID string, types []string) error
MoveCredentialBehind(ctx context.Context, token, realm, userID, credentialID, newPreviousCredentialID string) error
MoveCredentialToFirst(ctx context.Context, token, realm, userID, credentialID string) error
// *** Authentication Flows ***
GetAuthenticationFlows(ctx context.Context, token, realm string) ([]*AuthenticationFlowRepresentation, error)
GetAuthenticationFlow(ctx context.Context, token, realm string, authenticationFlowID string) (*AuthenticationFlowRepresentation, error)
CreateAuthenticationFlow(ctx context.Context, token, realm string, flow AuthenticationFlowRepresentation) error
UpdateAuthenticationFlow(ctx context.Context, token, realm string, flow AuthenticationFlowRepresentation, authenticationFlowID string) (*AuthenticationFlowRepresentation, error)
DeleteAuthenticationFlow(ctx context.Context, token, realm, flowID string) error
// *** Identity Providers ***
CreateIdentityProvider(ctx context.Context, token, realm string, providerRep IdentityProviderRepresentation) (string, error)
GetIdentityProvider(ctx context.Context, token, realm, alias string) (*IdentityProviderRepresentation, error)
GetIdentityProviders(ctx context.Context, token, realm string) ([]*IdentityProviderRepresentation, error)
UpdateIdentityProvider(ctx context.Context, token, realm, alias string, providerRep IdentityProviderRepresentation) error
DeleteIdentityProvider(ctx context.Context, token, realm, alias string) error
CreateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) (string, error)
GetIdentityProviderMapper(ctx context.Context, token string, realm string, alias string, mapperID string) (*IdentityProviderMapper, error)
CreateUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string, federatedIdentityRep FederatedIdentityRepresentation) error
GetUserFederatedIdentities(ctx context.Context, token, realm, userID string) ([]*FederatedIdentityRepresentation, error)
DeleteUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string) error
// *** Events API ***
GetEvents(ctx context.Context, token string, realm string, params GetEventsParams) ([]*EventRepresentation, error)
}
Configure gocloak to skip TLS Insecure Verification
client := gocloak.NewClient(serverURL)
restyClient := client.RestyClient()
restyClient.SetDebug(true)
restyClient.SetTLSClientConfig(&tls.Config{ InsecureSkipVerify: true })
developing & testing
For local testing you need to start a docker container. Simply run following commands prior to starting the tests:
docker pull quay.io/keycloak/keycloak
docker run -d \
-e KEYCLOAK_USER=admin \
-e KEYCLOAK_PASSWORD=secret \
-e KEYCLOAK_IMPORT=/tmp/gocloak-realm.json \
-v "`pwd`/testdata/gocloak-realm.json:/tmp/gocloak-realm.json" \
-p 8080:8080 \
--name gocloak-test \
quay.io/keycloak/keycloak:latest -Dkeycloak.profile.feature.upload_scripts=enabled
go test
Or you can run with docker compose using the run-tests script
./run-tests.sh
or
./run-tests.sh <TestCase>
Or you can run the tests on you own keycloak:
export GOCLOAK_TEST_CONFIG=/path/to/gocloak/config.json
All resources created as a result of unit tests will be deleted, except for the test user defined in the configuration file.
To remove running docker container after completion of tests:
docker stop gocloak-test
docker rm gocloak-test
Inspecting custom types
The custom types contain many pointers, so printing them yields mostly pointer values, which aren't much help when debugging your application. For example
someRealmRepresentation := gocloak.RealmRepresentation{
<snip>
}
fmt.Println(someRealmRepresentation)
yields a large set of pointer values
{<nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> 0xc00000e960 <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> 0xc000093cf0 <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> null <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil> <nil>}
For convenience, the String()
interface has been added so you can easily see the contents, even for nested custom types. For example,
fmt.Println(someRealmRepresentation.String())
yields
{
"clients": [
{
"name": "someClient",
"protocolMappers": [
{
"config": {
"bar": "foo",
"ping": "pong"
},
"name": "someMapper"
}
]
},
{
"name": "AnotherClient"
}
],
"displayName": "someRealm"
}
Note that empty parameters are not included, because of the use of omitempty
in the type definitions.
Examples
License
Related Projects
Documentation ¶
Overview ¶
Package gocloak is a golang keycloak adaptor.
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(g *GoCloak)
- func SetAuthRealms(url string) func(g *GoCloak)
- func SetCertCacheInvalidationTime(duration time.Duration) func(g *GoCloak)
- func SetLegacyWildFlySupport() func(g *GoCloak)
- func SetLogoutEndpoint(url string) func(g *GoCloak)
- func SetOpenIDConnectEndpoint(url string) func(g *GoCloak)
- func SetRevokeEndpoint(url string) func(g *GoCloak)
- func SetTokenEndpoint(url string) func(g *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 AuthorizationParameters
- type AuthorizationResponse
- type BruteForceStatus
- 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 GetClientUserSessionsParams
- type GetClientsParams
- type GetComponentsParams
- type GetEventsParams
- type GetGroupsParams
- type GetPermissionParams
- type GetPolicyParams
- type GetResourceParams
- type GetResourcePoliciesParams
- type GetRoleParams
- type GetScopeParams
- type GetUserPermissionParams
- type GetUsersByRoleParams
- type GetUsersParams
- type GoCloak
- func (g *GoCloak) AddClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
- func (g *GoCloak) AddClientRoleToGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) errordeprecated
- func (g *GoCloak) AddClientRoleToUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) errordeprecated
- func (g *GoCloak) AddClientRolesToGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
- func (g *GoCloak) AddClientRolesToUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
- func (g *GoCloak) AddDefaultGroup(ctx context.Context, token, realm, groupID string) error
- func (g *GoCloak) AddDefaultScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
- func (g *GoCloak) AddOptionalScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
- func (g *GoCloak) AddRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
- func (g *GoCloak) AddRealmRoleToGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
- func (g *GoCloak) AddRealmRoleToUser(ctx context.Context, token, realm, userID string, roles []Role) error
- func (g *GoCloak) AddUserToGroup(ctx context.Context, token, realm, userID, groupID string) error
- func (g *GoCloak) ClearKeysCache(ctx context.Context, token, realm string) error
- func (g *GoCloak) ClearRealmCache(ctx context.Context, token, realm string) error
- func (g *GoCloak) ClearUserCache(ctx context.Context, token, realm string) error
- func (g *GoCloak) CreateAuthenticationExecution(ctx context.Context, token, realm, flow string, ...) error
- func (g *GoCloak) CreateAuthenticationExecutionFlow(ctx context.Context, token, realm, flow string, ...) error
- func (g *GoCloak) CreateAuthenticationFlow(ctx context.Context, token, realm string, ...) error
- func (g *GoCloak) CreateChildGroup(ctx context.Context, token, realm, groupID string, group Group) (string, error)
- func (g *GoCloak) CreateClient(ctx context.Context, accessToken, realm string, newClient Client) (string, error)
- func (g *GoCloak) CreateClientProtocolMapper(ctx context.Context, token, realm, idOfClient string, ...) (string, error)
- func (g *GoCloak) CreateClientRepresentation(ctx context.Context, token, realm string, newClient Client) (*Client, error)
- func (g *GoCloak) CreateClientRole(ctx context.Context, token, realm, idOfClient string, role Role) (string, error)
- func (g *GoCloak) CreateClientScope(ctx context.Context, token, realm string, scope ClientScope) (string, error)
- func (g *GoCloak) CreateClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, ...) error
- func (g *GoCloak) CreateClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
- func (g *GoCloak) CreateClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID string, ...) (string, error)
- func (g *GoCloak) CreateClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string, ...) error
- func (g *GoCloak) CreateClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string, roles []Role) error
- func (g *GoCloak) CreateComponent(ctx context.Context, token, realm string, component Component) (string, error)
- func (g *GoCloak) CreateGroup(ctx context.Context, token, realm string, group Group) (string, error)
- func (g *GoCloak) CreateIdentityProvider(ctx context.Context, token string, realm string, ...) (string, error)
- func (g *GoCloak) CreateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) (string, error)
- func (g *GoCloak) CreatePermission(ctx context.Context, token, realm, idOfClient string, ...) (*PermissionRepresentation, error)
- func (g *GoCloak) CreatePermissionTicket(ctx context.Context, token, realm string, ...) (*PermissionTicketResponseRepresentation, error)
- func (g *GoCloak) CreatePolicy(ctx context.Context, token, realm, idOfClient string, ...) (*PolicyRepresentation, error)
- func (g *GoCloak) CreateRealm(ctx context.Context, token string, realm RealmRepresentation) (string, error)
- func (g *GoCloak) CreateRealmRole(ctx context.Context, token string, realm string, role Role) (string, error)
- func (g *GoCloak) CreateResource(ctx context.Context, token, realm string, idOfClient string, ...) (*ResourceRepresentation, error)
- func (g *GoCloak) CreateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) (*ResourceRepresentation, error)
- func (g *GoCloak) CreateResourcePolicy(ctx context.Context, token, realm, resourceID string, ...) (*ResourcePolicyRepresentation, error)
- func (g *GoCloak) CreateScope(ctx context.Context, token, realm, idOfClient string, ...) (*ScopeRepresentation, error)
- func (g *GoCloak) CreateUser(ctx context.Context, token, realm string, user User) (string, error)
- func (g *GoCloak) CreateUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string, ...) error
- func (g *GoCloak) DecodeAccessToken(ctx context.Context, accessToken, realm string) (*jwt.Token, *jwt.MapClaims, error)
- func (g *GoCloak) DecodeAccessTokenCustomClaims(ctx context.Context, accessToken, realm string, claims jwt.Claims) (*jwt.Token, error)
- func (g *GoCloak) DeleteAuthenticationExecution(ctx context.Context, token, realm, executionID string) error
- func (g *GoCloak) DeleteAuthenticationFlow(ctx context.Context, token, realm, flowID string) error
- func (g *GoCloak) DeleteClient(ctx context.Context, token, realm, idOfClient string) error
- func (g *GoCloak) DeleteClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string) error
- func (g *GoCloak) DeleteClientRepresentation(ctx context.Context, accessToken, realm, clientID string) error
- func (g *GoCloak) DeleteClientRole(ctx context.Context, token, realm, idOfClient, roleName string) error
- func (g *GoCloak) DeleteClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
- func (g *GoCloak) DeleteClientRoleFromGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
- func (g *GoCloak) DeleteClientRoleFromUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) errordeprecated
- func (g *GoCloak) DeleteClientRolesFromUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
- func (g *GoCloak) DeleteClientScope(ctx context.Context, token, realm, scopeID string) error
- func (g *GoCloak) DeleteClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, ...) error
- func (g *GoCloak) DeleteClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
- func (g *GoCloak) DeleteClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID, protocolMapperID string) error
- func (g *GoCloak) DeleteClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string, ...) error
- func (g *GoCloak) DeleteClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string, roles []Role) error
- func (g *GoCloak) DeleteComponent(ctx context.Context, token, realm, componentID string) error
- func (g *GoCloak) DeleteCredentials(ctx context.Context, token, realm, userID, credentialID string) error
- func (g *GoCloak) DeleteGroup(ctx context.Context, token, realm, groupID string) error
- func (g *GoCloak) DeleteIdentityProvider(ctx context.Context, token, realm, alias string) error
- func (g *GoCloak) DeleteIdentityProviderMapper(ctx context.Context, token, realm, alias, mapperID string) error
- func (g *GoCloak) DeletePermission(ctx context.Context, token, realm, idOfClient, permissionID string) error
- func (g *GoCloak) DeletePolicy(ctx context.Context, token, realm, idOfClient, policyID string) error
- func (g *GoCloak) DeleteRealm(ctx context.Context, token, realm string) error
- func (g *GoCloak) DeleteRealmRole(ctx context.Context, token, realm, roleName string) error
- func (g *GoCloak) DeleteRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
- func (g *GoCloak) DeleteRealmRoleFromGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
- func (g *GoCloak) DeleteRealmRoleFromUser(ctx context.Context, token, realm, userID string, roles []Role) error
- func (g *GoCloak) DeleteRequiredAction(ctx context.Context, token string, realm string, alias string) error
- func (g *GoCloak) DeleteResource(ctx context.Context, token, realm, idOfClient, resourceID string) error
- func (g *GoCloak) DeleteResourceClient(ctx context.Context, token, realm, resourceID string) error
- func (g *GoCloak) DeleteResourcePolicy(ctx context.Context, token, realm, permissionID string) error
- func (g *GoCloak) DeleteScope(ctx context.Context, token, realm, idOfClient, scopeID string) error
- func (g *GoCloak) DeleteUser(ctx context.Context, token, realm, userID string) error
- func (g *GoCloak) DeleteUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string) error
- func (g *GoCloak) DeleteUserFromGroup(ctx context.Context, token, realm, userID, groupID string) error
- func (g *GoCloak) DeleteUserPermission(ctx context.Context, token, realm, ticketID string) error
- func (g *GoCloak) DisableAllCredentialsByType(ctx context.Context, token, realm, userID string, types []string) error
- func (g *GoCloak) ExecuteActionsEmail(ctx context.Context, token, realm string, params ExecuteActionsEmail) error
- func (g *GoCloak) ExportIDPPublicBrokerConfig(ctx context.Context, token, realm, alias string) (*string, error)
- func (g *GoCloak) GetAdapterConfiguration(ctx context.Context, accessToken, realm, clientID string) (*AdapterConfiguration, error)
- func (g *GoCloak) GetAuthenticationExecutions(ctx context.Context, token, realm, flow string) ([]*ModifyAuthenticationExecutionRepresentation, error)
- func (g *GoCloak) GetAuthenticationFlow(ctx context.Context, token, realm string, authenticationFlowID string) (*AuthenticationFlowRepresentation, error)
- func (g *GoCloak) GetAuthenticationFlows(ctx context.Context, token, realm string) ([]*AuthenticationFlowRepresentation, error)
- func (g *GoCloak) GetAuthorizationPolicyAssociatedPolicies(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyRepresentation, error)
- func (g *GoCloak) GetAuthorizationPolicyResources(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyResourceRepresentation, error)
- func (g *GoCloak) GetAuthorizationPolicyScopes(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyScopeRepresentation, error)
- func (g *GoCloak) GetAvailableClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
- func (g *GoCloak) GetAvailableClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
- func (g *GoCloak) GetAvailableRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
- func (g *GoCloak) GetAvailableRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
- func (g *GoCloak) GetCerts(ctx context.Context, realm string) (*CertResponse, error)
- func (g *GoCloak) GetClient(ctx context.Context, token, realm, idOfClient string) (*Client, error)
- func (g *GoCloak) GetClientManagementPermissions(ctx context.Context, token, realm string, idOfClient string) (*ManagementPermissionRepresentation, error)
- func (g *GoCloak) GetClientOfflineSessions(ctx context.Context, token, realm, idOfClient string, ...) ([]*UserSessionRepresentation, error)
- func (g *GoCloak) GetClientRepresentation(ctx context.Context, accessToken, realm, clientID string) (*Client, error)
- func (g *GoCloak) GetClientRole(ctx context.Context, token, realm, idOfClient, roleName string) (*Role, error)
- func (g *GoCloak) GetClientRoleByID(ctx context.Context, token, realm, roleID string) (*Role, error)
- func (g *GoCloak) GetClientRoles(ctx context.Context, token, realm, idOfClient string, params GetRoleParams) ([]*Role, error)
- func (g *GoCloak) GetClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
- func (g *GoCloak) GetClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
- func (g *GoCloak) GetClientScope(ctx context.Context, token, realm, scopeID string) (*ClientScope, error)
- func (g *GoCloak) GetClientScopeMappings(ctx context.Context, token, realm, idOfClient string) (*MappingsRepresentation, error)
- func (g *GoCloak) GetClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID, protocolMapperID string) (*ProtocolMappers, error)
- func (g *GoCloak) GetClientScopeProtocolMappers(ctx context.Context, token, realm, scopeID string) ([]*ProtocolMappers, error)
- func (g *GoCloak) GetClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
- func (g *GoCloak) GetClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopesScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
- func (g *GoCloak) GetClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string) ([]*Role, error)
- func (g *GoCloak) GetClientScopesScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, clientScopeID string) ([]*Role, error)
- func (g *GoCloak) GetClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
- func (g *GoCloak) GetClientServiceAccount(ctx context.Context, token, realm, idOfClient string) (*User, error)
- func (g *GoCloak) GetClientUserSessions(ctx context.Context, token, realm, idOfClient string, ...) ([]*UserSessionRepresentation, error)
- func (g *GoCloak) GetClients(ctx context.Context, token, realm string, params GetClientsParams) ([]*Client, error)
- func (g *GoCloak) GetClientsDefaultScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
- func (g *GoCloak) GetClientsOptionalScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
- func (g *GoCloak) GetComponent(ctx context.Context, token, realm string, componentID string) (*Component, error)
- func (g *GoCloak) GetComponents(ctx context.Context, token, realm string) ([]*Component, error)
- func (g *GoCloak) GetComponentsWithParams(ctx context.Context, token, realm string, params GetComponentsParams) ([]*Component, error)
- func (g *GoCloak) GetCompositeClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeClientRolesByRoleID(ctx context.Context, token, realm, idOfClient, roleID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeRealmRoles(ctx context.Context, token, realm, roleName string) ([]*Role, error)
- func (g *GoCloak) GetCompositeRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeRealmRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
- func (g *GoCloak) GetCompositeRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error)
- func (g *GoCloak) GetConfiguredUserStorageCredentialTypes(ctx context.Context, token, realm, userID string) ([]string, error)
- func (g *GoCloak) GetCredentialRegistrators(ctx context.Context, token, realm string) ([]string, error)
- func (g *GoCloak) GetCredentials(ctx context.Context, token, realm, userID string) ([]*CredentialRepresentation, error)
- func (g *GoCloak) GetDefaultDefaultClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
- func (g *GoCloak) GetDefaultGroups(ctx context.Context, token, realm string) ([]*Group, error)
- func (g *GoCloak) GetDefaultOptionalClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
- func (g *GoCloak) GetDependentPermissions(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PermissionRepresentation, error)
- func (g *GoCloak) GetEvents(ctx context.Context, token string, realm string, params GetEventsParams) ([]*EventRepresentation, error)
- func (g *GoCloak) GetGroup(ctx context.Context, token, realm, groupID string) (*Group, error)
- func (g *GoCloak) GetGroupByPath(ctx context.Context, token, realm, groupPath string) (*Group, error)
- func (g *GoCloak) GetGroupManagementPermissions(ctx context.Context, token, realm string, idOfGroup string) (*ManagementPermissionRepresentation, error)
- func (g *GoCloak) GetGroupMembers(ctx context.Context, token, realm, groupID string, params GetGroupsParams) ([]*User, error)
- func (g *GoCloak) GetGroups(ctx context.Context, token, realm string, params GetGroupsParams) ([]*Group, error)
- func (g *GoCloak) GetGroupsByClientRole(ctx context.Context, token, realm string, roleName string, clientID string) ([]*Group, error)
- func (g *GoCloak) GetGroupsByRole(ctx context.Context, token, realm string, roleName string) ([]*Group, error)
- func (g *GoCloak) GetGroupsCount(ctx context.Context, token, realm string, params GetGroupsParams) (int, error)
- func (g *GoCloak) GetIdentityProvider(ctx context.Context, token, realm, alias string) (*IdentityProviderRepresentation, error)
- func (g *GoCloak) GetIdentityProviderMapper(ctx context.Context, token string, realm string, alias string, mapperID string) (*IdentityProviderMapper, error)
- func (g *GoCloak) GetIdentityProviderMapperByID(ctx context.Context, token, realm, alias, mapperID string) (*IdentityProviderMapper, error)
- func (g *GoCloak) GetIdentityProviderMappers(ctx context.Context, token, realm, alias string) ([]*IdentityProviderMapper, error)
- func (g *GoCloak) GetIdentityProviders(ctx context.Context, token, realm string) ([]*IdentityProviderRepresentation, error)
- func (g *GoCloak) GetIssuer(ctx context.Context, realm string) (*IssuerResponse, error)
- func (g *GoCloak) GetKeyStoreConfig(ctx context.Context, token, realm string) (*KeyStoreConfig, error)
- func (g *GoCloak) GetPermission(ctx context.Context, token, realm, idOfClient, permissionID string) (*PermissionRepresentation, error)
- func (g *GoCloak) GetPermissionResources(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionResource, error)
- func (g *GoCloak) GetPermissionScope(ctx context.Context, token, realm, idOfClient string, idOfScope string) (*PolicyRepresentation, error)
- func (g *GoCloak) GetPermissionScopes(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionScope, error)
- func (g *GoCloak) GetPermissions(ctx context.Context, token, realm, idOfClient string, ...) ([]*PermissionRepresentation, error)
- func (g *GoCloak) GetPolicies(ctx context.Context, token, realm, idOfClient string, params GetPolicyParams) ([]*PolicyRepresentation, error)
- func (g *GoCloak) GetPolicy(ctx context.Context, token, realm, idOfClient, policyID string) (*PolicyRepresentation, error)
- func (g *GoCloak) GetRawUserInfo(ctx context.Context, accessToken, realm string) (map[string]interface{}, error)
- func (g *GoCloak) GetRealm(ctx context.Context, token, realm string) (*RealmRepresentation, error)
- func (g *GoCloak) GetRealmRole(ctx context.Context, token, realm, roleName string) (*Role, error)
- func (g *GoCloak) GetRealmRoleByID(ctx context.Context, token, realm, roleID string) (*Role, error)
- func (g *GoCloak) GetRealmRoles(ctx context.Context, token, realm string, params GetRoleParams) ([]*Role, error)
- func (g *GoCloak) GetRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
- func (g *GoCloak) GetRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
- func (g *GoCloak) GetRealms(ctx context.Context, token string) ([]*RealmRepresentation, error)
- func (g *GoCloak) GetRequest(ctx context.Context) *resty.Request
- func (g *GoCloak) GetRequestWithBasicAuth(ctx context.Context, clientID, clientSecret string) *resty.Request
- func (g *GoCloak) GetRequestWithBearerAuth(ctx context.Context, token string) *resty.Request
- func (g *GoCloak) GetRequestWithBearerAuthNoCache(ctx context.Context, token string) *resty.Request
- func (g *GoCloak) GetRequestWithBearerAuthXMLHeader(ctx context.Context, token string) *resty.Request
- func (g *GoCloak) GetRequestingPartyPermissionDecision(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*RequestingPartyPermissionDecision, error)
- func (g *GoCloak) GetRequestingPartyPermissions(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*[]RequestingPartyPermission, error)
- func (g *GoCloak) GetRequestingPartyToken(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*JWT, error)
- func (g *GoCloak) GetRequiredAction(ctx context.Context, token string, realm string, alias string) (*RequiredActionProviderRepresentation, error)
- func (g *GoCloak) GetRequiredActions(ctx context.Context, token string, realm string) ([]*RequiredActionProviderRepresentation, error)
- func (g *GoCloak) GetResource(ctx context.Context, token, realm, idOfClient, resourceID string) (*ResourceRepresentation, error)
- func (g *GoCloak) GetResourceClient(ctx context.Context, token, realm, resourceID string) (*ResourceRepresentation, error)
- func (g *GoCloak) GetResourcePolicies(ctx context.Context, token, realm string, params GetResourcePoliciesParams) ([]*ResourcePolicyRepresentation, error)
- func (g *GoCloak) GetResourcePolicy(ctx context.Context, token, realm, permissionID string) (*ResourcePolicyRepresentation, error)
- func (g *GoCloak) GetResourceServer(ctx context.Context, token, realm, idOfClient string) (*ResourceServerRepresentation, error)
- func (g *GoCloak) GetResources(ctx context.Context, token, realm, idOfClient string, params GetResourceParams) ([]*ResourceRepresentation, error)
- func (g *GoCloak) GetResourcesClient(ctx context.Context, token, realm string, params GetResourceParams) ([]*ResourceRepresentation, error)
- func (g *GoCloak) GetRoleMappingByGroupID(ctx context.Context, token, realm, groupID string) (*MappingsRepresentation, error)
- func (g *GoCloak) GetRoleMappingByUserID(ctx context.Context, token, realm, userID string) (*MappingsRepresentation, error)
- func (g *GoCloak) GetScope(ctx context.Context, token, realm, idOfClient, scopeID string) (*ScopeRepresentation, error)
- func (g *GoCloak) GetScopes(ctx context.Context, token, realm, idOfClient string, params GetScopeParams) ([]*ScopeRepresentation, error)
- func (g *GoCloak) GetServerInfo(ctx context.Context, accessToken string) (*ServerInfoRepresentation, error)
- func (g *GoCloak) GetToken(ctx context.Context, realm string, options TokenOptions) (*JWT, error)
- func (g *GoCloak) GetUserBruteForceDetectionStatus(ctx context.Context, accessToken, realm, userID string) (*BruteForceStatus, error)
- func (g *GoCloak) GetUserByID(ctx context.Context, accessToken, realm, userID string) (*User, error)
- func (g *GoCloak) GetUserCount(ctx context.Context, token string, realm string, params GetUsersParams) (int, error)
- func (g *GoCloak) GetUserFederatedIdentities(ctx context.Context, token, realm, userID string) ([]*FederatedIdentityRepresentation, error)
- func (g *GoCloak) GetUserGroups(ctx context.Context, token, realm, userID string, params GetGroupsParams) ([]*Group, error)
- func (g *GoCloak) GetUserInfo(ctx context.Context, accessToken, realm string) (*UserInfo, error)
- func (g *GoCloak) GetUserOfflineSessionsForClient(ctx context.Context, token, realm, userID, idOfClient string) ([]*UserSessionRepresentation, error)
- func (g *GoCloak) GetUserPermissions(ctx context.Context, token, realm string, params GetUserPermissionParams) ([]*PermissionGrantResponseRepresentation, error)
- func (g *GoCloak) GetUserSessions(ctx context.Context, token, realm, userID string) ([]*UserSessionRepresentation, error)
- func (g *GoCloak) GetUsers(ctx context.Context, token, realm string, params GetUsersParams) ([]*User, error)
- func (g *GoCloak) GetUsersByClientRoleName(ctx context.Context, token, realm, idOfClient, roleName string, ...) ([]*User, error)
- func (g *GoCloak) GetUsersByRoleName(ctx context.Context, token, realm, roleName string, ...) ([]*User, error)
- func (g *GoCloak) GrantUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
- func (g *GoCloak) ImportIdentityProviderConfig(ctx context.Context, token, realm, fromURL, providerID string) (map[string]string, error)
- func (g *GoCloak) ImportIdentityProviderConfigFromFile(ctx context.Context, token, realm, providerID, fileName string, ...) (map[string]string, error)
- func (g *GoCloak) Login(ctx context.Context, clientID, clientSecret, realm, username, password string) (*JWT, error)
- func (g *GoCloak) LoginAdmin(ctx context.Context, username, password, realm string) (*JWT, error)
- func (g *GoCloak) LoginClient(ctx context.Context, clientID, clientSecret, realm string, scopes ...string) (*JWT, error)
- func (g *GoCloak) LoginClientSignedJWT(ctx context.Context, clientID, realm string, key interface{}, ...) (*JWT, error)
- func (g *GoCloak) LoginClientTokenExchange(ctx context.Context, ...) (*JWT, error)
- func (g *GoCloak) LoginOtp(ctx context.Context, ...) (*JWT, error)
- func (g *GoCloak) Logout(ctx context.Context, clientID, clientSecret, realm, refreshToken string) error
- func (g *GoCloak) LogoutAllSessions(ctx context.Context, accessToken, realm, userID string) error
- func (g *GoCloak) LogoutPublicClient(ctx context.Context, clientID, realm, accessToken, refreshToken string) error
- func (g *GoCloak) LogoutUserSession(ctx context.Context, accessToken, realm, session string) error
- func (g *GoCloak) MoveCredentialBehind(ctx context.Context, ...) error
- func (g *GoCloak) MoveCredentialToFirst(ctx context.Context, token, realm, userID, credentialID string) error
- func (g *GoCloak) RefreshToken(ctx context.Context, refreshToken, clientID, clientSecret, realm string) (*JWT, error)
- func (g *GoCloak) RegenerateClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
- func (g *GoCloak) RegisterRequiredAction(ctx context.Context, token string, realm string, ...) error
- func (g *GoCloak) RemoveDefaultGroup(ctx context.Context, token, realm, groupID string) error
- func (g *GoCloak) RemoveDefaultScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
- func (g *GoCloak) RemoveOptionalScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
- func (g *GoCloak) RestyClient() *resty.Client
- func (g *GoCloak) RetrospectToken(ctx context.Context, accessToken, clientID, clientSecret, realm string) (*IntroSpectTokenResult, error)
- func (g *GoCloak) RevokeToken(ctx context.Context, realm, clientID, clientSecret, refreshToken string) error
- func (g *GoCloak) RevokeUserConsents(ctx context.Context, accessToken, realm, userID, clientID string) error
- func (g *GoCloak) SendVerifyEmail(ctx context.Context, token, userID, realm string, ...) error
- func (g *GoCloak) SetPassword(ctx context.Context, token, userID, realm, password string, temporary bool) error
- func (g *GoCloak) SetRestyClient(restyClient *resty.Client)
- func (g *GoCloak) UpdateAuthenticationExecution(ctx context.Context, token, realm, flow string, ...) error
- func (g *GoCloak) UpdateAuthenticationFlow(ctx context.Context, token, realm string, ...) (*AuthenticationFlowRepresentation, error)
- func (g *GoCloak) UpdateClient(ctx context.Context, token, realm string, updatedClient Client) error
- func (g *GoCloak) UpdateClientManagementPermissions(ctx context.Context, accessToken, realm string, idOfClient string, ...) (*ManagementPermissionRepresentation, error)
- func (g *GoCloak) UpdateClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string, ...) error
- func (g *GoCloak) UpdateClientRepresentation(ctx context.Context, accessToken, realm string, updatedClient Client) (*Client, error)
- func (g *GoCloak) UpdateClientScope(ctx context.Context, token, realm string, scope ClientScope) error
- func (g *GoCloak) UpdateClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID string, ...) error
- func (g *GoCloak) UpdateComponent(ctx context.Context, token, realm string, component Component) error
- func (g *GoCloak) UpdateCredentialUserLabel(ctx context.Context, token, realm, userID, credentialID, userLabel string) error
- func (g *GoCloak) UpdateGroup(ctx context.Context, token, realm string, updatedGroup Group) error
- func (g *GoCloak) UpdateGroupManagementPermissions(ctx context.Context, accessToken, realm string, idOfGroup string, ...) (*ManagementPermissionRepresentation, error)
- func (g *GoCloak) UpdateIdentityProvider(ctx context.Context, token, realm, alias string, ...) error
- func (g *GoCloak) UpdateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) error
- func (g *GoCloak) UpdatePermission(ctx context.Context, token, realm, idOfClient string, ...) error
- func (g *GoCloak) UpdatePermissionScope(ctx context.Context, token, realm, idOfClient string, idOfScope string, ...) error
- func (g *GoCloak) UpdatePolicy(ctx context.Context, token, realm, idOfClient string, ...) error
- func (g *GoCloak) UpdateRealm(ctx context.Context, token string, realm RealmRepresentation) error
- func (g *GoCloak) UpdateRealmRole(ctx context.Context, token, realm, roleName string, role Role) error
- func (g *GoCloak) UpdateRealmRoleByID(ctx context.Context, token, realm, roleID string, role Role) error
- func (g *GoCloak) UpdateRequiredAction(ctx context.Context, token string, realm string, ...) error
- func (g *GoCloak) UpdateResource(ctx context.Context, token, realm, idOfClient string, ...) error
- func (g *GoCloak) UpdateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) error
- func (g *GoCloak) UpdateResourcePolicy(ctx context.Context, token, realm, permissionID string, ...) error
- func (g *GoCloak) UpdateRole(ctx context.Context, token, realm, idOfClient string, role Role) error
- func (g *GoCloak) UpdateScope(ctx context.Context, token, realm, idOfClient string, ...) error
- func (g *GoCloak) UpdateUser(ctx context.Context, token, realm string, user User) error
- func (g *GoCloak) UpdateUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
- type Group
- type GroupDefinition
- type GroupPolicyRepresentation
- type GroupsCount
- type HTTPErrorResponse
- type IdentityProviderMapper
- type IdentityProviderRepresentation
- type IntroSpectTokenResult
- type IssuerResponse
- type JSPolicyRepresentation
- type JWT
- type Key
- type KeyStoreConfig
- type Logic
- type ManagementPermissionRepresentation
- 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 Role
- type RoleDefinition
- type RolePolicyRepresentation
- type RolesRepresentation
- type ScopeRepresentation
- type SendVerificationMailParams
- type ServerInfoRepresentation
- type SetPasswordRequest
- type StringOrArray
- type SystemInfoRepresentation
- type ThemeRepresentation
- type Themes
- 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 ¶
SetAuthAdminRealms sets the auth admin realm
func SetAuthRealms ¶
SetAuthRealms sets the auth realm
func SetCertCacheInvalidationTime ¶
SetCertCacheInvalidationTime sets the logout
func SetLegacyWildFlySupport ¶
func SetLegacyWildFlySupport() func(g *GoCloak)
SetLegacyWildFlySupport maintain legacy WildFly support.
func SetLogoutEndpoint ¶
SetLogoutEndpoint sets the logout
func SetOpenIDConnectEndpoint ¶
SetOpenIDConnectEndpoint sets the logout
func SetRevokeEndpoint ¶
SetRevokeEndpoint sets the revoke endpoint
func SetTokenEndpoint ¶
SetTokenEndpoint sets the token endpoint
func UserAttributeContains ¶
UserAttributeContains checks if the given attribute value is set
Types ¶
type APIErrType ¶
type APIErrType string
APIErrType is a field containing more specific API error types that may be checked by the receiver.
const ( // APIErrTypeUnknown is for API errors that are not strongly // typed. APIErrTypeUnknown APIErrType = "unknown" // APIErrTypeInvalidGrant corresponds with Keycloak's // OAuthErrorException due to "invalid_grant". APIErrTypeInvalidGrant = "oauth: invalid grant" )
func ParseAPIErrType ¶
func ParseAPIErrType(err error) APIErrType
ParseAPIErrType is a convenience method for returning strongly typed API errors.
type APIError ¶
type APIError struct { Code int `json:"code"` Message string `json:"message"` Type APIErrType `json:"type"` }
APIError holds message and statusCode for api errors
type Access ¶
type Access struct { ManageGroupMembership *bool `json:"manageGroupMembership,omitempty"` View *bool `json:"view,omitempty"` MapRoles *bool `json:"mapRoles,omitempty"` Impersonate *bool `json:"impersonate,omitempty"` Manage *bool `json:"manage,omitempty"` }
Access represents access
type AccessRepresentation ¶
type AccessRepresentation struct { ManageGroupMembership *bool `json:"manageGroupMembership,omitempty"` View *bool `json:"view,omitempty"` MapRoles *bool `json:"mapRoles,omitempty"` Impersonate *bool `json:"impersonate,omitempty"` Manage *bool `json:"manage,omitempty"` }
AccessRepresentation represents the access parameters returned in the permission ticket description
func (*AccessRepresentation) String ¶
func (v *AccessRepresentation) String() string
type ActiveKeys ¶
type ActiveKeys struct { HS256 *string `json:"HS256,omitempty"` RS256 *string `json:"RS256,omitempty"` AES *string `json:"AES,omitempty"` }
ActiveKeys holds the active keys
func (*ActiveKeys) String ¶
func (v *ActiveKeys) String() string
type AdapterConfiguration ¶
type AdapterConfiguration struct { Realm *string `json:"realm"` AuthServerURL *string `json:"auth-server-url"` SSLRequired *string `json:"ssl-required"` Resource *string `json:"resource"` Credentials interface{} `json:"credentials"` ConfidentialPort *int `json:"confidential-port"` }
AdapterConfiguration represents adapter configuration of a client
type AggregatedPolicyRepresentation ¶
type AggregatedPolicyRepresentation struct {
Policies *[]string `json:"policies,omitempty"`
}
AggregatedPolicyRepresentation represents aggregated policies
func (*AggregatedPolicyRepresentation) String ¶
func (v *AggregatedPolicyRepresentation) String() string
type Attributes ¶
type Attributes struct { LDAPENTRYDN *[]string `json:"LDAP_ENTRY_DN,omitempty"` LDAPID *[]string `json:"LDAP_ID,omitempty"` }
Attributes holds Attributes
func (*Attributes) String ¶
func (v *Attributes) String() string
type AuthenticationExecutionRepresentation ¶
type AuthenticationExecutionRepresentation struct { Authenticator *string `json:"authenticator,omitempty"` AuthenticatorConfig *string `json:"authenticatorConfig,omitempty"` AuthenticatorFlow *bool `json:"authenticatorFlow,omitempty"` AutheticatorFlow *bool `json:"autheticatorFlow,omitempty"` FlowAlias *string `json:"flowAlias,omitempty"` Priority *int `json:"priority,omitempty"` Requirement *string `json:"requirement,omitempty"` UserSetupAllowed *bool `json:"userSetupAllowed,omitempty"` }
AuthenticationExecutionRepresentation represents the authentication execution of an AuthenticationFlowRepresentation
type AuthenticationFlowRepresentation ¶
type AuthenticationFlowRepresentation struct { Alias *string `json:"alias,omitempty"` AuthenticationExecutions *[]AuthenticationExecutionRepresentation `json:"authenticationExecutions,omitempty"` BuiltIn *bool `json:"builtIn,omitempty"` Description *string `json:"description,omitempty"` ID *string `json:"id,omitempty"` ProviderID *string `json:"providerId,omitempty"` TopLevel *bool `json:"topLevel,omitempty"` }
AuthenticationFlowRepresentation represents an authentication flow of a realm
type AuthorizationParameters ¶
type AuthorizationParameters struct { ResponseType *string `json:"code,omitempty"` ClientID *string `json:"client_id,omitempty"` Scope *string `json:"scope,omitempty"` RedirectURI *string `json:"redirect_uri,omitempty"` State *string `json:"state,omitempty"` Nonce *string `json:"nonce,omitempty"` IDTokenHint *string `json:"id_token_hint,omitempty"` }
AuthorizationParameters represents the options to obtain get an authorization
func (*AuthorizationParameters) FormData ¶
func (p *AuthorizationParameters) FormData() map[string]string
FormData returns a map of options to be used in SetFormData function
type AuthorizationResponse ¶
type AuthorizationResponse struct { }
AuthorizationResponse represents the response to an authorization request.
type BruteForceStatus ¶
type BruteForceStatus struct { NumFailures *int `json:"numFailures,omitempty"` Disabled *bool `json:"disabled,omitempty"` LastIPFailure *string `json:"lastIPFailure,omitempty"` LastFailure *int `json:"lastFailure,omitempty"` }
BruteForceStatus is a representation of realm user regarding brute force attack
func (*BruteForceStatus) String ¶
func (v *BruteForceStatus) String() string
type BuiltinProtocolMappers ¶
type BuiltinProtocolMappers struct { SAML []ProtocolMapperRepresentation `json:"saml,omitempty"` OpenIDConnect []ProtocolMapperRepresentation `json:"openid-connect,omitempty"` }
BuiltinProtocolMappers holds the currently available built-in blueprints of ProtocolMapper-s grouped by protocol
type CertResponse ¶
type CertResponse struct {
Keys *[]CertResponseKey `json:"keys,omitempty"`
}
CertResponse is returned by the certs endpoint
func (*CertResponse) String ¶
func (v *CertResponse) String() string
type CertResponseKey ¶
type CertResponseKey struct { Kid *string `json:"kid,omitempty"` Kty *string `json:"kty,omitempty"` Alg *string `json:"alg,omitempty"` Use *string `json:"use,omitempty"` N *string `json:"n,omitempty"` E *string `json:"e,omitempty"` X *string `json:"x,omitempty"` Y *string `json:"y,omitempty"` Crv *string `json:"crv,omitempty"` KeyOps *[]string `json:"key_ops,omitempty"` X5u *string `json:"x5u,omitempty"` X5c *[]string `json:"x5c,omitempty"` X5t *string `json:"x5t,omitempty"` X5tS256 *string `json:"x5t#S256,omitempty"` }
CertResponseKey is returned by the certs endpoint. JSON Web Key structure is described here: https://self-issued.info/docs/draft-ietf-jose-json-web-key.html#JWKContents
func (*CertResponseKey) String ¶
func (v *CertResponseKey) String() string
Stringer implementations for all struct types
type Client ¶
type Client struct { Access *map[string]interface{} `json:"access,omitempty"` AdminURL *string `json:"adminUrl,omitempty"` Attributes *map[string]string `json:"attributes,omitempty"` AuthenticationFlowBindingOverrides *map[string]string `json:"authenticationFlowBindingOverrides,omitempty"` AuthorizationServicesEnabled *bool `json:"authorizationServicesEnabled,omitempty"` AuthorizationSettings *ResourceServerRepresentation `json:"authorizationSettings,omitempty"` BaseURL *string `json:"baseUrl,omitempty"` BearerOnly *bool `json:"bearerOnly,omitempty"` ClientAuthenticatorType *string `json:"clientAuthenticatorType,omitempty"` ClientID *string `json:"clientId,omitempty"` ConsentRequired *bool `json:"consentRequired,omitempty"` DefaultClientScopes *[]string `json:"defaultClientScopes,omitempty"` DefaultRoles *[]string `json:"defaultRoles,omitempty"` Description *string `json:"description,omitempty"` DirectAccessGrantsEnabled *bool `json:"directAccessGrantsEnabled,omitempty"` Enabled *bool `json:"enabled,omitempty"` FrontChannelLogout *bool `json:"frontchannelLogout,omitempty"` FullScopeAllowed *bool `json:"fullScopeAllowed,omitempty"` ID *string `json:"id,omitempty"` ImplicitFlowEnabled *bool `json:"implicitFlowEnabled,omitempty"` Name *string `json:"name,omitempty"` NodeReRegistrationTimeout *int32 `json:"nodeReRegistrationTimeout,omitempty"` NotBefore *int32 `json:"notBefore,omitempty"` OptionalClientScopes *[]string `json:"optionalClientScopes,omitempty"` Origin *string `json:"origin,omitempty"` Protocol *string `json:"protocol,omitempty"` ProtocolMappers *[]ProtocolMapperRepresentation `json:"protocolMappers,omitempty"` PublicClient *bool `json:"publicClient,omitempty"` RedirectURIs *[]string `json:"redirectUris,omitempty"` RegisteredNodes *map[string]int `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 GetClientUserSessionsParams ¶
type GetClientUserSessionsParams struct { First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` }
GetClientUserSessionsParams represents the optional parameters for getting user sessions associated with the client
func (*GetClientUserSessionsParams) String ¶
func (v *GetClientUserSessionsParams) String() string
type GetClientsParams ¶
type GetClientsParams struct { ClientID *string `json:"clientId,omitempty"` ViewableOnly *bool `json:"viewableOnly,string,omitempty"` First *int `json:"first,string,omitempty"` Max *int `json:"max,string,omitempty"` Search *bool `json:"search,string,omitempty"` SearchableAttributes *string `json:"q,omitempty"` }
GetClientsParams represents the query parameters
func (*GetClientsParams) String ¶
func (v *GetClientsParams) String() string
type GetComponentsParams ¶
type GetComponentsParams struct { Name *string `json:"name,omitempty"` ProviderType *string `json:"provider,omitempty"` ParentID *string `json:"parent,omitempty"` }
GetComponentsParams represents the optional parameters for getting components
func (*GetComponentsParams) String ¶
func (v *GetComponentsParams) String() string
type GetEventsParams ¶
type GetEventsParams struct { Client *string `json:"client,omitempty"` DateFrom *string `json:"dateFrom,omitempty"` DateTo *string `json:"dateTo,omitempty"` First *int32 `json:"first,string,omitempty"` IPAddress *string `json:"ipAddress,omitempty"` Max *int32 `json:"max,string,omitempty"` Type []string `json:"type,omitempty"` UserID *string `json:"user,omitempty"` }
GetEventsParams represents the optional parameters for getting events
type GetGroupsParams ¶
type GetGroupsParams struct { BriefRepresentation *bool `json:"briefRepresentation,string,omitempty"` Exact *bool `json:"exact,string,omitempty"` First *int `json:"first,string,omitempty"` Full *bool `json:"full,string,omitempty"` Max *int `json:"max,string,omitempty"` Q *string `json:"q,omitempty"` Search *string `json:"search,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 struct { Config struct { CertsInvalidateTime time.Duration // contains filtered or unexported fields } // contains filtered or unexported fields }
GoCloak provides functionalities to talk to Keycloak.
func (*GoCloak) AddClientRoleComposite ¶
func (g *GoCloak) AddClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
AddClientRoleComposite adds roles as composite
func (*GoCloak) AddClientRolesToGroup ¶
func (g *GoCloak) AddClientRolesToGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
AddClientRolesToGroup adds a client role to the group
func (*GoCloak) AddClientRolesToUser ¶
func (g *GoCloak) AddClientRolesToUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
AddClientRolesToUser adds client-level role mappings
func (*GoCloak) AddDefaultGroup ¶
AddDefaultGroup adds group to the list of default groups
func (*GoCloak) AddDefaultScopeToClient ¶
func (g *GoCloak) AddDefaultScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
AddDefaultScopeToClient adds a client scope to the list of client's default scopes
func (*GoCloak) AddOptionalScopeToClient ¶
func (g *GoCloak) AddOptionalScopeToClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
AddOptionalScopeToClient adds a client scope to the list of client's optional scopes
func (*GoCloak) AddRealmRoleComposite ¶
func (g *GoCloak) AddRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
AddRealmRoleComposite adds a role to the composite.
func (*GoCloak) AddRealmRoleToGroup ¶
func (g *GoCloak) AddRealmRoleToGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
AddRealmRoleToGroup adds realm-level role mappings
func (*GoCloak) AddRealmRoleToUser ¶
func (g *GoCloak) AddRealmRoleToUser(ctx context.Context, token, realm, userID string, roles []Role) error
AddRealmRoleToUser adds realm-level role mappings
func (*GoCloak) AddUserToGroup ¶
AddUserToGroup puts given user to given group
func (*GoCloak) ClearKeysCache ¶
ClearKeysCache clears realm cache
func (*GoCloak) ClearRealmCache ¶
ClearRealmCache clears realm cache
func (*GoCloak) ClearUserCache ¶
ClearUserCache clears realm cache
func (*GoCloak) CreateAuthenticationExecution ¶
func (g *GoCloak) CreateAuthenticationExecution(ctx context.Context, token, realm, flow string, execution CreateAuthenticationExecutionRepresentation) error
CreateAuthenticationExecution creates a new execution for the given flow name in the given realm
func (*GoCloak) CreateAuthenticationExecutionFlow ¶
func (g *GoCloak) CreateAuthenticationExecutionFlow(ctx context.Context, token, realm, flow string, executionFlow CreateAuthenticationExecutionFlowRepresentation) error
CreateAuthenticationExecutionFlow creates a new execution for the given flow name in the given realm
func (*GoCloak) CreateAuthenticationFlow ¶
func (g *GoCloak) CreateAuthenticationFlow(ctx context.Context, token, realm string, flow AuthenticationFlowRepresentation) error
CreateAuthenticationFlow creates a new Authentication flow in a realm
func (*GoCloak) CreateChildGroup ¶
func (g *GoCloak) CreateChildGroup(ctx context.Context, token, realm, groupID string, group Group) (string, error)
CreateChildGroup creates a new child group
func (*GoCloak) CreateClient ¶
func (g *GoCloak) CreateClient(ctx context.Context, accessToken, realm string, newClient Client) (string, error)
CreateClient creates the given g.
func (*GoCloak) CreateClientProtocolMapper ¶
func (g *GoCloak) CreateClientProtocolMapper(ctx context.Context, token, realm, idOfClient string, mapper ProtocolMapperRepresentation) (string, error)
CreateClientProtocolMapper creates a protocol mapper in client scope
func (*GoCloak) CreateClientRepresentation ¶
func (g *GoCloak) CreateClientRepresentation(ctx context.Context, token, realm string, newClient Client) (*Client, error)
CreateClientRepresentation creates a new client representation
func (*GoCloak) CreateClientRole ¶
func (g *GoCloak) CreateClientRole(ctx context.Context, token, realm, idOfClient string, role Role) (string, error)
CreateClientRole creates a new role for a client
func (*GoCloak) CreateClientScope ¶
func (g *GoCloak) CreateClientScope(ctx context.Context, token, realm string, scope ClientScope) (string, error)
CreateClientScope creates a new client scope
func (*GoCloak) CreateClientScopeMappingsClientRoles ¶
func (g *GoCloak) CreateClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error
CreateClientScopeMappingsClientRoles creates client-level roles from the client’s scope
func (*GoCloak) CreateClientScopeMappingsRealmRoles ¶
func (g *GoCloak) CreateClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
CreateClientScopeMappingsRealmRoles create realm-level roles to the client’s scope
func (*GoCloak) CreateClientScopeProtocolMapper ¶
func (g *GoCloak) CreateClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID string, protocolMapper ProtocolMappers) (string, error)
CreateClientScopeProtocolMapper creates a new protocolMapper under the given client scope
func (*GoCloak) CreateClientScopesScopeMappingsClientRoles ¶
func (g *GoCloak) CreateClientScopesScopeMappingsClientRoles( ctx context.Context, token, realm, idOfClientScope, idOfClient string, roles []Role, ) error
CreateClientScopesScopeMappingsClientRoles attaches a client role to a client scope (not client's scope)
func (*GoCloak) CreateClientScopesScopeMappingsRealmRoles ¶
func (g *GoCloak) CreateClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string, roles []Role) error
CreateClientScopesScopeMappingsRealmRoles creates realm-level roles to the client scope
func (*GoCloak) CreateComponent ¶
func (g *GoCloak) CreateComponent(ctx context.Context, token, realm string, component Component) (string, error)
CreateComponent creates the given component.
func (*GoCloak) CreateGroup ¶
func (g *GoCloak) CreateGroup(ctx context.Context, token, realm string, group Group) (string, error)
CreateGroup creates a new group.
func (*GoCloak) CreateIdentityProvider ¶
func (g *GoCloak) CreateIdentityProvider(ctx context.Context, token string, realm string, providerRep IdentityProviderRepresentation) (string, error)
CreateIdentityProvider creates an identity provider in a realm
func (*GoCloak) CreateIdentityProviderMapper ¶
func (g *GoCloak) CreateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) (string, error)
CreateIdentityProviderMapper creates an instance of an identity provider mapper associated with the given alias
func (*GoCloak) CreatePermission ¶
func (g *GoCloak) CreatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) (*PermissionRepresentation, error)
CreatePermission creates a permission associated with the client
func (*GoCloak) CreatePermissionTicket ¶
func (g *GoCloak) CreatePermissionTicket(ctx context.Context, token, realm string, permissions []CreatePermissionTicketParams) (*PermissionTicketResponseRepresentation, error)
CreatePermissionTicket creates a permission ticket, using access token from client
func (*GoCloak) CreatePolicy ¶
func (g *GoCloak) CreatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) (*PolicyRepresentation, error)
CreatePolicy creates a policy associated with the client
func (*GoCloak) CreateRealm ¶
func (g *GoCloak) CreateRealm(ctx context.Context, token string, realm RealmRepresentation) (string, error)
CreateRealm creates a realm
func (*GoCloak) CreateRealmRole ¶
func (g *GoCloak) CreateRealmRole(ctx context.Context, token string, realm string, role Role) (string, error)
CreateRealmRole creates a role in a realm
func (*GoCloak) CreateResource ¶
func (g *GoCloak) CreateResource(ctx context.Context, token, realm string, idOfClient string, resource ResourceRepresentation) (*ResourceRepresentation, error)
CreateResource creates a resource associated with the client, using access token from admin
func (*GoCloak) CreateResourceClient ¶
func (g *GoCloak) CreateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) (*ResourceRepresentation, error)
CreateResourceClient creates a resource associated with the client, using access token from client
func (*GoCloak) CreateResourcePolicy ¶
func (g *GoCloak) CreateResourcePolicy(ctx context.Context, token, realm, resourceID string, policy ResourcePolicyRepresentation) (*ResourcePolicyRepresentation, error)
CreateResourcePolicy associates a permission with a specific resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange
func (*GoCloak) CreateScope ¶
func (g *GoCloak) CreateScope(ctx context.Context, token, realm, idOfClient string, scope ScopeRepresentation) (*ScopeRepresentation, error)
CreateScope creates a scope associated with the client
func (*GoCloak) CreateUser ¶
CreateUser creates the given user in the given realm and returns it's userID Note: Keycloak has not documented what members of the User object are actually being accepted, when creating a user. Things like RealmRoles must be attached using followup calls to the respective functions.
func (*GoCloak) CreateUserFederatedIdentity ¶
func (g *GoCloak) CreateUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string, federatedIdentityRep FederatedIdentityRepresentation) error
CreateUserFederatedIdentity creates an user federated identity
func (*GoCloak) DecodeAccessToken ¶
func (g *GoCloak) DecodeAccessToken(ctx context.Context, accessToken, realm string) (*jwt.Token, *jwt.MapClaims, error)
DecodeAccessToken decodes the accessToken
func (*GoCloak) DecodeAccessTokenCustomClaims ¶
func (g *GoCloak) DecodeAccessTokenCustomClaims(ctx context.Context, accessToken, realm string, claims jwt.Claims) (*jwt.Token, error)
DecodeAccessTokenCustomClaims decodes the accessToken and writes claims into the given claims
func (*GoCloak) DeleteAuthenticationExecution ¶
func (g *GoCloak) DeleteAuthenticationExecution(ctx context.Context, token, realm, executionID string) error
DeleteAuthenticationExecution delete a single execution with the given ID
func (*GoCloak) DeleteAuthenticationFlow ¶
DeleteAuthenticationFlow deletes a flow in a realm with the given ID
func (*GoCloak) DeleteClient ¶
DeleteClient deletes a given client
func (*GoCloak) DeleteClientProtocolMapper ¶
func (g *GoCloak) DeleteClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string) error
DeleteClientProtocolMapper deletes a protocol mapper in client scope
func (*GoCloak) DeleteClientRepresentation ¶
func (g *GoCloak) DeleteClientRepresentation(ctx context.Context, accessToken, realm, clientID string) error
DeleteClientRepresentation deletes a given client representation.
func (*GoCloak) DeleteClientRole ¶
func (g *GoCloak) DeleteClientRole(ctx context.Context, token, realm, idOfClient, roleName string) error
DeleteClientRole deletes a given role.
func (*GoCloak) DeleteClientRoleComposite ¶
func (g *GoCloak) DeleteClientRoleComposite(ctx context.Context, token, realm, roleID string, roles []Role) error
DeleteClientRoleComposite deletes composites from a role
func (*GoCloak) DeleteClientRoleFromGroup ¶
func (g *GoCloak) DeleteClientRoleFromGroup(ctx context.Context, token, realm, idOfClient, groupID string, roles []Role) error
DeleteClientRoleFromGroup removes a client role from from the group
func (*GoCloak) DeleteClientRolesFromUser ¶
func (g *GoCloak) DeleteClientRolesFromUser(ctx context.Context, token, realm, idOfClient, userID string, roles []Role) error
DeleteClientRolesFromUser adds client-level role mappings
func (*GoCloak) DeleteClientScope ¶
DeleteClientScope deletes the scope with the given id.
func (*GoCloak) DeleteClientScopeMappingsClientRoles ¶
func (g *GoCloak) DeleteClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string, roles []Role) error
DeleteClientScopeMappingsClientRoles deletes client-level roles from the client’s scope
func (*GoCloak) DeleteClientScopeMappingsRealmRoles ¶
func (g *GoCloak) DeleteClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string, roles []Role) error
DeleteClientScopeMappingsRealmRoles deletes realm-level roles from the client’s scope
func (*GoCloak) DeleteClientScopeProtocolMapper ¶
func (g *GoCloak) DeleteClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID, protocolMapperID string) error
DeleteClientScopeProtocolMapper deletes the given protocol mapper from the client scope
func (*GoCloak) DeleteClientScopesScopeMappingsClientRoles ¶
func (g *GoCloak) DeleteClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string, roles []Role) error
DeleteClientScopesScopeMappingsClientRoles removes attachment of client roles from a client scope (not client's scope).
func (*GoCloak) DeleteClientScopesScopeMappingsRealmRoles ¶
func (g *GoCloak) DeleteClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string, roles []Role) error
DeleteClientScopesScopeMappingsRealmRoles deletes realm-level roles from the client-scope
func (*GoCloak) DeleteComponent ¶
DeleteComponent deletes the component with the given id.
func (*GoCloak) DeleteCredentials ¶
func (g *GoCloak) DeleteCredentials(ctx context.Context, token, realm, userID, credentialID string) error
DeleteCredentials deletes the given credential for a given user
func (*GoCloak) DeleteGroup ¶
DeleteGroup deletes the group with the given groupID.
func (*GoCloak) DeleteIdentityProvider ¶
DeleteIdentityProvider deletes the identity provider in a realm
func (*GoCloak) DeleteIdentityProviderMapper ¶
func (g *GoCloak) DeleteIdentityProviderMapper(ctx context.Context, token, realm, alias, mapperID string) error
DeleteIdentityProviderMapper deletes an instance of an identity provider mapper associated with the given alias and mapper ID
func (*GoCloak) DeletePermission ¶
func (g *GoCloak) DeletePermission(ctx context.Context, token, realm, idOfClient, permissionID string) error
DeletePermission deletes a policy associated with the client
func (*GoCloak) DeletePolicy ¶
func (g *GoCloak) DeletePolicy(ctx context.Context, token, realm, idOfClient, policyID string) error
DeletePolicy deletes a policy associated with the client
func (*GoCloak) DeleteRealm ¶
DeleteRealm removes a realm
func (*GoCloak) DeleteRealmRole ¶
DeleteRealmRole deletes a role in a realm by role's name
func (*GoCloak) DeleteRealmRoleComposite ¶
func (g *GoCloak) DeleteRealmRoleComposite(ctx context.Context, token, realm, roleName string, roles []Role) error
DeleteRealmRoleComposite deletes a role from the composite.
func (*GoCloak) DeleteRealmRoleFromGroup ¶
func (g *GoCloak) DeleteRealmRoleFromGroup(ctx context.Context, token, realm, groupID string, roles []Role) error
DeleteRealmRoleFromGroup deletes realm-level role mappings
func (*GoCloak) DeleteRealmRoleFromUser ¶
func (g *GoCloak) DeleteRealmRoleFromUser(ctx context.Context, token, realm, userID string, roles []Role) error
DeleteRealmRoleFromUser deletes realm-level role mappings
func (*GoCloak) DeleteRequiredAction ¶
func (g *GoCloak) DeleteRequiredAction(ctx context.Context, token string, realm string, alias string) error
DeleteRequiredAction updates a required action for a given realm
func (*GoCloak) DeleteResource ¶
func (g *GoCloak) DeleteResource(ctx context.Context, token, realm, idOfClient, resourceID string) error
DeleteResource deletes a resource associated with the client (using an admin token)
func (*GoCloak) DeleteResourceClient ¶
DeleteResourceClient deletes a resource associated with the client (using a client token)
func (*GoCloak) DeleteResourcePolicy ¶
func (g *GoCloak) DeleteResourcePolicy(ctx context.Context, token, realm, permissionID string) error
DeleteResourcePolicy deletes a permission for a specific resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange
func (*GoCloak) DeleteScope ¶
DeleteScope deletes a scope associated with the client
func (*GoCloak) DeleteUser ¶
DeleteUser delete a given user
func (*GoCloak) DeleteUserFederatedIdentity ¶
func (g *GoCloak) DeleteUserFederatedIdentity(ctx context.Context, token, realm, userID, providerID string) error
DeleteUserFederatedIdentity deletes an user federated identity
func (*GoCloak) DeleteUserFromGroup ¶
func (g *GoCloak) DeleteUserFromGroup(ctx context.Context, token, realm, userID, groupID string) error
DeleteUserFromGroup deletes given user from given group
func (*GoCloak) DeleteUserPermission ¶
DeleteUserPermission revokes permissions according query parameters
func (*GoCloak) DisableAllCredentialsByType ¶
func (g *GoCloak) DisableAllCredentialsByType(ctx context.Context, token, realm, userID string, types []string) error
DisableAllCredentialsByType disables all credentials for a user of a specific type
func (*GoCloak) ExecuteActionsEmail ¶
func (g *GoCloak) ExecuteActionsEmail(ctx context.Context, token, realm string, params ExecuteActionsEmail) error
ExecuteActionsEmail executes an actions email
func (*GoCloak) ExportIDPPublicBrokerConfig ¶
func (g *GoCloak) ExportIDPPublicBrokerConfig(ctx context.Context, token, realm, alias string) (*string, error)
ExportIDPPublicBrokerConfig exports the broker config for a given alias
func (*GoCloak) GetAdapterConfiguration ¶
func (g *GoCloak) GetAdapterConfiguration(ctx context.Context, accessToken, realm, clientID string) (*AdapterConfiguration, error)
GetAdapterConfiguration returns a adapter configuration
func (*GoCloak) GetAuthenticationExecutions ¶
func (g *GoCloak) GetAuthenticationExecutions(ctx context.Context, token, realm, flow string) ([]*ModifyAuthenticationExecutionRepresentation, error)
GetAuthenticationExecutions retrieves all executions of a given flow
func (*GoCloak) GetAuthenticationFlow ¶
func (g *GoCloak) GetAuthenticationFlow(ctx context.Context, token, realm string, authenticationFlowID string) (*AuthenticationFlowRepresentation, error)
GetAuthenticationFlow get an authentication flow with the given ID
func (*GoCloak) GetAuthenticationFlows ¶
func (g *GoCloak) GetAuthenticationFlows(ctx context.Context, token, realm string) ([]*AuthenticationFlowRepresentation, error)
GetAuthenticationFlows get all authentication flows from a realm
func (*GoCloak) GetAuthorizationPolicyAssociatedPolicies ¶
func (g *GoCloak) GetAuthorizationPolicyAssociatedPolicies(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyRepresentation, error)
GetAuthorizationPolicyAssociatedPolicies returns a client's associated policies of specific policy with the given policy id, using access token from admin
func (*GoCloak) GetAuthorizationPolicyResources ¶
func (g *GoCloak) GetAuthorizationPolicyResources(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyResourceRepresentation, error)
GetAuthorizationPolicyResources returns a client's resources of specific policy with the given policy id, using access token from admin
func (*GoCloak) GetAuthorizationPolicyScopes ¶
func (g *GoCloak) GetAuthorizationPolicyScopes(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PolicyScopeRepresentation, error)
GetAuthorizationPolicyScopes returns a client's scopes of specific policy with the given policy id, using access token from admin
func (*GoCloak) GetAvailableClientRolesByGroupID ¶
func (g *GoCloak) GetAvailableClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
GetAvailableClientRolesByGroupID returns all available roles to the given group
func (*GoCloak) GetAvailableClientRolesByUserID ¶
func (g *GoCloak) GetAvailableClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetAvailableClientRolesByUserID returns all available client roles to the given user
func (*GoCloak) GetAvailableRealmRolesByGroupID ¶
func (g *GoCloak) GetAvailableRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
GetAvailableRealmRolesByGroupID returns all available realm roles to the given group
func (*GoCloak) GetAvailableRealmRolesByUserID ¶
func (g *GoCloak) GetAvailableRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
GetAvailableRealmRolesByUserID returns all available realm roles to the given user
func (*GoCloak) GetCerts ¶
GetCerts fetches certificates for the given realm from the public /open-id-connect/certs endpoint
func (*GoCloak) GetClientManagementPermissions ¶
func (g *GoCloak) GetClientManagementPermissions(ctx context.Context, token, realm string, idOfClient string) (*ManagementPermissionRepresentation, error)
GetClientManagementPermissions returns whether client Authorization permissions have been initialized or not and a reference to the managed permissions
func (*GoCloak) GetClientOfflineSessions ¶
func (g *GoCloak) GetClientOfflineSessions(ctx context.Context, token, realm, idOfClient string, params ...GetClientUserSessionsParams) ([]*UserSessionRepresentation, error)
GetClientOfflineSessions returns offline sessions associated with the client
func (*GoCloak) GetClientRepresentation ¶
func (g *GoCloak) GetClientRepresentation(ctx context.Context, accessToken, realm, clientID string) (*Client, error)
GetClientRepresentation returns a client representation
func (*GoCloak) GetClientRole ¶
func (g *GoCloak) GetClientRole(ctx context.Context, token, realm, idOfClient, roleName string) (*Role, error)
GetClientRole get a role for the given client in a realm by role name
func (*GoCloak) GetClientRoleByID ¶
func (g *GoCloak) GetClientRoleByID(ctx context.Context, token, realm, roleID string) (*Role, error)
GetClientRoleByID gets role for the given client in realm using role ID
func (*GoCloak) GetClientRoles ¶
func (g *GoCloak) GetClientRoles(ctx context.Context, token, realm, idOfClient string, params GetRoleParams) ([]*Role, error)
GetClientRoles get all roles for the given client in realm
func (*GoCloak) GetClientRolesByGroupID ¶
func (g *GoCloak) GetClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
GetClientRolesByGroupID returns all client roles assigned to the given group
func (*GoCloak) GetClientRolesByUserID ¶
func (g *GoCloak) GetClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetClientRolesByUserID returns all client roles assigned to the given user
func (*GoCloak) GetClientScope ¶
func (g *GoCloak) GetClientScope(ctx context.Context, token, realm, scopeID string) (*ClientScope, error)
GetClientScope returns a clientscope
func (*GoCloak) GetClientScopeMappings ¶
func (g *GoCloak) GetClientScopeMappings(ctx context.Context, token, realm, idOfClient string) (*MappingsRepresentation, error)
GetClientScopeMappings returns all scope mappings for the client
func (*GoCloak) GetClientScopeMappingsClientRoles ¶
func (g *GoCloak) GetClientScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
GetClientScopeMappingsClientRoles returns roles associated with a client’s scope
func (*GoCloak) GetClientScopeMappingsClientRolesAvailable ¶
func (g *GoCloak) GetClientScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClient, idOfSelectedClient string) ([]*Role, error)
GetClientScopeMappingsClientRolesAvailable returns available roles associated with a client’s scope
func (*GoCloak) GetClientScopeMappingsRealmRoles ¶
func (g *GoCloak) GetClientScopeMappingsRealmRoles(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
GetClientScopeMappingsRealmRoles returns realm-level roles associated with the client’s scope
func (*GoCloak) GetClientScopeMappingsRealmRolesAvailable ¶
func (g *GoCloak) GetClientScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, idOfClient string) ([]*Role, error)
GetClientScopeMappingsRealmRolesAvailable returns realm-level roles that are available to attach to this client’s scope
func (*GoCloak) GetClientScopeProtocolMapper ¶
func (g *GoCloak) GetClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID, protocolMapperID string) (*ProtocolMappers, error)
GetClientScopeProtocolMapper returns a protocol mapper of a client scope
func (*GoCloak) GetClientScopeProtocolMappers ¶
func (g *GoCloak) GetClientScopeProtocolMappers(ctx context.Context, token, realm, scopeID string) ([]*ProtocolMappers, error)
GetClientScopeProtocolMappers returns all protocol mappers of a client scope
func (*GoCloak) GetClientScopes ¶
GetClientScopes returns all client scopes
func (*GoCloak) GetClientScopesScopeMappingsClientRoles ¶
func (g *GoCloak) GetClientScopesScopeMappingsClientRoles(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
GetClientScopesScopeMappingsClientRoles returns attached client roles for a specific client, for a client scope (not client's scope).
func (*GoCloak) GetClientScopesScopeMappingsClientRolesAvailable ¶
func (g *GoCloak) GetClientScopesScopeMappingsClientRolesAvailable(ctx context.Context, token, realm, idOfClientScope, idOfClient string) ([]*Role, error)
GetClientScopesScopeMappingsClientRolesAvailable returns available (i.e. not attached via CreateClientScopesScopeMappingsClientRoles) client roles for a specific client, for a client scope (not client's scope).
func (*GoCloak) GetClientScopesScopeMappingsRealmRoles ¶
func (g *GoCloak) GetClientScopesScopeMappingsRealmRoles(ctx context.Context, token, realm, clientScopeID string) ([]*Role, error)
GetClientScopesScopeMappingsRealmRoles returns roles associated with a client-scope
func (*GoCloak) GetClientScopesScopeMappingsRealmRolesAvailable ¶
func (g *GoCloak) GetClientScopesScopeMappingsRealmRolesAvailable(ctx context.Context, token, realm, clientScopeID string) ([]*Role, error)
GetClientScopesScopeMappingsRealmRolesAvailable returns realm-level roles that are available to attach to this client scope
func (*GoCloak) GetClientSecret ¶
func (g *GoCloak) GetClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
GetClientSecret returns a client's secret
func (*GoCloak) GetClientServiceAccount ¶
func (g *GoCloak) GetClientServiceAccount(ctx context.Context, token, realm, idOfClient string) (*User, error)
GetClientServiceAccount retrieves the service account "user" for a client if enabled
func (*GoCloak) GetClientUserSessions ¶
func (g *GoCloak) GetClientUserSessions(ctx context.Context, token, realm, idOfClient string, params ...GetClientUserSessionsParams) ([]*UserSessionRepresentation, error)
GetClientUserSessions returns user sessions associated with the client
func (*GoCloak) GetClients ¶
func (g *GoCloak) GetClients(ctx context.Context, token, realm string, params GetClientsParams) ([]*Client, error)
GetClients gets all clients in realm
func (*GoCloak) GetClientsDefaultScopes ¶
func (g *GoCloak) GetClientsDefaultScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
GetClientsDefaultScopes returns a list of the client's default scopes
func (*GoCloak) GetClientsOptionalScopes ¶
func (g *GoCloak) GetClientsOptionalScopes(ctx context.Context, token, realm, idOfClient string) ([]*ClientScope, error)
GetClientsOptionalScopes returns a list of the client's optional scopes
func (*GoCloak) GetComponent ¶
func (g *GoCloak) GetComponent(ctx context.Context, token, realm string, componentID string) (*Component, error)
GetComponent get exactly one component by ID
func (*GoCloak) GetComponents ¶
GetComponents get all components in realm
func (*GoCloak) GetComponentsWithParams ¶
func (g *GoCloak) GetComponentsWithParams(ctx context.Context, token, realm string, params GetComponentsParams) ([]*Component, error)
GetComponentsWithParams get all components in realm with query params
func (*GoCloak) GetCompositeClientRolesByGroupID ¶
func (g *GoCloak) GetCompositeClientRolesByGroupID(ctx context.Context, token, realm, idOfClient, groupID string) ([]*Role, error)
GetCompositeClientRolesByGroupID returns all client roles and composite roles assigned to the given group
func (*GoCloak) GetCompositeClientRolesByRoleID ¶
func (g *GoCloak) GetCompositeClientRolesByRoleID(ctx context.Context, token, realm, idOfClient, roleID string) ([]*Role, error)
GetCompositeClientRolesByRoleID returns all client composite roles associated with the given client role
func (*GoCloak) GetCompositeClientRolesByUserID ¶
func (g *GoCloak) GetCompositeClientRolesByUserID(ctx context.Context, token, realm, idOfClient, userID string) ([]*Role, error)
GetCompositeClientRolesByUserID returns all client roles and composite roles assigned to the given user
func (*GoCloak) GetCompositeRealmRoles ¶
func (g *GoCloak) GetCompositeRealmRoles(ctx context.Context, token, realm, roleName string) ([]*Role, error)
GetCompositeRealmRoles returns all realm composite roles associated with the given realm role
func (*GoCloak) GetCompositeRealmRolesByGroupID ¶
func (g *GoCloak) GetCompositeRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
GetCompositeRealmRolesByGroupID returns all realm roles and composite roles assigned to the given group
func (*GoCloak) GetCompositeRealmRolesByRoleID ¶
func (g *GoCloak) GetCompositeRealmRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error)
GetCompositeRealmRolesByRoleID returns all realm composite roles associated with the given client role
func (*GoCloak) GetCompositeRealmRolesByUserID ¶
func (g *GoCloak) GetCompositeRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
GetCompositeRealmRolesByUserID returns all realm roles and composite roles assigned to the given user
func (*GoCloak) GetCompositeRolesByRoleID ¶
func (g *GoCloak) GetCompositeRolesByRoleID(ctx context.Context, token, realm, roleID string) ([]*Role, error)
GetCompositeRolesByRoleID returns all realm composite roles associated with the given client role
func (*GoCloak) GetConfiguredUserStorageCredentialTypes ¶
func (g *GoCloak) GetConfiguredUserStorageCredentialTypes(ctx context.Context, token, realm, userID string) ([]string, error)
GetConfiguredUserStorageCredentialTypes returns credential types, which are provided by the user storage where user is stored
func (*GoCloak) GetCredentialRegistrators ¶
func (g *GoCloak) GetCredentialRegistrators(ctx context.Context, token, realm string) ([]string, error)
GetCredentialRegistrators returns credentials registrators
func (*GoCloak) GetCredentials ¶
func (g *GoCloak) GetCredentials(ctx context.Context, token, realm, userID string) ([]*CredentialRepresentation, error)
GetCredentials returns credentials available for a given user
func (*GoCloak) GetDefaultDefaultClientScopes ¶
func (g *GoCloak) GetDefaultDefaultClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
GetDefaultDefaultClientScopes returns a list of default realm default scopes
func (*GoCloak) GetDefaultGroups ¶
GetDefaultGroups returns a list of default groups
func (*GoCloak) GetDefaultOptionalClientScopes ¶
func (g *GoCloak) GetDefaultOptionalClientScopes(ctx context.Context, token, realm string) ([]*ClientScope, error)
GetDefaultOptionalClientScopes returns a list of default realm optional scopes
func (*GoCloak) GetDependentPermissions ¶
func (g *GoCloak) GetDependentPermissions(ctx context.Context, token, realm, idOfClient, policyID string) ([]*PermissionRepresentation, error)
GetDependentPermissions returns a client's permission with the given policy id
func (*GoCloak) GetEvents ¶
func (g *GoCloak) GetEvents(ctx context.Context, token string, realm string, params GetEventsParams) ([]*EventRepresentation, error)
GetEvents returns events
func (*GoCloak) GetGroupByPath ¶
func (g *GoCloak) GetGroupByPath(ctx context.Context, token, realm, groupPath string) (*Group, error)
GetGroupByPath get group with path in realm
func (*GoCloak) GetGroupManagementPermissions ¶
func (g *GoCloak) GetGroupManagementPermissions(ctx context.Context, token, realm string, idOfGroup string) (*ManagementPermissionRepresentation, error)
GetGroupManagementPermissions returns whether group Authorization permissions have been initialized or not and a reference to the managed permissions
func (*GoCloak) GetGroupMembers ¶
func (g *GoCloak) GetGroupMembers(ctx context.Context, token, realm, groupID string, params GetGroupsParams) ([]*User, error)
GetGroupMembers get a list of users of group with id in realm
func (*GoCloak) GetGroups ¶
func (g *GoCloak) GetGroups(ctx context.Context, token, realm string, params GetGroupsParams) ([]*Group, error)
GetGroups get all groups in realm
func (*GoCloak) GetGroupsByClientRole ¶
func (g *GoCloak) GetGroupsByClientRole(ctx context.Context, token, realm string, roleName string, clientID string) ([]*Group, error)
GetGroupsByClientRole gets groups with specified roles assigned of given client within a realm
func (*GoCloak) GetGroupsByRole ¶
func (g *GoCloak) GetGroupsByRole(ctx context.Context, token, realm string, roleName string) ([]*Group, error)
GetGroupsByRole gets groups assigned with a specific role of a realm
func (*GoCloak) GetGroupsCount ¶
func (g *GoCloak) GetGroupsCount(ctx context.Context, token, realm string, params GetGroupsParams) (int, error)
GetGroupsCount gets the groups count in the realm
func (*GoCloak) GetIdentityProvider ¶
func (g *GoCloak) GetIdentityProvider(ctx context.Context, token, realm, alias string) (*IdentityProviderRepresentation, error)
GetIdentityProvider gets the identity provider in a realm
func (*GoCloak) GetIdentityProviderMapper ¶
func (g *GoCloak) GetIdentityProviderMapper(ctx context.Context, token string, realm string, alias string, mapperID string) (*IdentityProviderMapper, error)
GetIdentityProviderMapper gets the mapper by id for the given identity provider alias in a realm
func (*GoCloak) GetIdentityProviderMapperByID ¶
func (g *GoCloak) GetIdentityProviderMapperByID(ctx context.Context, token, realm, alias, mapperID string) (*IdentityProviderMapper, error)
GetIdentityProviderMapperByID gets the mapper of an identity provider
func (*GoCloak) GetIdentityProviderMappers ¶
func (g *GoCloak) GetIdentityProviderMappers(ctx context.Context, token, realm, alias string) ([]*IdentityProviderMapper, error)
GetIdentityProviderMappers returns list of mappers associated with an identity provider
func (*GoCloak) GetIdentityProviders ¶
func (g *GoCloak) GetIdentityProviders(ctx context.Context, token, realm string) ([]*IdentityProviderRepresentation, error)
GetIdentityProviders returns list of identity providers in a realm
func (*GoCloak) GetKeyStoreConfig ¶
func (g *GoCloak) GetKeyStoreConfig(ctx context.Context, token, realm string) (*KeyStoreConfig, error)
GetKeyStoreConfig get keystoreconfig of the realm
func (*GoCloak) GetPermission ¶
func (g *GoCloak) GetPermission(ctx context.Context, token, realm, idOfClient, permissionID string) (*PermissionRepresentation, error)
GetPermission returns a client's permission with the given id
func (*GoCloak) GetPermissionResources ¶
func (g *GoCloak) GetPermissionResources(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionResource, error)
GetPermissionResources returns a client's resource attached for the given permission id
func (*GoCloak) GetPermissionScope ¶
func (g *GoCloak) GetPermissionScope(ctx context.Context, token, realm, idOfClient string, idOfScope string) (*PolicyRepresentation, error)
GetPermissionScope gets the permission scope associated with the client
func (*GoCloak) GetPermissionScopes ¶
func (g *GoCloak) GetPermissionScopes(ctx context.Context, token, realm, idOfClient, permissionID string) ([]*PermissionScope, error)
GetPermissionScopes returns a client's scopes configured for the given permission id
func (*GoCloak) GetPermissions ¶
func (g *GoCloak) GetPermissions(ctx context.Context, token, realm, idOfClient string, params GetPermissionParams) ([]*PermissionRepresentation, error)
GetPermissions returns permissions associated with the client
func (*GoCloak) GetPolicies ¶
func (g *GoCloak) GetPolicies(ctx context.Context, token, realm, idOfClient string, params GetPolicyParams) ([]*PolicyRepresentation, error)
GetPolicies returns policies associated with the client
func (*GoCloak) GetPolicy ¶
func (g *GoCloak) GetPolicy(ctx context.Context, token, realm, idOfClient, policyID string) (*PolicyRepresentation, error)
GetPolicy returns a client's policy with the given id
func (*GoCloak) GetRawUserInfo ¶
func (g *GoCloak) GetRawUserInfo(ctx context.Context, accessToken, realm string) (map[string]interface{}, error)
GetRawUserInfo calls the UserInfo endpoint and returns a raw json object
func (*GoCloak) GetRealmRole ¶
GetRealmRole returns a role from a realm by role's name
func (*GoCloak) GetRealmRoleByID ¶
GetRealmRoleByID returns a role from a realm by role's ID
func (*GoCloak) GetRealmRoles ¶
func (g *GoCloak) GetRealmRoles(ctx context.Context, token, realm string, params GetRoleParams) ([]*Role, error)
GetRealmRoles get all roles of the given realm.
func (*GoCloak) GetRealmRolesByGroupID ¶
func (g *GoCloak) GetRealmRolesByGroupID(ctx context.Context, token, realm, groupID string) ([]*Role, error)
GetRealmRolesByGroupID returns all roles assigned to the given group
func (*GoCloak) GetRealmRolesByUserID ¶
func (g *GoCloak) GetRealmRolesByUserID(ctx context.Context, token, realm, userID string) ([]*Role, error)
GetRealmRolesByUserID returns all roles assigned to the given user
func (*GoCloak) GetRequest ¶
GetRequest returns a request for calling endpoints.
func (*GoCloak) GetRequestWithBasicAuth ¶
func (g *GoCloak) GetRequestWithBasicAuth(ctx context.Context, clientID, clientSecret string) *resty.Request
GetRequestWithBasicAuth returns a form data base request configured with basic auth.
func (*GoCloak) GetRequestWithBearerAuth ¶
GetRequestWithBearerAuth returns a JSON base request configured with an auth token.
func (*GoCloak) GetRequestWithBearerAuthNoCache ¶
GetRequestWithBearerAuthNoCache returns a JSON base request configured with an auth token and no-cache header.
func (*GoCloak) GetRequestWithBearerAuthXMLHeader ¶
func (g *GoCloak) GetRequestWithBearerAuthXMLHeader(ctx context.Context, token string) *resty.Request
GetRequestWithBearerAuthXMLHeader returns an XML base request configured with an auth token.
func (*GoCloak) GetRequestingPartyPermissionDecision ¶
func (g *GoCloak) GetRequestingPartyPermissionDecision(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*RequestingPartyPermissionDecision, error)
GetRequestingPartyPermissionDecision returns a requesting party permission decision granted by the server
func (*GoCloak) GetRequestingPartyPermissions ¶
func (g *GoCloak) GetRequestingPartyPermissions(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*[]RequestingPartyPermission, error)
GetRequestingPartyPermissions returns a requesting party permissions granted by the server
func (*GoCloak) GetRequestingPartyToken ¶
func (g *GoCloak) GetRequestingPartyToken(ctx context.Context, token, realm string, options RequestingPartyTokenOptions) (*JWT, error)
GetRequestingPartyToken returns a requesting party token with permissions granted by the server
func (*GoCloak) GetRequiredAction ¶
func (g *GoCloak) GetRequiredAction(ctx context.Context, token string, realm string, alias string) (*RequiredActionProviderRepresentation, error)
GetRequiredAction gets a required action for a given realm
func (*GoCloak) GetRequiredActions ¶
func (g *GoCloak) GetRequiredActions(ctx context.Context, token string, realm string) ([]*RequiredActionProviderRepresentation, error)
GetRequiredActions gets a list of required actions for a given realm
func (*GoCloak) GetResource ¶
func (g *GoCloak) GetResource(ctx context.Context, token, realm, idOfClient, resourceID string) (*ResourceRepresentation, error)
GetResource returns a client's resource with the given id, using access token from admin
func (*GoCloak) GetResourceClient ¶
func (g *GoCloak) GetResourceClient(ctx context.Context, token, realm, resourceID string) (*ResourceRepresentation, error)
GetResourceClient returns a client's resource with the given id, using access token from client
func (*GoCloak) GetResourcePolicies ¶
func (g *GoCloak) GetResourcePolicies(ctx context.Context, token, realm string, params GetResourcePoliciesParams) ([]*ResourcePolicyRepresentation, error)
GetResourcePolicies returns resources associated with the client, using token obtained by Resource Owner Password Credentials Grant or Token exchange
func (*GoCloak) GetResourcePolicy ¶
func (g *GoCloak) GetResourcePolicy(ctx context.Context, token, realm, permissionID string) (*ResourcePolicyRepresentation, error)
GetResourcePolicy updates a permission for a specific resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange
func (*GoCloak) GetResourceServer ¶
func (g *GoCloak) GetResourceServer(ctx context.Context, token, realm, idOfClient string) (*ResourceServerRepresentation, error)
GetResourceServer returns resource server settings. The access token must have the realm view_clients role on its service account to be allowed to call this endpoint.
func (*GoCloak) GetResources ¶
func (g *GoCloak) GetResources(ctx context.Context, token, realm, idOfClient string, params GetResourceParams) ([]*ResourceRepresentation, error)
GetResources returns resources associated with the client, using access token from admin
func (*GoCloak) GetResourcesClient ¶
func (g *GoCloak) GetResourcesClient(ctx context.Context, token, realm string, params GetResourceParams) ([]*ResourceRepresentation, error)
GetResourcesClient returns resources associated with the client, using access token from client
func (*GoCloak) GetRoleMappingByGroupID ¶
func (g *GoCloak) GetRoleMappingByGroupID(ctx context.Context, token, realm, groupID string) (*MappingsRepresentation, error)
GetRoleMappingByGroupID gets the role mappings by group
func (*GoCloak) GetRoleMappingByUserID ¶
func (g *GoCloak) GetRoleMappingByUserID(ctx context.Context, token, realm, userID string) (*MappingsRepresentation, error)
GetRoleMappingByUserID gets the role mappings by user
func (*GoCloak) GetScope ¶
func (g *GoCloak) GetScope(ctx context.Context, token, realm, idOfClient, scopeID string) (*ScopeRepresentation, error)
GetScope returns a client's scope with the given id
func (*GoCloak) GetScopes ¶
func (g *GoCloak) GetScopes(ctx context.Context, token, realm, idOfClient string, params GetScopeParams) ([]*ScopeRepresentation, error)
GetScopes returns scopes associated with the client
func (*GoCloak) GetServerInfo ¶
func (g *GoCloak) GetServerInfo(ctx context.Context, accessToken string) (*ServerInfoRepresentation, error)
GetServerInfo fetches the server info.
func (*GoCloak) GetUserBruteForceDetectionStatus ¶
func (g *GoCloak) GetUserBruteForceDetectionStatus(ctx context.Context, accessToken, realm, userID string) (*BruteForceStatus, error)
GetUserBruteForceDetectionStatus fetches a user status regarding brute force protection
func (*GoCloak) GetUserByID ¶
func (g *GoCloak) GetUserByID(ctx context.Context, accessToken, realm, userID string) (*User, error)
GetUserByID fetches a user from the given realm with the given userID
func (*GoCloak) GetUserCount ¶
func (g *GoCloak) GetUserCount(ctx context.Context, token string, realm string, params GetUsersParams) (int, error)
GetUserCount gets the user count in the realm
func (*GoCloak) GetUserFederatedIdentities ¶
func (g *GoCloak) GetUserFederatedIdentities(ctx context.Context, token, realm, userID string) ([]*FederatedIdentityRepresentation, error)
GetUserFederatedIdentities gets all user federated identities
func (*GoCloak) GetUserGroups ¶
func (g *GoCloak) GetUserGroups(ctx context.Context, token, realm, userID string, params GetGroupsParams) ([]*Group, error)
GetUserGroups get all groups for user
func (*GoCloak) GetUserInfo ¶
GetUserInfo calls the UserInfo endpoint
func (*GoCloak) GetUserOfflineSessionsForClient ¶
func (g *GoCloak) GetUserOfflineSessionsForClient(ctx context.Context, token, realm, userID, idOfClient string) ([]*UserSessionRepresentation, error)
GetUserOfflineSessionsForClient returns offline sessions associated with the user and client
func (*GoCloak) GetUserPermissions ¶
func (g *GoCloak) GetUserPermissions(ctx context.Context, token, realm string, params GetUserPermissionParams) ([]*PermissionGrantResponseRepresentation, error)
GetUserPermissions gets granted permissions according query parameters
func (*GoCloak) GetUserSessions ¶
func (g *GoCloak) GetUserSessions(ctx context.Context, token, realm, userID string) ([]*UserSessionRepresentation, error)
GetUserSessions returns user sessions associated with the user
func (*GoCloak) GetUsers ¶
func (g *GoCloak) GetUsers(ctx context.Context, token, realm string, params GetUsersParams) ([]*User, error)
GetUsers get all users in realm
func (*GoCloak) GetUsersByClientRoleName ¶
func (g *GoCloak) GetUsersByClientRoleName(ctx context.Context, token, realm, idOfClient, roleName string, params GetUsersByRoleParams) ([]*User, error)
GetUsersByClientRoleName returns all users have a given client role
func (*GoCloak) GetUsersByRoleName ¶
func (g *GoCloak) GetUsersByRoleName(ctx context.Context, token, realm, roleName string, params GetUsersByRoleParams) ([]*User, error)
GetUsersByRoleName returns all users have a given role
func (*GoCloak) GrantUserPermission ¶
func (g *GoCloak) GrantUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
GrantUserPermission lets resource owner grant permission for specific resource ID to specific user ID
func (*GoCloak) ImportIdentityProviderConfig ¶
func (g *GoCloak) ImportIdentityProviderConfig(ctx context.Context, token, realm, fromURL, providerID string) (map[string]string, error)
ImportIdentityProviderConfig parses and returns the identity provider config at a given URL
func (*GoCloak) ImportIdentityProviderConfigFromFile ¶
func (g *GoCloak) ImportIdentityProviderConfigFromFile(ctx context.Context, token, realm, providerID, fileName string, fileBody io.Reader) (map[string]string, error)
ImportIdentityProviderConfigFromFile parses and returns the identity provider config from a given file
func (*GoCloak) Login ¶
func (g *GoCloak) Login(ctx context.Context, clientID, clientSecret, realm, username, password string) (*JWT, error)
Login performs a login with user credentials and a client
func (*GoCloak) LoginAdmin ¶
LoginAdmin performs a login with Admin client
func (*GoCloak) LoginClient ¶
func (g *GoCloak) LoginClient(ctx context.Context, clientID, clientSecret, realm string, scopes ...string) (*JWT, error)
LoginClient performs a login with client credentials
func (*GoCloak) LoginClientSignedJWT ¶
func (g *GoCloak) LoginClientSignedJWT( ctx context.Context, clientID, realm string, key interface{}, signedMethod jwt.SigningMethod, expiresAt *jwt.NumericDate, ) (*JWT, error)
LoginClientSignedJWT performs a login with client credentials and signed jwt claims
func (*GoCloak) LoginClientTokenExchange ¶
func (g *GoCloak) LoginClientTokenExchange(ctx context.Context, clientID, token, clientSecret, realm, targetClient, userID string) (*JWT, error)
LoginClientTokenExchange will exchange the presented token for a user's token Requires Token-Exchange is enabled: https://www.keycloak.org/docs/latest/securing_apps/index.html#_token-exchange
func (*GoCloak) LoginOtp ¶
func (g *GoCloak) LoginOtp(ctx context.Context, clientID, clientSecret, realm, username, password, totp string) (*JWT, error)
LoginOtp performs a login with user credentials and otp token
func (*GoCloak) Logout ¶
func (g *GoCloak) Logout(ctx context.Context, clientID, clientSecret, realm, refreshToken string) error
Logout logs out users with refresh token
func (*GoCloak) LogoutAllSessions ¶
LogoutAllSessions logs out all sessions of a user given an id.
func (*GoCloak) LogoutPublicClient ¶
func (g *GoCloak) LogoutPublicClient(ctx context.Context, clientID, realm, accessToken, refreshToken string) error
LogoutPublicClient performs a logout using a public client and the accessToken.
func (*GoCloak) LogoutUserSession ¶
LogoutUserSession logs out a single sessions of a user given a session id
func (*GoCloak) MoveCredentialBehind ¶
func (g *GoCloak) MoveCredentialBehind(ctx context.Context, token, realm, userID, credentialID, newPreviousCredentialID string) error
MoveCredentialBehind move a credential to a position behind another credential
func (*GoCloak) MoveCredentialToFirst ¶
func (g *GoCloak) MoveCredentialToFirst(ctx context.Context, token, realm, userID, credentialID string) error
MoveCredentialToFirst move a credential to a first position in the credentials list of the user
func (*GoCloak) RefreshToken ¶
func (g *GoCloak) RefreshToken(ctx context.Context, refreshToken, clientID, clientSecret, realm string) (*JWT, error)
RefreshToken refreshes the given token. May return a *APIError with further details about the issue.
func (*GoCloak) RegenerateClientSecret ¶
func (g *GoCloak) RegenerateClientSecret(ctx context.Context, token, realm, idOfClient string) (*CredentialRepresentation, error)
RegenerateClientSecret triggers the creation of the new client secret.
func (*GoCloak) RegisterRequiredAction ¶
func (g *GoCloak) RegisterRequiredAction(ctx context.Context, token string, realm string, requiredAction RequiredActionProviderRepresentation) error
RegisterRequiredAction creates a required action for a given realm
func (*GoCloak) RemoveDefaultGroup ¶
RemoveDefaultGroup removes group from the list of default groups
func (*GoCloak) RemoveDefaultScopeFromClient ¶
func (g *GoCloak) RemoveDefaultScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
RemoveDefaultScopeFromClient removes a client scope from the list of client's default scopes
func (*GoCloak) RemoveOptionalScopeFromClient ¶
func (g *GoCloak) RemoveOptionalScopeFromClient(ctx context.Context, token, realm, idOfClient, scopeID string) error
RemoveOptionalScopeFromClient deletes a client scope from the list of client's optional scopes
func (*GoCloak) RestyClient ¶
func (g *GoCloak) RestyClient() *resty.Client
RestyClient returns the internal resty g. This can be used to configure the g.
func (*GoCloak) RetrospectToken ¶
func (g *GoCloak) RetrospectToken(ctx context.Context, accessToken, clientID, clientSecret, realm string) (*IntroSpectTokenResult, error)
RetrospectToken calls the openid-connect introspect endpoint
func (*GoCloak) RevokeToken ¶
func (g *GoCloak) RevokeToken(ctx context.Context, realm, clientID, clientSecret, refreshToken string) error
RevokeToken revokes the passed token. The token can either be an access or refresh token.
func (*GoCloak) RevokeUserConsents ¶
func (g *GoCloak) RevokeUserConsents(ctx context.Context, accessToken, realm, userID, clientID string) error
RevokeUserConsents revokes the given user consent.
func (*GoCloak) SendVerifyEmail ¶
func (g *GoCloak) SendVerifyEmail(ctx context.Context, token, userID, realm string, params ...SendVerificationMailParams) error
SendVerifyEmail sends a verification e-mail to a user.
func (*GoCloak) SetPassword ¶
func (g *GoCloak) SetPassword(ctx context.Context, token, userID, realm, password string, temporary bool) error
SetPassword sets a new password for the user with the given id. Needs elevated privileges
func (*GoCloak) SetRestyClient ¶
func (g *GoCloak) SetRestyClient(restyClient *resty.Client)
SetRestyClient overwrites the internal resty g.
func (*GoCloak) UpdateAuthenticationExecution ¶
func (g *GoCloak) UpdateAuthenticationExecution(ctx context.Context, token, realm, flow string, execution ModifyAuthenticationExecutionRepresentation) error
UpdateAuthenticationExecution updates an authentication execution for the given flow in the given realm
func (*GoCloak) UpdateAuthenticationFlow ¶
func (g *GoCloak) UpdateAuthenticationFlow(ctx context.Context, token, realm string, flow AuthenticationFlowRepresentation, authenticationFlowID string) (*AuthenticationFlowRepresentation, error)
UpdateAuthenticationFlow a given Authentication Flow
func (*GoCloak) UpdateClient ¶
func (g *GoCloak) UpdateClient(ctx context.Context, token, realm string, updatedClient Client) error
UpdateClient updates the given Client
func (*GoCloak) UpdateClientManagementPermissions ¶
func (g *GoCloak) UpdateClientManagementPermissions(ctx context.Context, accessToken, realm string, idOfClient string, managementPermissions ManagementPermissionRepresentation) (*ManagementPermissionRepresentation, error)
UpdateClientManagementPermissions updates the given client management permissions
func (*GoCloak) UpdateClientProtocolMapper ¶
func (g *GoCloak) UpdateClientProtocolMapper(ctx context.Context, token, realm, idOfClient, mapperID string, mapper ProtocolMapperRepresentation) error
UpdateClientProtocolMapper updates a protocol mapper in client scope
func (*GoCloak) UpdateClientRepresentation ¶
func (g *GoCloak) UpdateClientRepresentation(ctx context.Context, accessToken, realm string, updatedClient Client) (*Client, error)
UpdateClientRepresentation updates the given client representation
func (*GoCloak) UpdateClientScope ¶
func (g *GoCloak) UpdateClientScope(ctx context.Context, token, realm string, scope ClientScope) error
UpdateClientScope updates the given client scope.
func (*GoCloak) UpdateClientScopeProtocolMapper ¶
func (g *GoCloak) UpdateClientScopeProtocolMapper(ctx context.Context, token, realm, scopeID string, protocolMapper ProtocolMappers) error
UpdateClientScopeProtocolMapper updates the given protocol mapper for a client scope
func (*GoCloak) UpdateComponent ¶
func (g *GoCloak) UpdateComponent(ctx context.Context, token, realm string, component Component) error
UpdateComponent updates the given component
func (*GoCloak) UpdateCredentialUserLabel ¶
func (g *GoCloak) UpdateCredentialUserLabel(ctx context.Context, token, realm, userID, credentialID, userLabel string) error
UpdateCredentialUserLabel updates label for the given credential for the given user
func (*GoCloak) UpdateGroup ¶
UpdateGroup updates the given group.
func (*GoCloak) UpdateGroupManagementPermissions ¶
func (g *GoCloak) UpdateGroupManagementPermissions(ctx context.Context, accessToken, realm string, idOfGroup string, managementPermissions ManagementPermissionRepresentation) (*ManagementPermissionRepresentation, error)
UpdateGroupManagementPermissions updates the given group management permissions
func (*GoCloak) UpdateIdentityProvider ¶
func (g *GoCloak) UpdateIdentityProvider(ctx context.Context, token, realm, alias string, providerRep IdentityProviderRepresentation) error
UpdateIdentityProvider updates the identity provider in a realm
func (*GoCloak) UpdateIdentityProviderMapper ¶
func (g *GoCloak) UpdateIdentityProviderMapper(ctx context.Context, token, realm, alias string, mapper IdentityProviderMapper) error
UpdateIdentityProviderMapper updates mapper of an identity provider
func (*GoCloak) UpdatePermission ¶
func (g *GoCloak) UpdatePermission(ctx context.Context, token, realm, idOfClient string, permission PermissionRepresentation) error
UpdatePermission updates a permission associated with the client
func (*GoCloak) UpdatePermissionScope ¶
func (g *GoCloak) UpdatePermissionScope(ctx context.Context, token, realm, idOfClient string, idOfScope string, policy PolicyRepresentation) error
UpdatePermissionScope updates a permission scope associated with the client
func (*GoCloak) UpdatePolicy ¶
func (g *GoCloak) UpdatePolicy(ctx context.Context, token, realm, idOfClient string, policy PolicyRepresentation) error
UpdatePolicy updates a policy associated with the client
func (*GoCloak) UpdateRealm ¶
UpdateRealm updates a given realm
func (*GoCloak) UpdateRealmRole ¶
func (g *GoCloak) UpdateRealmRole(ctx context.Context, token, realm, roleName string, role Role) error
UpdateRealmRole updates a role in a realm
func (*GoCloak) UpdateRealmRoleByID ¶
func (g *GoCloak) UpdateRealmRoleByID(ctx context.Context, token, realm, roleID string, role Role) error
UpdateRealmRoleByID updates a role in a realm by role's ID
func (*GoCloak) UpdateRequiredAction ¶
func (g *GoCloak) UpdateRequiredAction(ctx context.Context, token string, realm string, requiredAction RequiredActionProviderRepresentation) error
UpdateRequiredAction updates a required action for a given realm
func (*GoCloak) UpdateResource ¶
func (g *GoCloak) UpdateResource(ctx context.Context, token, realm, idOfClient string, resource ResourceRepresentation) error
UpdateResource updates a resource associated with the client, using access token from admin
func (*GoCloak) UpdateResourceClient ¶
func (g *GoCloak) UpdateResourceClient(ctx context.Context, token, realm string, resource ResourceRepresentation) error
UpdateResourceClient updates a resource associated with the client, using access token from client
func (*GoCloak) UpdateResourcePolicy ¶
func (g *GoCloak) UpdateResourcePolicy(ctx context.Context, token, realm, permissionID string, policy ResourcePolicyRepresentation) error
UpdateResourcePolicy updates a permission for a specific resource, using token obtained by Resource Owner Password Credentials Grant or Token exchange
func (*GoCloak) UpdateRole ¶
UpdateRole updates the given role.
func (*GoCloak) UpdateScope ¶
func (g *GoCloak) UpdateScope(ctx context.Context, token, realm, idOfClient string, scope ScopeRepresentation) error
UpdateScope updates a scope associated with the client
func (*GoCloak) UpdateUser ¶
UpdateUser updates a given user
func (*GoCloak) UpdateUserPermission ¶
func (g *GoCloak) UpdateUserPermission(ctx context.Context, token, realm string, permission PermissionGrantParams) (*PermissionGrantResponseRepresentation, error)
UpdateUserPermission updates user permissions.
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 IntroSpectTokenResult ¶
type IntroSpectTokenResult 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"` }
IntroSpectTokenResult is returned when a token was checked
func (*IntroSpectTokenResult) String ¶
func (v *IntroSpectTokenResult) 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 ManagementPermissionRepresentation ¶
type ManagementPermissionRepresentation struct { Enabled *bool `json:"enabled,omitempty"` Resource *string `json:"resource,omitempty"` ScopePermissions *map[string]string `json:"scopePermissions,omitempty"` }
ManagementPermissionRepresentation is a representation of management permissions v18: https://www.keycloak.org/docs-api/18.0/rest-api/#_managementpermissionreference
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.RegisteredClaims }
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"` AggregateAttrs *string `json:"aggregate.attrs,omitempty"` UsermodelClientRoleMappingClientID *string `json:"usermodel.clientRoleMapping.clientId,omitempty"` IncludedClientAudience *string `json:"included.client.audience,omitempty"` FullPath *string `json:"full.path,omitempty"` AttributeName *string `json:"attribute.name,omitempty"` AttributeNameFormat *string `json:"attribute.nameformat,omitempty"` Single *string `json:"single,omitempty"` Script *string `json:"script,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"` ClientPolicies *map[string][]interface{} `json:"clientPolicies,omitempty"` ClientProfiles *map[string][]interface{} `json:"clientProfiles,omitempty"` ClientScopeMappings *map[string][]interface{} `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"` WebAuthnPolicyAcceptableAaguids *[]string `json:"webAuthnPolicyAcceptableAaguids,omitempty"` WebAuthnPolicyAttestationConveyancePreference *string `json:"webAuthnPolicyAttestationConveyancePreference,omitempty"` WebAuthnPolicyAuthenticatorAttachment *string `json:"webAuthnPolicyAuthenticatorAttachment,omitempty"` WebAuthnPolicyAvoidSameAuthenticatorRegister *bool `json:"webAuthnPolicyAvoidSameAuthenticatorRegister,omitempty"` WebAuthnPolicyCreateTimeout *int `json:"webAuthnPolicyCreateTimeout,omitempty"` WebAuthnPolicyPasswordlessAcceptableAaguids *[]string `json:"webAuthnPolicyPasswordlessAcceptableAaguids,omitempty"` WebAuthnPolicyPasswordlessAttestationConveyancePreference *string `json:"webAuthnPolicyPasswordlessAttestationConveyancePreference,omitempty"` WebAuthnPolicyPasswordlessAuthenticatorAttachment *string `json:"webAuthnPolicyPasswordlessAuthenticatorAttachment,omitempty"` WebAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister *bool `json:"webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister,omitempty"` WebAuthnPolicyPasswordlessCreateTimeout *int `json:"webAuthnPolicyPasswordlessCreateTimeout,omitempty"` WebAuthnPolicyPasswordlessRequireResidentKey *string `json:"webAuthnPolicyPasswordlessRequireResidentKey,omitempty"` WebAuthnPolicyPasswordlessRpEntityName *string `json:"webAuthnPolicyPasswordlessRpEntityName,omitempty"` WebAuthnPolicyPasswordlessRpID *string `json:"webAuthnPolicyPasswordlessRpId,omitempty"` WebAuthnPolicyPasswordlessSignatureAlgorithms *[]string `json:"webAuthnPolicyPasswordlessSignatureAlgorithms,omitempty"` WebAuthnPolicyPasswordlessUserVerificationRequirement *string `json:"webAuthnPolicyPasswordlessUserVerificationRequirement,omitempty"` WebAuthnPolicyRequireResidentKey *string `json:"webAuthnPolicyRequireResidentKey,omitempty"` WebAuthnPolicyRpEntityName *string `json:"webAuthnPolicyRpEntityName,omitempty"` WebAuthnPolicyRpID *string `json:"webAuthnPolicyRpId,omitempty"` WebAuthnPolicySignatureAlgorithms *[]string `json:"webAuthnPolicySignatureAlgorithms,omitempty"` WebAuthnPolicyUserVerificationRequirement *string `json:"webAuthnPolicyUserVerificationRequirement,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 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 SendVerificationMailParams ¶
SendVerificationMailParams is being used to send verification params
type ServerInfoRepresentation ¶
type ServerInfoRepresentation 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"` Themes *Themes `json:"themes,omitempty"` }
ServerInfoRepresentation represents a server info
func (*ServerInfoRepresentation) String ¶
func (v *ServerInfoRepresentation) 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 ThemeRepresentation ¶
type ThemeRepresentation struct { Name string `json:"name,omitempty"` Locales []string `json:"locales,omitempty"` }
ThemeRepresentation contains the theme name and locales
type Themes ¶
type Themes struct { Accounts []ThemeRepresentation `json:"account,omitempty"` Admin []ThemeRepresentation `json:"admin,omitempty"` Common []ThemeRepresentation `json:"common,omitempty"` Email []ThemeRepresentation `json:"email,omitempty"` Login []ThemeRepresentation `json:"login,omitempty"` Welcome []ThemeRepresentation `json:"welcome,omitempty"` }
Themes contains the available keycloak themes with locales
type TimePolicyRepresentation ¶
type TimePolicyRepresentation struct { NotBefore *string `json:"notBefore,omitempty"` NotOnOrAfter *string `json:"notOnOrAfter,omitempty"` DayMonth *string `json:"dayMonth,omitempty"` DayMonthEnd *string `json:"dayMonthEnd,omitempty"` Month *string `json:"month,omitempty"` MonthEnd *string `json:"monthEnd,omitempty"` Year *string `json:"year,omitempty"` YearEnd *string `json:"yearEnd,omitempty"` Hour *string `json:"hour,omitempty"` HourEnd *string `json:"hourEnd,omitempty"` Minute *string `json:"minute,omitempty"` MinuteEnd *string `json:"minuteEnd,omitempty"` }
TimePolicyRepresentation represents time based policies
func (*TimePolicyRepresentation) String ¶
func (v *TimePolicyRepresentation) String() string
type TokenOptions ¶
type TokenOptions struct { ClientID *string `json:"client_id,omitempty"` ClientSecret *string `json:"-"` GrantType *string `json:"grant_type,omitempty"` RefreshToken *string `json:"refresh_token,omitempty"` Scopes *[]string `json:"-"` Scope *string `json:"scope,omitempty"` ResponseTypes *[]string `json:"-"` ResponseType *string `json:"response_type,omitempty"` Permission *string `json:"permission,omitempty"` Username *string `json:"username,omitempty"` Password *string `json:"password,omitempty"` Totp *string `json:"totp,omitempty"` Code *string `json:"code,omitempty"` RedirectURI *string `json:"redirect_uri,omitempty"` ClientAssertionType *string `json:"client_assertion_type,omitempty"` ClientAssertion *string `json:"client_assertion,omitempty"` SubjectToken *string `json:"subject_token,omitempty"` RequestedSubject *string `json:"requested_subject,omitempty"` Audience *string `json:"audience,omitempty"` RequestedTokenType *string `json:"requested_token_type,omitempty"` }
TokenOptions represents the options to obtain a token
func (*TokenOptions) FormData ¶
func (t *TokenOptions) FormData() map[string]string
FormData returns a map of options to be used in SetFormData function
func (*TokenOptions) String ¶
func (t *TokenOptions) String() string
type User ¶
type User struct { ID *string `json:"id,omitempty"` CreatedTimestamp *int64 `json:"createdTimestamp,omitempty"` Username *string `json:"username,omitempty"` Enabled *bool `json:"enabled,omitempty"` Totp *bool `json:"totp,omitempty"` EmailVerified *bool `json:"emailVerified,omitempty"` FirstName *string `json:"firstName,omitempty"` LastName *string `json:"lastName,omitempty"` Email *string `json:"email,omitempty"` FederationLink *string `json:"federationLink,omitempty"` Attributes *map[string][]string `json:"attributes,omitempty"` DisableableCredentialTypes *[]interface{} `json:"disableableCredentialTypes,omitempty"` RequiredActions *[]string `json:"requiredActions,omitempty"` Access *map[string]bool `json:"access,omitempty"` ClientRoles *map[string][]string `json:"clientRoles,omitempty"` RealmRoles *[]string `json:"realmRoles,omitempty"` Groups *[]string `json:"groups,omitempty"` ServiceAccountClientID *string `json:"serviceAccountClientId,omitempty"` Credentials *[]CredentialRepresentation `json:"credentials,omitempty"` }
User represents the Keycloak User Structure
type UserGroup ¶
type UserGroup struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` }
UserGroup is a UserGroup
type UserInfo ¶
type UserInfo struct { Sub *string `json:"sub,omitempty"` Name *string `json:"name,omitempty"` GivenName *string `json:"given_name,omitempty"` FamilyName *string `json:"family_name,omitempty"` MiddleName *string `json:"middle_name,omitempty"` Nickname *string `json:"nickname,omitempty"` PreferredUsername *string `json:"preferred_username,omitempty"` Profile *string `json:"profile,omitempty"` Picture *string `json:"picture,omitempty"` Website *string `json:"website,omitempty"` Email *string `json:"email,omitempty"` EmailVerified *bool `json:"email_verified,omitempty"` Gender *string `json:"gender,omitempty"` ZoneInfo *string `json:"zoneinfo,omitempty"` Locale *string `json:"locale,omitempty"` PhoneNumber *string `json:"phone_number,omitempty"` PhoneNumberVerified *bool `json:"phone_number_verified,omitempty"` Address *UserInfoAddress `json:"address,omitempty"` UpdatedAt *int `json:"updated_at,omitempty"` }
UserInfo is returned by the userinfo endpoint https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
type UserInfoAddress ¶
type UserInfoAddress struct { Formatted *string `json:"formatted,omitempty"` StreetAddress *string `json:"street_address,omitempty"` Locality *string `json:"locality,omitempty"` Region *string `json:"region,omitempty"` PostalCode *string `json:"postal_code,omitempty"` Country *string `json:"country,omitempty"` }
UserInfoAddress is representation of the address sub-filed of UserInfo https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim
func (*UserInfoAddress) String ¶
func (v *UserInfoAddress) String() string
type UserPolicyRepresentation ¶
type UserPolicyRepresentation struct {
Users *[]string `json:"users,omitempty"`
}
UserPolicyRepresentation represents user based policies
func (*UserPolicyRepresentation) String ¶
func (v *UserPolicyRepresentation) String() string
type UserSessionRepresentation ¶
type UserSessionRepresentation struct { Clients *map[string]string `json:"clients,omitempty"` ID *string `json:"id,omitempty"` IPAddress *string `json:"ipAddress,omitempty"` LastAccess *int64 `json:"lastAccess,omitempty"` Start *int64 `json:"start,omitempty"` UserID *string `json:"userId,omitempty"` Username *string `json:"username,omitempty"` }
UserSessionRepresentation represents a list of user's sessions
func (*UserSessionRepresentation) String ¶
func (v *UserSessionRepresentation) String() string