Как применить роль безопасности tomcat для всех URL-адресов, кроме одного?

мое административное веб-приложение защищено с помощью basic-auth:

<security-constraint>
  <web-resource-collection>
    <web-resource-name>myApp</web-resource-name>
    <description>
      Security constraint for
      Admin resources
    </description>
    <url-pattern>/*</url-pattern>
    <http-method>POST</http-method>
    <http-method>GET</http-method>
  </web-resource-collection>
  <auth-constraint>
    <description>
      constraint
    </description>
    <role-name>myrolename</role-name>
  </auth-constraint>
  <user-data-constraint>
    <description>SSL not required</description>
    <transport-guarantee>NONE</transport-guarantee>
  </user-data-constraint>
</security-constraint>
<login-config>
  <auth-method>BASIC</auth-method>
  <realm-name>Admin Login</realm-name>
</login-config>

однако мне нужно установить исключение для одного URL (скажем /Регистрация/, используется автоматизированной службой, проверяющей, работает ли веб-приложение с регулярными интервалами.

к сожалению, я не могу активировать базовую аутентификацию для этой службы.

Как я могу этого достичь?

Спасибо большое.

1 ответов


добавление другого ограничения перед <transport-guarantee>NONE</transport-guarantee> получилось

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Status page, accessed internally by application</web-resource-name>
        <url-pattern>/status/</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
</security-constraint>