我有一个 Java EE 应用服务器 (jboss-eap-4.3) 和几个组成更大 Web 应用程序的 .war。这个想法是.war 可以单独运行或与另一个.war 链接。因为它们都是同一个应用程序的一部分,所以我们不想显示多个登录。
我想配置 .wars 以便它们都共享相同的安全约束和安全角色。基本上 web.xml 的这一部分:
<security-constraint>
<web-resource-collection>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
<security-constraint>
<security-role>
<role-name>Admin</role-name>
</security-role>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>WebApp</realm-name>
</login-config>
最近我们的角色经常发生变化,我们也会定期添加新的 .war。此外,我们根据部署环境更改身份验证方法,这增加了另一个调整的理由。理想情况下,我想要一种方法来中断 web.xml 的安全部分,以便其他人可以“继承”它。我认为领域可能是寻找这个的好地方,但我没有找到任何有希望的东西。
请注意,此容器中还有其他 Web 应用程序具有完全不同的安全域,因此 tomcat 的全局设置可能不合适。