[java-identity-provider COMMIT] in /trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid: Persistent...

noreply at shibboleth.net noreply at shibboleth.net
Sat Mar 15 20:01:18 EDT 2014


Author: scantor
Date: Sat Mar 15 20:01:18 2014
New Revision: 5589

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=5589&view=rev
Log:
IDP-383 - get SPNameQualifier from NameIDPolicy passed into generators

Modified:
    trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/PersistentSAML2NameIDGenerator.java
    trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/TransientSAML2NameIDGenerator.java

Modified: trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/PersistentSAML2NameIDGenerator.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/PersistentSAML2NameIDGenerator.java?rev=5589&r1=5588&r2=5589&view=diff
==============================================================================
--- trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/PersistentSAML2NameIDGenerator.java (original)
+++ trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/PersistentSAML2NameIDGenerator.java Sat Mar 15 20:01:18 2014
@@ -161,8 +161,12 @@
             return null;
         }
 
-        lookup = getDefaultSPNameQualifierLookupStrategy();
-        final String relyingPartyId = lookup != null ? lookup.apply(profileRequestContext) : null;
+        // Effective qualifier may override default in the case of an Affiliation.
+        String relyingPartyId = getEffectiveSPNameQualifier(profileRequestContext);
+        if (relyingPartyId == null) {
+            lookup = getDefaultSPNameQualifierLookupStrategy();
+            relyingPartyId = lookup != null ? lookup.apply(profileRequestContext) : null;
+        }
         if (relyingPartyId == null) {
             log.debug("No relying party identifier available, can't generate persistent ID");
             return null;

Modified: trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/TransientSAML2NameIDGenerator.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/TransientSAML2NameIDGenerator.java?rev=5589&r1=5588&r2=5589&view=diff
==============================================================================
--- trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/TransientSAML2NameIDGenerator.java (original)
+++ trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/impl/nameid/TransientSAML2NameIDGenerator.java Sat Mar 15 20:01:18 2014
@@ -98,9 +98,14 @@
     @Override
     @Nullable protected String getIdentifier(@Nonnull final ProfileRequestContext profileRequestContext)
             throws ProfileException {
-        
-        final Function<ProfileRequestContext,String> lookup = getDefaultSPNameQualifierLookupStrategy();
-        final String relyingPartyId = lookup != null ? lookup.apply(profileRequestContext) : null;
+
+        // Effective qualifier may override default in the case of an Affiliation.
+        // This doesn't really impact transients typically, but for consistency...
+        String relyingPartyId = getEffectiveSPNameQualifier(profileRequestContext);
+        if (relyingPartyId == null) {
+            final Function<ProfileRequestContext,String> lookup = getDefaultSPNameQualifierLookupStrategy();
+            relyingPartyId = lookup != null ? lookup.apply(profileRequestContext) : null;
+        }
         if (relyingPartyId == null) {
             log.debug("No relying party identifier available, can't generate transient ID");
             return null;



More information about the commits mailing list