0

我的问题是,我有一个用 Java 编写的 Web 服务,我想给用户特定的授权,例如,userA 应该只访问 methodA,userB 应该只访问 methodB。我怎样才能做到这一点?

非常感谢。

4

2 回答 2

2

我认为最简单和最标准化的方法是使用 spring security,我发现它很容易使用,在这里阅读更多信息:http ://www.mkyong.com/tutorials/spring-security-tutorials/

如果您出于某种原因不想要它,那么 javax.servlet.Filter 就是要走的路。

于 2013-02-06T14:56:24.667 回答
0

您可以通过多种方式执行此操作,这完全取决于您的部署。但就像在黑暗中拍摄一样,您可以在 web.xml 中限制它。

在 web.xml 中创建安全约束...

 <security-constraint>
            <web-resource-collection>
                    <web-resource-name>MRC Customer Care</web-resource-name>
                    <url-pattern>/protected/*</url-pattern>
            </web-resource-collection>
            <auth-constraint>
                    <role-name>role1</role-name>
            </auth-constraint>
    </security-constraint>

然后,将此角色 (role1) 映射到用户...

<tomcat-users>
  <user name="role1"  password="tomcat" roles="role1"  />
</tomcat-users>

假设您的 Web 服务所在的位置,有效用户将能够在 /protected/ 处访问您的 URI,无效用户将收到 403。

这是一个潜在的答案。

于 2013-02-06T14:56:18.450 回答