org.keycloak.storage.ldap.mappers

## Class HardcodedLDAPAttributeMapper

- java.lang.Object
- - org.keycloak.storage.ldap.mappers.AbstractLDAPStorageMapper
  - - org.keycloak.storage.ldap.mappers.HardcodedLDAPAttributeMapper

- All Implemented Interfaces:
    Provider, LDAPStorageMapper

      public class HardcodedLDAPAttributeMapper
      extends AbstractLDAPStorageMapper

  Author:
    Marek Posolda

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `LDAP_ATTRIBUTE_NAME`
    `static String` | `LDAP_ATTRIBUTE_VALUE`
    `static String` | `RANDOM_ATTRIBUTE_VALUE` When this is configured as LDAP_ATTRIBUTE_VALUE, the mapper will use randomly generated value
    `static Pattern` | `substitution`

    - ### Fields inherited from class org.keycloak.storage.ldap.mappers.AbstractLDAPStorageMapper

      `ldapProvider, mapperModel, session`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HardcodedLDAPAttributeMapper(ComponentModel mapperModel, LDAPStorageProvider ldapProvider)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `beforeLDAPQuery(LDAPQuery query)` Called before LDAP Identity query for retrieve LDAP users was executed.
    `protected String` | `computeAttributeValue(String ldapAttrName, String ldapAttrValue, LDAPObject ldapUser, UserModel localUser, RealmModel realm)`
    `protected String` | `getRandomValue()`
    `void` | `onImportUserFromLDAP(LDAPObject ldapUser, UserModel user, RealmModel realm, boolean isCreate)` Called when importing user from LDAP to local keycloak DB.
    `void` | `onRegisterUserToLDAP(LDAPObject ldapUser, UserModel localUser, RealmModel realm)` Called when register new user to LDAP - just after user was created in Keycloak DB
    `UserModel` | `proxy(LDAPObject ldapUser, UserModel delegate, RealmModel realm)` Called when invoke proxy on LDAP federation provider

    - ### Methods inherited from class org.keycloak.storage.ldap.mappers.AbstractLDAPStorageMapper

      `close, getGroupMembers, getLdapProvider, getRoleMembers, onAuthenticationFailure, parseBooleanParameter, syncDataFromFederationProviderToKeycloak, syncDataFromKeycloakToFederationProvider`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LDAP_ATTRIBUTE_NAME

          public static final String LDAP_ATTRIBUTE_NAME

      See Also:
        Constant Field Values

    - #### LDAP_ATTRIBUTE_VALUE

          public static final String LDAP_ATTRIBUTE_VALUE

      See Also:
        Constant Field Values

    - #### RANDOM_ATTRIBUTE_VALUE

          public static final String RANDOM_ATTRIBUTE_VALUE

      When this is configured as LDAP_ATTRIBUTE_VALUE, the mapper will use randomly generated value
      See Also:
        Constant Field Values

    - #### substitution

          public static Pattern substitution

  - ### Constructor Detail

    - #### HardcodedLDAPAttributeMapper

          public HardcodedLDAPAttributeMapper(ComponentModel mapperModel,
                                              LDAPStorageProvider ldapProvider)

  - ### Method Detail

    - #### onRegisterUserToLDAP

          public void onRegisterUserToLDAP(LDAPObject ldapUser,
                                           UserModel localUser,
                                           RealmModel realm)

      Description copied from interface: `LDAPStorageMapper`
      Called when register new user to LDAP - just after user was created in Keycloak DB

    - #### computeAttributeValue

          protected String computeAttributeValue(String ldapAttrName,
                                                 String ldapAttrValue,
                                                 LDAPObject ldapUser,
                                                 UserModel localUser,
                                                 RealmModel realm)

    - #### getRandomValue

          protected String getRandomValue()

    - #### onImportUserFromLDAP

          public void onImportUserFromLDAP(LDAPObject ldapUser,
                                           UserModel user,
                                           RealmModel realm,
                                           boolean isCreate)

      Description copied from interface: `LDAPStorageMapper`
      Called when importing user from LDAP to local keycloak DB.
        `isCreate` - true if we importing new user from LDAP. False if user already exists in Keycloak, but we are upgrading (syncing) it from LDAP

    - #### proxy

          public UserModel proxy(LDAPObject ldapUser,
                                 UserModel delegate,
                                 RealmModel realm)

      Description copied from interface: `LDAPStorageMapper`
      Called when invoke proxy on LDAP federation provider
      Returns:

    - #### beforeLDAPQuery

          public void beforeLDAPQuery(LDAPQuery query)

      Description copied from interface: `LDAPStorageMapper`
      Called before LDAP Identity query for retrieve LDAP users was executed. It allows to change query somehow (add returning attributes from LDAP, change conditions etc)

Copyright © 2021 JBoss by Red Hat. All rights reserved.