Java 在web.xml之外使用容器管理的安全性配置安全约束的替代方法?

Java 在web.xml之外使用容器管理的安全性配置安全约束的替代方法?,java,security,jakarta-ee,java-ee-6,container-managed,Java,Security,Jakarta Ee,Java Ee 6,Container Managed,如果使用Java EE 6容器管理的安全性,则可以为web.xml部署描述符内的资源配置安全约束。有没有其他方法可以做到这一点 例如,容器可以从数据库中提取它们,就像它处理用户数据一样 这样的事情可能吗?我想要一种不需要重新部署webapp的方式 提前感谢。实际上,标准方法是使用LDAP,在其中声明用户并将其分配给LDAP组,然后将这些组映射到安全约束。管理是在用户级别的LDAP中完成的。一旦设置了安全约束,它们在我的经验中几乎永远不会改变(为什么会改变?)。有关这方面的更多信息,请查看教程 所

如果使用Java EE 6容器管理的安全性,则可以为web.xml部署描述符内的资源配置安全约束。有没有其他方法可以做到这一点

例如,容器可以从数据库中提取它们,就像它处理用户数据一样

这样的事情可能吗?我想要一种不需要重新部署webapp的方式


提前感谢。

实际上,标准方法是使用LDAP,在其中声明用户并将其分配给LDAP组,然后将这些组映射到安全约束。管理是在用户级别的LDAP中完成的。一旦设置了安全约束,它们在我的经验中几乎永远不会改变(为什么会改变?)。有关这方面的更多信息,请查看教程

所以,为了清楚地回答您的问题,从数据库中提取约束是不可能的,这不是JavaEE安全的工作方式。如果你需要更多的灵活性,也许可以看看,但我认为它也不允许动态设置角色

老实说,我并不真正理解这个用例。正如我所说,一旦定义,安全约束一般不会改变。如果您需要保护新资源,那么您很可能会重新部署应用程序。
但是我可能遗漏了什么

谢谢你的回答。但就我所见,LDAP只是保存用户数据的一种方式。我要求的是在数据库中保留安全约束,即:resource“/XY”受保护,只能由角色a、B和C访问。我是否遗漏了什么?