EJB / JAX-RS:获取用户主体名称和检查角色

时间:2016-11-28 11:53:13

标签: java-ee ejb authorization jax-rs interceptor

检查主要名称和角色

在JEE应用程序中,我需要能够以统一的方式获取用户主体名称并检查角色(对于我编写的拦截器,它派生了函数角色的权限,并检查那些角色而不是角色。)

对于 EJB ,我知道我可以通过SessionContextEJBContext)和 JAX-RS网络端点访问它们,我可以使用SecurityContext

当拦截对Web端点的调用时,未设置EJBContext(查找EJBContext的命名异常)。所以在我的拦截器中,我需要回退使用JAX-RS SecurityContext。

有没有办法查找主要名称并检查角色而无需检查EJBContext和SecurityContext?

后备计划

如果没有,我考虑使用查找来获取上下文。 由于资源/上下文注入不起作用(当上下文不可用时将失败),我将不得不以编程方式查找上下文(SessionContextSecurityContext)。

SessionContext可以通过以下方式查找:

InitialContext ic = new InitialContext();
SessionContext sessionContext = (SessionContext) ic.lookup("java:comp/env/sessionContext");

我可以用类似的方式查找SecurityContext吗?

0 个答案:

没有答案