[jboss-jira] [JBoss JIRA] Commented: (EJBTHREE-1945) RunAsIdentity is not propagated correctly
Anton Kolmakov (JIRA)
jira-events at lists.jboss.org
Tue Feb 8 08:41:46 EST 2011
[ https://issues.jboss.org/browse/EJBTHREE-1945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12580749#comment-12580749 ]
Anton Kolmakov commented on EJBTHREE-1945:
------------------------------------------
> Is there any workaround to get authenticated from a MDB onMessage method to a access controlled SLSB?
Workaround:
public class JBossRunAsController
{
private static <T> T doAs(RunAsAction<T> action, String username, String password)
{
SecurityClient securityClient = getExceptionSafeSecurityClient();
securityClient.setSimple(username, password);
try
{
securityClient.login();
}
catch (LoginException ex)
{
throw new RuntimeException(ex);
}
try
{
return action.run();
}
finally
{
securityClient.logout();
}
}
private static SecurityClient getExceptionSafeSecurityClient()
{
try
{
return SecurityClientFactory.getSecurityClient();
}
catch (Exception ex)
{
throw new RuntimeException("Failed to get jboss security client: " + ex.getMessage(), ex);
}
}
}
MDB {
onMessage {
JBossRunAsController.doAs(new RunAsAction<Object>()
{
public Object run()
{
code executed under "username"
}
}, "username", "password");
}
}
> RunAsIdentity is not propagated correctly
> -----------------------------------------
>
> Key: EJBTHREE-1945
> URL: https://issues.jboss.org/browse/EJBTHREE-1945
> Project: EJB 3.0
> Issue Type: Bug
> Components: core
> Affects Versions: Plugin 1.0.17
> Reporter: Anton Kolmakov
> Assignee: Carlo de Wolf
> Fix For: depchain-1.0.0-alpha-2
>
> Attachments: EJBTHREE-1945.zip
>
>
> I have one message driven bean A and two stateless beans B and C.
> A annotated with @RunAs, @RunAsPrincipal and @SecurityDomain.
> B and C annotated with @SecurityDomain.
> A receives message and calls B which calls C.
> RunAsIdentity is propagated to B only but not to C.
> Why? Is it expected behavior?
> I expect propagation of RunAsIdentity to all beans in execution chain after bean with @RunAs* annotations.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list