我想对我的网络服务实施授权,并根据泽西文档here,可以通过基于角色的访问来实现。我想保护一个Web服务,并尝试以下列方式进行操作。
@Path("complain")
public Complain get(@Context SecurityContext sc) {
if (sc.isUserInRole("member") {
return new complain();
} else {
return new error();
}
}
它在请求中获取用户角色,如果它是成员,则它授予访问权限,如果不是则抛出错误。但是我如何设置用户角色。
答案 0 :(得分:0)
这会对你有帮助。
<security-constraint>
<web-resource-collection>
<url-pattern>/rest/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<url-pattern>/rest/orders/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>customer</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>my-default-realm</realm-name>
</login-config
>