Skip to content

XRDs

Packages:

Resource Types:

↩ Parent
NameTypeDescriptionRequired
apiVersionstringk8saas.io/v1alpha1true
kindstringKeycloakClienttrue
metadataobjectRefer to the Kubernetes API documentation for the fields of the metadata field.true
specobject
false
↩ Parent
NameTypeDescriptionRequired
clientConfigurationobject

The complete Keycloak client configuration. Setup values from the spec.forProvider object https://marketplace.upbound.io/providers/crossplane-contrib/provider-keycloak/v1.9.2/resources/openidclient.keycloak.crossplane.io/Client/v1alpha1.

false
clientIdstring

The Client ID for this client, referenced in the URI during authentication and in issued tokens.

false
groupMembershipClaimstring

Default: groups

false
optionalScopes[]string

Default: [address phone offline_access microprofile-jwt groups]

false
realmIdstring

The realm this client is attached to.

false
↩ Parent

The complete Keycloak client configuration. Setup values from the spec.forProvider object https://marketplace.upbound.io/providers/crossplane-contrib/provider-keycloak/v1.9.2/resources/openidclient.keycloak.crossplane.io/Client/v1alpha1.

NameTypeDescriptionRequired
accessTokenLifespanstring

The amount of time in seconds before an access token expires. This will override the default for the realm.

false
accessTypestring

Specifies the type of client, which can be one of the following:

false
adminUrlstring

URL to the admin interface of the client.

false
authenticationFlowBindingOverrides[]object

Override realm authentication flow bindings

false
authorization[]object

When this block is present, fine-grained authorization will be enabled for this client. The client’s access_type must be CONFIDENTIAL, and service_accounts_enabled must be true. This block has the following arguments:

false
backchannelLogoutRevokeOfflineSessionsboolean

Specifying whether a “revoke_offline_access” event is included in the Logout Token when the Backchannel Logout URL is used. Keycloak will revoke offline sessions when receiving a Logout Token with this event.

false
backchannelLogoutSessionRequiredboolean

When true, a sid (session ID) claim will be included in the logout token when the backchannel logout URL is used. Defaults to true.

false
backchannelLogoutUrlstring

The URL that will cause the client to log itself out when a logout request is sent to this realm. If omitted, no logout request will be sent to the client is this case.

false
baseUrlstring

Default URL to use when the auth server needs to redirect or link back to the client.

false
clientAuthenticatorTypestring

Defaults to client-secret. The authenticator type for clients with an access_type of CONFIDENTIAL or BEARER-ONLY. A default Keycloak installation will have the following available types:

false
clientOfflineSessionIdleTimeoutstring

Time a client session is allowed to be idle before it expires. Tokens are invalidated when a client session is expired. If not set it uses the standard SSO Session Idle value.

false
clientOfflineSessionMaxLifespanstring

Max time before a client session is expired. Tokens are invalidated when a client session is expired. If not set, it uses the standard SSO Session Max value.

false
clientSecretSecretRefobject

The secret for clients with an access_type of CONFIDENTIAL or BEARER-ONLY. This value is sensitive and should be treated with the same care as a password. If omitted, this will be generated by Keycloak.

false
clientSessionIdleTimeoutstring

Time a client offline session is allowed to be idle before it expires. Offline tokens are invalidated when a client offline session is expired. If not set it uses the Offline Session Idle value.

false
clientSessionMaxLifespanstring

Max time before a client offline session is expired. Offline tokens are invalidated when a client offline session is expired. If not set, it uses the Offline Session Max value.

false
consentRequiredboolean

When true, users have to consent to client access. Defaults to false.

false
consentScreenTextstring

The text to display on the consent screen about permissions specific to this client. This is applicable only when display_on_consent_screen is true.

false
descriptionstring

The description of this client in the GUI.

false
directAccessGrantsEnabledboolean

When true, the OAuth2 Resource Owner Password Grant will be enabled for this client. Defaults to false.

false
displayOnConsentScreenboolean

When true, the consent screen will display information about the client itself. Defaults to false. This is applicable only when consent_required is true.

false
enabledboolean

When false, this client will not be able to initiate a login or obtain access tokens. Defaults to true.

false
excludeSessionStateFromAuthResponseboolean

When true, the parameter session_state will not be included in OpenID Connect Authentication Response.

false
extraConfigmap[string]string

A map of key/value pairs to add extra configuration attributes to this client. Use this attribute at your own risk, as it may conflict with top-level configuration attributes in future provider updates. For example, the extra_config map can be used to set Authentication Context Class Reference (ACR) to Level of Authentication (LoA) mapping

false
frontchannelLogoutEnabledboolean

When true, frontchannel logout will be enabled for this client. Specify the url with frontchannel_logout_url. Defaults to false.

false
frontchannelLogoutUrlstring

The frontchannel logout url. This is applicable only when frontchannel_logout_enabled is true.

false
fullScopeAllowedboolean

Allow to include all roles mappings in the access token.

false
implicitFlowEnabledboolean

When true, the OAuth2 Implicit Grant will be enabled for this client. Defaults to false.

false
importboolean

When true, the client with the specified client_id is assumed to already exist, and it will be imported into state instead of being created. This attribute is useful when dealing with clients that Keycloak creates automatically during realm creation, such as account and admin-cli. Note, that the client will not be removed during destruction if import is true.

false
loginThemestring

The client login theme. This will override the default theme for the realm.

false
namestring

The display name of this client in the GUI.

false
oauth2DeviceAuthorizationGrantEnabledboolean

Enables support for OAuth 2.0 Device Authorization Grant, which means that client is an application on device that has limited input capabilities or lack a suitable browser.

false
oauth2DeviceCodeLifespanstring

The maximum amount of time a client has to finish the device code flow before it expires.

false
oauth2DevicePollingIntervalstring

The minimum amount of time in seconds that the client should wait between polling requests to the token endpoint.

false
pkceCodeChallengeMethodstring

The challenge method to use for Proof Key for Code Exchange. Can be either plain or S256 or set to empty value “.

false
rootUrlstring

When specified, this URL is prepended to any relative URLs found within valid_redirect_uris, web_origins, and admin_url. NOTE: Due to limitations in the Keycloak API, when the root_url attribute is used, the valid_redirect_uris, web_origins, and admin_url attributes will be required.

false
serviceAccountsEnabledboolean

When true, the OAuth2 Client Credentials grant will be enabled for this client. Defaults to false.

false
standardFlowEnabledboolean

When true, the OAuth2 Authorization Code Grant will be enabled for this client. Defaults to false.

false
useRefreshTokensboolean

If this is true, a refresh_token will be created and added to the token response. If this is false then no refresh_token will be generated. Defaults to true.

false
useRefreshTokensClientCredentialsboolean

If this is true, a refresh_token will be created and added to the token response if the client_credentials grant is used and a user session will be created. If this is false then no refresh_token will be generated and the associated user session will be removed, in accordance with OAuth 2.0 RFC6749 Section 4.4.3. Defaults to false.

false
validPostLogoutRedirectUris[]string

A list of valid URIs a browser is permitted to redirect to after a successful logout.

false
validRedirectUris[]string

A list of valid URIs a browser is permitted to redirect to after a successful login or logout. Simple wildcards in the form of an asterisk can be used here. This attribute must be set if either standard_flow_enabled or implicit_flow_enabled is set to true.

false
webOrigins[]string

A list of allowed CORS origins. To permit all valid redirect URIs, add +. Note that this will not include the * wildcard. To permit all origins, explicitly add *.“

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index]

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index]”
↩ Parent
NameTypeDescriptionRequired
browserIdstring

Browser flow id, (flow needs to exist)

false
browserIdRefobject

Reference to a Flow in authenticationflow to populate browserId.

false
browserIdSelectorobject

Selector for a Flow in authenticationflow to populate browserId.

false
directGrantIdstring

Direct grant flow id (flow needs to exist)

false
directGrantIdRefobject

Reference to a Flow in authenticationflow to populate directGrantId.

false
directGrantIdSelectorobject

Selector for a Flow in authenticationflow to populate directGrantId.

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdRef

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdRef”
↩ Parent

Reference to a Flow in authenticationflow to populate browserId.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdRef.policy

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdRef.policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdSelector

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdSelector”
↩ Parent

Selector for a Flow in authenticationflow to populate browserId.

NameTypeDescriptionRequired
matchControllerRefboolean

MatchControllerRef ensures an object with the same controller reference as the selecting object is selected.

false
matchLabelsmap[string]string

MatchLabels ensures an object with matching labels is selected.

false
policyobject

Policies for selection.

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdSelector.policy

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].browserIdSelector.policy”
↩ Parent

Policies for selection.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdRef

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdRef”
↩ Parent

Reference to a Flow in authenticationflow to populate directGrantId.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdRef.policy

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdRef.policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdSelector

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdSelector”
↩ Parent

Selector for a Flow in authenticationflow to populate directGrantId.

NameTypeDescriptionRequired
matchControllerRefboolean

MatchControllerRef ensures an object with the same controller reference as the selecting object is selected.

false
matchLabelsmap[string]string

MatchLabels ensures an object with matching labels is selected.

false
policyobject

Policies for selection.

false

KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdSelector.policy

Section titled “KeycloakClient.spec.clientConfiguration.authenticationFlowBindingOverrides[index].directGrantIdSelector.policy”
↩ Parent

Policies for selection.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false

KeycloakClient.spec.clientConfiguration.authorization[index]

Section titled “KeycloakClient.spec.clientConfiguration.authorization[index]”
↩ Parent
NameTypeDescriptionRequired
allowRemoteResourceManagementboolean

When true, resources can be managed remotely by the resource server. Defaults to false.

false
decisionStrategystring

Dictates how the policies associated with a given permission are evaluated and how a final decision is obtained. Could be one of AFFIRMATIVE, CONSENSUS, or UNANIMOUS. Applies to permissions.

false
keepDefaultsboolean

When true, defaults set by Keycloak will be respected. Defaults to false.

false
policyEnforcementModestring

Dictates how policies are enforced when evaluating authorization requests. Can be one of ENFORCING, PERMISSIVE, or DISABLED.

false

KeycloakClient.spec.clientConfiguration.clientSecretSecretRef

Section titled “KeycloakClient.spec.clientConfiguration.clientSecretSecretRef”
↩ Parent

The secret for clients with an access_type of CONFIDENTIAL or BEARER-ONLY. This value is sensitive and should be treated with the same care as a password. If omitted, this will be generated by Keycloak.

NameTypeDescriptionRequired
keystring

The key to select.

true
namestring

Name of the secret.

true
namespacestring

Namespace of the secret.

true
↩ Parent
NameTypeDescriptionRequired
apiVersionstringk8saas.io/v1alpha1true
kindstringKeycloakGrouptrue
metadataobjectRefer to the Kubernetes API documentation for the fields of the metadata field.true
specobject
false
↩ Parent
NameTypeDescriptionRequired
groupConfigurationobject

The complete Keycloak group configuration. Setup values from the spec.forProvider object https://github.com/crossplane-contrib/provider-keycloak/blob/v1.9.2/package/crds/group.keycloak.crossplane.io_groups.yaml.

false
members[]string

A list of usernames that belong to this group.

false
namestring

The name of the group.

false
realmIdstring

The realm this group is attached to.

false
roleIdsRefs[]object

References to Role in roles to populate roleIds.

false
↩ Parent

The complete Keycloak group configuration. Setup values from the spec.forProvider object https://github.com/crossplane-contrib/provider-keycloak/blob/v1.9.2/package/crds/group.keycloak.crossplane.io_groups.yaml.

NameTypeDescriptionRequired
attributesmap[string]string

A map representing attributes for the group. In order to add multivalue attributes, use ## to seperate the values. Max length for each value is 255 chars

false
parentIdRefobject

Reference to a Group in group to populate parentId.

false

KeycloakGroup.spec.groupConfiguration.parentIdRef

Section titled “KeycloakGroup.spec.groupConfiguration.parentIdRef”
↩ Parent

Reference to a Group in group to populate parentId.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakGroup.spec.groupConfiguration.parentIdRef.policy

Section titled “KeycloakGroup.spec.groupConfiguration.parentIdRef.policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false
↩ Parent

A Reference to a named object.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakGroup.spec.roleIdsRefs[index].policy

Section titled “KeycloakGroup.spec.roleIdsRefs[index].policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false
↩ Parent
NameTypeDescriptionRequired
apiVersionstringk8saas.io/v1alpha1true
kindstringKeycloakRealmtrue
metadataobjectRefer to the Kubernetes API documentation for the fields of the metadata field.true
specobject
false
↩ Parent
NameTypeDescriptionRequired
enabledboolean

Default: true

false
enabledEventTypes[]string

The event types that will be saved to the database. Omitting this field enables all event types. Defaults to [] or all event types.


Default: []

false
eventsExpirationnumber

The amount of time in seconds events will be saved in the database. Defaults to 0 or never.


Default: 604800

false
eventsListeners[]string

The event listeners that events should be sent to. Note that new realms enable the jboss-logging listener by default, and this resource will remove that unless it is specified.


Default: [jboss-logging]

false
namestring

The name of the realm. This is unique across Keycloak. This will also be used as the realm’s internal ID within Keycloak.

false
realmConfigurationobject

The complete Keycloak realm configuration. Setup values from the spec.forProvider object https://github.com/crossplane-contrib/provider-keycloak/blob/v1.9.2/package/crds/realm.keycloak.crossplane.io_realms.yaml.

false
↩ Parent

The complete Keycloak realm configuration. Setup values from the spec.forProvider object https://github.com/crossplane-contrib/provider-keycloak/blob/v1.9.2/package/crds/realm.keycloak.crossplane.io_realms.yaml.

NameTypeDescriptionRequired
accessCodeLifespanstring

The maximum amount of time a client has to finish the authorization code flow.

false
accessCodeLifespanLoginstring

The maximum amount of time a user is permitted to stay on the login page before the authentication process must be restarted.

false
accessCodeLifespanUserActionstring

The maximum amount of time a user has to complete login related actions, such as updating a password.

false
accessTokenLifespanstring

The amount of time an access token can be used before it expires.

false
accessTokenLifespanForImplicitFlowstring

The amount of time an access token issued with the OpenID Connect Implicit Flow can be used before it expires.

false
accountThemestring

Used for account management pages.

false
actionTokenGeneratedByAdminLifespanstring

The maximum time a user has to use an admin-generated permit before it expires.

false
actionTokenGeneratedByUserLifespanstring

The maximum time a user has to use a user-generated permit before it expires.

false
adminThemestring

Used for the admin console.

false
attributesmap[string]string

A map of custom attributes to add to the realm.

false
browserFlowstring

The desired flow for browser authentication. Defaults to browser. Which flow should be used for BrowserFlow

false
clientAuthenticationFlowstring

The desired flow for client authentication. Defaults to clients. Which flow should be used for ClientAuthenticationFlow

false
clientSessionIdleTimeoutstring

The amount of time a session can be idle before it expires. Users can override it for individual clients.

false
clientSessionMaxLifespanstring

The maximum amount of time before a session expires regardless of activity. Users can override it for individual clients.

false
defaultDefaultClientScopes[]string

A list of default default client scopes to be used for client definitions. Defaults to [] or keycloak’s built-in default default client-scopes.

false
defaultOptionalClientScopes[]string

A list of default optional client scopes to be used for client definitions. Defaults to [] or keycloak’s built-in default optional client-scopes.

false
defaultSignatureAlgorithmstring

Default algorithm used to sign tokens for the realm.

false
directGrantFlowstring

The desired flow for direct access authentication. Defaults to direct grant. Which flow should be used for DirectGrantFlow

false
displayNamestring

The display name for the realm that is shown when logging in to the admin console.

false
displayNameHtmlstring

The display name for the realm that is rendered as HTML on the screen when logging in to the admin console.

false
dockerAuthenticationFlowstring

The desired flow for Docker authentication. Defaults to docker auth. Which flow should be used for DockerAuthenticationFlow

false
duplicateEmailsAllowedboolean

When true, multiple users will be allowed to have the same email address. This argument must be set to false if login_with_email_allowed is set to true.

false
editUsernameAllowedboolean

When true, the username field is editable.

false
emailThemestring

Used for emails that are sent by Keycloak.

false
internationalization[]object
false
loginThemestring

Used for the login, forgot password, and registration pages.

false
loginWithEmailAllowedboolean

When true, users may log in with their email address.

false
oauth2DeviceCodeLifespanstring

The maximum amount of time a client has to finish the device code flow before it expires.

false
oauth2DevicePollingIntervalnumber

The minimum amount of time in seconds that the client should wait between polling requests to the token endpoint.

false
offlineSessionIdleTimeoutstring

The amount of time an offline session can be idle before it expires.

false
offlineSessionMaxLifespanstring

The maximum amount of time before an offline session expires regardless of activity.

false
offlineSessionMaxLifespanEnabledboolean

Enable offline_session_max_lifespan.

false
otpPolicy[]object
false
passwordPolicystring

The password policy for users within the realm. String that represents the passwordPolicies that are in place. Each policy is separated with ” and ”. Supported policies can be found in the server-info providers page. example: “upperCase(1) and length(8) and forceExpiredPasswordChange(365) and notUsername(undefined)“

false
refreshTokenMaxReusenumber

Maximum number of times a refresh token can be reused before they are revoked. If unspecified and ‘revoke_refresh_token’ is enabled the default value is 0 and refresh tokens can not be reused.

false
registrationAllowedboolean

When true, user registration will be enabled, and a link for registration will be displayed on the login page.

false
registrationEmailAsUsernameboolean

When true, the user’s email will be used as their username during registration.

false
registrationFlowstring

The desired flow for user registration. Defaults to registration. Which flow should be used for RegistrationFlow

false
rememberMeboolean

When true, a “remember me” checkbox will be displayed on the login page, and the user’s session will not expire between browser restarts.

false
resetCredentialsFlowstring

The desired flow to use when a user attempts to reset their credentials. Defaults to reset credentials. Which flow should be used for ResetCredentialsFlow

false
resetPasswordAllowedboolean

When true, a “forgot password” link will be displayed on the login page.

false
revokeRefreshTokenboolean

If enabled a refresh token can only be used number of times specified in ‘refresh_token_max_reuse’ before they are revoked. If unspecified, refresh tokens can be reused.

false
securityDefenses[]object
false
smtpServer[]object
false
sslRequiredstring

Can be one of following values: ‘none, ‘external’ or ‘all’ SSL Required: Values can be ‘none’, ‘external’ or ‘all’.

false
ssoSessionIdleTimeoutstring

The amount of time a session can be idle before it expires.

false
ssoSessionIdleTimeoutRememberMestring

Similar to sso_session_idle_timeout, but used when a user clicks “Remember Me”. If not set, Keycloak will default to the value of sso_session_idle_timeout.

false
ssoSessionMaxLifespanstring

The maximum amount of time before a session expires regardless of activity.

false
ssoSessionMaxLifespanRememberMestring

Similar to sso_session_max_lifespan, but used when a user clicks “Remember Me”. If not set, Keycloak will default to the value of sso_session_max_lifespan.

false
userManagedAccessboolean

When true, users are allowed to manage their own resources. Defaults to false.

false
verifyEmailboolean

When true, users are required to verify their email address after registration and after email address changes.

false
webAuthnPasswordlessPolicy[]object

Configuration for WebAuthn Passwordless Policy authentication.

false
webAuthnPolicy[]object

Configuration for WebAuthn Policy authentication.

false

KeycloakRealm.spec.realmConfiguration.internationalization[index]

Section titled “KeycloakRealm.spec.realmConfiguration.internationalization[index]”
↩ Parent
NameTypeDescriptionRequired
defaultLocalestring

The locale to use by default. This locale code must be present within the supported_locales list.

false
supportedLocales[]string

A list of ISO 639-1 locale codes that the realm should support.

false

KeycloakRealm.spec.realmConfiguration.otpPolicy[index]

Section titled “KeycloakRealm.spec.realmConfiguration.otpPolicy[index]”
↩ Parent
NameTypeDescriptionRequired
algorithmstring

What hashing algorithm should be used to generate the OTP, Valid options are HmacSHA1,HmacSHA256 and HmacSHA512. Defaults to HmacSHA1. What hashing algorithm should be used to generate the OTP.

false
digitsnumber

How many digits the OTP have. Defaults to 6.

false
initialCounternumber

What should the initial counter value be. Defaults to 2.

false
lookAheadWindownumber

How far ahead should the server look just in case the token generator and server are out of time sync or counter sync. Defaults to 1.

false
periodnumber

How many seconds should an OTP token be valid. Defaults to 30.

false
typestring

One Time Password Type, supported Values are totp for Time-Based One Time Password and hotp for Counter Based. Defaults to totp. OTP Type, totp for Time-Based One Time Password or hotp for counter base one time password

false

KeycloakRealm.spec.realmConfiguration.securityDefenses[index]

Section titled “KeycloakRealm.spec.realmConfiguration.securityDefenses[index]”
↩ Parent
NameTypeDescriptionRequired
bruteForceDetection[]object
false
headers[]object
false

KeycloakRealm.spec.realmConfiguration.securityDefenses[index].bruteForceDetection[index]

Section titled “KeycloakRealm.spec.realmConfiguration.securityDefenses[index].bruteForceDetection[index]”
↩ Parent
NameTypeDescriptionRequired
failureResetTimeSecondsnumber

When will failure count be reset?

false
maxFailureWaitSecondsnumber
false
maxLoginFailuresnumber

How many failures before wait is triggered.

false
minimumQuickLoginWaitSecondsnumber

How long to wait after a quick login failure.

false
permanentLockoutboolean

When true, this will lock the user permanently when the user exceeds the maximum login failures.

false
quickLoginCheckMilliSecondsnumber

Configures the amount of time, in milliseconds, for consecutive failures to lock a user out.

false
waitIncrementSecondsnumber

This represents the amount of time a user should be locked out when the login failure threshold has been met.

false

KeycloakRealm.spec.realmConfiguration.securityDefenses[index].headers[index]

Section titled “KeycloakRealm.spec.realmConfiguration.securityDefenses[index].headers[index]”
↩ Parent
NameTypeDescriptionRequired
contentSecurityPolicystring

Sets the Content Security Policy, which can be used for prevent pages from being included by non-origin iframes. More information can be found in the W3C-CSP Abstract.

false
contentSecurityPolicyReportOnlystring

Used for testing Content Security Policies.

false
referrerPolicystring

The Referrer-Policy HTTP header controls how much referrer information (sent with the Referer header) should be included with requests.

false
strictTransportSecuritystring

The Script-Transport-Security HTTP header tells browsers to always use HTTPS.

false
xContentTypeOptionsstring

Sets the X-Content-Type-Options, which can be used for prevent MIME-sniffing a response away from the declared content-type

false
xFrameOptionsstring

Sets the x-frame-option, which can be used to prevent pages from being included by non-origin iframes. More information can be found in the RFC7034

false
xRobotsTagstring

Prevent pages from appearing in search engines.

false
xXssProtectionstring

This header configures the Cross-site scripting (XSS) filter in your browser.

false

KeycloakRealm.spec.realmConfiguration.smtpServer[index]

Section titled “KeycloakRealm.spec.realmConfiguration.smtpServer[index]”
↩ Parent
NameTypeDescriptionRequired
auth[]object

Enables authentication to the SMTP server. This block supports the following arguments:

false
envelopeFromstring

The email address uses for bounces.

false
fromstring

The email address for the sender.

false
fromDisplayNamestring

The display name of the sender email address.

false
hoststring

The host of the SMTP server.

false
portstring

The port of the SMTP server (defaults to 25).

false
replyTostring

The “reply to” email address.

false
replyToDisplayNamestring

The display name of the “reply to” email address.

false
sslboolean

When true, enables SSL. Defaults to false.

false
starttlsboolean

When true, enables StartTLS. Defaults to false.

false

KeycloakRealm.spec.realmConfiguration.smtpServer[index].auth[index]

Section titled “KeycloakRealm.spec.realmConfiguration.smtpServer[index].auth[index]”
↩ Parent
NameTypeDescriptionRequired
passwordSecretRefobject

The SMTP server password.

false
usernamestring

The SMTP server username.

false

KeycloakRealm.spec.realmConfiguration.smtpServer[index].auth[index].passwordSecretRef

Section titled “KeycloakRealm.spec.realmConfiguration.smtpServer[index].auth[index].passwordSecretRef”
↩ Parent

The SMTP server password.

NameTypeDescriptionRequired
keystring

The key to select.

true
namestring

Name of the secret.

true
namespacestring

Namespace of the secret.

true

KeycloakRealm.spec.realmConfiguration.webAuthnPasswordlessPolicy[index]

Section titled “KeycloakRealm.spec.realmConfiguration.webAuthnPasswordlessPolicy[index]”
↩ Parent
NameTypeDescriptionRequired
acceptableAaguids[]string

A set of AAGUIDs for which an authenticator can be registered.

false
attestationConveyancePreferencestring

The preference of how to generate a WebAuthn attestation statement. Valid options are not specified, none, indirect, direct, or enterprise. Defaults to not specified. Either none, indirect or direct

false
authenticatorAttachmentstring

The acceptable attachment pattern for the WebAuthn authenticator. Valid options are not specified, platform, or cross-platform. Defaults to not specified. Either platform or cross-platform

false
avoidSameAuthenticatorRegisterboolean

When true, Keycloak will avoid registering the authenticator for WebAuthn if it has already been registered. Defaults to false.

false
createTimeoutnumber

The timeout value for creating a user’s public key credential in seconds. When set to 0, this timeout option is not adapted. Defaults to 0.

false
relyingPartyEntityNamestring

A human readable server name for the WebAuthn Relying Party. Defaults to keycloak.

false
relyingPartyIdstring

The WebAuthn relying party ID.

false
requireResidentKeystring

Specifies whether or not a public key should be created to represent the resident key. Valid options are not specified, Yes, or No. Defaults to not specified. Either Yes or No

false
signatureAlgorithms[]string

A set of signature algorithms that should be used for the authentication assertion. Valid options at the time these docs were written are ES256, ES384, ES512, RS256, RS384, RS512, and RS1. Keycloak lists ES256, ES384, ES512, RS256, RS384, RS512, RS1 at the time of writing

false
userVerificationRequirementstring

Specifies the policy for verifying a user logging in via WebAuthn. Valid options are not specified, required, preferred, or discouraged. Defaults to not specified. Either required, preferred or discouraged

false

KeycloakRealm.spec.realmConfiguration.webAuthnPolicy[index]

Section titled “KeycloakRealm.spec.realmConfiguration.webAuthnPolicy[index]”
↩ Parent
NameTypeDescriptionRequired
acceptableAaguids[]string

A set of AAGUIDs for which an authenticator can be registered.

false
attestationConveyancePreferencestring

The preference of how to generate a WebAuthn attestation statement. Valid options are not specified, none, indirect, direct, or enterprise. Defaults to not specified. Either none, indirect or direct

false
authenticatorAttachmentstring

The acceptable attachment pattern for the WebAuthn authenticator. Valid options are not specified, platform, or cross-platform. Defaults to not specified. Either platform or cross-platform

false
avoidSameAuthenticatorRegisterboolean

When true, Keycloak will avoid registering the authenticator for WebAuthn if it has already been registered. Defaults to false.

false
createTimeoutnumber

The timeout value for creating a user’s public key credential in seconds. When set to 0, this timeout option is not adapted. Defaults to 0.

false
relyingPartyEntityNamestring

A human readable server name for the WebAuthn Relying Party. Defaults to keycloak.

false
relyingPartyIdstring

The WebAuthn relying party ID.

false
requireResidentKeystring

Specifies whether or not a public key should be created to represent the resident key. Valid options are not specified, Yes, or No. Defaults to not specified. Either Yes or No

false
signatureAlgorithms[]string

A set of signature algorithms that should be used for the authentication assertion. Valid options at the time these docs were written are ES256, ES384, ES512, RS256, RS384, RS512, and RS1. Keycloak lists ES256, ES384, ES512, RS256, RS384, RS512, RS1 at the time of writing

false
userVerificationRequirementstring

Specifies the policy for verifying a user logging in via WebAuthn. Valid options are not specified, required, preferred, or discouraged. Defaults to not specified. Either required, preferred or discouraged

false
↩ Parent
NameTypeDescriptionRequired
apiVersionstringk8saas.io/v1alpha1true
kindstringKeycloakUsertrue
metadataobjectRefer to the Kubernetes API documentation for the fields of the metadata field.true
specobject
false
↩ Parent
NameTypeDescriptionRequired
groupIdsRefs[]object

References to Group in group to populate groupIds.

false
realmIdstring

The realm this user is attached to.

false
roleIdsRefs[]object

References to Role in roles to populate roleIds.

false
userConfigurationobject

The complete Keycloak client configuration. Setup values from the spec.forProvider object https://marketplace.upbound.io/providers/crossplane-contrib/provider-keycloak/v1.9.2/resources/openidclient.keycloak.crossplane.io/Client/v1alpha1.

false
usernamestring

The unique username of this user.

false
↩ Parent

A Reference to a named object.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakUser.spec.groupIdsRefs[index].policy

Section titled “KeycloakUser.spec.groupIdsRefs[index].policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false
↩ Parent

A Reference to a named object.

NameTypeDescriptionRequired
namestring

Name of the referenced object.

true
policyobject

Policies for referencing.

false

KeycloakUser.spec.roleIdsRefs[index].policy

Section titled “KeycloakUser.spec.roleIdsRefs[index].policy”
↩ Parent

Policies for referencing.

NameTypeDescriptionRequired
resolutionenum

Resolution specifies whether resolution of this reference is required. The default is ‘Required’, which means the reconcile will fail if the reference cannot be resolved. ‘Optional’ means this reference will be a no-op if it cannot be resolved.


Enum: Required, Optional
Default: Required

false
resolveenum

Resolve specifies when this reference should be resolved. The default is ‘IfNotPresent’, which will attempt to resolve the reference only when the corresponding field is not present. Use ‘Always’ to resolve the reference on every reconcile.


Enum: Always, IfNotPresent

false
↩ Parent

The complete Keycloak client configuration. Setup values from the spec.forProvider object https://marketplace.upbound.io/providers/crossplane-contrib/provider-keycloak/v1.9.2/resources/openidclient.keycloak.crossplane.io/Client/v1alpha1.

NameTypeDescriptionRequired
attributesmap[string]string

A map representing attributes for the user. In order to add multivalue attributes, use ## to seperate the values. Max length for each value is 255 chars

false
emailstring

The user’s email.

false
emailVerifiedboolean

Whether the email address was validated or not. Default to false.

false
enabledboolean

When false, this user cannot log in. Defaults to true.

false
federatedIdentity[]object

When specified, the user will be linked to a federated identity provider. Refer to the federated user example for more details.

false
firstNamestring

The user’s first name.

false
initialPassword[]object

When given, the user’s initial password will be set. This attribute is only respected during initial user creation.

false
lastNamestring

The user’s last name.

false
requiredActions[]string

A list of required user actions.

false

KeycloakUser.spec.userConfiguration.federatedIdentity[index]

Section titled “KeycloakUser.spec.userConfiguration.federatedIdentity[index]”
↩ Parent
NameTypeDescriptionRequired
identityProviderstring

The name of the identity provider

false
userIdstring

The ID of the user defined in the identity provider

false
userNamestring

The user name of the user defined in the identity provider

false

KeycloakUser.spec.userConfiguration.initialPassword[index]

Section titled “KeycloakUser.spec.userConfiguration.initialPassword[index]”
↩ Parent
NameTypeDescriptionRequired
temporaryboolean

If set to true, the initial password is set up for renewal on first use. Default to false.

false
valueSecretRefobject

The initial password.

false

KeycloakUser.spec.userConfiguration.initialPassword[index].valueSecretRef

Section titled “KeycloakUser.spec.userConfiguration.initialPassword[index].valueSecretRef”
↩ Parent

The initial password.

NameTypeDescriptionRequired
keystring

The key to select.

true
namestring

Name of the secret.

true
namespacestring

Namespace of the secret.

true