我在这里找到了解决方案:http
:
//wiki.metawerx.net/wiki/SecuringYourSiteWithContainerManagedSecurity
该页面介绍了如何定义
meta-INF/context.xml指向您自己的
WEB-INF/users.xml。不幸的是,到users.xml文件的链接必须是绝对的,并且我不想对我的配置文件中的OS /文件系统路径做任何假设。
这是我目前的情况
WEB-INF/web.xml:
<?xml version="1.0" encoding="ISO-8859-1"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd" version="2.5"> <display-name>SuperCoolTool</display-name> <description>What an awesome app!</description> <security-role> <role-name>manager</role-name> </security-role> <security-role> <role-name>keyuser</role-name> </security-role> <security-constraint> <web-resource-collection> <web-resource-name> Entire Application </web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>keyuser</role-name> <role-name>manager</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>evaluation Area</realm-name> </login-config></web-app>
匹配
meta-INF/context.xml如下所示:
<?xml version="1.0" encoding="UTF-8"?><Context> <Realm className="org.apache.catalina.realm.MemoryRealm"pathname="[PATH-TO-YOUR-WEBAPP]/WEB-INF/users.xml"/></Context>



