Package com.jalios.ldap
Class LDAPConfiguration
- java.lang.Object
-
- com.jalios.ldap.LDAPConfiguration
-
public class LDAPConfiguration extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
clientCertificateEnabled
protected boolean
enabled
protected java.lang.String
groupFilter
protected java.lang.String
groupMappingUUID
protected java.lang.String
groupObjectClass
protected java.lang.String
groupSuffix
protected java.lang.String
hostname
protected boolean
isSSL
protected boolean
isUsingPosixGroup
static java.lang.String
LDAP_ENABLED
static java.lang.String
LDAP_SERVER_CLIENT_CERTIFICATE_ENABLED
static java.lang.String
LDAP_SERVER_GROUP_FILTER
static java.lang.String
LDAP_SERVER_GROUP_MAPPING_UUID
static java.lang.String
LDAP_SERVER_GROUP_OBJECTCLASS
static java.lang.String
LDAP_SERVER_GROUP_SUFFIX
static java.lang.String
LDAP_SERVER_HOSTNAME
static java.lang.String
LDAP_SERVER_LOGIN
static java.lang.String
LDAP_SERVER_PASSWORD
static java.lang.String
LDAP_SERVER_PORT
static java.lang.String
LDAP_SERVER_SIZE_LIMIT
static java.lang.String
LDAP_SERVER_SSL
static java.lang.String
LDAP_SERVER_SUFFIX
static java.lang.String
LDAP_SERVER_TIME_LIMIT
static java.lang.String
LDAP_SERVER_USER_FILTER
static java.lang.String
LDAP_SERVER_USER_OBJECTCLASS
static java.lang.String
LDAP_SERVER_VERSION
static java.lang.String
LDAP_SYNCHRONIZE
static java.lang.String
LDAP_SYNCHRONIZE_AUTH
static java.lang.String
LDAP_SYNCHRONIZE_GROUPS
protected java.lang.String
login
protected java.lang.String
password
protected int
port
static java.lang.String
REVISION
protected int
sizeLimit
protected java.lang.String
suffix
protected boolean
synchronize
protected boolean
synchronizeAuth
protected boolean
synchronizeGroups
protected int
timeLimit
protected java.lang.String
userFilter
protected java.lang.String
userObjectClass
protected int
version
-
Constructor Summary
Constructors Constructor Description LDAPConfiguration(JProperties props)
Build a new LDAPConfiguration from properties "ldap.*" available in the specified JProperties.LDAPConfiguration(JProperties props, java.lang.String serverConf)
Build a new LDAPConfiguration from properties "ldap.*" available in the specified JProperties, trying to retrieve custom properties from the specified configuration prior to using default properties.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getGroupFilter()
java.lang.String
getGroupMappingUUID()
java.lang.String
getGroupObjectClass()
java.lang.String
getGroupSuffix()
java.lang.String
getHostname()
java.lang.String
getLogin()
java.lang.String
getPassword()
int
getPort()
int
getSizeLimit()
java.lang.String
getSuffix()
boolean
getSynchronize()
Check if synchronization of user is enabled for this configuration.boolean
getSynchronizeDuringAuthentication()
Check if synchronization of user (and their groups if enabled) is to be performed during authentication.boolean
getSynchronizeGroups()
Check if synchronization of groups is enabled for this configuration.int
getTimeLimit()
java.lang.String
getUserFilter()
java.lang.String
getUserObjectClass()
int
getVersion()
boolean
isEnabled()
boolean
isSSL()
boolean
isUsingPosixGroup()
protected void
readProperties(JProperties prop, java.lang.String serverConf)
void
setGroupFilter(java.lang.String groupFilter)
void
setGroupMappingUUID(java.lang.String groupMappingUUID)
void
setGroupObjectClass(java.lang.String groupObjectClass)
void
setLogin(java.lang.String login)
void
setPassword(java.lang.String password)
void
setUserFilter(java.lang.String userFilter)
void
setUserObjectClass(java.lang.String userObjectClass)
-
-
-
Field Detail
-
REVISION
public static final java.lang.String REVISION
- See Also:
- Constant Field Values
-
LDAP_ENABLED
public static final java.lang.String LDAP_ENABLED
- See Also:
- Constant Field Values
-
LDAP_SYNCHRONIZE
public static final java.lang.String LDAP_SYNCHRONIZE
- See Also:
- Constant Field Values
-
LDAP_SYNCHRONIZE_AUTH
public static final java.lang.String LDAP_SYNCHRONIZE_AUTH
- See Also:
- Constant Field Values
-
LDAP_SYNCHRONIZE_GROUPS
public static final java.lang.String LDAP_SYNCHRONIZE_GROUPS
- See Also:
- Constant Field Values
-
LDAP_SERVER_SSL
public static final java.lang.String LDAP_SERVER_SSL
- See Also:
- Constant Field Values
-
LDAP_SERVER_HOSTNAME
public static final java.lang.String LDAP_SERVER_HOSTNAME
- See Also:
- Constant Field Values
-
LDAP_SERVER_LOGIN
public static final java.lang.String LDAP_SERVER_LOGIN
- See Also:
- Constant Field Values
-
LDAP_SERVER_PORT
public static final java.lang.String LDAP_SERVER_PORT
- See Also:
- Constant Field Values
-
LDAP_SERVER_SIZE_LIMIT
public static final java.lang.String LDAP_SERVER_SIZE_LIMIT
- See Also:
- Constant Field Values
-
LDAP_SERVER_TIME_LIMIT
public static final java.lang.String LDAP_SERVER_TIME_LIMIT
- See Also:
- Constant Field Values
-
LDAP_SERVER_VERSION
public static final java.lang.String LDAP_SERVER_VERSION
- See Also:
- Constant Field Values
-
LDAP_SERVER_PASSWORD
public static final java.lang.String LDAP_SERVER_PASSWORD
- See Also:
- Constant Field Values
-
LDAP_SERVER_CLIENT_CERTIFICATE_ENABLED
public static final java.lang.String LDAP_SERVER_CLIENT_CERTIFICATE_ENABLED
- See Also:
- Constant Field Values
-
LDAP_SERVER_SUFFIX
public static final java.lang.String LDAP_SERVER_SUFFIX
- See Also:
- Constant Field Values
-
LDAP_SERVER_USER_FILTER
public static final java.lang.String LDAP_SERVER_USER_FILTER
- See Also:
- Constant Field Values
-
LDAP_SERVER_USER_OBJECTCLASS
public static final java.lang.String LDAP_SERVER_USER_OBJECTCLASS
- See Also:
- Constant Field Values
-
LDAP_SERVER_GROUP_SUFFIX
public static final java.lang.String LDAP_SERVER_GROUP_SUFFIX
- See Also:
- Constant Field Values
-
LDAP_SERVER_GROUP_FILTER
public static final java.lang.String LDAP_SERVER_GROUP_FILTER
- See Also:
- Constant Field Values
-
LDAP_SERVER_GROUP_OBJECTCLASS
public static final java.lang.String LDAP_SERVER_GROUP_OBJECTCLASS
- See Also:
- Constant Field Values
-
LDAP_SERVER_GROUP_MAPPING_UUID
public static final java.lang.String LDAP_SERVER_GROUP_MAPPING_UUID
- See Also:
- Constant Field Values
-
enabled
protected boolean enabled
-
synchronize
protected boolean synchronize
-
synchronizeAuth
protected boolean synchronizeAuth
-
synchronizeGroups
protected boolean synchronizeGroups
-
hostname
protected java.lang.String hostname
-
login
protected java.lang.String login
-
password
protected java.lang.String password
-
port
protected int port
-
sizeLimit
protected int sizeLimit
-
timeLimit
protected int timeLimit
-
version
protected int version
-
isSSL
protected boolean isSSL
-
clientCertificateEnabled
protected boolean clientCertificateEnabled
-
suffix
protected java.lang.String suffix
-
userFilter
protected java.lang.String userFilter
-
userObjectClass
protected java.lang.String userObjectClass
-
groupSuffix
protected java.lang.String groupSuffix
-
groupFilter
protected java.lang.String groupFilter
-
groupObjectClass
protected java.lang.String groupObjectClass
-
isUsingPosixGroup
protected boolean isUsingPosixGroup
-
groupMappingUUID
protected java.lang.String groupMappingUUID
-
-
Constructor Detail
-
LDAPConfiguration
public LDAPConfiguration(JProperties props)
Build a new LDAPConfiguration from properties "ldap.*" available in the specified JProperties.- Parameters:
props
- the properties from which LDAPConfiguration is being built
-
LDAPConfiguration
public LDAPConfiguration(JProperties props, java.lang.String serverConf)
Build a new LDAPConfiguration from properties "ldap.*" available in the specified JProperties, trying to retrieve custom properties from the specified configuration prior to using default properties.For example, given the following properties :
ldap.server.hostname: ldap.example.com ldap.server.login: foo ldap.server.password: bar ldap.server.conf2.hostname: other-domain-ldap.example.com
Invoking this constructorLDAPConfiguration conf = new LDAPConfiguration(channel.getProperties("ldap"), "conf2"); assertEquals("other-domain-ldap.example.com", conf.getHostname()); assertEquals("foo", conf.getLogin()); assertEquals("bar", conf.getPassword());
- Parameters:
props
- the properties from which LDAPConfiguration is being builtserverConf
- an optional subconfiguration to use after "ldap.server." default prefix, to retrieve Server configuration options
-
-
Method Detail
-
readProperties
protected void readProperties(JProperties prop, java.lang.String serverConf)
-
isEnabled
public boolean isEnabled()
- Returns:
- true if LDAP is enabled for this configuration.
-
getSynchronize
public boolean getSynchronize()
Check if synchronization of user is enabled for this configuration.- Returns:
- true if the user being retrieve from ldap should be synchronized in JCMS.
-
getSynchronizeDuringAuthentication
public boolean getSynchronizeDuringAuthentication()
Check if synchronization of user (and their groups if enabled) is to be performed during authentication.- Returns:
- true if the synchronisation should occurs during authentication, false otherwise
- Since:
- jcms-10.0.3 / JCMS-6382
-
getSynchronizeGroups
public boolean getSynchronizeGroups()
Check if synchronization of groups is enabled for this configuration.- Returns:
- true if the LDAP groups of the user being retrieve from LDAP should be synchronized in JCMS.
-
isSSL
public boolean isSSL()
- Returns:
- true if SSL in enabled for this configuration
-
getHostname
public java.lang.String getHostname()
- Returns:
- the hostname of the LDAP Server for this configuration
-
getLogin
public java.lang.String getLogin()
- Returns:
- the DN that should be used to connect/bind/authenticated to the LDAP server.
-
getPassword
public java.lang.String getPassword()
- Returns:
- the password that should be used to connect/bind/authenticated to the LDAP server.
-
setPassword
public void setPassword(java.lang.String password)
-
setLogin
public void setLogin(java.lang.String login)
-
getPort
public int getPort()
- Returns:
- the port number that should be used to connect to the LDAP server.
-
getSizeLimit
public int getSizeLimit()
- Returns:
- the size limit value that should be used during connection to the LDAP server, it defines the maximum number of result that can be retrieved during a search.
-
getTimeLimit
public int getTimeLimit()
- Returns:
- the time limit value that should be used during connection to the LDAP server, it defines the maximum number of milliseconds to wait for an operation to complete.
-
getVersion
public int getVersion()
- Returns:
- the protocol version to use to connect to the LDAP server.
-
getSuffix
public java.lang.String getSuffix()
- Returns:
- the base DN that should be used when searching users in the LDAP.
-
getUserFilter
public java.lang.String getUserFilter()
- Returns:
- a String that should be processed by the method
MessageFormat.format(java.lang.String, java.lang.Object[])
and used to search for users in the LDAP.
-
setUserFilter
public void setUserFilter(java.lang.String userFilter)
-
getUserObjectClass
public java.lang.String getUserObjectClass()
- Returns:
- the objectClass value which defines that a LDAPEntry is a user.
- Since:
- jcms-5.7
-
setUserObjectClass
public void setUserObjectClass(java.lang.String userObjectClass)
-
getGroupSuffix
public java.lang.String getGroupSuffix()
- Returns:
- the base DN that should be used when searching groups in the LDAP.
- Since:
- jcms-5.7
-
getGroupFilter
public java.lang.String getGroupFilter()
- Returns:
- a String that should be processed by the method
MessageFormat.format(java.lang.String, java.lang.Object[])
and used to search for groups in the LDAP. - Since:
- jcms-5.7
-
setGroupFilter
public void setGroupFilter(java.lang.String groupFilter)
-
getGroupObjectClass
public java.lang.String getGroupObjectClass()
- Returns:
- the objectClass value which defines that a LDAPEntry is a group.
- Since:
- jcms-5.7
-
setGroupObjectClass
public void setGroupObjectClass(java.lang.String groupObjectClass)
-
getGroupMappingUUID
public java.lang.String getGroupMappingUUID()
- Returns:
- the name of the LDAP attribute used as UUID for group mapping.
- Since:
- jcms-10.0.3 - JCMS-7454
-
setGroupMappingUUID
public void setGroupMappingUUID(java.lang.String groupMappingUUID)
-
isUsingPosixGroup
public boolean isUsingPosixGroup()
- Returns:
- true if the settings of this LDAPConfiguration define that the group being used is a posixGroup (groupObjectClass is "posixGroup" and groupFilter contains "memberUid").
- Since:
- jcms-5.7
-
-