[java-opensaml COMMIT] in /trunk: opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractD...

noreply at shibboleth.net noreply at shibboleth.net
Tue Oct 25 19:00:58 EDT 2016


Author: putmanb
Date: Tue Oct 25 19:00:58 2016
New Revision: 4557

URL: http://svn.shibboleth.net/view/java-opensaml?rev=4557&view=rev
Log:
OSJ-180: HttpClient usage with TLS trust engine needs to ensure TrustedNamesCriterion is supplied

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java
    trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecuritySupport.java
    trunk/opensaml-security-api/src/test/java/org/opensaml/security/httpclient/HttpClientSecuritySupportTest.java
    trunk/opensaml-security-impl/src/main/java/org/opensaml/security/httpclient/impl/SecurityEnhancedTLSSocketFactory.java
    trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java?rev=4557&r1=4556&r2=4557&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java	(original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java	Tue Oct 25 19:00:58 2016
@@ -372,7 +372,7 @@
             return null;
         }
         
-        final HttpClientContext context = buildHttpClientContext();
+        final HttpClientContext context = buildHttpClientContext(request);
         
         try {
             MDC.put(MDC_ATTRIB_CURRENT_REQUEST_URI, request.getURI().toString());
@@ -437,8 +437,23 @@
      * Build the {@link HttpClientContext} instance which will be used to invoke the {@link HttpClient} request.
      * 
      * @return a new instance of {@link HttpClientContext}
+     * 
+     * @deprecated use {@link #buildHttpClientContext(HttpUriRequest)}
      */
     protected HttpClientContext buildHttpClientContext() {
+        //TODO when we remove this deprecated method, change called method to @Nonnull for request
+        return buildHttpClientContext(null);
+    }
+    
+    /**
+     * Build the {@link HttpClientContext} instance which will be used to invoke the {@link HttpClient} request.
+     * 
+     * @param request the current HTTP request
+     * 
+     * @return a new instance of {@link HttpClientContext}
+     */
+    protected HttpClientContext buildHttpClientContext(@Nullable final HttpUriRequest request) {
+        // TODO Really request should be @Nonnull, change when we remove deprecated buildHttpClientContext()
         final HttpClientContext context = HttpClientContext.create();
         
         HttpClientSecuritySupport.marshalSecurityParameters(context, httpClientSecurityParameters, true);
@@ -450,6 +465,11 @@
         if (tlsTrustEngine != null) {
             context.setAttribute(HttpClientSecurityConstants.CONTEXT_KEY_TRUST_ENGINE, tlsTrustEngine);
         }
+        
+        if (request != null) {
+            HttpClientSecuritySupport.addDefaultTLSTrustEngineCriteria(context, request);
+        }
+        
         return context;
     }
     

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java?rev=4557&r1=4556&r2=4557&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java	(original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java	Tue Oct 25 19:00:58 2016
@@ -23,6 +23,7 @@
 import java.net.URISyntaxException;
 import java.util.Timer;
 
+import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 import javax.net.ssl.SSLPeerUnverifiedException;
 
@@ -37,6 +38,7 @@
 import org.apache.http.client.HttpClient;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.client.methods.HttpGet;
+import org.apache.http.client.methods.HttpUriRequest;
 import org.apache.http.client.protocol.HttpClientContext;
 import org.apache.http.impl.client.BasicCredentialsProvider;
 import org.apache.http.util.EntityUtils;
@@ -277,7 +279,7 @@
     @Override
     protected byte[] fetchMetadata() throws ResolverException {
         final HttpGet httpGet = buildHttpGet();
-        final HttpClientContext context = buildHttpClientContext();
+        final HttpClientContext context = buildHttpClientContext(httpGet);
         HttpResponse response = null;
 
         try {
@@ -356,8 +358,23 @@

[... 279 lines stripped ...]


More information about the commits mailing list