[jboss-cvs] JBossAS SVN: r80965 - trunk/server/src/main/org/jboss/proxy.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Nov 13 18:22:23 EST 2008
Author: anil.saldhana at jboss.com
Date: 2008-11-13 18:22:23 -0500 (Thu, 13 Nov 2008)
New Revision: 80965
Modified:
trunk/server/src/main/org/jboss/proxy/SecurityActions.java
trunk/server/src/main/org/jboss/proxy/SecurityInterceptor.java
Log:
JBAS-5988: privileged blocks
Modified: trunk/server/src/main/org/jboss/proxy/SecurityActions.java
===================================================================
--- trunk/server/src/main/org/jboss/proxy/SecurityActions.java 2008-11-13 22:55:05 UTC (rev 80964)
+++ trunk/server/src/main/org/jboss/proxy/SecurityActions.java 2008-11-13 23:22:23 UTC (rev 80965)
@@ -33,7 +33,6 @@
import org.jboss.security.SecurityContextFactory;
import org.jboss.security.SecurityContextAssociation;
-//$Id$
/**
* Interface defining the Privileged Blocks
@@ -107,6 +106,16 @@
{
return SecurityContextFactory.createSecurityContext(p,cred, null, sdomain);
}
+
+ public void setIncomingRunAs(SecurityContext sc, RunAs incomingRunAs)
+ {
+ sc.setOutgoingRunAs(incomingRunAs);
+ }
+
+ public void setOutgoingRunAs(SecurityContext sc, RunAs outgoingRunAs)
+ {
+ sc.setOutgoingRunAs(outgoingRunAs);
+ }
};
SecurityActions PRIVILEGED = new SecurityActions()
@@ -205,6 +214,33 @@
});
}
+
+ public void setIncomingRunAs(final SecurityContext sc, final RunAs incomingRunAs)
+ {
+ AccessController.doPrivileged(new PrivilegedAction<Object>(){
+
+ public Object run()
+ {
+ sc.setIncomingRunAs(incomingRunAs);
+ return null;
+ }
+ });
+
+
+ }
+
+ public void setOutgoingRunAs(final SecurityContext sc, final RunAs outgoingRunAs)
+ {
+ AccessController.doPrivileged(new PrivilegedAction<Object>(){
+
+ public Object run()
+ {
+ sc.setOutgoingRunAs(outgoingRunAs);
+ return null;
+ }
+ });
+
+ }
};
Principal getPrincipal();
@@ -219,4 +255,8 @@
SecurityContext getSecurityContext();
void setSecurityContext(SecurityContext sc);
+
+ public void setIncomingRunAs(SecurityContext sc, RunAs incomingRunAs);
+
+ void setOutgoingRunAs(SecurityContext sc, RunAs outgoingRunAs);
}
Modified: trunk/server/src/main/org/jboss/proxy/SecurityInterceptor.java
===================================================================
--- trunk/server/src/main/org/jboss/proxy/SecurityInterceptor.java 2008-11-13 22:55:05 UTC (rev 80964)
+++ trunk/server/src/main/org/jboss/proxy/SecurityInterceptor.java 2008-11-13 23:22:23 UTC (rev 80965)
@@ -74,8 +74,8 @@
//Push the caller run-as identity onto the security context
if(callerRAI != null)
{
- newSc.setOutgoingRunAs(callerRAI);
- newSc.setIncomingRunAs(callerRAI);
+ sa.setOutgoingRunAs(newSc, callerRAI);
+ sa.setIncomingRunAs(newSc, callerRAI);
}
/**
* Push the security context on the invocation
More information about the jboss-cvs-commits
mailing list