User: oconnor 
  Date: 00/08/06 14:52:45

  Added:       src/main/org/jboss/system EJBSecurityManager.java
                        RealmMapping.java SecurityAssociation.java
                        SimplePrincipal.java
  Log:
  Changes to introduce a skeleton security system.
  
  Revision  Changes    Path
  1.1                  jboss/src/main/org/jboss/system/EJBSecurityManager.java
  
  Index: EJBSecurityManager.java
  ===================================================================
  /*
   * jBoss, the OpenSource EJB server
   *
   * Distributable under GPL license.
   * See terms of license at gnu.org.
   */
   
  package org.jboss.system;
  
  import java.io.File;
  import java.net.URL;
  import java.rmi.server.UnicastRemoteObject;
  import java.rmi.RemoteException;
  import java.rmi.ServerException;
  import java.util.ArrayList;
  import java.util.Iterator;
  import java.util.Hashtable;
  
  import java.security.Principal;
  
  import javax.naming.InitialContext;
  import javax.naming.Context;
  import javax.naming.Reference;
  import javax.naming.Name;
  import javax.naming.spi.ObjectFactory;
  
  import javax.management.MBeanServer;
  import javax.management.ObjectName;
  
  import javax.transaction.TransactionManager;
  
  import org.jboss.logging.Log;
  import org.jboss.util.ServiceMBeanSupport;
  
  /**
   *      The EJBSecurityManager is responsible for validating credentials
   *      associated with principals.
   *      
   *   @author Daniel O'Connor [EMAIL PROTECTED]
   */
  public interface EJBSecurityManager
  {
        public boolean isValid( Principal principal, Object credential );
  }
  
  
  
  
  1.1                  jboss/src/main/org/jboss/system/RealmMapping.java
  
  Index: RealmMapping.java
  ===================================================================
  /*
   * jBoss, the OpenSource EJB server
   *
   * Distributable under GPL license.
   * See terms of license at gnu.org.
   */
  
  package org.jboss.system;
  
  import java.security.Principal;
  import java.util.Set;
  
  public interface RealmMapping
  {
        public boolean doesUserHaveRole( Principal principal, Set roleNames );
  }
  
  
  
  1.1                  jboss/src/main/org/jboss/system/SecurityAssociation.java
  
  Index: SecurityAssociation.java
  ===================================================================
  /*
   * jBoss, the OpenSource EJB server
   *
   * Distributable under GPL license.
   * See terms of license at gnu.org.
   */
  
  package org.jboss.system;
  
  import java.security.Principal;
  
  public class SecurityAssociation
  {
      private static boolean server;
      private static Principal principal;
      private static Object credential;
  
      public static Principal getPrincipal()
      {
        return principal;
      }
  
      public static Object getCredential()
      {
        return credential;
      }
  
      public static void setPrincipal( Principal principal )
      {
        if (!server)
          SecurityAssociation.principal = principal;
      }
  
      public static void setCredential( Object credential )
      {
        if (!server)
          SecurityAssociation.credential = credential;
      }
  
      public static void setServer()
      {
        server = true;
      }
  }
  
  
  
  1.1                  jboss/src/main/org/jboss/system/SimplePrincipal.java
  
  Index: SimplePrincipal.java
  ===================================================================
  /*
   * jBoss, the OpenSource EJB server
   *
   * Distributable under GPL license.
   * See terms of license at gnu.org.
   */
  
  package org.jboss.system;
  
  import java.security.Principal;
  
  public class SimplePrincipal implements Principal, java.io.Serializable
  {
    private String name;
  
    public SimplePrincipal(String name)
    {
      this.name = name;
    }
  
    public boolean equals(Object another)
    {
      if ((another == null) || !(another instanceof SimplePrincipal))
        return false;
      return name.equals( another.toString() );
    }
  
    public String toString()
    {
      return name;
    }
  
    public String getName()
    {
      return name;
    }
  } 
  
  
  

Reply via email to