Spring Security 3.x: Как включить аутентификацию BASIC и DIGEST? - PullRequest
0 голосов
/ 20 декабря 2010

Я хочу настроить Spring Security для включения аутентификации BASIC и DIGEST для одного и того же набора URL, но неясно, возможно ли это.Я вижу, что мне нужно включить несколько экземпляров AuthenticationEntryPoint, чтобы установить соответствующие заголовки HTTP, но я не вижу встроенных классов, чтобы приспособиться к этому.DelegatingAuthenticationEntryPoint подходит близко, но в итоге он выбирает только одну точку входа.

Я реализовал пользовательский AuthenticationEntryPoint, который вызывает метод начала в предоставленном списке экземпляров AuthenticationEntryPoint, нов конечном итоге он выдает IllegalStateException, потому что каждый AuthenticationEntryPoint вызывает sendError (что, как я понимаю, недопустимо).

Есть ли способ сделать это без реализации полностью настраиваемой точки входа?

1 Ответ

0 голосов
/ 02 марта 2011

Id сделал это, настроив Spring Security только для дайджест-аутентификации, а затем вручную добавив BasicProcessingFilter в начале цепочки фильтров, как объяснено Там

<bean id="basicProcessingFilter" class="org.springframework.security.ui.basicauth.BasicProcessingFilter">
<property name="authenticationManager"><ref bean="authenticationManager"/></property>
 <security:custom-filter before="AUTHENTICATION_PROCESSING_FILTER"/>
<property name="authenticationEntryPoint"><ref bean="authenticationEntryPoint"/></property>

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