[java-opensaml COMMIT] in /trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl: ...
noreply at shibboleth.net
noreply at shibboleth.net
Tue Jun 23 21:09:59 EDT 2015
Author: putmanb
Date: Tue Jun 23 21:09:59 2015
New Revision: 4311
URL: http://svn.shibboleth.net/view/java-opensaml?rev=4311&view=rev
Log:
Refactor construction of assertion ValidationContext to a pluggable function, with a default impl.
Fix up TODOs regarding SOAP fault handling.
Added:
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java (with props)
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/SAML20AssertionTokenValidationInput.java (with props)
Modified:
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java
Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java?rev=4311&r1=4310&r2=4311&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/WSSecuritySAML20AssertionTokenSecurityHandler.java Tue Jun 23 21:09:59 2015
@@ -17,15 +17,8 @@
package org.opensaml.saml.saml2.wssecurity.messaging.impl;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.security.cert.X509Certificate;
-import java.util.Arrays;
import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
import java.util.List;
-import java.util.Set;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
@@ -33,15 +26,10 @@
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
import net.shibboleth.utilities.java.support.collection.LazyList;
-import net.shibboleth.utilities.java.support.collection.LazySet;
-import net.shibboleth.utilities.java.support.collection.Pair;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
-import net.shibboleth.utilities.java.support.primitive.StringSupport;
-import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
-
-import org.opensaml.core.criterion.EntityIdCriterion;
+
import org.opensaml.core.xml.XMLObject;
import org.opensaml.messaging.context.MessageContext;
import org.opensaml.messaging.handler.AbstractMessageHandler;
@@ -54,13 +42,10 @@
import org.opensaml.saml.saml2.core.Assertion;
import org.opensaml.saml.saml2.core.SubjectConfirmation;
import org.opensaml.saml.saml2.wssecurity.SAML20AssertionToken;
-import org.opensaml.security.SecurityException;
-import org.opensaml.security.credential.UsageType;
-import org.opensaml.security.criteria.UsageCriterion;
-import org.opensaml.security.messaging.ServletRequestX509CredentialAdapter;
-import org.opensaml.security.x509.X509Credential;
import org.opensaml.soap.messaging.SOAPMessagingSupport;
+import org.opensaml.soap.soap11.FaultCode;
import org.opensaml.soap.wssecurity.Security;
+import org.opensaml.soap.wssecurity.WSSecurityConstants;
import org.opensaml.soap.wssecurity.messaging.Token.ValidationStatus;
import org.opensaml.soap.wssecurity.messaging.WSSecurityContext;
import org.slf4j.Logger;
@@ -88,41 +73,53 @@
/** The SAML 2.0 Assertion validator.*/
private SAML20AssertionValidator assertionValidator;
- /** A function for resolving the signature validation CriteriaSet for a particular function. */
- private Function<Pair<MessageContext, Assertion>, CriteriaSet> signatureCriteriaSetFunction;
+ /** Function that builds a {@link ValidationContext} instance based on a
+ * {@link SAML20AssertionTokenValidationInput} instance. */
+ private Function<SAML20AssertionTokenValidationInput, ValidationContext> validationContextBuilder;
/** Constructor. */
public WSSecuritySAML20AssertionTokenSecurityHandler() {
super();
setInvalidFatal(true);
- }
-
- /**
- * Get the function for resolving the signature validation CriteriaSet for a particular function.
- *
- * @return a criteria set instance, or null
- */
- @Nullable public Function<Pair<MessageContext, Assertion>, CriteriaSet> getSignatureCriteriaSetFunction() {
- return signatureCriteriaSetFunction;
- }
-
- /**
- * Set the function for resolving the signature validation CriteriaSet for a particular function.
- *
- * @param function the resolving function, may be null
- */
- public void setSignatureCriteriaSetFunction(
- @Nullable final Function<Pair<MessageContext, Assertion>, CriteriaSet> function) {
[... 365 lines stripped ...]
More information about the commits
mailing list