Документы отвечают на ваш вопрос:
Удаляет один экземпляр указанного элемента из этой коллекции, если он присутствует (необязательная операция). Более формально, удаляет элемент
e
такой, что(o==null ? e==null : o.equals(e))
, если коллекция содержит один или несколько таких элементов.
Хорошо, вот решение:
<beans:bean id="mySsoFilter" class="somePackage.MySsoProcessingFilter">
<custom-filter after="CAS_PROCESSING_FILTER"/> <!-- Just a reference Point-->
<beans:property name="authenticationManager" ref="authenticationManager"/>
<beans:property name="defaultTargetUrl" value='/mainApplication/Main screen.html' />
<beans:property name="authenticationFailureUrl" value="/Login.html?error=true"/>
</beans:bean>
Надеюсь, это поможет кому-то в нужде ...
Не могу ответить на вопрос напрямую, но есть «полезный совет» из сектора управления идентификацией: не все системы аутентификации имеют одинаковое значение доверия. Это серьезное нарушение надлежащей системы безопасности. относитесь к ним одинаково.
Надеюсь, это поможет в вашем дизайне ...
Вероятно, есть несколько способов сделать это. Есть некоторые функции, которые делают нечто очень похожее, а именно Предварительная аутентификация . Это хороший пример того, как вы можете добавить настраиваемый фильтр, который аутентифицирует пользователя, после чего остальная часть инфраструктуры должна взять на себя ответственность.
Что делает AuthenticationProvider
, так это проверяет Authentication
объект, загруженный в сеанс предыдущим фильтром. Вы можете зарегистрировать столько провайдеров аутентификации, сколько захотите, с помощью диспетчера аутентификации (который просто запускает объект Authentication
через всех из них), но вам нужно суметь установить там какой-то фильтр, который будет обрабатывать вашу схему аутентификации. и заполните объект Аутентификация
. Если вы хотите, чтобы этот фильтр также взаимодействовал с пользователем (например, отображал форму входа или что-то еще), он может мешать другим фильтрам. В этом случае вы можете использовать отдельные цепочки фильтров, но это не похоже на необходимость в вашем случае.