[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-spring/src: main/java/net/shibboleth/idp/attribute/r...
noreply at shibboleth.net
noreply at shibboleth.net
Fri Sep 20 01:26:19 EDT 2013
Author: dfisher
Date: Fri Sep 20 01:26:18 2013
New Revision: 4783
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4783&view=rev
Log:
Update LdapDataConnectorParser to support the v2 trust and authentication credentials.
Update the unit test to start an in-memory server that supports StartTLS.
See IDP-4.
Added:
trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/X509CredentialSupport.java (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/client.crt
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/client.key
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/client.keystore (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/client.pkcs12 (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/client.pkcs8 (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/server.crt
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/server.key
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/server.keystore (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/server.pkcs12 (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/server.pkcs8 (with props)
Modified:
trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParser.java
trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParserTest.java
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-spring.xml
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-v2.xml
Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParser.java?rev=4783&r1=4782&r2=4783&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParser.java Fri Sep 20 01:26:18 2013
@@ -20,6 +20,8 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.security.PrivateKey;
+import java.security.cert.X509Certificate;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
@@ -53,6 +55,10 @@
import org.ldaptive.provider.ConnectionStrategy;
import org.ldaptive.sasl.Mechanism;
import org.ldaptive.sasl.SaslConfig;
+import org.ldaptive.ssl.CredentialConfig;
+import org.ldaptive.ssl.CredentialConfigFactory;
+import org.ldaptive.ssl.SslConfig;
+import org.opensaml.security.x509.X509Credential;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.BeanFactory;
@@ -161,7 +167,7 @@
if (!props.isEmpty()) {
connectionFactory.getProvider().getProviderConfig().setProperties(props);
}
-
+
final BeanDefinitionBuilder templateBuilder = v2Parser.createTemplateBuilder();
builder.addPropertyValue("executableSearchBuilder", templateBuilder.getBeanDefinition());
@@ -206,7 +212,6 @@
* @return connection config
*/
@Nonnull public ConnectionConfig createConnectionConfig() {
- // TODO need the 2.0 security schema to set trust and authentication credential
final String url = AttributeSupport.getAttributeValue(configElement, new QName("ldapURL"));
final Boolean useStartTLS =
AttributeSupport.getAttributeValueAsBoolean(AttributeSupport.getAttribute(configElement, new QName(
@@ -222,6 +227,9 @@
if (useStartTLS != null && useStartTLS.booleanValue()) {
connectionConfig.setUseStartTLS(true);
}
+ final SslConfig sslConfig = new SslConfig();
+ sslConfig.setCredentialConfig(createCredentialConfig());
+ connectionConfig.setSslConfig(sslConfig);
[... 208 lines stripped ...]
More information about the commits
mailing list