[java-opensaml COMMIT] in /trunk: opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecu...
noreply at shibboleth.net
noreply at shibboleth.net
Thu Nov 5 20:43:20 EST 2015
Author: putmanb
Date: Thu Nov 5 20:43:20 2015
New Revision: 4390
URL: http://svn.shibboleth.net/view/java-opensaml?rev=4390&view=rev
Log:
Refactoring on the pipeline HTTP SOAP client.
Move security param marshaling out to a support class, to support re-use.
Remove individual client security properties in favor of a local client
instance of HttpClientSecurityParameters.
Other code refactoring and cleanup.
Added:
trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecuritySupport.java (with props)
trunk/opensaml-security-api/src/test/java/org/opensaml/security/httpclient/
trunk/opensaml-security-api/src/test/java/org/opensaml/security/httpclient/HttpClientSecuritySupportTest.java (with props)
Modified:
trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecurityParameters.java
trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java
Modified: trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecurityParameters.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecurityParameters.java?rev=4390&r1=4389&r2=4390&view=diff
==============================================================================
--- trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecurityParameters.java (original)
+++ trunk/opensaml-security-api/src/main/java/org/opensaml/security/httpclient/HttpClientSecurityParameters.java Thu Nov 5 20:43:20 2015
@@ -23,6 +23,7 @@
import javax.annotation.Nullable;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
+import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
@@ -43,6 +44,9 @@
/** Optional trust engine used in evaluating server TLS credentials. */
private TrustEngine<? super X509Credential> tlsTrustEngine;
+ /** Optional criteria set used in evaluating server TLS credentials. */
+ private CriteriaSet tlsCriteriaSet;
+
/** TLS Protocols. */
private List<String> tlsProtocols;
@@ -71,6 +75,23 @@
*/
public void setCredentialsProvider(@Nullable final CredentialsProvider provider) {
credentialsProvider = provider;
+ }
+
+ /**
+ * A convenience method to set a (single) username and password used for BASIC authentication.
+ * To disable BASIC authentication pass null for the credentials instance.
+ *
+ * <p>
+ * An {@link AuthScope} will be generated which specifies any host, port, scheme and realm.
+ * </p>
+ *
+ * <p>To specify multiple usernames and passwords for multiple host, port, scheme, and realm combinations, instead
+ * provide an instance of {@link CredentialsProvider} via {@link #setCredentialsProvider(CredentialsProvider)}.</p>
+ *
+ * @param credentials the username and password credentials
+ */
+ public void setBasicCredentials(@Nullable final UsernamePasswordCredentials credentials) {
+ setBasicCredentialsWithScope(credentials, null);
}
/**
@@ -124,6 +145,24 @@
}
/**
+ * Get the optional criteria set used in evaluating server TLS credentials.
+ *
+ * @return the criteria set instance to use
+ */
+ @Nullable public CriteriaSet getTLSCriteriaSet() {
+ return tlsCriteriaSet;
+ }
+
+ /**
+ * Set the optional criteria set used in evaluating server TLS credentials.
+ *
+ * @param criteriaSet the new criteria set instance to use
+ */
+ public void setTLSCriteriaSet(@Nullable final CriteriaSet criteriaSet) {
+ tlsCriteriaSet = criteriaSet;
+ }
+
+ /**
* Get the optional list of TLS protocols.
*
* @return the TLS protocols, or null
Modified: trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java?rev=4390&r1=4389&r2=4390&view=diff
==============================================================================
--- trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java (original)
+++ trunk/opensaml-soap-api/src/main/java/org/opensaml/soap/client/http/AbstractPipelineHttpSOAPClient.java Thu Nov 5 20:43:20 2015
@@ -17,6 +17,10 @@
package org.opensaml.soap.client.http;
+import static org.opensaml.security.httpclient.HttpClientSecurityConstants.CONTEXT_KEY_CRITERIA_SET;
+import static org.opensaml.security.httpclient.HttpClientSecurityConstants.CONTEXT_KEY_SERVER_TLS_CREDENTIAL_TRUSTED;
+import static org.opensaml.security.httpclient.HttpClientSecurityConstants.CONTEXT_KEY_TRUST_ENGINE;
+
import java.io.IOException;
import javax.annotation.Nonnull;
@@ -31,19 +35,14 @@
[... 387 lines stripped ...]
More information about the commits
mailing list