Client is the Schema for the Clients API.
Type
CRD
Group
openidclient.keycloak.crossplane.io
Version
v1alpha1
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
ClientSpec defines the desired state of Client
No description provided.
Override realm authentication flow bindings
Reference to a Flow in authenticationflow to populate browserId.
Policies for referencing.
Selector for a Flow in authenticationflow to populate browserId.
Policies for selection.
Reference to a Flow in authenticationflow to populate directGrantId.
Policies for referencing.
Selector for a Flow in authenticationflow to populate directGrantId.
Policies for selection.
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:
Reference to a Client in openidclient to populate clientId.
Policies for referencing.
Selector for a Client in openidclient to populate clientId.
Policies for selection.
Reference to a Realm in realm to populate realmId.
Policies for referencing.
Selector for a Realm in realm to populate realmId.
Policies for selection.
A list of valid URIs a browser is permitted to redirect to after a successful logout.
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.
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 *."
THIS IS A BETA FIELD. It will be honored unless the Management Policies feature flag is disabled. InitProvider holds the same fields as ForProvider, with the exception of Identifier and other resource reference fields. The fields that are in InitProvider are merged into ForProvider when the resource is created. The same fields are also added to the terraform ignore_changes hook, to avoid updating them after creation. This is useful for fields that are required on creation, but we do not desire to update them after creation, for example because of an external controller is managing them, like an autoscaler.
Override realm authentication flow bindings
Reference to a Flow in authenticationflow to populate browserId.
Policies for referencing.
Selector for a Flow in authenticationflow to populate browserId.
Policies for selection.
Reference to a Flow in authenticationflow to populate directGrantId.
Policies for referencing.
Selector for a Flow in authenticationflow to populate directGrantId.
Policies for selection.
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:
Reference to a Client in openidclient to populate clientId.
Policies for referencing.
Selector for a Client in openidclient to populate clientId.
Policies for selection.
Reference to a Realm in realm to populate realmId.
Policies for referencing.
Selector for a Realm in realm to populate realmId.
Policies for selection.
A list of valid URIs a browser is permitted to redirect to after a successful logout.
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.
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 *."
THIS IS A BETA FIELD. It is on by default but can be opted out through a Crossplane feature flag. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. This field is planned to replace the DeletionPolicy field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. If both are custom, the DeletionPolicy field will be ignored. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md
ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.
Policies for referencing.
PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource.
WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other.
ClientStatus defines the observed state of Client.
No description provided.
Override realm authentication flow bindings
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:
A list of valid URIs a browser is permitted to redirect to after a successful logout.
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.
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 *."
Conditions of the resource.
test
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: test
spec:
forProvider:
accessType: CONFIDENTIAL
clientId: test
realmIdRef:
name: my-realm
serviceAccountsEnabled: false
providerConfigRef:
name: keycloak-provider-config
web-app-public-client
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: web-app-public-client
spec:
deletionPolicy: Delete
forProvider:
accessType: public
clientId: web-app-public
realmId: my-realm
standardFlowEnabled: true
validRedirectUris:
- http://localhost:3000/callback
kubernetes
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: kubernetes
spec:
forProvider:
accessType: CONFIDENTIAL
authorization:
- policyEnforcementMode: ENFORCING
clientId: kubernetes
directAccessGrantsEnabled: true
name: kubernetes
realmId: my-realm
serviceAccountsEnabled: true
standardFlowEnabled: true
validRedirectUris:
- http://localhost:18000
- http://localhost:8000
providerConfigRef:
name: keycloak-provider-config
backend-service-confidential-client
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: backend-service-confidential-client
spec:
deletionPolicy: Delete
forProvider:
accessType: confidential
clientId: backend-service-confidential
clientSecretSecretRef:
key: client-secret
name: backend-service-secret
namespace: my-namespace
realmId: my-realm
serviceAccountsEnabled: true
resource-server-bearer-only-client
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: resource-server-bearer-only-client
spec:
deletionPolicy: Delete
forProvider:
accessType: bearer-only
clientId: resource-server-bearer-only
realmId: my-realm
mobile-app-public-client
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: mobile-app-public-client
spec:
deletionPolicy: Delete
forProvider:
accessType: public
clientId: mobile-app-public
pkceCodeChallengeMethod: S256
realmId: my-realm
standardFlowEnabled: true
validRedirectUris:
- myapp://callback
argocd
apiVersion: openidclient.keycloak.crossplane.io/v1alpha1
kind: Client
metadata:
name: argocd
spec:
forProvider:
accessType: CONFIDENTIAL
adminUrl: https://argocd.example.com
clientId: argocd
directAccessGrantsEnabled: true
name: argocd
realmId: my-realm
rootUrl: https://argocd.example.com
standardFlowEnabled: true
validPostLogoutRedirectUris:
- https://argocd.example.com
validRedirectUris:
- https://argocd.example.com/auth/callback
webOrigins:
- https://argocd.example.com
providerConfigRef:
name: keycloak-provider-config