djencks     2005/03/28 17:55:55

  Modified:    modules/core/src/java/org/openejb GenericEJBContainer.java
  Log:

  Add NamedUsernamePasswordCredential and supporting infrastructure to allow 
configuring security info for ws client calls
  
  Revision  Changes    Path
  1.47      +12 -6     
openejb/modules/core/src/java/org/openejb/GenericEJBContainer.java
  
  Index: GenericEJBContainer.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/GenericEJBContainer.java,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- GenericEJBContainer.java  15 Mar 2005 05:27:01 -0000      1.46
  +++ GenericEJBContainer.java  28 Mar 2005 22:55:55 -0000      1.47
  @@ -83,6 +83,8 @@
   import org.apache.geronimo.naming.reference.ClassLoaderAwareReference;
   import org.apache.geronimo.naming.reference.KernelAwareReference;
   import org.apache.geronimo.security.ContextManager;
  +import org.apache.geronimo.security.util.ConfigurationUtil;
  +import org.apache.geronimo.security.deploy.DefaultPrincipal;
   import org.apache.geronimo.security.jacc.RoleMappingConfiguration;
   import org.apache.geronimo.security.jacc.RoleMappingConfigurationFactory;
   import org.apache.geronimo.timer.ThreadPooledTimer;
  @@ -148,7 +150,7 @@
                                  String objectName,
                                  Kernel kernel,
                                  SecurityConfiguration securityConfiguration,
  -                               Subject defaultSubject,
  +                               DefaultPrincipal defaultPrincipal,
                                  Subject runAsSubject,
                                  Serializable homeTxPolicyConfig,
                                  Serializable remoteTxPolicyConfig,
  @@ -202,7 +204,7 @@
           
interceptorBuilder.setTrackedConnectionAssociator(trackedConnectionAssociator);
           interceptorBuilder.setInstancePool(pool);
           TwoChains chains = interceptorBuilder.buildInterceptorChains();
  -        if (defaultSubject != null) {
  +        if (defaultPrincipal != null) {
               interceptor = new 
DefaultSubjectInterceptor(chains.getUserChain());
           } else {
               interceptor = chains.getUserChain();
  @@ -223,7 +225,11 @@
           }
   
           this.securityConfiguration = securityConfiguration;
  -        this.defaultSubject = defaultSubject;
  +        if (defaultPrincipal != null) {
  +            this.defaultSubject = 
ConfigurationUtil.generateDefaultSubject(defaultPrincipal);
  +        } else {
  +            this.defaultSubject = null;
  +        }
           this.runAsSubject = runAsSubject;
   
           // TODO maybe there is a more suitable place to do this.  Maybe not.
  @@ -512,7 +518,7 @@
           infoFactory.addAttribute("unmanagedReference", EJBContainer.class, 
false);
   
           infoFactory.addAttribute("SecurityConfiguration", 
SecurityConfiguration.class, true);
  -        infoFactory.addAttribute("DefaultSubject", Subject.class, true);
  +        infoFactory.addAttribute("DefaultPrincipal", DefaultPrincipal.class, 
true);
           infoFactory.addAttribute("RunAsSubject", Subject.class, true);
   
           infoFactory.addAttribute("HomeTxPolicyConfig", Serializable.class, 
true);
  @@ -547,7 +553,7 @@
               "objectName",
               "kernel",
               "SecurityConfiguration",
  -            "DefaultSubject",
  +            "DefaultPrincipal",
               "RunAsSubject",
               "HomeTxPolicyConfig",
               "RemoteTxPolicyConfig",
  
  
  

Reply via email to