如何将用户分配给某些角色EJB

时间:2010-12-24 20:28:43

标签: ejb-3.1

我需要在此澄清一下。我目前正在学习EJB,并且我已经阅读过关于限制某些“角色”中用户访问方法的权利。我知道限制访问权限的元数据是如何工作的。但是,我不知道的是如何将用户置于各自的角色中。是否在数据库中设置了用户角色,ejb进入数据库并检查角色(如果是,如何)?我的意思是,我在哪里或如何以某种方式强加某些用户属于(例如)客户角色或管理员角色?如果您知道任何书籍,也可以根据需要提供书名。

谢谢。

2 个答案:

答案 0 :(得分:0)

有几种方法可以在EJB应用程序(数据库,属性文件,LDAP ...)中声明角色。 此外,自EJB 3.0起,您可以在会话bean中使用注释:

@RolesAllowed( “布拉布拉”)

@PermitAll

@DenyAll

@RunAs

它被称为声明性授权。而不是编程授权(来自javax.ejb.SessionContext对象的方法getCallerPrincipal()和isCallerInRole())。

你可以在网上找到很多例子。

答案 1 :(得分:0)

用户配置特定于Application Server。 EJB中的安全性仅与角色有关。我使用Glassfish,它有很多配置用户的方法:文件(默认),jdbc,ldap等。每种方式都称为领域。一切都取决于您使用的服务器,因此请查看文档。由于服务器角色与应用程序角色的映射,Glassfish只是有点乏味。