我的程序中有很多方法,也有很多用户。我该怎么做才能使特定的用户配置文件只被允许访问在 RestEasy 中标有 @GET 的方法?
更新
我有一些用户资料,如管理员、所有者、经理、员工和演示。
我想拒绝对个人资料为演示的用户进行除 GET 之外的所有操作。我阻止某些用户执行某些方法的方式只是检查他们属于哪个配置文件(IF)。
我的程序中有很多方法,也有很多用户。我该怎么做才能使特定的用户配置文件只被允许访问在 RestEasy 中标有 @GET 的方法?
更新
我有一些用户资料,如管理员、所有者、经理、员工和演示。
我想拒绝对个人资料为演示的用户进行除 GET 之外的所有操作。我阻止某些用户执行某些方法的方式只是检查他们属于哪个配置文件(IF)。
如果您的系统已经定义了用户和角色,并且您可以使用 JAAS 实现标准身份验证和授权,那么您可以使用 Jboss 安全注释来保护您的方法。请参阅此链接了解更多详情 -
http://docs.jboss.org/resteasy/2.0.0.GA/userguide/html/Securing_JAX-RS_and_RESTeasy.html
在 REST 服务之前,您还可以添加反向 HTTP 代理(如 Apache)并使用您想要的身份验证提供程序(LDAP 或其他)。
例子:
<Location /myService/>
AuthType Basic
AuthName Foo
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://ldap.acme.org/dc=acme,dc=org?cn
<LIMIT POST PUT DELETE>
require ldap-group cn=employee,dc=acme,dc=org
</LIMIT>
</Location>