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

Jakarta ee j2ee-具有多个安全角色的用户,jakarta-ee,user-roles,Jakarta Ee,User Roles,我正在开发一个JavaServletsWebApp,它将使用基于容器的安全性来验证中的用户。现在我的问题是,一个用户可以映射到多个安全角色吗 例如,在我的案例中-: 用户可以是用户 老师 协调员(也可以是教师) 管理员(也可以是教师) 现在很明显,管理员将有权限访问比教师更多的功能。那么,对于像Tomcat这样的容器,仅仅基于容器的安全性怎么可能做到这一点呢 我也没有使用任何像Spring Security或ApacheShiro这样的框架。简而言之,用户或更好的组可以映射到许多安全角色。

我正在开发一个JavaServletsWebApp,它将使用基于容器的安全性来验证中的用户。现在我的问题是,一个用户可以映射到多个安全角色吗

例如,在我的案例中-:

用户可以是用户

  • 老师
  • 协调员(也可以是教师)
  • 管理员(也可以是教师)
现在很明显,管理员将有权限访问比教师更多的功能。那么,对于像Tomcat这样的容器,仅仅基于容器的安全性怎么可能做到这一点呢


我也没有使用任何像Spring Security或ApacheShiro这样的框架。

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

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

老师
....
然后在
中使用它,指定哪个角色可以访问给定的资源集

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

您可以在安全web应用程序一章中找到有关安全角色和约束的一些基本信息

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


如果您需要有关如何在Liberty中设置的更多信息,请检查

是否可以将用户映射到多个安全角色?是。@dsh您能给我指一个教程或资源,说明如何执行此操作吗?JavaEE文档:您能在验证后将参数存储在cookie中吗?与将用户id存储在cookie上一样?@Kramer786成功验证后,userdata会自动存储在cookie或http标头中,具体取决于验证方法(form或basic)。在基于表单的验证情况下,密码是否也存储在cookie中?@Kramer786否,密码不存储在cookie中,因为它不安全。表单登录后,将建立会话,并且cookie中的内容是特定于平台的。一般来说,在登录后,开发人员不需要密码,身份验证通过会话进行维护,因此相同会话中的所有请求都经过身份验证。