Spring Security/Технический обзор Spring Security: различия между версиями
Содержимое удалено Содержимое добавлено
Строка 150:
== Установка содержимого SecurityContextHolder напрямую ==
На самом деле Spring Security не задумывается о том, каким образом объект <code>Authentication</code> попадет внутрь <code>SecurityContextHolder</code>. Существует только одно
Вы можете (и многие пользователи так и делают) написать собственные фильтры или MVC контроллеры для обеспечения взаимодействия с системами аутентификации, которые не основаны на Spring Security. Например, вы могли бы использовать Container-Managed аутентификацию, которая получает текущего пользователя из <code>ThreadLocal</code> или JNDI. Или вы можете работать на компанию, которая имеет собственную унаследованную систему аутентификации, которая является корпоративным "стандартом" и над которой у вас мало контроля. В таких ситуациях очень легко «запрячь» Spring Security в работу, и использовать старую систему аутентификации. Все что нужно сделать, это написать фильтр (или его эквивалент), который считывает информацию о пользователях из нужного места, строить Spring Security объект <code>Authentication</code> и помещает его в <code>SecurityContextHolder</code>.
|