KEYCLOAK-419 Upgrade picketlink dependency and enable ldap connection pooling
This commit is contained in:
parent
b6386630fb
commit
bb11ad2ec1
2 changed files with 20 additions and 1 deletions
|
@ -1,6 +1,7 @@
|
||||||
package org.keycloak.picketlink.realm;
|
package org.keycloak.picketlink.realm;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import org.jboss.logging.Logger;
|
import org.jboss.logging.Logger;
|
||||||
|
@ -54,11 +55,23 @@ public class PartitionManagerRegistry {
|
||||||
protected PartitionManager createPartitionManager(Map<String,String> ldapConfig) {
|
protected PartitionManager createPartitionManager(Map<String,String> ldapConfig) {
|
||||||
IdentityConfigurationBuilder builder = new IdentityConfigurationBuilder();
|
IdentityConfigurationBuilder builder = new IdentityConfigurationBuilder();
|
||||||
|
|
||||||
|
Properties connectionProps = new Properties();
|
||||||
|
connectionProps.put("com.sun.jndi.ldap.connect.pool", "true");
|
||||||
|
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.authentication", "none simple");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.initsize", "1");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.maxsize", "10");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.prefsize", "5");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.timeout", "300000");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.protocol", "plain");
|
||||||
|
checkSystemProperty("com.sun.jndi.ldap.connect.pool.debug", "off");
|
||||||
|
|
||||||
// Use same mapping for User and Agent for now
|
// Use same mapping for User and Agent for now
|
||||||
builder
|
builder
|
||||||
.named("SIMPLE_LDAP_STORE_CONFIG")
|
.named("SIMPLE_LDAP_STORE_CONFIG")
|
||||||
.stores()
|
.stores()
|
||||||
.ldap()
|
.ldap()
|
||||||
|
.connectionProperties(connectionProps)
|
||||||
.addCredentialHandler(LDAPAgentIgnoreCredentialHandler.class)
|
.addCredentialHandler(LDAPAgentIgnoreCredentialHandler.class)
|
||||||
.baseDN(ldapConfig.get(LdapConstants.BASE_DN))
|
.baseDN(ldapConfig.get(LdapConstants.BASE_DN))
|
||||||
.bindDN(ldapConfig.get(LdapConstants.BIND_DN))
|
.bindDN(ldapConfig.get(LdapConstants.BIND_DN))
|
||||||
|
@ -77,6 +90,12 @@ public class PartitionManagerRegistry {
|
||||||
return new DefaultPartitionManager(builder.buildAll());
|
return new DefaultPartitionManager(builder.buildAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void checkSystemProperty(String name, String defaultValue) {
|
||||||
|
if (System.getProperty(name) == null) {
|
||||||
|
System.setProperty(name, defaultValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private class PartitionManagerContext {
|
private class PartitionManagerContext {
|
||||||
|
|
||||||
private PartitionManagerContext(Map<String,String> config, PartitionManager manager) {
|
private PartitionManagerContext(Map<String,String> config, PartitionManager manager) {
|
||||||
|
|
2
pom.xml
2
pom.xml
|
@ -17,7 +17,7 @@
|
||||||
<resteasy.version.eap.6.3>2.3.7.Final</resteasy.version.eap.6.3>
|
<resteasy.version.eap.6.3>2.3.7.Final</resteasy.version.eap.6.3>
|
||||||
<resteasy.version.latest>3.0.8.Final</resteasy.version.latest>
|
<resteasy.version.latest>3.0.8.Final</resteasy.version.latest>
|
||||||
<undertow.version>1.0.0.Final</undertow.version>
|
<undertow.version>1.0.0.Final</undertow.version>
|
||||||
<picketlink.version>2.6.0.CR1</picketlink.version>
|
<picketlink.version>2.6.0.CR2</picketlink.version>
|
||||||
<picketbox.ldap.version>1.0.2.Final</picketbox.ldap.version>
|
<picketbox.ldap.version>1.0.2.Final</picketbox.ldap.version>
|
||||||
<mongo.driver.version>2.11.3</mongo.driver.version>
|
<mongo.driver.version>2.11.3</mongo.driver.version>
|
||||||
<jboss.logging.version>3.1.1.GA</jboss.logging.version>
|
<jboss.logging.version>3.1.1.GA</jboss.logging.version>
|
||||||
|
|
Loading…
Reference in a new issue