UserProviderInterface
интерфейс UserProviderInterface
Представляет класс, загружающий объекты UserInterface из какого-либо источника для системы аутентификации.
В типичной конфигурации аутентификации имя пользователя (т.е. какой-либо уникальный идентификатор пользователя) входит в систему (через форму входа или любым другим методом). Провайдер пользователей, который настроен с этим методом аутентификации, должен загрузить объект UserInterface для данного имени пользователя (через loadUserByUsername), чтобы остальная часть процесса могла продолжиться.
Внутренне провайдер пользователей может загружать пользователей из любого источника (баз данных, конфигураций, веб-сервисов). Это полностью независимо от того, как информация об аутентификации подается или как выглядит объект UserInterface.
Методы
| UserInterface | loadUserByUsername(string $username) Загружает пользователя по заданному имени пользователя. | |
| UserInterface | refreshUser(UserInterface $user) Обновляет данные пользователя для интерфейса аккаунта. | |
| bool | supportsClass(string $class) Указывает, поддерживает ли этот провайдер заданный класс пользователя. |
Подробности
UserInterface loadUserByUsername(string $username)
Загружает пользователя по заданному имени пользователя.
Этот метод должен генерировать исключение UsernameNotFoundException, если пользователь не найден.
Параметры
| string | $username | Имя пользователя |
Возвращаемое значение
| UserInterface |
Исключения
| UsernameNotFoundException | если пользователь не найден |
UserInterface refreshUser(UserInterface $user)
Обновляет данные пользователя для интерфейса аккаунта.
Реализация должна определить, нужно ли полностью перезагружать данные пользователя (например, из базы данных), или объект UserInterface можно просто объединить с внутренней картой пользователей/идентификаторов.
Параметры
| UserInterface | $user |
Возвращаемое значение
| UserInterface |
Исключения
| UnsupportedUserException | если аккаунт не поддерживается |
bool supportsClass(string $class)
Указывает, поддерживает ли этот провайдер заданный класс пользователя.
Параметры
| string | $class |
Возвращаемое значение
| bool |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.1/Symfony/Component/Security/Core/User/UserProviderInterface.html