我正在尝试保护 tomcat6 上的几个页面以供出售的应用程序使用。除了两个(在下面的代码中标有双星号)之外,我成功地对大多数 URL 使用 URL 模式进行保护。这两个 URL 的不同之处在于它们采用确定视图的参数。我想限制这两个视图,因此指定了要阻止/保护/验证的确切 URL,如下所示。但是 Tomcat 不保护它们。
<security-constraint>
<web-resource-collection>
<web-resource-name>TopBraid</web-resource-name>
<description>Restrict few pages that need security.</description>
<url-pattern>/tbl/admin/*</url-pattern>
<url-pattern>/tbl/sparql/*</url-pattern>
**<url-pattern>/tbl/swp?_viewClass=appConfig:ServerConfigEditor</url-pattern>**
**<url-pattern>/tbl/swp?_viewClass=adminConfig:AdminEditPage</url-pattern>**
<url-pattern>/tbl/sp_reset</url-pattern>
<url-pattern>/tbl/sp_redeploy</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>SERVER_ADMINS</role-name>
</auth-constraint>
</security-constraint>
<security-role>
<role-name>SERVER_ADMINS</role-name>
</security-role>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>TopBraid</realm-name>
<form-login-config>
<form-login-page>/logon.html</form-login-page>
<form-error-page>/logonError.html</form-error-page>
</form-login-config>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>Public</web-resource-name>
<description>Matches any page.</description>
<url-pattern>/*</url-pattern>
</web-resource-collection>
</security-constraint>
我知道 JSR 规范可能将它们称为无效模式。想知道是否可以以某种方式指定模式以使其可以接受。还是有其他方法可以限制对我上面列出的两个 URL 的访问?