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",