Documentation ¶
Overview ¶
Package v1alpha2 contains API Schema definitions for the keycloak v1alpha2 API group +kubebuilder:object:generate=true +groupName=keycloak.japannext.co.jp
Index ¶
- Variables
- func DiffComponentConfigs(x, y *map[string][]string) diff.Changelog
- func Ptr[T any](v T) *T
- func Unwrap[T any](v *T) T
- type ApiStatus
- type BasicAuthSecret
- type CertificateLdapMapper
- type ConfigMapValue
- type EndpointPhase
- type EndpointSelector
- type FullNameLdapMapper
- type GroupLdapMapper
- type GroupRepresentation
- type HardcodedAttributeMapper
- type HardcodedLdapAttributeMapper
- type HardcodedLdapGroupMapper
- type HardcodedLdapRoleMapper
- type KeycloakClient
- func (i *KeycloakClient) ApiStatus() *ApiStatus
- func (in *KeycloakClient) DeepCopy() *KeycloakClient
- func (in *KeycloakClient) DeepCopyInto(out *KeycloakClient)
- func (in *KeycloakClient) DeepCopyObject() runtime.Object
- func (r *KeycloakClient) Default()
- func (i *KeycloakClient) Endpoint() EndpointSelector
- func (i *KeycloakClient) Realm() string
- func (r *KeycloakClient) SetupWebhookWithManager(mgr ctrl.Manager) error
- type KeycloakClientList
- type KeycloakClientProtocolMapper
- func (i *KeycloakClientProtocolMapper) ApiStatus() *ApiStatus
- func (in *KeycloakClientProtocolMapper) DeepCopy() *KeycloakClientProtocolMapper
- func (in *KeycloakClientProtocolMapper) DeepCopyInto(out *KeycloakClientProtocolMapper)
- func (in *KeycloakClientProtocolMapper) DeepCopyObject() runtime.Object
- func (i *KeycloakClientProtocolMapper) Endpoint() EndpointSelector
- func (i *KeycloakClientProtocolMapper) Realm() string
- type KeycloakClientProtocolMapperList
- type KeycloakClientProtocolMapperSpec
- type KeycloakClientProtocolMapperStatus
- type KeycloakClientRole
- func (i *KeycloakClientRole) ApiStatus() *ApiStatus
- func (in *KeycloakClientRole) DeepCopy() *KeycloakClientRole
- func (in *KeycloakClientRole) DeepCopyInto(out *KeycloakClientRole)
- func (in *KeycloakClientRole) DeepCopyObject() runtime.Object
- func (r *KeycloakClientRole) Default()
- func (i *KeycloakClientRole) Endpoint() EndpointSelector
- func (i *KeycloakClientRole) Realm() string
- func (r *KeycloakClientRole) SetupWebhookWithManager(mgr ctrl.Manager) error
- type KeycloakClientRoleList
- type KeycloakClientRoleMapping
- func (i *KeycloakClientRoleMapping) ApiStatus() *ApiStatus
- func (in *KeycloakClientRoleMapping) DeepCopy() *KeycloakClientRoleMapping
- func (in *KeycloakClientRoleMapping) DeepCopyInto(out *KeycloakClientRoleMapping)
- func (in *KeycloakClientRoleMapping) DeepCopyObject() runtime.Object
- func (i *KeycloakClientRoleMapping) Endpoint() EndpointSelector
- func (i *KeycloakClientRoleMapping) Realm() string
- type KeycloakClientRoleMappingList
- type KeycloakClientRoleMappingSpec
- type KeycloakClientRoleMappingStatus
- type KeycloakClientRoleSpec
- type KeycloakClientRoleStatus
- type KeycloakClientScope
- func (i *KeycloakClientScope) ApiStatus() *ApiStatus
- func (in *KeycloakClientScope) DeepCopy() *KeycloakClientScope
- func (in *KeycloakClientScope) DeepCopyInto(out *KeycloakClientScope)
- func (in *KeycloakClientScope) DeepCopyObject() runtime.Object
- func (i *KeycloakClientScope) Endpoint() EndpointSelector
- func (i *KeycloakClientScope) Realm() string
- type KeycloakClientScopeList
- type KeycloakClientScopeProtocolMapper
- func (i *KeycloakClientScopeProtocolMapper) ApiStatus() *ApiStatus
- func (in *KeycloakClientScopeProtocolMapper) DeepCopy() *KeycloakClientScopeProtocolMapper
- func (in *KeycloakClientScopeProtocolMapper) DeepCopyInto(out *KeycloakClientScopeProtocolMapper)
- func (in *KeycloakClientScopeProtocolMapper) DeepCopyObject() runtime.Object
- func (i *KeycloakClientScopeProtocolMapper) Endpoint() EndpointSelector
- func (i *KeycloakClientScopeProtocolMapper) Realm() string
- type KeycloakClientScopeProtocolMapperList
- type KeycloakClientScopeProtocolMapperSpec
- type KeycloakClientScopeProtocolMapperStatus
- type KeycloakClientScopeSpec
- type KeycloakClientScopeStatus
- type KeycloakClientSpec
- type KeycloakClientStatus
- type KeycloakClusterEndpoint
- func (in *KeycloakClusterEndpoint) DeepCopy() *KeycloakClusterEndpoint
- func (in *KeycloakClusterEndpoint) DeepCopyInto(out *KeycloakClusterEndpoint)
- func (in *KeycloakClusterEndpoint) DeepCopyObject() runtime.Object
- func (i *KeycloakClusterEndpoint) EndpointSpec() *KeycloakEndpointSpec
- func (i *KeycloakClusterEndpoint) EndpointStatus() *KeycloakEndpointStatus
- type KeycloakClusterEndpointList
- type KeycloakEndpoint
- func (in *KeycloakEndpoint) DeepCopy() *KeycloakEndpoint
- func (in *KeycloakEndpoint) DeepCopyInto(out *KeycloakEndpoint)
- func (in *KeycloakEndpoint) DeepCopyObject() runtime.Object
- func (i *KeycloakEndpoint) EndpointSpec() *KeycloakEndpointSpec
- func (i *KeycloakEndpoint) EndpointStatus() *KeycloakEndpointStatus
- type KeycloakEndpointList
- type KeycloakEndpointSpec
- type KeycloakEndpointStatus
- type KeycloakLDAPFederation
- func (i *KeycloakLDAPFederation) ApiStatus() *ApiStatus
- func (in *KeycloakLDAPFederation) DeepCopy() *KeycloakLDAPFederation
- func (in *KeycloakLDAPFederation) DeepCopyInto(out *KeycloakLDAPFederation)
- func (in *KeycloakLDAPFederation) DeepCopyObject() runtime.Object
- func (r *KeycloakLDAPFederation) Default()
- func (i *KeycloakLDAPFederation) Endpoint() EndpointSelector
- func (i *KeycloakLDAPFederation) Realm() string
- func (r *KeycloakLDAPFederation) SetupWebhookWithManager(mgr ctrl.Manager) error
- type KeycloakLDAPFederationList
- type KeycloakLDAPFederationSpec
- type KeycloakLDAPFederationStatus
- type KeycloakLDAPMapper
- func (i *KeycloakLDAPMapper) ApiStatus() *ApiStatus
- func (in *KeycloakLDAPMapper) DeepCopy() *KeycloakLDAPMapper
- func (in *KeycloakLDAPMapper) DeepCopyInto(out *KeycloakLDAPMapper)
- func (in *KeycloakLDAPMapper) DeepCopyObject() runtime.Object
- func (i *KeycloakLDAPMapper) Endpoint() EndpointSelector
- func (i *KeycloakLDAPMapper) Realm() string
- func (i *KeycloakLDAPMapper) ToComponent(fid string) (*gocloak.Component, error)
- type KeycloakLDAPMapperList
- type KeycloakLDAPMapperSpec
- type KeycloakLDAPMapperStatus
- type KeycloakRealm
- func (i *KeycloakRealm) ApiStatus() *ApiStatus
- func (in *KeycloakRealm) DeepCopy() *KeycloakRealm
- func (in *KeycloakRealm) DeepCopyInto(out *KeycloakRealm)
- func (in *KeycloakRealm) DeepCopyObject() runtime.Object
- func (r *KeycloakRealm) Default()
- func (i *KeycloakRealm) Endpoint() EndpointSelector
- func (i *KeycloakRealm) Realm() string
- func (r *KeycloakRealm) SetupWebhookWithManager(mgr ctrl.Manager) error
- type KeycloakRealmList
- type KeycloakRealmRole
- func (i *KeycloakRealmRole) ApiStatus() *ApiStatus
- func (in *KeycloakRealmRole) DeepCopy() *KeycloakRealmRole
- func (in *KeycloakRealmRole) DeepCopyInto(out *KeycloakRealmRole)
- func (in *KeycloakRealmRole) DeepCopyObject() runtime.Object
- func (i *KeycloakRealmRole) Endpoint() EndpointSelector
- func (i *KeycloakRealmRole) Realm() string
- type KeycloakRealmRoleList
- type KeycloakRealmRoleSpec
- type KeycloakRealmRoleStatus
- type KeycloakRealmSpec
- type KeycloakRealmStatus
- type LdapFederation
- type MSADUserAccountControlMapper
- type Phase
- type RoleLdapMapper
- type Rule
- type SecretGenerator
- type Subject
- type UserAttributeLdapMapper
- type UserRepresentation
Constants ¶
This section is empty.
Variables ¶
var ( LDAP_STORAGE_MAPPER = "org.keycloak.storage.ldap.mappers.LDAPStorageMapper" USER_STORAGE_PROVIDER = "org.keycloak.storage.UserStorageProvider" ROLE_LDAP_MAPPER = "role-ldap-mapper" USER_ATTRIBUTE_LDAP_MAPPER = "user-attribute-ldap-mapper" GROUP_LDAP_MAPPER = "group-ldap-mapper" LDAP_PROVIDER = "ldap" )
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "keycloak.japannext.co.jp", Version: "v1alpha2"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func DiffComponentConfigs ¶
Return a diff of 2 component config
Types ¶
type ApiStatus ¶
type ApiStatus struct { // Whether the resource is synced, not synced, failed to sync, etc Phase Phase `json:"phase,omitempty"` // The time the resource was last updated. // +optional LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"` }
+kubebuilder:object:generate=true
func (*ApiStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiStatus.
func (*ApiStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BasicAuthSecret ¶
type BasicAuthSecret struct { // The name of a secret of type `kubernetes.io/basic-auth` to authenticate to // keycloak as admin. The secret need to be in the same namespace as the KeycloakEndpoint. Name string `json:"name"` // Namespace where the secret resides. Only used for KeycloakClusterEndpoint. // Has no effect when used with KeycloakEndpoint. Namespace string `json:"namespace,omitempty"` }
Reference a user/password data stored in a secret +kubebuilder:object:generate=true
func (*BasicAuthSecret) DeepCopy ¶
func (in *BasicAuthSecret) DeepCopy() *BasicAuthSecret
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthSecret.
func (*BasicAuthSecret) DeepCopyInto ¶
func (in *BasicAuthSecret) DeepCopyInto(out *BasicAuthSecret)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertificateLdapMapper ¶
type CertificateLdapMapper struct { // +kubebuilder:default=false AlwaysReadValueFromLDAP bool `json:"alwaysReadValueFromLDAP"` // +kubebuilder:default="" AttributeDefaultValue string `json:"attributeDefaultValue,omitempty"` // +kubebuilder:default="" LDAPAttribute string `json:"ldapAttribute,omitempty"` // +kubebuilder:default=true ReadOnly bool `json:"readOnly"` // If true, attribute is mandatory in LDAP. Hence if there is no value in Keycloak DB, // the default or empty value will be set to be propagated to LDAP // +kubebuilder:default=false IsMandatoryInLDAP bool `json:"isMandatoryInLDAP"` // Should be true for binary LDAP attributes // +kubebuilder:default=false IsBinaryAttribute bool `json:"isBinaryAttribute"` // +kubebuilder:default=false IsDERFormatted bool `json:"isDERFormatted"` // +kubebuilder:default="" UserModelAttribute string `json:"userModelAttribute,omitempty"` }
+kubebuilder:object:generate=true
func (*CertificateLdapMapper) DeepCopy ¶
func (in *CertificateLdapMapper) DeepCopy() *CertificateLdapMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateLdapMapper.
func (*CertificateLdapMapper) DeepCopyInto ¶
func (in *CertificateLdapMapper) DeepCopyInto(out *CertificateLdapMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CertificateLdapMapper) ToComponentConfig ¶
func (m *CertificateLdapMapper) ToComponentConfig() map[string][]string
type ConfigMapValue ¶
type ConfigMapValue struct { // Name of the configMap referenced Name string `json:"name"` // Name of the configMap key to use Key string `json:"key"` // Namespace where the ConfigMap resides. Used only for KeycloakClusterEndpoint. // Has no effect when used with KeycloakEndpoint. Namespace string `json:"namespace,omitempty"` }
Reference a value stored in a ConfigMap +kubebuilder:object:generate=true
func (*ConfigMapValue) DeepCopy ¶
func (in *ConfigMapValue) DeepCopy() *ConfigMapValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapValue.
func (*ConfigMapValue) DeepCopyInto ¶
func (in *ConfigMapValue) DeepCopyInto(out *ConfigMapValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointPhase ¶
type EndpointPhase string
const ( ENDPOINT_SYNCED EndpointPhase = "Synced" ENDPOINT_PENDING EndpointPhase = "Pending" ENDPOINT_ERROR EndpointPhase = "Error" )
type EndpointSelector ¶
type EndpointSelector struct { // Kind of the resource representing a Keycloak endpoint // +kubebuilder:validation:Enum=KeycloakEndpoint;KeycloakClusterEndpoint // +kubebuilder:default=KeycloakEndpoint Kind string `json:"kind,omitempty"` // Name of the KeycloakEndpoint/KeycloakClusterEndpoint resource // +required Name string `json:"name,omitempty"` }
Select a KeycloakEndpoint +kubebuilder:object:generate=true
func (*EndpointSelector) DeepCopy ¶
func (in *EndpointSelector) DeepCopy() *EndpointSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSelector.
func (*EndpointSelector) DeepCopyInto ¶
func (in *EndpointSelector) DeepCopyInto(out *EndpointSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FullNameLdapMapper ¶
type FullNameLdapMapper struct { // +kubebuilder:default="cn" LDAPFullNameAttribute string `json:"ldapFullNameAttribute"` // +kubebuilder:default=true ReadOnly bool `json:"readOnly"` // +kubebuilder:default=false WriteOnly bool `json:"writeOnly"` }
+kubebuilder:object:generate=true
func (*FullNameLdapMapper) DeepCopy ¶
func (in *FullNameLdapMapper) DeepCopy() *FullNameLdapMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FullNameLdapMapper.
func (*FullNameLdapMapper) DeepCopyInto ¶
func (in *FullNameLdapMapper) DeepCopyInto(out *FullNameLdapMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FullNameLdapMapper) ToComponentConfig ¶
func (m *FullNameLdapMapper) ToComponentConfig() map[string][]string
type GroupLdapMapper ¶
type GroupLdapMapper struct { // +kubebuilder:default=false DropNonExistingGroupsDuringSync bool `json:"dropNonExistingGroupsDuringSync"` // Name of LDAP attribute, which is used in group objects for name and RDN of group. Usually it will // be 'cn' . In this case typical group/role object may have DN like 'cn=Group1,ou=groups,dc=example,dc=org' // +kubebuilder:default="cn" GroupNameLdapAttribute string `json:"groupNameLdapAttribute,omitempty"` // Object class (or classes) of the group object. It's divided by comma if more classes needed. In typical LDAP // deployment it could be 'groupOfNames' . In Active Directory it's usually 'group' // +kubebuilder:default={"group"} GroupObjectClasses []string `json:"groupObjectClasses,omitempty"` // LDAP DN where are groups of this tree saved. For example 'ou=groups,dc=example,dc=org' // +required GroupsDn string `json:"groupsDn,omitempty"` // LDAP Filter adds additional custom filter to the whole query for retrieve LDAP groups. Leave this empty if no // additional filtering is needed and you want to retrieve all groups from LDAP. Otherwise make sure that filter // starts with '(' and ends with ')' // +optional GroupsLdapFilter string `json:"groupsLdapFilter,omitempty"` // Keycloak group path the LDAP groups are added to. For example if value '/Applications/App1' is used, then LDAP // groups will be available in Keycloak under group 'App1', which is child of top level group 'Applications'. // The default value is '/' so LDAP groups will be mapped to the Keycloak groups at the top level. The configured // group path must already exists in the Keycloak when creating this mapper. // +kubebuilder:default="/" GroupsPath string `json:"groupsPath"` // Ignore missing groups in the group hierarchy // +kubebuilder:default=false IgnoreMissingGroups bool `json:"ignoreMissingGroups"` // +kubebuilder:default="" MemberofLdapAttribute string `json:"memberofLdapAttribute"` // +kubebuilder:default="" MembershipAttributeType string `json:"membershipAttributeType"` // +kubebuilder:default="" MembershipLdapAttribute string `json:"membershipLdapAttribute"` // +kubebuilder:default="" MembershipUserLdapAttribute string `json:"membershipUserLdapAttribute"` // LDAP_ONLY means that all group mappings of users are retrieved from LDAP and saved into LDAP. // READ_ONLY is Read-only LDAP mode where group mappings are retrieved from both LDAP and DB and // merged together. New group joins are not saved to LDAP but to DB. IMPORT is Read-only LDAP mode // where group mappings are retrieved from LDAP just at the time when user is imported from LDAP and // then they are saved to local keycloak DB. // +kubebuilder:validation:Enum=IMPORT;LDAP_ONLY;READ_ONLY // +kubebuilder:default="READ_ONLY" Mode string `json:"mode"` // Flag whether group inheritance from LDAP should be propagated to Keycloak. If false, then all LDAP groups // will be mapped as flat top-level groups in Keycloak. Otherwise group inheritance is preserved into Keycloak, // but the group sync might fail if LDAP structure contains recursions or multiple parent groups per child groups // +kubebuilder:default=false PreserveGroupInheritance bool `json:"preserveGroupInheritance"` // Specify how to retrieve groups of user. LOAD_GROUPS_BY_MEMBER_ATTRIBUTE means that roles of user // will be retrieved by sending LDAP query to retrieve all groups where 'member' is our user. // GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE means that groups of user will be retrieved from 'memberOf' // attribute of our user. Or from the other attribute specified by 'Member-Of LDAP Attribute'. // LOAD_GROUPS_BY_MEMBER_ATTRIBUTE_RECURSIVELY is applicable just in Active Directory and it means that // groups of user will be retrieved recursively with usage of LDAP_MATCHING_RULE_IN_CHAIN Ldap extension. // +kubebuilder:validation:Enum=GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE;LOAD_GROUPS_BY_MEMBER_ATTRIBUTE;LOAD_GROUPS_BY_MEMBER_ATTRIBUTE_RECURSIVELY // +kubebuilder:default="GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE" UserRolesRetrieveStrategy string `json:"userRolesRetrieveStrategy"` }
+kubebuilder:object:generate=true
func (*GroupLdapMapper) DeepCopy ¶
func (in *GroupLdapMapper) DeepCopy() *GroupLdapMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupLdapMapper.
func (*GroupLdapMapper) DeepCopyInto ¶
func (in *GroupLdapMapper) DeepCopyInto(out *GroupLdapMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GroupLdapMapper) ToComponentConfig ¶
func (m *GroupLdapMapper) ToComponentConfig() map[string][]string
type GroupRepresentation ¶
type GroupRepresentation struct { // Group ID // +optional ID string `json:"id,omitempty"` // Name of the group Name string `json:"name"` }
func (*GroupRepresentation) DeepCopy ¶
func (in *GroupRepresentation) DeepCopy() *GroupRepresentation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupRepresentation.
func (*GroupRepresentation) DeepCopyInto ¶
func (in *GroupRepresentation) DeepCopyInto(out *GroupRepresentation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HardcodedAttributeMapper ¶
type HardcodedAttributeMapper struct { // Name of the model attribute, which will be added when importing user from ldap // +kubebuilder:default="" UserModelAttributeName string `json:"userModelAttributeName,omitempty"` // Value of the model attribute, which will be added when importing user from ldap // +kubebuilder:default="" AttributeValue string `json:"attributeValue,omitempty"` }
func (*HardcodedAttributeMapper) DeepCopy ¶
func (in *HardcodedAttributeMapper) DeepCopy() *HardcodedAttributeMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardcodedAttributeMapper.
func (*HardcodedAttributeMapper) DeepCopyInto ¶
func (in *HardcodedAttributeMapper) DeepCopyInto(out *HardcodedAttributeMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HardcodedAttributeMapper) ToComponentConfig ¶
func (m *HardcodedAttributeMapper) ToComponentConfig() map[string][]string
type HardcodedLdapAttributeMapper ¶
type HardcodedLdapAttributeMapper struct { // Name of the LDAP attribute, which will be added to the new user during registration LDAPAttributeName string `json:"ldapAttributeName"` // Value of the LDAP attribute, which will be added to the new user during registration. // You can either hardcode any value like 'foo' but you can also use some special tokens. // Only supported token right now is '${RANDOM}' , which will be replaced with some randomly generated String. LDAPAttributeValue string `json:"ldapAttributeValue"` }
func (*HardcodedLdapAttributeMapper) DeepCopy ¶
func (in *HardcodedLdapAttributeMapper) DeepCopy() *HardcodedLdapAttributeMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardcodedLdapAttributeMapper.
func (*HardcodedLdapAttributeMapper) DeepCopyInto ¶
func (in *HardcodedLdapAttributeMapper) DeepCopyInto(out *HardcodedLdapAttributeMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HardcodedLdapAttributeMapper) ToComponentConfig ¶
func (m *HardcodedLdapAttributeMapper) ToComponentConfig() map[string][]string
type HardcodedLdapGroupMapper ¶
type HardcodedLdapGroupMapper struct { // Group to add the user in. Fill the full path of the group including path. // For example '/root-group/child-group' Group string `json:"group"` }
func (*HardcodedLdapGroupMapper) DeepCopy ¶
func (in *HardcodedLdapGroupMapper) DeepCopy() *HardcodedLdapGroupMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardcodedLdapGroupMapper.
func (*HardcodedLdapGroupMapper) DeepCopyInto ¶
func (in *HardcodedLdapGroupMapper) DeepCopyInto(out *HardcodedLdapGroupMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HardcodedLdapGroupMapper) ToComponentConfig ¶
func (m *HardcodedLdapGroupMapper) ToComponentConfig() map[string][]string
type HardcodedLdapRoleMapper ¶
type HardcodedLdapRoleMapper struct { // Role to give to the user. For client roles, it should be in the format // `<clientID>.<role>` Role string `json:"role,omitempty"` }
func (*HardcodedLdapRoleMapper) DeepCopy ¶
func (in *HardcodedLdapRoleMapper) DeepCopy() *HardcodedLdapRoleMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardcodedLdapRoleMapper.
func (*HardcodedLdapRoleMapper) DeepCopyInto ¶
func (in *HardcodedLdapRoleMapper) DeepCopyInto(out *HardcodedLdapRoleMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HardcodedLdapRoleMapper) ToComponentConfig ¶
func (m *HardcodedLdapRoleMapper) ToComponentConfig() map[string][]string
type KeycloakClient ¶
type KeycloakClient struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakClientSpec `json:"spec,omitempty"` Status KeycloakClientStatus `json:"status,omitempty"` }
KeycloakClient is the Schema for the keycloakclients API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kc,categories=keycloak +kubebuilder:printcolumn:name="CLIENT ID",type="string",JSONPath=".spec.config.clientId",description="Client ID of the keycloak client" +kubebuilder:printcolumn:name="PROTOCOL",type="string",JSONPath=".spec.config.protocol",description="Authentication protocol used by the client" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the realm" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed" +kubebuilder:printcolumn:name="BASE URL",priority=1,type="string",JSONPath=".spec.config.baseUrl",description="Base URL of the service"
func (*KeycloakClient) ApiStatus ¶
func (i *KeycloakClient) ApiStatus() *ApiStatus
func (*KeycloakClient) DeepCopy ¶
func (in *KeycloakClient) DeepCopy() *KeycloakClient
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClient.
func (*KeycloakClient) DeepCopyInto ¶
func (in *KeycloakClient) DeepCopyInto(out *KeycloakClient)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClient) DeepCopyObject ¶
func (in *KeycloakClient) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClient) Default ¶
func (r *KeycloakClient) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*KeycloakClient) Endpoint ¶
func (i *KeycloakClient) Endpoint() EndpointSelector
func (*KeycloakClient) Realm ¶
func (i *KeycloakClient) Realm() string
func (*KeycloakClient) SetupWebhookWithManager ¶
func (r *KeycloakClient) SetupWebhookWithManager(mgr ctrl.Manager) error
type KeycloakClientList ¶
type KeycloakClientList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClient `json:"items"` }
KeycloakClientList contains a list of KeycloakClient +kubebuilder:object:root=true
func (*KeycloakClientList) DeepCopy ¶
func (in *KeycloakClientList) DeepCopy() *KeycloakClientList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientList.
func (*KeycloakClientList) DeepCopyInto ¶
func (in *KeycloakClientList) DeepCopyInto(out *KeycloakClientList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientList) DeepCopyObject ¶
func (in *KeycloakClientList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientProtocolMapper ¶
type KeycloakClientProtocolMapper struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakClientProtocolMapperSpec `json:"spec,omitempty"` Status KeycloakClientProtocolMapperStatus `json:"status,omitempty"` }
KeycloakClientProtocolMapper is the Schema for the keycloakclientprotocolmappers API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*KeycloakClientProtocolMapper) ApiStatus ¶
func (i *KeycloakClientProtocolMapper) ApiStatus() *ApiStatus
func (*KeycloakClientProtocolMapper) DeepCopy ¶
func (in *KeycloakClientProtocolMapper) DeepCopy() *KeycloakClientProtocolMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientProtocolMapper.
func (*KeycloakClientProtocolMapper) DeepCopyInto ¶
func (in *KeycloakClientProtocolMapper) DeepCopyInto(out *KeycloakClientProtocolMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientProtocolMapper) DeepCopyObject ¶
func (in *KeycloakClientProtocolMapper) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClientProtocolMapper) Endpoint ¶
func (i *KeycloakClientProtocolMapper) Endpoint() EndpointSelector
func (*KeycloakClientProtocolMapper) Realm ¶
func (i *KeycloakClientProtocolMapper) Realm() string
type KeycloakClientProtocolMapperList ¶
type KeycloakClientProtocolMapperList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClientProtocolMapper `json:"items"` }
KeycloakClientProtocolMapperList contains a list of KeycloakClientProtocolMapper +kubebuilder:object:root=true
func (*KeycloakClientProtocolMapperList) DeepCopy ¶
func (in *KeycloakClientProtocolMapperList) DeepCopy() *KeycloakClientProtocolMapperList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientProtocolMapperList.
func (*KeycloakClientProtocolMapperList) DeepCopyInto ¶
func (in *KeycloakClientProtocolMapperList) DeepCopyInto(out *KeycloakClientProtocolMapperList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientProtocolMapperList) DeepCopyObject ¶
func (in *KeycloakClientProtocolMapperList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientProtocolMapperSpec ¶
type KeycloakClientProtocolMapperSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Client string `json:"client"` Config gocloak.ProtocolMapper `json:"config,omitempty"` }
KeycloakClientProtocolMapperSpec defines the desired state of KeycloakClientProtocolMapper
func (*KeycloakClientProtocolMapperSpec) DeepCopy ¶
func (in *KeycloakClientProtocolMapperSpec) DeepCopy() *KeycloakClientProtocolMapperSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientProtocolMapperSpec.
func (*KeycloakClientProtocolMapperSpec) DeepCopyInto ¶
func (in *KeycloakClientProtocolMapperSpec) DeepCopyInto(out *KeycloakClientProtocolMapperSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientProtocolMapperStatus ¶
type KeycloakClientProtocolMapperStatus struct { // The ID of the client ClientID string `json:"clientID,omitempty"` // The ID of the protocol mapper managed ProtocolMapperID string `json:"protocolMapperID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakClientProtocolMapperStatus defines the observed state of KeycloakClientProtocolMapper
func (*KeycloakClientProtocolMapperStatus) DeepCopy ¶
func (in *KeycloakClientProtocolMapperStatus) DeepCopy() *KeycloakClientProtocolMapperStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientProtocolMapperStatus.
func (*KeycloakClientProtocolMapperStatus) DeepCopyInto ¶
func (in *KeycloakClientProtocolMapperStatus) DeepCopyInto(out *KeycloakClientProtocolMapperStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientRole ¶
type KeycloakClientRole struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` ClientName string `json:"clientName,omitempty"` Spec KeycloakClientRoleSpec `json:"spec,omitempty"` Status KeycloakClientRoleStatus `json:"status,omitempty"` }
KeycloakClientRole is the Schema for the keycloakclientroles API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kcrole,categories=keycloak +kubebuilder:printcolumn:name="REALM",type="string",JSONPath=".spec.realm" +kubebuilder:printcolumn:name="CLIENT",type="string",JSONPath=".spec.client" +kubebuilder:printcolumn:name="ROLE",type="string",JSONPath=".spec.config.name" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the resource" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed" +kubebuilder:printcolumn:name="DESCRIPTION",type="string",priority=1,JSONPath=".spec.config.description",description="The description of the role"
func (*KeycloakClientRole) ApiStatus ¶
func (i *KeycloakClientRole) ApiStatus() *ApiStatus
func (*KeycloakClientRole) DeepCopy ¶
func (in *KeycloakClientRole) DeepCopy() *KeycloakClientRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRole.
func (*KeycloakClientRole) DeepCopyInto ¶
func (in *KeycloakClientRole) DeepCopyInto(out *KeycloakClientRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientRole) DeepCopyObject ¶
func (in *KeycloakClientRole) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClientRole) Default ¶
func (r *KeycloakClientRole) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*KeycloakClientRole) Endpoint ¶
func (i *KeycloakClientRole) Endpoint() EndpointSelector
func (*KeycloakClientRole) Realm ¶
func (i *KeycloakClientRole) Realm() string
func (*KeycloakClientRole) SetupWebhookWithManager ¶
func (r *KeycloakClientRole) SetupWebhookWithManager(mgr ctrl.Manager) error
type KeycloakClientRoleList ¶
type KeycloakClientRoleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClientRole `json:"items"` }
KeycloakClientRoleList contains a list of KeycloakClientRole +kubebuilder:object:root=true
func (*KeycloakClientRoleList) DeepCopy ¶
func (in *KeycloakClientRoleList) DeepCopy() *KeycloakClientRoleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleList.
func (*KeycloakClientRoleList) DeepCopyInto ¶
func (in *KeycloakClientRoleList) DeepCopyInto(out *KeycloakClientRoleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientRoleList) DeepCopyObject ¶
func (in *KeycloakClientRoleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientRoleMapping ¶
type KeycloakClientRoleMapping struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakClientRoleMappingSpec `json:"spec,omitempty"` Status KeycloakClientRoleMappingStatus `json:"status,omitempty"` }
KeycloakClientRoleMapping is the Schema for the keycloakclientrolemappings API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:printcolumn:name="REALM",type="string",JSONPath=".spec.realm" +kubebuilder:printcolumn:name="CLIENT",type="string",JSONPath=".spec.client" +kubebuilder:printcolumn:name="ROLE",type="string",JSONPath=".spec.role" +kubebuilder:printcolumn:name="TYPE",type="string",JSONPath=".spec.subject.kind" +kubebuilder:printcolumn:name="SUBJECT",type="string",JSONPath=".spec.subject.name" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the resource" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed" +kubebuilder:resource:shortName=kcrolemap,categories=keycloak
func (*KeycloakClientRoleMapping) ApiStatus ¶
func (i *KeycloakClientRoleMapping) ApiStatus() *ApiStatus
func (*KeycloakClientRoleMapping) DeepCopy ¶
func (in *KeycloakClientRoleMapping) DeepCopy() *KeycloakClientRoleMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleMapping.
func (*KeycloakClientRoleMapping) DeepCopyInto ¶
func (in *KeycloakClientRoleMapping) DeepCopyInto(out *KeycloakClientRoleMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientRoleMapping) DeepCopyObject ¶
func (in *KeycloakClientRoleMapping) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClientRoleMapping) Endpoint ¶
func (i *KeycloakClientRoleMapping) Endpoint() EndpointSelector
func (*KeycloakClientRoleMapping) Realm ¶
func (i *KeycloakClientRoleMapping) Realm() string
type KeycloakClientRoleMappingList ¶
type KeycloakClientRoleMappingList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClientRoleMapping `json:"items"` }
KeycloakClientRoleMappingList contains a list of KeycloakClientRoleMapping +kubebuilder:object:root=true
func (*KeycloakClientRoleMappingList) DeepCopy ¶
func (in *KeycloakClientRoleMappingList) DeepCopy() *KeycloakClientRoleMappingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleMappingList.
func (*KeycloakClientRoleMappingList) DeepCopyInto ¶
func (in *KeycloakClientRoleMappingList) DeepCopyInto(out *KeycloakClientRoleMappingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientRoleMappingList) DeepCopyObject ¶
func (in *KeycloakClientRoleMappingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientRoleMappingSpec ¶
type KeycloakClientRoleMappingSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Client string `json:"client"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Role string `json:"role"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Subject Subject `json:"subject"` }
func (*KeycloakClientRoleMappingSpec) DeepCopy ¶
func (in *KeycloakClientRoleMappingSpec) DeepCopy() *KeycloakClientRoleMappingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleMappingSpec.
func (*KeycloakClientRoleMappingSpec) DeepCopyInto ¶
func (in *KeycloakClientRoleMappingSpec) DeepCopyInto(out *KeycloakClientRoleMappingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientRoleMappingStatus ¶
type KeycloakClientRoleMappingStatus struct { // The ID of the client owning the role concerned by the mapping ClientID string `json:"clientID,omitempty"` // The ID of the client role concerned by the mapping RoleID string `json:"roleID,omitempty"` // The ID of the Subject concerned by the mapping SubjectID string `json:"subjectID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
+k8s:openapi-gen=true +kubebuilder:subresource:status
func (*KeycloakClientRoleMappingStatus) DeepCopy ¶
func (in *KeycloakClientRoleMappingStatus) DeepCopy() *KeycloakClientRoleMappingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleMappingStatus.
func (*KeycloakClientRoleMappingStatus) DeepCopyInto ¶
func (in *KeycloakClientRoleMappingStatus) DeepCopyInto(out *KeycloakClientRoleMappingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientRoleSpec ¶
type KeycloakClientRoleSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Client string `json:"client"` Config gocloak.Role `json:"config"` }
KeycloakClientRoleSpec defines the desired state of KeycloakClientRole +kubebuilder:object:generate=true
func (*KeycloakClientRoleSpec) DeepCopy ¶
func (in *KeycloakClientRoleSpec) DeepCopy() *KeycloakClientRoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleSpec.
func (*KeycloakClientRoleSpec) DeepCopyInto ¶
func (in *KeycloakClientRoleSpec) DeepCopyInto(out *KeycloakClientRoleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientRoleStatus ¶
type KeycloakClientRoleStatus struct { // The ID of the client the role belongs to ClientID string `json:"clientID,omitempty"` // The ID of the role managed RoleID string `json:"roleID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
+k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:validation:Optional
func (*KeycloakClientRoleStatus) DeepCopy ¶
func (in *KeycloakClientRoleStatus) DeepCopy() *KeycloakClientRoleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientRoleStatus.
func (*KeycloakClientRoleStatus) DeepCopyInto ¶
func (in *KeycloakClientRoleStatus) DeepCopyInto(out *KeycloakClientRoleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientScope ¶
type KeycloakClientScope struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakClientScopeSpec `json:"spec,omitempty"` Status KeycloakClientScopeStatus `json:"status,omitempty"` }
KeycloakClientScope is the Schema for the keycloakclientscopes API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kcs,categories=keycloak +kubebuilder:printcolumn:name="REALM",type="string",JSONPath=".spec.realm",description="Realm of the client scope" +kubebuilder:printcolumn:name="PROTOCOL",type="string",JSONPath=".spec.config.protocol",description="Authentication protocol used by the client" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the realm" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed"
func (*KeycloakClientScope) ApiStatus ¶
func (i *KeycloakClientScope) ApiStatus() *ApiStatus
func (*KeycloakClientScope) DeepCopy ¶
func (in *KeycloakClientScope) DeepCopy() *KeycloakClientScope
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScope.
func (*KeycloakClientScope) DeepCopyInto ¶
func (in *KeycloakClientScope) DeepCopyInto(out *KeycloakClientScope)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientScope) DeepCopyObject ¶
func (in *KeycloakClientScope) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClientScope) Endpoint ¶
func (i *KeycloakClientScope) Endpoint() EndpointSelector
func (*KeycloakClientScope) Realm ¶
func (i *KeycloakClientScope) Realm() string
type KeycloakClientScopeList ¶
type KeycloakClientScopeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClientScope `json:"items"` }
KeycloakClientScopeList contains a list of KeycloakClientScope +kubebuilder:object:root=true
func (*KeycloakClientScopeList) DeepCopy ¶
func (in *KeycloakClientScopeList) DeepCopy() *KeycloakClientScopeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeList.
func (*KeycloakClientScopeList) DeepCopyInto ¶
func (in *KeycloakClientScopeList) DeepCopyInto(out *KeycloakClientScopeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientScopeList) DeepCopyObject ¶
func (in *KeycloakClientScopeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientScopeProtocolMapper ¶
type KeycloakClientScopeProtocolMapper struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakClientScopeProtocolMapperSpec `json:"spec,omitempty"` Status KeycloakClientScopeProtocolMapperStatus `json:"status,omitempty"` }
KeycloakClientScopeProtocolMapper is the Schema for the keycloakclientscopeprotocolmappers API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kcspm,categories=keycloak +kubebuilder:printcolumn:name="REALM",type="string",JSONPath=".spec.realm",description="Realm of the client scope" +kubebuilder:printcolumn:name="SCOPE",type="string",JSONPath=".spec.clientScope",description="Name of the client scope" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the realm" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed"
func (*KeycloakClientScopeProtocolMapper) ApiStatus ¶
func (i *KeycloakClientScopeProtocolMapper) ApiStatus() *ApiStatus
func (*KeycloakClientScopeProtocolMapper) DeepCopy ¶
func (in *KeycloakClientScopeProtocolMapper) DeepCopy() *KeycloakClientScopeProtocolMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeProtocolMapper.
func (*KeycloakClientScopeProtocolMapper) DeepCopyInto ¶
func (in *KeycloakClientScopeProtocolMapper) DeepCopyInto(out *KeycloakClientScopeProtocolMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientScopeProtocolMapper) DeepCopyObject ¶
func (in *KeycloakClientScopeProtocolMapper) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClientScopeProtocolMapper) Endpoint ¶
func (i *KeycloakClientScopeProtocolMapper) Endpoint() EndpointSelector
func (*KeycloakClientScopeProtocolMapper) Realm ¶
func (i *KeycloakClientScopeProtocolMapper) Realm() string
type KeycloakClientScopeProtocolMapperList ¶
type KeycloakClientScopeProtocolMapperList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClientScopeProtocolMapper `json:"items"` }
KeycloakClientScopeProtocolMapperList contains a list of KeycloakClientScopeProtocolMapper +kubebuilder:object:root=true
func (*KeycloakClientScopeProtocolMapperList) DeepCopy ¶
func (in *KeycloakClientScopeProtocolMapperList) DeepCopy() *KeycloakClientScopeProtocolMapperList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeProtocolMapperList.
func (*KeycloakClientScopeProtocolMapperList) DeepCopyInto ¶
func (in *KeycloakClientScopeProtocolMapperList) DeepCopyInto(out *KeycloakClientScopeProtocolMapperList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClientScopeProtocolMapperList) DeepCopyObject ¶
func (in *KeycloakClientScopeProtocolMapperList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakClientScopeProtocolMapperSpec ¶
type KeycloakClientScopeProtocolMapperSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" ClientScope string `json:"clientScope"` Config gocloak.ProtocolMapper `json:"config,omitempty"` }
KeycloakClientScopeProtocolMapperSpec defines the desired state of KeycloakClientScopeProtocolMapper
func (*KeycloakClientScopeProtocolMapperSpec) DeepCopy ¶
func (in *KeycloakClientScopeProtocolMapperSpec) DeepCopy() *KeycloakClientScopeProtocolMapperSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeProtocolMapperSpec.
func (*KeycloakClientScopeProtocolMapperSpec) DeepCopyInto ¶
func (in *KeycloakClientScopeProtocolMapperSpec) DeepCopyInto(out *KeycloakClientScopeProtocolMapperSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientScopeProtocolMapperStatus ¶
type KeycloakClientScopeProtocolMapperStatus struct { // The ID of the client scope ClientScopeID string `json:"clientScopeID,omitempty"` // The ID of the protocol mapper managed ProtocolMapperID string `json:"protocolMapperID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakClientScopeProtocolMapperStatus defines the observed state of KeycloakClientScopeProtocolMapper
func (*KeycloakClientScopeProtocolMapperStatus) DeepCopy ¶
func (in *KeycloakClientScopeProtocolMapperStatus) DeepCopy() *KeycloakClientScopeProtocolMapperStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeProtocolMapperStatus.
func (*KeycloakClientScopeProtocolMapperStatus) DeepCopyInto ¶
func (in *KeycloakClientScopeProtocolMapperStatus) DeepCopyInto(out *KeycloakClientScopeProtocolMapperStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientScopeSpec ¶
type KeycloakClientScopeSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` Config gocloak.ClientScope `json:"config"` }
KeycloakClientScopeSpec defines the desired state of KeycloakClientScope
func (*KeycloakClientScopeSpec) DeepCopy ¶
func (in *KeycloakClientScopeSpec) DeepCopy() *KeycloakClientScopeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeSpec.
func (*KeycloakClientScopeSpec) DeepCopyInto ¶
func (in *KeycloakClientScopeSpec) DeepCopyInto(out *KeycloakClientScopeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientScopeStatus ¶
type KeycloakClientScopeStatus struct { // The ID of the client scope deployed ClientScopeID string `json:"clientScopeID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakClientScopeStatus defines the observed state of KeycloakClientScope +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:validation:Optional
func (*KeycloakClientScopeStatus) DeepCopy ¶
func (in *KeycloakClientScopeStatus) DeepCopy() *KeycloakClientScopeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientScopeStatus.
func (*KeycloakClientScopeStatus) DeepCopyInto ¶
func (in *KeycloakClientScopeStatus) DeepCopyInto(out *KeycloakClientScopeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientSpec ¶
type KeycloakClientSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` Secret SecretGenerator `json:"secret,omitempty"` Config gocloak.Client `json:"config"` }
func (*KeycloakClientSpec) DeepCopy ¶
func (in *KeycloakClientSpec) DeepCopy() *KeycloakClientSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientSpec.
func (*KeycloakClientSpec) DeepCopyInto ¶
func (in *KeycloakClientSpec) DeepCopyInto(out *KeycloakClientSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClientStatus ¶
type KeycloakClientStatus struct { // The ID of the OIDC/SAML client that is created / managed ClientID string `json:"clientID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
+k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:validation:Optional
func (*KeycloakClientStatus) DeepCopy ¶
func (in *KeycloakClientStatus) DeepCopy() *KeycloakClientStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClientStatus.
func (*KeycloakClientStatus) DeepCopyInto ¶
func (in *KeycloakClientStatus) DeepCopyInto(out *KeycloakClientStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakClusterEndpoint ¶
type KeycloakClusterEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakEndpointSpec `json:"spec,omitempty"` Status KeycloakEndpointStatus `json:"status,omitempty"` }
KeycloakClusterEndpoint represent a Keycloak endpoint. It is similar to KeycloakEndpoint, but not scoped +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:scope=Cluster,shortName=kce,categories=keycloak +kubebuilder:printcolumn:name="VERSION",type="string",JSONPath=".status.version",description="The version of the endpoint" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.phase",description="The status of the endpoint" +kubebuilder:printcolumn:name="LAST CONNECTION",priority=1,type="date",JSONPath=".status.lastSuccess",description="The last time the endpoint was connected" +kubebuilder:printcolumn:name="URL",type="string",priority=1,JSONPath=".spec.baseUrl",description="The URL of the endpoint"
func (*KeycloakClusterEndpoint) DeepCopy ¶
func (in *KeycloakClusterEndpoint) DeepCopy() *KeycloakClusterEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClusterEndpoint.
func (*KeycloakClusterEndpoint) DeepCopyInto ¶
func (in *KeycloakClusterEndpoint) DeepCopyInto(out *KeycloakClusterEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClusterEndpoint) DeepCopyObject ¶
func (in *KeycloakClusterEndpoint) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakClusterEndpoint) EndpointSpec ¶
func (i *KeycloakClusterEndpoint) EndpointSpec() *KeycloakEndpointSpec
func (*KeycloakClusterEndpoint) EndpointStatus ¶
func (i *KeycloakClusterEndpoint) EndpointStatus() *KeycloakEndpointStatus
type KeycloakClusterEndpointList ¶
type KeycloakClusterEndpointList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakClusterEndpoint `json:"items"` }
KeycloakClusterEndpointList contains a list of KeycloakClusterEndpoint +kubebuilder:object:root=true
func (*KeycloakClusterEndpointList) DeepCopy ¶
func (in *KeycloakClusterEndpointList) DeepCopy() *KeycloakClusterEndpointList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakClusterEndpointList.
func (*KeycloakClusterEndpointList) DeepCopyInto ¶
func (in *KeycloakClusterEndpointList) DeepCopyInto(out *KeycloakClusterEndpointList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakClusterEndpointList) DeepCopyObject ¶
func (in *KeycloakClusterEndpointList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakEndpoint ¶
type KeycloakEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakEndpointSpec `json:"spec,omitempty"` Status KeycloakEndpointStatus `json:"status,omitempty"` }
KeycloakEndpoint is the Schema for the keycloakendpoints API +genclient +k8s:openapi-gen=true +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:printcolumn:name="VERSION",type="string",JSONPath=".status.version",description="The version of the endpoint" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.phase",description="The status of the endpoint" +kubebuilder:printcolumn:name="LAST CONNECTION",priority=1,type="date",JSONPath=".status.lastSuccess",description="The last time the endpoint was connected" +kubebuilder:printcolumn:name="URL",type="string",priority=1,JSONPath=".spec.baseUrl",description="The URL of the endpoint"
func (*KeycloakEndpoint) DeepCopy ¶
func (in *KeycloakEndpoint) DeepCopy() *KeycloakEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakEndpoint.
func (*KeycloakEndpoint) DeepCopyInto ¶
func (in *KeycloakEndpoint) DeepCopyInto(out *KeycloakEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakEndpoint) DeepCopyObject ¶
func (in *KeycloakEndpoint) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakEndpoint) EndpointSpec ¶
func (i *KeycloakEndpoint) EndpointSpec() *KeycloakEndpointSpec
func (*KeycloakEndpoint) EndpointStatus ¶
func (i *KeycloakEndpoint) EndpointStatus() *KeycloakEndpointStatus
type KeycloakEndpointList ¶
type KeycloakEndpointList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakEndpoint `json:"items"` }
KeycloakEndpointList contains a list of KeycloakEndpoint +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*KeycloakEndpointList) DeepCopy ¶
func (in *KeycloakEndpointList) DeepCopy() *KeycloakEndpointList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakEndpointList.
func (*KeycloakEndpointList) DeepCopyInto ¶
func (in *KeycloakEndpointList) DeepCopyInto(out *KeycloakEndpointList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakEndpointList) DeepCopyObject ¶
func (in *KeycloakEndpointList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakEndpointSpec ¶
type KeycloakEndpointSpec struct { // URL to the keycloak server to manage BaseUrl string `json:"baseUrl,omitempty"` // Additional prefix of the keycloak API (if needed). Should sometimes // be set to `/auth` for some deployments of keycloak. // +kubebuilder:default="" BasePath string `json:"basePath,omitempty"` // Use the value stored in a ConfigMap for the CA certificate CaConfigMap *ConfigMapValue `json:"caConfigMap,omitempty"` // Ignore TLS CA verification. It's recommended to set `caConfigMap` instead. // +kubebuilder:default=false TlsInsecureSkipVerify bool `json:"tlsInsecureSkipVerify,omitempty"` // Realm to use for admin connections. Defaults to `master`. // +kubebuilder:default="master" Realm string `json:"realm"` // Timeout in seconds for the HTTP connection. Defaults to 10 seconds. // +kubebuilder:default=10 Timeout int `json:"timeout"` // The name of a secret of type `kubernetes.io/basic-auth` to authenticate to // keycloak as admin. The secret need to be in the same namespace as the KeycloakEndpoint. // When used in the context of KeycloakClusterEndpoint, a the `namespace` of the secret can // be set. BasicAuthSecret BasicAuthSecret `json:"basicAuthSecret,omitempty"` // A list of rules to complete kubernetes RBAC. If the resource being reconciled matches // one of this rule, the action will be executed (allow/reject). If no rule match, the // `noMatchBehavior` will be executed. If nothing matches, it will be allowed. // If you need to default to forbidden, add a `{action: reject}` as the last rule. Rules []Rule `json:"rules,omitempty"` }
KeycloakEndpointSpec defines the desired state of KeycloakEndpoint +kubebuilder:object:generate=true +k8s:openapi-gen=true
func (*KeycloakEndpointSpec) DeepCopy ¶
func (in *KeycloakEndpointSpec) DeepCopy() *KeycloakEndpointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakEndpointSpec.
func (*KeycloakEndpointSpec) DeepCopyInto ¶
func (in *KeycloakEndpointSpec) DeepCopyInto(out *KeycloakEndpointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakEndpointStatus ¶
type KeycloakEndpointStatus struct { // Whether the CRD could connect to the keycloak endpoint successfully Phase EndpointPhase `json:"phase,omitempty"` Version string `json:"version,omitempty"` Message string `json:"message,omitempty"` // +optional LastSuccess *metav1.Time `json:"lastSuccess,omitempty"` }
KeycloakEndpointStatus defines the observed state of KeycloakEndpoint +k8s:openapi-gen=true +kubebuilder:subresource:status
func (*KeycloakEndpointStatus) DeepCopy ¶
func (in *KeycloakEndpointStatus) DeepCopy() *KeycloakEndpointStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakEndpointStatus.
func (*KeycloakEndpointStatus) DeepCopyInto ¶
func (in *KeycloakEndpointStatus) DeepCopyInto(out *KeycloakEndpointStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakLDAPFederation ¶
type KeycloakLDAPFederation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakLDAPFederationSpec `json:"spec,omitempty"` Status KeycloakLDAPFederationStatus `json:"status,omitempty"` }
KeycloakLDAPFederation is the Schema for the keycloakldapfederations API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kldap,categories=keycloak +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed"
func (*KeycloakLDAPFederation) ApiStatus ¶
func (i *KeycloakLDAPFederation) ApiStatus() *ApiStatus
func (*KeycloakLDAPFederation) DeepCopy ¶
func (in *KeycloakLDAPFederation) DeepCopy() *KeycloakLDAPFederation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPFederation.
func (*KeycloakLDAPFederation) DeepCopyInto ¶
func (in *KeycloakLDAPFederation) DeepCopyInto(out *KeycloakLDAPFederation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakLDAPFederation) DeepCopyObject ¶
func (in *KeycloakLDAPFederation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakLDAPFederation) Default ¶
func (r *KeycloakLDAPFederation) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*KeycloakLDAPFederation) Endpoint ¶
func (i *KeycloakLDAPFederation) Endpoint() EndpointSelector
func (*KeycloakLDAPFederation) Realm ¶
func (i *KeycloakLDAPFederation) Realm() string
func (*KeycloakLDAPFederation) SetupWebhookWithManager ¶
func (r *KeycloakLDAPFederation) SetupWebhookWithManager(mgr ctrl.Manager) error
type KeycloakLDAPFederationList ¶
type KeycloakLDAPFederationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakLDAPFederation `json:"items"` }
KeycloakLDAPFederationList contains a list of KeycloakLDAPFederation +kubebuilder:object:root=true
func (*KeycloakLDAPFederationList) DeepCopy ¶
func (in *KeycloakLDAPFederationList) DeepCopy() *KeycloakLDAPFederationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPFederationList.
func (*KeycloakLDAPFederationList) DeepCopyInto ¶
func (in *KeycloakLDAPFederationList) DeepCopyInto(out *KeycloakLDAPFederationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakLDAPFederationList) DeepCopyObject ¶
func (in *KeycloakLDAPFederationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakLDAPFederationSpec ¶
type KeycloakLDAPFederationSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` Realm string `json:"realm"` Config *LdapFederation `json:"config,omitempty"` }
KeycloakLDAPFederationSpec defines the desired state of KeycloakLDAPFederation
func (*KeycloakLDAPFederationSpec) DeepCopy ¶
func (in *KeycloakLDAPFederationSpec) DeepCopy() *KeycloakLDAPFederationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPFederationSpec.
func (*KeycloakLDAPFederationSpec) DeepCopyInto ¶
func (in *KeycloakLDAPFederationSpec) DeepCopyInto(out *KeycloakLDAPFederationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakLDAPFederationStatus ¶
type KeycloakLDAPFederationStatus struct { // ID of the component representing the managed LDAP federation ComponentID string `json:"componentID,omitempty"` // Result of the last successful sync // +optional Result *gocloak.LDAPSyncResult `json:"result,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakLDAPFederationStatus defines the observed state of KeycloakLDAPFederation +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:validation:Optional
func (*KeycloakLDAPFederationStatus) DeepCopy ¶
func (in *KeycloakLDAPFederationStatus) DeepCopy() *KeycloakLDAPFederationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPFederationStatus.
func (*KeycloakLDAPFederationStatus) DeepCopyInto ¶
func (in *KeycloakLDAPFederationStatus) DeepCopyInto(out *KeycloakLDAPFederationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakLDAPMapper ¶
type KeycloakLDAPMapper struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakLDAPMapperSpec `json:"spec,omitempty"` Status KeycloakLDAPMapperStatus `json:"status,omitempty"` }
KeycloakLDAPMapper is the Schema for the keycloakldapmappers API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=kldapmapper,categories=keycloak +kubebuilder:printcolumn:name="TYPE",type="string",JSONPath=".spec.type" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed"
func (*KeycloakLDAPMapper) ApiStatus ¶
func (i *KeycloakLDAPMapper) ApiStatus() *ApiStatus
func (*KeycloakLDAPMapper) DeepCopy ¶
func (in *KeycloakLDAPMapper) DeepCopy() *KeycloakLDAPMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPMapper.
func (*KeycloakLDAPMapper) DeepCopyInto ¶
func (in *KeycloakLDAPMapper) DeepCopyInto(out *KeycloakLDAPMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakLDAPMapper) DeepCopyObject ¶
func (in *KeycloakLDAPMapper) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakLDAPMapper) Endpoint ¶
func (i *KeycloakLDAPMapper) Endpoint() EndpointSelector
func (*KeycloakLDAPMapper) Realm ¶
func (i *KeycloakLDAPMapper) Realm() string
func (*KeycloakLDAPMapper) ToComponent ¶
func (i *KeycloakLDAPMapper) ToComponent(fid string) (*gocloak.Component, error)
type KeycloakLDAPMapperList ¶
type KeycloakLDAPMapperList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakLDAPMapper `json:"items"` }
KeycloakLDAPMapperList contains a list of KeycloakLDAPMapper +kubebuilder:object:root=true
func (*KeycloakLDAPMapperList) DeepCopy ¶
func (in *KeycloakLDAPMapperList) DeepCopy() *KeycloakLDAPMapperList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPMapperList.
func (*KeycloakLDAPMapperList) DeepCopyInto ¶
func (in *KeycloakLDAPMapperList) DeepCopyInto(out *KeycloakLDAPMapperList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakLDAPMapperList) DeepCopyObject ¶
func (in *KeycloakLDAPMapperList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakLDAPMapperSpec ¶
type KeycloakLDAPMapperSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Federation string `json:"federation"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" // +kubebuilder:validation:Enum=user-attribute-ldap-mapper;group-ldap-mapper;role-ldap-mapper Type string `json:"type"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Name string `json:"name"` // +optional GroupLdapMapper *GroupLdapMapper `json:"groupLdapMapper,omitempty"` // +optional UserAttributeLdapMapper *UserAttributeLdapMapper `json:"userAttributeLdapMapper,omitempty"` // +optional RoleLdapMapper *RoleLdapMapper `json:"roleLdapMapper,omitempty"` // +optional FullNameLdapMapper *FullNameLdapMapper `json:"fullNameLdapMapper,omitempty"` // +optional CertificateLdapMapper *CertificateLdapMapper `json:"certificateLdapMapper,omitempty"` // +optional HardcodedLdapGroupMapper *HardcodedLdapGroupMapper `json:"hardcodedLdapGroupMapper,omitempty"` // +optional HardcodedLdapAttributeMapper *HardcodedLdapAttributeMapper `json:"hardcodedLdapAttributeMapper,omitempty"` // +optional HardcodedAttributeMapper *HardcodedAttributeMapper `json:"hardcodedAttributeMapper,omitempty"` // +optional HardcodedLdapRoleMapper *HardcodedLdapRoleMapper `json:"hardcodedLdapRoleMapper,omitempty"` // +optional MSADUserAccountControlMapper *MSADUserAccountControlMapper `json:"msadUserAccountControlMapper,omitempty"` }
KeycloakLDAPMapperSpec defines the desired state of KeycloakLDAPMapper
func (*KeycloakLDAPMapperSpec) DeepCopy ¶
func (in *KeycloakLDAPMapperSpec) DeepCopy() *KeycloakLDAPMapperSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPMapperSpec.
func (*KeycloakLDAPMapperSpec) DeepCopyInto ¶
func (in *KeycloakLDAPMapperSpec) DeepCopyInto(out *KeycloakLDAPMapperSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakLDAPMapperStatus ¶
type KeycloakLDAPMapperStatus struct { // ID of the component representing the managed LDAP mapper ComponentID string `json:"componentID,omitempty"` // ID of the LDAP Federation it belongs to FederationID string `json:"federationID,omitempty"` // Result of the last successful sync // +optional Result *gocloak.LDAPSyncResult `json:"result,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakLDAPMapperStatus defines the observed state of KeycloakLDAPMapper
func (*KeycloakLDAPMapperStatus) DeepCopy ¶
func (in *KeycloakLDAPMapperStatus) DeepCopy() *KeycloakLDAPMapperStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakLDAPMapperStatus.
func (*KeycloakLDAPMapperStatus) DeepCopyInto ¶
func (in *KeycloakLDAPMapperStatus) DeepCopyInto(out *KeycloakLDAPMapperStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakRealm ¶
type KeycloakRealm struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakRealmSpec `json:"spec,omitempty"` Status KeycloakRealmStatus `json:"status,omitempty"` }
KeycloakRealm is the Schema for the keycloakrealms API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:object:generate=true +kubebuilder:storageversion +kubebuilder:resource:shortName=kr,categories=keycloak +kubebuilder:printcolumn:name="DISPLAY NAME",type="string",JSONPath=".spec.config.displayName",description="Display name of the realm" +kubebuilder:printcolumn:name="ENABLED",type="boolean",JSONPath=".spec.config.enabled",description="Whether the realm is enabled" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the realm" +kubebuilder:printcolumn:name="LAST TRANSITION",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed"
func (*KeycloakRealm) ApiStatus ¶
func (i *KeycloakRealm) ApiStatus() *ApiStatus
func (*KeycloakRealm) DeepCopy ¶
func (in *KeycloakRealm) DeepCopy() *KeycloakRealm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealm.
func (*KeycloakRealm) DeepCopyInto ¶
func (in *KeycloakRealm) DeepCopyInto(out *KeycloakRealm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakRealm) DeepCopyObject ¶
func (in *KeycloakRealm) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakRealm) Default ¶
func (r *KeycloakRealm) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*KeycloakRealm) Endpoint ¶
func (i *KeycloakRealm) Endpoint() EndpointSelector
func (*KeycloakRealm) Realm ¶
func (i *KeycloakRealm) Realm() string
func (*KeycloakRealm) SetupWebhookWithManager ¶
func (r *KeycloakRealm) SetupWebhookWithManager(mgr ctrl.Manager) error
type KeycloakRealmList ¶
type KeycloakRealmList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakRealm `json:"items"` }
KeycloakRealmList contains a list of KeycloakRealm +kubebuilder:object:root=true
func (*KeycloakRealmList) DeepCopy ¶
func (in *KeycloakRealmList) DeepCopy() *KeycloakRealmList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmList.
func (*KeycloakRealmList) DeepCopyInto ¶
func (in *KeycloakRealmList) DeepCopyInto(out *KeycloakRealmList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakRealmList) DeepCopyObject ¶
func (in *KeycloakRealmList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakRealmRole ¶
type KeycloakRealmRole struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KeycloakRealmRoleSpec `json:"spec,omitempty"` Status KeycloakRealmRoleStatus `json:"status,omitempty"` }
KeycloakRealmRole is the Schema for the keycloakrealmroles API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:resource:shortName=krrole,categories=keycloak +kubebuilder:printcolumn:name="REALM",type="string",JSONPath=".spec.realm" +kubebuilder:printcolumn:name="ROLE",type="string",JSONPath=".spec.config.name" +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.api.phase",description="The status of the resource" +kubebuilder:printcolumn:name="LAST CHANGED",priority=1,type="date",JSONPath=".status.api.lastTransitionTime",description="The last time the resource was changed" +kubebuilder:printcolumn:name="DESCRIPTION",type="string",priority=1,JSONPath=".spec.config.description",description="The description of the role"
func (*KeycloakRealmRole) ApiStatus ¶
func (i *KeycloakRealmRole) ApiStatus() *ApiStatus
func (*KeycloakRealmRole) DeepCopy ¶
func (in *KeycloakRealmRole) DeepCopy() *KeycloakRealmRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmRole.
func (*KeycloakRealmRole) DeepCopyInto ¶
func (in *KeycloakRealmRole) DeepCopyInto(out *KeycloakRealmRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakRealmRole) DeepCopyObject ¶
func (in *KeycloakRealmRole) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KeycloakRealmRole) Endpoint ¶
func (i *KeycloakRealmRole) Endpoint() EndpointSelector
func (*KeycloakRealmRole) Realm ¶
func (i *KeycloakRealmRole) Realm() string
type KeycloakRealmRoleList ¶
type KeycloakRealmRoleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KeycloakRealmRole `json:"items"` }
KeycloakRealmRoleList contains a list of KeycloakRealmRole +kubebuilder:object:root=true
func (*KeycloakRealmRoleList) DeepCopy ¶
func (in *KeycloakRealmRoleList) DeepCopy() *KeycloakRealmRoleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmRoleList.
func (*KeycloakRealmRoleList) DeepCopyInto ¶
func (in *KeycloakRealmRoleList) DeepCopyInto(out *KeycloakRealmRoleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KeycloakRealmRoleList) DeepCopyObject ¶
func (in *KeycloakRealmRoleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KeycloakRealmRoleSpec ¶
type KeycloakRealmRoleSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Realm string `json:"realm"` Config gocloak.Role `json:"config"` }
KeycloakRealmRoleSpec defines the desired state of KeycloakRealmRole
func (*KeycloakRealmRoleSpec) DeepCopy ¶
func (in *KeycloakRealmRoleSpec) DeepCopy() *KeycloakRealmRoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmRoleSpec.
func (*KeycloakRealmRoleSpec) DeepCopyInto ¶
func (in *KeycloakRealmRoleSpec) DeepCopyInto(out *KeycloakRealmRoleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakRealmRoleStatus ¶
type KeycloakRealmRoleStatus struct { // The ID of the role managed RoleID string `json:"roleID,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
KeycloakRealmRoleStatus defines the observed state of KeycloakRealmRole
func (*KeycloakRealmRoleStatus) DeepCopy ¶
func (in *KeycloakRealmRoleStatus) DeepCopy() *KeycloakRealmRoleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmRoleStatus.
func (*KeycloakRealmRoleStatus) DeepCopyInto ¶
func (in *KeycloakRealmRoleStatus) DeepCopyInto(out *KeycloakRealmRoleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakRealmSpec ¶
type KeycloakRealmSpec struct { Endpoint EndpointSelector `json:"endpoint,omitempty"` // +kubebuilder:validation:Required Config gocloak.RealmRepresentation `json:"config"` }
KeycloakRealmSpec defines the desired state of KeycloakRealm +kubebuilder:object:generate=true +k8s:openapi-gen=true
func (*KeycloakRealmSpec) DeepCopy ¶
func (in *KeycloakRealmSpec) DeepCopy() *KeycloakRealmSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmSpec.
func (*KeycloakRealmSpec) DeepCopyInto ¶
func (in *KeycloakRealmSpec) DeepCopyInto(out *KeycloakRealmSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeycloakRealmStatus ¶
type KeycloakRealmStatus struct { // The ID of the realm managed // +optional RealmID string `json:"realmId,omitempty"` // Base status // +optional Api ApiStatus `json:"api,omitempty"` }
+k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:validation:Optional
func (*KeycloakRealmStatus) DeepCopy ¶
func (in *KeycloakRealmStatus) DeepCopy() *KeycloakRealmStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeycloakRealmStatus.
func (*KeycloakRealmStatus) DeepCopyInto ¶
func (in *KeycloakRealmStatus) DeepCopyInto(out *KeycloakRealmStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LdapFederation ¶
type LdapFederation struct { // Enable/disable HTTP authentication of users with SPNEGO/Kerberos tokens. The data about authenticated users // will be provisioned from this LDAP server. // +kubebuilder:default=false AllowKerberosAuthentication bool `json:"allowKerberosAuthentication"` // Count of LDAP users to be imported from LDAP to Keycloak within a single transaction // +kubebuilder:default=1000 BatchSizeForSync int `json:"batchSizeForSync"` // Name of a kubernetes secret holding the `bind_dn` and `bind_password` necessary to connect // +kubebuilder:default="" BindCredentialsSecret string `json:"bindCredentialsSecret,omitempty"` // Cache Policy for this storage provider. 'DEFAULT' is whatever the default settings are for the global cache. // 'EVICT_DAILY' is a time of day every day that the cache will be invalidated. 'EVICT_WEEKLY' is a day of the week // and time the cache will be invalidated. 'MAX_LIFESPAN' is the time in milliseconds that will be the lifespan of a // cache entry. // +kubebuilder:validation:Enum=DEFAULT;EVICT_DAILY;EVICT_WEEKLY;MAX_LIFESPAN // +kubebuilder:default="DEFAULT" CachePolicy string `json:"cachePolicy,omitempty"` // Day of the week the entry will become invalid // +kubebuilder:validation:Enum=monday;tuesday;wednesday;thursday;friday;saturday;sunday // +kubebuilder:default="sunday" EvictionDay string `json:"evictionDay,omitempty"` // Hour of the day the entry will become invalid (when selecting 'EVICT_DAILY' or 'EVICT_WEEKLY' cachePolicy) // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=23 // +kubebuilder:default=0 EvictionHour int `json:"evictionHour,omitempty"` // Minute of the hour the entry will become invalid (when selecting 'EVICT_DAILY' or 'EVICT_WEEKLY' cachePolicy) // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=59 // +kubebuilder:default=0 EvictionMinute int `json:"evictionMinute,omitempty"` // Max lifespan of cache entry in milliseconds (when selecting 'MAX_LIFESPAN' cachePolicy) // +kubebuilder:default=86400000 MaxLifespan int `json:"maxLifespan,omitempty"` // Period for synchronization of changed or newly created LDAP users in seconds ChangedSyncPeriod *metav1.Duration `json:"changedSyncPeriod,omitempty"` // Determines if Keycloak should use connection pooling for accessing LDAP server. // +kubebuilder:default=false ConnectionPooling bool `json:"connectionPooling"` // Connection URL to your LDAP server // +required ConnectionUrl string `json:"connectionUrl"` // LDAP connection timeout in milliseconds ConnectionTimeout *metav1.Duration `json:"connectionTimeout,omitempty"` // READ_ONLY is a read-only LDAP store. WRITABLE means data will be synced back to LDAP on demand. // UNSYNCED means user data will be imported, but not synced back to LDAP. // +kubebuilder:validation:Enum=READ_ONLY;WRITABLE;UNSYNCED // +kubebuilder:default="READ_ONLY" EditMode string `json:"editMode,omitempty"` // Enable or disable the LDAP federation // +kubebuilder:default=true Enabled bool `json:"enabled"` // Period for full synchronization in seconds FullSyncPeriod *metav1.Duration `json:"fullSyncPeriod,omitempty"` // If true, LDAP users will be imported into the Keycloak DB and synced by the configured sync policies. // +kubebuilder:default=true ImportEnabled bool `json:"importEnabled"` // Whether the LDAP server supports pagination // +kubebuilder:default=false Pagination bool `json:"pagination"` // +kubebuilder:default=0 Priority int `json:"priority"` // Name of the LDAP attribute, which is used as RDN (top attribute) of typical user DN. Usually it's the same as the Username LDAP attribute, // however it is not required. For example for Active directory, it is common to use 'cn' as RDN attribute when username attribute might be 'sAMAccountName'. // +kubebuilder:default=cn RdnLDAPAttribute string `json:"rdnLDAPAttribute,omitempty"` // Name of the LDAP federation // +required Name string `json:"name"` // Whether periodic synchronization of changed or newly created LDAP users to Keycloak should be enabled or not // +kubebuilder:default=false PeriodicChangedUsersSync bool `json:"periodicChangedUsersSync"` // Whether periodic full synchronization of LDAP users to Keycloak should be enabled or not // +kubebuilder:default=false PeriodicFullSync bool `json:"periodicFullSync"` // For one level, the search applies only for users in the DNs specified by User DNs. For subtree, the search applies to the whole subtree. // See LDAP documentation for more details. // +kubebuilder:validation:Enum="1";"2" // +kubebuilder:default="2" SearchScope string `json:"searchScope"` // Encrypts the connection to LDAP using STARTTLS, which will disable connection pooling // +kubebuilder:default=false StartTls bool `json:"startTls"` // +kubebuilder:default=false SyncRegistrations bool `json:"syncRegistrations"` // +kubebuilder:default=false TrustEmail bool `json:"trustEmail"` // User Kerberos login module for authenticating username/password against Kerberos server instead of authenticating against // LDAP server with Directory Service API // +kubebuilder:default=false UseKerberosForPasswordAuthentication bool `json:"useKerberosForPasswordAuthentication,omitempty"` // Use the LDAPv3 Password Modify Extended Operation (RFC-3062). The password modify extended operation usually requires that // LDAP user already has password in the LDAP server. So when this is used with 'Sync Registrations', it can be good to add // also 'Hardcoded LDAP attribute mapper' with randomly generated initial password. // +kubebuilder:default=false UsePasswordModifyExtendedOp bool `json:"usePasswordModifyExtendedOp"` // Specifies whether LDAP connection will use the Truststore SPI with the truststore configured in standalone.xml/domain.sml. // 'always' means that it will always use it. 'never' means that it will not use it. 'ldapsOnly' means that it will use // it if your connection URL use ldaps. Note that even if standalone.xml/domain.xml is not configured, the default java cacerts // or certificate specified by 'javax.net.ssl.trustStore' property will be used. // +kubebuilder:validation:Enum=always;ldapsOnly;never // +kubebuilder:default=ldapsOnly UseTruststoreSpi string `json:"useTruststoreSpi"` // All values of LDAP objectClass attribute for users in LDAP, divided by commas. For example: 'inetOrgPerson, organizationalPerson'. // Newly created Keycloak users will be written to LDAP with all those object classes and existing LDAP user records are found just // if they contain all those object classes. // +kubebuilder:default={'person'} UserObjectClasses []string `json:"userObjectClasses"` // Name of the LDAP attribute, which is mapped as Keycloak username. For many LDAP server vendors it can be 'uid'. For Active directory // it can be 'sAMAccountName' or 'cn'. The attribute should be filled for all LDAP user records you want to import from LDAP to Keycloak. // +kubebuilder:default=samaccountname UsernameLDAPAttribute string `json:"usernameLDAPAttribute,omitempty"` // Full DN of LDAP tree where your users are. This DN is the parent of LDAP users. It could be for example 'ou=users,dc=example,dc=com' // assuming that your typical user will have DN like 'uid='john',ou=users,dc=example,dc=com'. // +required UsersDn string `json:"usersDn,omitempty"` // Name of the LDAP attribute, which is used as a unique object identifier (UUID) for objects in LDAP. For many LDAP server vendors, it is // 'entryUUID'; however some are different. For example, for Active directory it should be 'objectGUID'. If your LDAP server does not support // the notion of UUID, you can use any other attribute that is supposed to be unique among LDAP users in tree. For example 'uid' or 'entryDN'. // +kubebuilder:default=objectGUID UuidLDAPAttribute string `json:"uuidLDAPAttribute,omitempty"` // Determines if Keycloak should validate the password with the realm password policy before updating it // +kubebuilder:default=false ValidatePasswordPolicy bool `json:"validatePasswordPolicy"` // LDAP vendor (provider) // +kubebuilder:validation:Enum=ad;rhds;other;tivoli;edirectory // +required Vendor string `json:"vendor,omitempty"` }
+kubebuilder:object:generate=true
func (*LdapFederation) DeepCopy ¶
func (in *LdapFederation) DeepCopy() *LdapFederation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LdapFederation.
func (*LdapFederation) DeepCopyInto ¶
func (in *LdapFederation) DeepCopyInto(out *LdapFederation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MSADUserAccountControlMapper ¶
type MSADUserAccountControlMapper struct { // Applicable just for writable MSAD. If on, then updating password of MSAD user will use // LDAP_SERVER_POLICY_HINTS_OID extension, which means that advanced MSAD password policies // like 'password history' or 'minimal password age' will be applied. This extension works just // for MSAD 2008 R2 or newer. // +kubebuilder:default=false PasswordPolicyHintsEnabled bool `json:"passwordPolicyHintsEnabled"` }
func (*MSADUserAccountControlMapper) DeepCopy ¶
func (in *MSADUserAccountControlMapper) DeepCopy() *MSADUserAccountControlMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSADUserAccountControlMapper.
func (*MSADUserAccountControlMapper) DeepCopyInto ¶
func (in *MSADUserAccountControlMapper) DeepCopyInto(out *MSADUserAccountControlMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MSADUserAccountControlMapper) ToComponentConfig ¶
func (m *MSADUserAccountControlMapper) ToComponentConfig() map[string][]string
type RoleLdapMapper ¶
type RoleLdapMapper struct { // Used just when 'User Roles Retrieve Strategy' is GET_ROLES_FROM_USER_MEMBEROF_ATTRIBUTE. // It specifies the name of the LDAP attribute on the LDAP user, which contains the roles // (LDAP Groups), which the user is member of. Usually it will be 'memberOf' and that's // also the default value. // +kubebuilder:default="memberOf" MemberofLdapAttribute string `json:"memberofLdapAttribute,omitempty"` // +kubebuilder:validation:Enum=DN;UID // +kubebuilder:default="DN" MembershipAttributeType string `json:"membershipAttributeType,omitempty"` // +kubebuilder:default="" MembershipLdapAttribute string `json:"membershipLdapAttribute,omitempty"` // +kubebuilder:default="" MembershipUserLdapAttribute string `json:"membershipUserLdapAttribute,omitempty"` // LDAP_ONLY means that all role mappings are retrieved from LDAP and saved into LDAP. READ_ONLY // is Read-only LDAP mode where role mappings are retrieved from both LDAP and DB and merged together. // New role grants are not saved to LDAP but to DB. IMPORT is Read-only LDAP mode where role mappings are // retrieved from LDAP just at the time when user is imported from LDAP and then they are saved to local keycloak DB. // +kubebuilder:validation:Enum=READ_ONLY;IMPORT;LDAP_ONLY // +kubebuilder:default="READ_ONLY" Mode string `json:"mode"` // +optional RoleObjectClasses []string `json:"roleObjectClasses,omitempty"` // +kubebuilder:default="" RolesDn string `json:"rolesDn,omitempty"` // If true, then LDAP role mappings will be mapped to realm role mappings in Keycloak. Otherwise it will be mapped to client role mappings // +kubebuilder:default=true UseRealmRolesMapping bool `json:"useRealmRoleMapping"` // Specify how to retrieve groups of user. LOAD_GROUPS_BY_MEMBER_ATTRIBUTE means that roles of user // will be retrieved by sending LDAP query to retrieve all groups where 'member' is our user. // GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE means that groups of user will be retrieved from 'memberOf' // attribute of our user. Or from the other attribute specified by 'Member-Of LDAP Attribute'. // LOAD_GROUPS_BY_MEMBER_ATTRIBUTE_RECURSIVELY is applicable just in Active Directory and it means that // groups of user will be retrieved recursively with usage of LDAP_MATCHING_RULE_IN_CHAIN Ldap extension. // +kubebuilder:validation:Enum=GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE;LOAD_GROUPS_BY_MEMBER_ATTRIBUTE;LOAD_GROUPS_BY_MEMBER_ATTRIBUTE_RECURSIVELY // +kubebuilder:default="LOAD_GROUPS_BY_MEMBER_ATTRIBUTE" UserRolesRetrieveStrategy string `json:"userRolesRetrieveStrategy"` }
+kubebuilder:object:generate=true
func (*RoleLdapMapper) DeepCopy ¶
func (in *RoleLdapMapper) DeepCopy() *RoleLdapMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleLdapMapper.
func (*RoleLdapMapper) DeepCopyInto ¶
func (in *RoleLdapMapper) DeepCopyInto(out *RoleLdapMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RoleLdapMapper) ToComponentConfig ¶
func (m *RoleLdapMapper) ToComponentConfig() map[string][]string
type Rule ¶
type Rule struct { // A name to describe and document the rule. // +optional Name string `json:"name,omitempty"` // The authorization action to perform. Valid values: `allow`/`reject`. // +kubebuilder:validation:Enum=allow;reject Action string `json:"action"` // Resources that are allowed to be modified. // `*` and an empty array will authorize the rule for every resource Resources []string `json:"resources,omitempty"` // Namespaces allowed to manage resources // `*` and an empty array will authorize the rule for any namespace Namespaces []string `json:"namespaces,omitempty"` // Realms concerned by the constraint // `*` and an empty array will authorize the rule for any realm Realms []string `json:"realms,omitempty"` }
A constraint. Can be match a resource being reconciled. +kubebuilder:object:generate=true
func (*Rule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.
func (*Rule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretGenerator ¶
type SecretGenerator struct { // Name of the secret to generate Name string `json:"name"` // Enable secret generation. Only useful when using the `client-secret` // client auth method. // +kubebuilder:default=true Enabled bool `json:"enabled"` }
+kubebuilder:object:generate=true
func (*SecretGenerator) DeepCopy ¶
func (in *SecretGenerator) DeepCopy() *SecretGenerator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretGenerator.
func (*SecretGenerator) DeepCopyInto ¶
func (in *SecretGenerator) DeepCopyInto(out *SecretGenerator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subject ¶
type Subject struct { // The type of the subject. Either `user` or `group`. // +kubebuilder:validation:Enum=user;group Kind string `json:"kind"` // The name of the user or group Name string `json:"name"` }
Represent a user or group in keycloak +kubebuilder:object:generate=true
func (*Subject) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subject.
func (*Subject) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserAttributeLdapMapper ¶
type UserAttributeLdapMapper struct { // If on, then during reading of the LDAP attribute value will always used instead of the // value from Keycloak DB // +kubebuilder:default=false AlwaysReadValueFromLdap bool `json:"alwaysReadValueFromLdap"` // If there is no value in Keycloak DB and attribute is mandatory in LDAP, this value will // be propagated to LDAP // +kubebuilder:default="" AttributeDefaultValue string `json:"attributeDefaultValue"` // Should be true for binary LDAP attributes // +kubebuilder:default=false IsBinaryAttribute bool `json:"isBinaryAttribute"` // If true, attribute is mandatory in LDAP. Hence if there is no value in Keycloak DB, // the default or empty value will be set to be propagated to LDAP // +kubebuilder:default=false IsMandatoryInLdap bool `json:"isMandatoryInLdap"` // Name of mapped attribute on LDAP object. For example 'cn', 'sn, 'mail', 'street' etc. // +kubebuilder:default="" LdapAttribute string `json:"ldapAttribute"` // +kubebuilder:default=true // Read-only attribute is imported from LDAP to UserModel, but it's not saved back to LDAP when // user is updated in Keycloak. ReadOnly bool `json:"readOnly"` // Name of the UserModel property or attribute you want to map the LDAP attribute into. // For example 'firstName', 'lastName, 'email', 'street' etc. // +kubebuilder:default="" UserModelAttribute string `json:"userModelAttribute"` }
+kubebuilder:object:generate=true
func (*UserAttributeLdapMapper) DeepCopy ¶
func (in *UserAttributeLdapMapper) DeepCopy() *UserAttributeLdapMapper
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAttributeLdapMapper.
func (*UserAttributeLdapMapper) DeepCopyInto ¶
func (in *UserAttributeLdapMapper) DeepCopyInto(out *UserAttributeLdapMapper)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*UserAttributeLdapMapper) ToComponentConfig ¶
func (m *UserAttributeLdapMapper) ToComponentConfig() map[string][]string
type UserRepresentation ¶
type UserRepresentation struct { // User ID. // +optional ID string `json:"id,omitempty"` // User Name. // +optional UserName string `json:"username,omitempty"` }
func (*UserRepresentation) DeepCopy ¶
func (in *UserRepresentation) DeepCopy() *UserRepresentation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserRepresentation.
func (*UserRepresentation) DeepCopyInto ¶
func (in *UserRepresentation) DeepCopyInto(out *UserRepresentation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- base.go
- component_types.go
- endpoint_selector.go
- groupversion_info.go
- keycloakclient_types.go
- keycloakclient_webhook.go
- keycloakclientprotocolmapper_types.go
- keycloakclientrole_types.go
- keycloakclientrole_webhook.go
- keycloakclientrolemapping_types.go
- keycloakclientscope_types.go
- keycloakclientscopeprotocolmapper_types.go
- keycloakclusterendpoint_types.go
- keycloakendpoint_types.go
- keycloakldapfederation_types.go
- keycloakldapfederation_webhook.go
- keycloakldapmapper_types.go
- keycloakrealm_types.go
- keycloakrealm_webhook.go
- keycloakrealmrole_types.go
- rules.go
- subject.go
- utils.go
- zz_generated.deepcopy.go