[java-identity-provider COMMIT] in /trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingp...
noreply at shibboleth.net
noreply at shibboleth.net
Sun Oct 23 20:19:26 EDT 2016
Author: putmanb
Date: Sun Oct 23 20:19:26 2016
New Revision: 8529
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=8529&view=rev
Log:
IDP-1071: Config schema and parser support for HttpClientSecurityParameters in HTTP metadata resolvers.
Correctly handle TLS socket factory creation when TLS TrustEngine is supplied via params.
Added:
trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/TLSSocketFactoryFactoryBean.java (with props)
Modified:
trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/HTTPMetadataProviderParser.java
Modified: trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java?rev=8529&r1=8528&r2=8529&view=diff
==============================================================================
--- trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java (original)
+++ trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java Sun Oct 23 20:19:26 2016
@@ -26,14 +26,12 @@
import net.shibboleth.idp.profile.spring.relyingparty.metadata.FileCachingHttpClientFactoryBean;
import net.shibboleth.idp.profile.spring.relyingparty.metadata.HttpClientFactoryBean;
import net.shibboleth.idp.profile.spring.relyingparty.metadata.InMemoryCachingHttpClientFactoryBean;
-import net.shibboleth.utilities.java.support.httpclient.HttpClientSupport;
+import net.shibboleth.idp.profile.spring.relyingparty.metadata.TLSSocketFactoryFactoryBean;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
import net.shibboleth.utilities.java.support.xml.ElementSupport;
import net.shibboleth.utilities.java.support.xml.XMLConstants;
import org.apache.http.auth.UsernamePasswordCredentials;
-import org.apache.http.conn.ssl.StrictHostnameVerifier;
-import org.opensaml.security.httpclient.impl.SecurityEnhancedTLSSocketFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.config.BeanDefinition;
@@ -77,22 +75,22 @@
final BeanDefinitionBuilder builder) {
super.doNativeParse(element, parserContext, builder);
- boolean haveTLSTrustEngine = false;
+ Object tlsTrustEngineRefOrBean = null;
if (element.hasAttributeNS(null, "tlsTrustEngineRef")) {
- builder.addPropertyReference("tLSTrustEngine",
- StringSupport.trimOrNull(element.getAttributeNS(null, "tlsTrustEngineRef")));
- haveTLSTrustEngine = true;
- } else {
- final BeanDefinition tlsTrustEngine = parseTLSTrustEngine(element, parserContext);
- if (tlsTrustEngine != null) {
- builder.addPropertyValue("tLSTrustEngine", tlsTrustEngine);
- haveTLSTrustEngine = true;
- }
- }
-
+ tlsTrustEngineRefOrBean = StringSupport.trimOrNull(element.getAttributeNS(null, "tlsTrustEngineRef"));
+ builder.addPropertyReference("tLSTrustEngine", (String) tlsTrustEngineRefOrBean);
+ } else {
+ tlsTrustEngineRefOrBean = parseTLSTrustEngine(element, parserContext);
+ if (tlsTrustEngineRefOrBean != null) {
+ builder.addPropertyValue("tLSTrustEngine", tlsTrustEngineRefOrBean);
+ }
+ }
+
+ String httpClientSecurityParametersRef = null;
if (element.hasAttributeNS(null, "httpClientSecurityParametersRef")) {
- builder.addPropertyReference("httpClientSecurityParameters",
- StringSupport.trimOrNull(element.getAttributeNS(null, "httpClientSecurityParametersRef")));
+ httpClientSecurityParametersRef =
+ StringSupport.trimOrNull(element.getAttributeNS(null, "httpClientSecurityParametersRef"));
+ builder.addPropertyReference("httpClientSecurityParameters", httpClientSecurityParametersRef);
}
if (element.hasAttributeNS(null, "httpClientRef")) {
@@ -113,7 +111,8 @@
+ "proxyUser and proxyPassword");
}
} else {
- builder.addConstructorArgValue(buildHttpClient(element, parserContext, haveTLSTrustEngine));
+ builder.addConstructorArgValue(buildHttpClient(element, parserContext, tlsTrustEngineRefOrBean,
+ httpClientSecurityParametersRef));
}
if (element.hasAttributeNS(null, "credentialsProviderRef")) {
@@ -145,13 +144,14 @@
*
[... 314 lines stripped ...]
More information about the commits
mailing list