[jboss-cvs] JBossAS SVN: r65273 - trunk/aspects/src/main/org/jboss/aspects/security.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Sep 10 05:35:49 EDT 2007
Author: kabir.khan at jboss.com
Date: 2007-09-10 05:35:49 -0400 (Mon, 10 Sep 2007)
New Revision: 65273
Modified:
trunk/aspects/src/main/org/jboss/aspects/security/RunAsSecurityInterceptor.java
trunk/aspects/src/main/org/jboss/aspects/security/SecurityClassMetaDataLoader.java
Log:
[JBAS-4547] Fix RunAsSecurityInterceptor
Modified: trunk/aspects/src/main/org/jboss/aspects/security/RunAsSecurityInterceptor.java
===================================================================
--- trunk/aspects/src/main/org/jboss/aspects/security/RunAsSecurityInterceptor.java 2007-09-10 09:26:17 UTC (rev 65272)
+++ trunk/aspects/src/main/org/jboss/aspects/security/RunAsSecurityInterceptor.java 2007-09-10 09:35:49 UTC (rev 65273)
@@ -59,6 +59,10 @@
protected RunAsIdentity getAnnotationRunAsIdentity(Invocation invocation)
{
RunAs runAs = (RunAs) invocation.resolveAnnotation(RunAs.class);
+ if (runAs == null)
+ {
+ runAs = (RunAs)invocation.resolveClassAnnotation(RunAs.class);
+ }
if (runAs == null) return null;
RunAsIdentity runAsRole = new RunAsIdentity(runAs.value(), null);
return runAsRole;
@@ -69,10 +73,10 @@
// If a run-as role was specified, push it so that any calls made
// by this bean will have the runAsRole available for declarative
// security checks.
- /*if(runAsRole != null)
- {*/
+ if(runAsRole != null)
+ {
SecurityActions.pushRunAsIdentity(runAsRole);
- /*}*/
+ }
try
{
@@ -80,10 +84,10 @@
}
finally
{
- /* if(runAsRole != null)
- {*/
+ if(runAsRole != null)
+ {
SecurityActions.popRunAsIdentity();
- /*}*/
+ }
}
}
}
Modified: trunk/aspects/src/main/org/jboss/aspects/security/SecurityClassMetaDataLoader.java
===================================================================
--- trunk/aspects/src/main/org/jboss/aspects/security/SecurityClassMetaDataLoader.java 2007-09-10 09:26:17 UTC (rev 65272)
+++ trunk/aspects/src/main/org/jboss/aspects/security/SecurityClassMetaDataLoader.java 2007-09-10 09:35:49 UTC (rev 65273)
@@ -31,6 +31,7 @@
import org.jboss.aop.util.XmlHelper;
import org.jboss.security.AnybodyPrincipal;
import org.jboss.security.NobodyPrincipal;
+import org.jboss.security.RunAsIdentity;
import org.jboss.security.SimplePrincipal;
import org.w3c.dom.Element;
@@ -124,7 +125,7 @@
if (meta.getRunAs() != null)
{
- advisor.getDefaultMetaData().addMetaData("security", "run-as", new SimplePrincipal(meta.getRunAs()), PayloadKey.TRANSIENT);
+ advisor.getDefaultMetaData().addMetaData("security", "run-as", new RunAsIdentity(meta.getRunAs(), null), PayloadKey.TRANSIENT);
}
}
More information about the jboss-cvs-commits
mailing list