什么是经过认证的uesr';s角色-Java

什么是经过认证的uesr';s角色-Java,java,roles,user-permissions,Java,Roles,User Permissions,早上好 我正在weblogic 10上使用ejb2(旧应用程序) 我的会话bean中有一些方法是由特定角色执行的。 我注释的每个ejb接口方法 `@ejb.permission role-name="role1, role2"` 由于某些方法可能由几个不同角色的用户执行,我如何判断哪个角色运行该方法 我知道如何知道“来电者是否扮演某个角色” 但是,有没有办法获得实际调用方的角色?像“getCallerRole()”之类的东西 在xml文件“ejb security roles.xml”中,我

早上好 我正在weblogic 10上使用ejb2(旧应用程序)

我的会话bean中有一些方法是由特定角色执行的。
我注释的每个ejb接口方法

 `@ejb.permission role-name="role1, role2"`
由于某些方法可能由几个不同角色的用户执行,我如何判断哪个角色运行该方法

我知道如何知道“来电者是否扮演某个角色”

但是,有没有办法获得实际调用方的角色?像“getCallerRole()”之类的东西

在xml文件“ejb security roles.xml”中,我指定应用程序域中的角色

<security-role>
 <role-name>role1</role-name>
 <role-name>role2</role-name>
</security-role>

角色1
角色2
然后,在“weblogic security role assignment.xml”中将这些角色映射到LDAP


角色1
角色1用户
角色2
角色2用户
`
有人能帮我找到正确的思路吗

只需使用
if(ctx.isCallerInRole(“role2”){

据甲骨文说,,
这是检查用户角色的唯一方法。

问题是,最终可能会添加更多角色,…例如,不是2或3个,而是..10-12。代码将变得杂乱无章…我需要访问这些角色才能写入数据库列-类似于事件创建:(是的,我明白,您应该考虑使用其他安全管理库。例如,Spring Security YEA,嗯…这将是未来的迁移和更新项目。我想,我可以处理我现在所使用的几个角色的检查。
<security-role>
 <role-name>role1</role-name>
 <role-name>role2</role-name>
</security-role>
<security-role-assignment>
  <role-name>role1</role-name>
  <principal-name>Role1User</principal-name>
</security-role-assignment> 
<security-role-assignment>
  <role-name>role2</role-name>
  <principal-name>Role2User</principal-name>
</security-role-assignment>`