我的程序中有很多方法,也有很多用户。我怎么做,只允许特定用户配置文件访问RestEasy中标有@GET的方法?
更新
我有一些用户个人资料,例如管理员,所有者,经理,员工和演示。
我想拒绝所有操作,但GET给用户的配置文件是Demonstration。阻止某些用户执行某些方法的方法只是检查它们属于哪个配置文件(IF)。
答案 0 :(得分:2)
如果您的系统已经定义了用户和角色,并且您可以使用JAAS实现标准身份验证和授权,那么您可以使用Jboss安全注释来保护您的方法。请参阅此链接了解更多详情 -
http://docs.jboss.org/resteasy/2.0.0.GA/userguide/html/Securing_JAX-RS_and_RESTeasy.html
答案 1 :(得分:0)
在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>