rogerrut    2004/11/30 10:18:13

  Modified:    jetspeed-api/src/java/org/apache/jetspeed/sso SSOSite.java
                        SSOProvider.java
  Added:       jetspeed-api/src/java/org/apache/jetspeed/sso
                        SSOPrincipal.java
  Log:
  Updated SSO Framework. The relationship between site/principal and remote 
principal is defined as following:
  --> each site can have multiple principals (Jetspeed user principal)
  --> each principals has a remote principal and an associated credential
  --> A jetspeed user can only have one remote principal/credential per site
  --> A site can be an url (IFrame) or an application instance (PHP)
  
  Revision  Changes    Path
  1.2       +2 -2      
jakarta-jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/sso/SSOSite.java
  
  Index: SSOSite.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/sso/SSOSite.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SSOSite.java      22 Nov 2004 06:11:34 -0000      1.1
  +++ SSOSite.java      30 Nov 2004 18:18:13 -0000      1.2
  @@ -16,7 +16,7 @@
   import java.util.Collection;
   
   import org.apache.jetspeed.security.om.InternalCredential;
  -import org.apache.jetspeed.security.om.InternalPrincipal;
  +import org.apache.jetspeed.sso.SSOPrincipal;
   
   /**
    * @author rruttimann
  @@ -115,7 +115,7 @@
         * Adds the credentail to the credentials collection
         *
         */
  -     public void addPrincipal(InternalPrincipal principal) throws 
SSOException;
  +     public void addPrincipal(SSOPrincipal principal) throws SSOException;
        
        /**
        * removePrincipal()
  
  
  
  1.4       +1 -0      
jakarta-jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/sso/SSOProvider.java
  
  Index: SSOProvider.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/sso/SSOProvider.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- SSOProvider.java  29 Nov 2004 01:32:25 -0000      1.3
  +++ SSOProvider.java  30 Nov 2004 18:18:13 -0000      1.4
  @@ -16,6 +16,7 @@
   
   import javax.security.auth.Subject;
   
  +
   /**
   * <p>Utility component to handle SSO requests</p>
   * 
  
  
  
  1.1                  
jakarta-jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/sso/SSOPrincipal.java
  
  Index: SSOPrincipal.java
  ===================================================================
  /* Copyright 2004 Apache Software Foundation
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
  
  package org.apache.jetspeed.sso;
  
  import java.util.Collection;
  import java.sql.Timestamp;
  
  import org.apache.jetspeed.security.om.InternalUserPrincipal;
  
  /**
   */
  public interface SSOPrincipal {
  
        /**
         * addRemotePrincipal()
         * @param principal
         * Adds remote principal to the main (logged in) principal
         */
        public void addRemotePrincipal(InternalUserPrincipal principal);
     /**
      * <p>
      * Getter for the principal id.
      * </p>
      * 
      * @return The principal id.
      */
     long getPrincipalId();
  
     /**
      * <p>
      * Setter for the principal id.
      * </p>
      * 
      * @param principalId The principal id.
      */
     void setPrincipalId(long principalId);
  
     /**
      * <p>
      * Getter for the principal classname.
      * </p>
      * 
      * @return The principal classname.
      */
     String getClassname();
  
     /**
      * <p>
      * Setter for the principal classname.
      * </p>
      * 
      * @param classname The principal classname.
      */
     void setClassname(String classname);
  
     /**
      * <p>
      * Getter for isMappingOnly.
      * </p>
      * 
      * @return The isMappingOnly.
      */
     boolean isMappingOnly();
  
     /**
      * <p>
      * Setter for isMappingOnly.
      * </p>
      * 
      * @param isMappingOnly The isMappingOnly.
      */
     void setMappingOnly(boolean isMappingOnly);
  
     /**
      * <p>
      * Getter for the principal full path.
      * </p>
      * <p>
      * The full path allows to retrieve the principal preferences from the
      * preferences services.
      * </p>
      * 
      * @return The principal full path.
      */
     String getFullPath();
  
     /**
      * <p>
      * Setter for the principal name.
      * </p>
      * <p>
      * The full path allows to retrieve the principal preferences from the
      * preferences services.
      * </p>
      * 
      * @param fullPath The principal full path.
      */
     void setFullPath(String fullPath);
  
     /**
      * <p>
      * Getter for the principal permissions.
      * </p>
      * 
      * @return The principal permissions.
      */
     Collection getPermissions();
  
     /**
      * <p>
      * Setter for the principal permissions.
      * </p>
      * 
      * @param permissions The principal permissions.
      */
     void setPermissions(Collection permissions);
  
     /**
      * <p>
      * Getter for creation date.
      * </p>
      * 
      * @return The creation date.
      */
     Timestamp getCreationDate();
  
     /**
      * <p>
      * Setter for the creation date.
      * </p>
      * 
      * @param creationDate The creation date.
      */
     void setCreationDate(Timestamp creationDate);
  
     /**
      * <p>
      * Getter for the modified date.
      * </p>
      * 
      * @return The modified date.
      */
     Timestamp getModifiedDate();
  
     /**
      * <p>
      * Setter for the modified date.
      * </p>
      * 
      * @param modifiedDate The modified date.
      */
     void setModifiedDate(Timestamp modifiedDate);
  
     /**
      * <p>Getter for the enabled state</p>
      * @return true if enabled
      */
     boolean isEnabled();
     
     /**
      * Setter for the enabled state</p>
      * @param enabled The enabled state
      */
     void setEnabled(boolean enabled);    
     
     /**
         * Getter for the remotePrincipals.
         */
        public Collection getRemotePrincipals();
        
        /**
         *  Setter for the  remotePrincipals 
         */
        public void setRemotePrincipals(Collection remotePrincipals) ;
        
        }
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to