[java-opensaml COMMIT] in /trunk: opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/SAMLEventIds.java ...

noreply at shibboleth.net noreply at shibboleth.net
Wed Jan 29 13:27:50 EST 2014


Author: scantor
Date: Wed Jan 29 13:27:50 2014
New Revision: 3583

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3583&view=rev
Log:
IDP-128: Implement NameIDPolicy check

Added:
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/SAMLEventIds.java   (with props)
Modified:
    trunk/opensaml-saml-api/src/test/java/org/opensaml/saml/saml2/profile/SAML2ActionTestingSupport.java
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java
    trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjectsTest.java

Modified: trunk/opensaml-saml-api/src/test/java/org/opensaml/saml/saml2/profile/SAML2ActionTestingSupport.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/test/java/org/opensaml/saml/saml2/profile/SAML2ActionTestingSupport.java?rev=3583&r1=3582&r2=3583&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/test/java/org/opensaml/saml/saml2/profile/SAML2ActionTestingSupport.java (original)
+++ trunk/opensaml-saml-api/src/test/java/org/opensaml/saml/saml2/profile/SAML2ActionTestingSupport.java Wed Jan 29 13:27:50 2014
@@ -26,6 +26,7 @@
 import org.opensaml.saml.common.SAMLObjectBuilder;
 import org.opensaml.saml.common.SAMLVersion;
 import org.opensaml.saml.saml2.core.AttributeStatement;
+import org.opensaml.saml.saml2.core.AuthnRequest;
 import org.opensaml.saml.saml2.core.AuthnStatement;
 import org.opensaml.saml.saml2.core.Assertion;
 import org.opensaml.saml.saml2.core.AttributeQuery;
@@ -176,5 +177,31 @@
 
         return query;
     }
+
+    /**
+     * Builds an {@link AuthnRequest}.
+     * 
+     * @return the built request
+     */
+    @Nonnull public static AuthnRequest buildAuthnRequest() {
+        final SAMLObjectBuilder<Issuer> issuerBuilder = (SAMLObjectBuilder<Issuer>)
+                XMLObjectProviderRegistrySupport.getBuilderFactory().<Issuer>getBuilderOrThrow(
+                        Issuer.DEFAULT_ELEMENT_NAME);
+
+        final SAMLObjectBuilder<AuthnRequest> requestBuilder = (SAMLObjectBuilder<AuthnRequest>)
+                XMLObjectProviderRegistrySupport.getBuilderFactory().<AuthnRequest>getBuilderOrThrow(
+                        AuthnRequest.DEFAULT_ELEMENT_NAME);
+
+        final Issuer issuer = issuerBuilder.buildObject();
+        issuer.setValue(ActionTestingSupport.INBOUND_MSG_ISSUER);
+
+        final AuthnRequest request = requestBuilder.buildObject();
+        request.setID(REQUEST_ID);
+        request.setIssueInstant(new DateTime(0));
+        request.setIssuer(issuer);
+        request.setVersion(SAMLVersion.VERSION_20);
+
+        return request;
+    }
     
 }

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java?rev=3583&r1=3582&r2=3583&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java Wed Jan 29 13:27:50 2014
@@ -39,9 +39,12 @@
 import org.opensaml.core.xml.config.XMLObjectProviderRegistrySupport;
 import org.opensaml.messaging.context.navigate.MessageLookup;
 import org.opensaml.saml.common.SAMLObjectBuilder;
+import org.opensaml.saml.common.profile.SAMLEventIds;
 import org.opensaml.saml.common.profile.logic.MetadataNameIdentifierFormatStrategy;
 import org.opensaml.saml.saml2.core.Assertion;
+import org.opensaml.saml.saml2.core.AuthnRequest;
 import org.opensaml.saml.saml2.core.NameID;
+import org.opensaml.saml.saml2.core.NameIDPolicy;
 import org.opensaml.saml.saml2.core.Response;
 import org.opensaml.saml.saml2.core.Subject;
 import org.opensaml.saml.saml2.profile.SAML2NameIDGenerator;
@@ -80,7 +83,7 @@
     
     /** Flag controlling whether to overwrite an existing NameID. */
     private boolean overwriteExisting;
-    
+
     /** Strategy used to locate the {@link Response} to operate on. */
     @Nonnull private Function<ProfileRequestContext<Object,Response>, Response> responseLookupStrategy;
 
@@ -95,6 +98,9 @@
 
     /** Formats to try. */
     @Nonnull @NonnullElements private List<String> formats;
+    
+    /** Format required by requested {@link NameIDPolicy}. */
+    @Nullable private String requiredFormat;
     
     /** Response to modify. */
     @Nullable private Response response;
@@ -114,6 +120,7 @@
                 Functions.compose(new MessageLookup<Response>(), new OutboundMessageContextLookup<Response>());
         formatLookupStrategy = new MetadataNameIdentifierFormatStrategy();
         nameIdGeneratorMap = Collections.emptyMap();
+        formats = Collections.emptyList();
     }
     
     /**
@@ -195,15 +202,19 @@
             return false;
         }
         

[... 170 lines stripped ...]


More information about the commits mailing list