Пользовательская аутентификация, которая не требует UserProvider
Я искал в сети решение для своей конфигурации, но я не могуне могу найти то, что удовлетворяет мои потребности. До сих пор я работал над этим 3 полных дня, и я могуя не уверен, что есть несколько вещей, которые я не сделалТ понять.
Я разрабатываю мое приложение Symfony на ветке 2.1.
Чтобы сделать это коротким. У меня есть веб-сервис, который я хочу использовать для аутентификации.
Это поток, который я хочу реализовать:
Пользователь отправляет учетные данныеЭти учетные данные (имя пользователя и пароль необходим) отправлены на мой веб-сервисЕсли имя пользователя / пароль верны, веб-сервис предоставляет массив с именем пользователя, ролями и некоторыми другими вещами, кроме пароля. (если учетные данные не верны, будет возвращен массив с одним полем)Как только веб-сервис дает "большой» массив, я хочу, чтобы пользователь считался аутентифицированным.В зависимости от возвращенных ролей, я хочу, чтобы компонент безопасности Symfony давал соответствующую авторизацию пользователю.Я хотел бы избежать звонка в веб-сервис для каждой просматриваемой страницы.Я неЯ не знаю, возможно ли сделать это с помощью Symfony, наверняка этот рабочий процесс кажется не самым безопасным, но я могуНе вижу другого способа использования этого веб-сервиса.
Чтобы закончить, я неМне нужно иметь UserProvider, так как моя аутентификация выполняется на удаленной службе. Но, очевидно, для компонентов Symfony требуется пользовательский провайдер (doen 'не имеет значения, его тип).
Я благодарю вас заранее
Редактировать: чтобы упростить, можно ли передать что-то большее, чем просто переменную $ username в функции loadUserByUsername () в классе UserProvider (который реализует UserProviderInterface)? Мне нужно, чтобы пользователь передавал в дополнение к его / ее имени пользователя для получения объекта пользователя.