2017-10-18 153 views
0

我有以下安全约束在web.xml是否可以在自定义属性的基础上启用/禁用web.xml中的安全约束?

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>TempName123</web-resource-name> 
     <url-pattern>/a/b/c</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>*</role-name> 
    </auth-constraint> 
</security-constraint> 

这里财产,主要要求是,这种约束需要一定的基础上加载。在安装过程中,某些用户可能选择添加此安全性,或者可能不会。

在jboss/tomcat中是否有任何基于属性的功能,当设置为true时,则考虑这个安全约束,否则忽略?

PS:我试图避免基于文件的操作每次需要添加/删除此功能时编辑web.xml文件。

+0

你检查https://stackoverflow.com/questions/8069640/whitelist-security-constraint-in-web-xml? –

回答

0

在运行时更新安全约束并不常见。我的建议是将此嵌入到构建过程中,以防在开发/测试过程中需要停用安全约束。我不知道任何(指定)运行时配置。

当然,当你明确地标记tomcat时,可​​能有办法与Tomcat的API进行交互以实现这一点 - 我期望这完全是Tomcat-(版本)特定的,并且会惊讶地发现任何东西像这样的servlet规范(免责声明:我没有在那里检查过 - 很长一段时间没有阅读规范,这只是从内存和个人的期望)

我的单词回答,除非有人证明我是错误的:

是否有到JBoss/Tomcat的任何基于属性的功能,当设置为 真,那么这个安全约束被考虑,否则被忽略 ????

没有

+0

某些用户可能会/可能不会选择具有此安全性限制。所以我猜,在应用程序部署到用户机器上时,唯一的方法是编程编辑'web.xml'文件,并使用基于文件的操作相应地添加这个安全约束。 –

+0

您不需要手动编辑 - 您的构建系统也可能仅产生两个不同版本的可部署工件。然后您可以选择要部署的版本。 –

相关问题