j2ee - 具有多个安全角色的用户

j2ee - User with multiple security roles

我正在开发一个 Java Servlets 网络应用程序,它将使用基于容器的安全性来验证用户身份。现在我的问题是一个用户可以映射到多个安全角色吗?

例如我的例子-:

一个用户可以是一个

现在显然管理员将拥有比教师访问更多功能的权限。那么对于像 Tomcat 这样的容器,仅仅基于容器的安全性怎么可能呢?

我也没有使用任何框架,例如 Spring Security 或 Apache Shiro。

简而言之 - 用户或更好的组 - 可以映射到许多安全角色。 最简单的是在 web.xml 中定义安全角色,如下所示:

  <security-role>
    <role-name>teacher</role-name>
  </security-role>
  ....

然后在 <security-constraint> 中使用它,您可以在其中指定哪个角色可以访问给定的资源集。

最后您需要将这些角色映射到特定于服务器的用户。

您可以在“保护 Web 应用程序”一章的 WebSphere Application Server V7.0 Security Guide 中找到有关安全角色和约束的一些基本信息。

我建议使用 WebSphere Liberty 和 Eclipse 以及 WebSphere Developer Tools,而不是使用 Tomcat。它有很好的编辑图形界面 web.xml,因此您将能够轻松定义这些角色和约束。它还具有服务器配置编辑器,您可以在其中配置用户和组的基本注册表,并创建角色和用户之间的映射。

如果您需要有关如何在 Liberty 中进行设置的更多信息,您可以查看 WebSphere Liberty Profile Guide for Developers