ProtocolMapper is the Schema for the ProtocolMappers API.
Type
CRD
Group
client.keycloak.crossplane.io
Version
v1alpha1
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
ProtocolMapperSpec defines the desired state of ProtocolMapper
No description provided.
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 ClientScope in openidclient to populate clientScopeId.
Policies for referencing.
Selector for a ClientScope in openidclient to populate clientScopeId.
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.
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.
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 ClientScope in openidclient to populate clientScopeId.
Policies for referencing.
Selector for a ClientScope in openidclient to populate clientScopeId.
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.
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.
ProtocolMapperStatus defines the observed state of ProtocolMapper.
No description provided.
Conditions of the resource.
saml-hardcoded-attribute-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: saml-hardcoded-attribute-mapper
spec:
forProvider:
clientId: my-saml-client
config:
attribute.name: hardcoded_attribute
attribute.nameformat: Basic
attribute.value: hardcoded_value
name: hardcoded-attribute-mapper
protocol: saml
protocolMapper: saml-hardcoded-attribute-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
openid-full-name-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: openid-full-name-mapper
spec:
forProvider:
clientId: my-openid-client
config:
access.token.claim: "true"
id.token.claim: "true"
name: full-name-mapper
protocol: openid-connect
protocolMapper: oidc-full-name-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
openid-role-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: openid-role-mapper
spec:
forProvider:
clientId: another-openid-client
config:
claim.name: roles
multivalued: "true"
name: role-mapper
protocol: openid-connect
protocolMapper: oidc-usermodel-realm-role-mapper
realmId: another-realm
providerConfigRef:
name: keycloak-provider-config
kubernetes-name
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: kubernetes-name
spec:
forProvider:
clientIdRef:
name: kubernetes
config:
access.token.claim: "true"
claim.name: name
id.token.claim: "true"
user.attribute: name
name: name
protocol: openid-connect
protocolMapper: oidc-usermodel-attribute-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
kubernetes-roles
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: kubernetes-roles
spec:
forProvider:
clientIdRef:
name: kubernetes
config:
access.token.claim: "true"
claim.name: roles
id.token.claim: "true"
multivalued: "true"
usermodel.clientRoleMapping.clientId: kubernetes
name: roles
protocol: openid-connect
protocolMapper: oidc-usermodel-client-role-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
saml-user-property-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: saml-user-property-mapper
spec:
forProvider:
clientId: my-saml-client
config:
attribute.name: email
attribute.nameformat: Basic
friendly.name: email
property: email
name: email-mapper
protocol: saml
protocolMapper: saml-user-property-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
saml-x509-subject-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: saml-x509-subject-mapper
spec:
forProvider:
clientId: my-saml-client
config:
attribute.name: x509subject
attribute.nameformat: Basic
name: x509-subject-mapper
protocol: saml
protocolMapper: saml-x509-subject-name-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
openid-user-attribute-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: openid-user-attribute-mapper
spec:
forProvider:
clientId: my-openid-client
config:
access.token.claim: "true"
claim.name: department
id.token.claim: "true"
user.attribute: department
name: department-mapper
protocol: openid-connect
protocolMapper: oidc-usermodel-attribute-mapper
realmId: my-realm
providerConfigRef:
name: keycloak-provider-config
openid-audience-mapper
apiVersion: client.keycloak.crossplane.io/v1alpha1
kind: ProtocolMapper
metadata:
name: openid-audience-mapper
spec:
forProvider:
clientId: another-openid-client
config:
id.token.claim: "true"
included.client.audience: some-client
name: audience-mapper
protocol: openid-connect
protocolMapper: oidc-audience-mapper
realmId: another-realm
providerConfigRef:
name: keycloak-provider-config