Динамическая настройка ограничения безопасности в Java web.xml - PullRequest
0 голосов
/ 02 апреля 2012

В настоящее время у меня есть REST API, который должен проходить аутентификацию через BasicAuth, но позже используется другой метод.

Он настроен в Tomcat 6 с областями, и у меня есть следующее в моих web.xml,

<security-constraint>
    <web-resource-collection>
        <web-resource-name>document</web-resource-name>
        <url-pattern>/rest/document/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>document</role-name>
    </auth-constraint>
</security-constraint>

<login-config>
    <auth-method>BASIC</auth-method>
    <Realm-name>Tomcat-Advance-Authentication-Realm</Realm-name>
</login-config>

Это прекрасно работает для таких URL, как /rest/document/*.

У меня вопрос: кто-нибудь знает, возможно ли это или как динамически определять другие URL-адреса без создания и повторного развертывания?

Например, другое ограничение безопасности,

<security-constraint>
    <web-resource-collection>
        <web-resource-name>secure</web-resource-name>
        <url-pattern>/rest/secure/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>secure</role-name>
    </auth-constraint>
</security-constraint>

Спасибо

1 Ответ

2 голосов
/ 02 апреля 2012

Всякий раз, когда вы вносите изменения в web.xml, веб-приложение необходимо перезапускать, чтобы получить эти изменения.

Если вам нужно динамическое ограничение безопасности, рассмотрите возможность создания настраиваемого настраиваемого фильтра и файла связанных свойств, в котором вы можете определить защищенные ресурсы (например).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...