[hornetq-commits] JBoss hornetq SVN: r9310 - trunk/src/main/org/hornetq/integration/jboss/security.
do-not-reply at jboss.org
do-not-reply at jboss.org
Fri Jun 11 20:29:09 EDT 2010
Author: clebert.suconic at jboss.com
Date: 2010-06-11 20:29:09 -0400 (Fri, 11 Jun 2010)
New Revision: 9310
Modified:
trunk/src/main/org/hornetq/integration/jboss/security/SecurityActions.java
Log:
https://jira.jboss.org/browse/HORNETQ-415 - Setting the subject properly
Modified: trunk/src/main/org/hornetq/integration/jboss/security/SecurityActions.java
===================================================================
--- trunk/src/main/org/hornetq/integration/jboss/security/SecurityActions.java 2010-06-11 22:18:59 UTC (rev 9309)
+++ trunk/src/main/org/hornetq/integration/jboss/security/SecurityActions.java 2010-06-12 00:29:09 UTC (rev 9310)
@@ -19,6 +19,7 @@
import javax.security.auth.Subject;
+import org.hornetq.core.logging.Logger;
import org.jboss.security.SecurityContext;
import org.jboss.security.SecurityContextAssociation;
import org.jboss.security.SecurityContextFactory;
@@ -31,6 +32,8 @@
*/
class SecurityActions
{
+ private static final Logger log = Logger.getLogger(JBossASSecurityManager.class);
+
interface PrincipalInfoAction
{
PrincipalInfoAction PRIVILEGED = new PrincipalInfoAction()
@@ -44,23 +47,40 @@
{
public Object run()
{
- // SecurityAssociation.pushSubjectContext(subject, principal, credential);
- SecurityContext sc = SecurityContextAssociation.getSecurityContext();
- if (sc == null)
+
+ try
{
- try
+ log.info("========================================================");
+ log.info("Setting subject = " + subject);
+ // SecurityAssociation.pushSubjectContext(subject, principal, credential);
+ SecurityContext sc = SecurityContextAssociation.getSecurityContext();
+ if (sc == null)
{
- sc = SecurityContextFactory.createSecurityContext(principal,
- credential,
- subject,
- securityDomain);
+ try
+ {
+ sc = SecurityContextFactory.createSecurityContext(principal,
+ credential,
+ subject,
+ securityDomain);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
}
- catch (Exception e)
+ else
{
- throw new RuntimeException(e);
+ sc.getUtil().createSubjectInfo(principal, credential, subject);
}
+
+ SecurityContextAssociation.setSecurityContext(sc);
+ log.info("========================================================");
}
- SecurityContextAssociation.setSecurityContext(sc);
+ catch (Throwable t)
+ {
+ log.warn("An error happened while setting the context", t);
+ }
+
return null;
}
});
More information about the hornetq-commits
mailing list