[java-identity-provider COMMIT] in /trunk: idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.ja...

noreply at shibboleth.net noreply at shibboleth.net
Tue Oct 8 13:12:31 EDT 2013


Author: scantor
Date: Tue Oct  8 13:12:31 2013
New Revision: 4838

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4838&view=rev
Log:
Add consistentAddress flag, derive initial client address from profile context.

Modified:
    trunk/idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.java
    trunk/idp-session-impl/pom.xml
    trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSession.java
    trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java
    trunk/idp-session-impl/src/test/java/net/shibboleth/idp/session/impl/StorageBackedSessionManagerTest.java

Modified: trunk/idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.java?rev=4838&r1=4837&r2=4838&view=diff
==============================================================================
--- trunk/idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.java (original)
+++ trunk/idp-session-api/src/main/java/net/shibboleth/idp/session/SessionManager.java Tue Oct  8 13:12:31 2013
@@ -18,7 +18,6 @@
 package net.shibboleth.idp.session;
 
 import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
 import javax.annotation.concurrent.ThreadSafe;
 
 import org.opensaml.profile.context.ProfileRequestContext;
@@ -44,13 +43,12 @@
      * 
      * @param profileRequestContext profile request context
      * @param principalName canonical name of the subject of the session
-     * @param bindToAddress an initial client address to bind the session to
      * 
      * @return  the newly created session
      * @throws SessionException if the session cannot be created
      */
     @Nonnull public IdPSession createSession(@Nonnull final ProfileRequestContext profileRequestContext,
-            @Nonnull @NotEmpty final String principalName, @Nullable final String bindToAddress)
+            @Nonnull @NotEmpty final String principalName)
                     throws SessionException;
     
     /**

Modified: trunk/idp-session-impl/pom.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-impl/pom.xml?rev=4838&r1=4837&r2=4838&view=diff
==============================================================================
Binary files - no diff available.

Modified: trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSession.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSession.java?rev=4838&r1=4837&r2=4838&view=diff
==============================================================================
--- trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSession.java (original)
+++ trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedIdPSession.java Tue Oct  8 13:12:31 2013
@@ -99,9 +99,18 @@
             }
         }
     }
+    
+    /** {@inheritDoc} */
+    public boolean checkAddress(@Nonnull @NotEmpty final String address) throws SessionException {
+        return sessionManager.isConsistentAddress() ? super.checkAddress(address) : true;
+    }
 
     /** {@inheritDoc} */
     public void bindToAddress(@Nonnull @NotEmpty final String address) throws SessionException {
+        if (!sessionManager.isConsistentAddress()) {
+            return;
+        }
+        
         // Update ourselves and then attempt to write back.
         super.bindToAddress(address);
         try {

Modified: trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java?rev=4838&r1=4837&r2=4838&view=diff
==============================================================================
--- trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java (original)
+++ trunk/idp-session-impl/src/main/java/net/shibboleth/idp/session/impl/StorageBackedSessionManager.java Tue Oct  8 13:12:31 2013
@@ -58,6 +58,7 @@
 import net.shibboleth.utilities.java.support.component.ComponentSupport;
 import net.shibboleth.utilities.java.support.component.ComponentValidationException;
 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 net.shibboleth.utilities.java.support.resolver.ResolverException;
 import net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy;
@@ -118,6 +119,9 @@
     /** Indicates whether to secondary-index SPSessions. */
     private boolean secondaryServiceIndex;
     
+    /** Indicates whether sessions are bound to client addresses. */
+    private boolean consistentAddress;
+    

[... 187 lines stripped ...]


More information about the commits mailing list