在实施基于角色的访问的请求中设置用户角色,以保护泽西中的Web服务

时间:2014-06-17 10:44:41

标签: java web-services security http jersey

我想对我的网络服务实施授权,并根据泽西文档here,可以通过基于角色的访问来实现。我想保护一个Web服务,并尝试以下列方式进行操作。

@Path("complain")
public Complain get(@Context SecurityContext sc) {
    if (sc.isUserInRole("member") {
        return new complain();
    } else {
        return new error();
    }
}

它在请求中获取用户角色,如果它是成员,则它授予访问权限,如果不是则抛出错误。但是我如何设置用户角色。

1 个答案:

答案 0 :(得分:0)

这会对你有帮助。

reference url

    <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

>