Как я могу использовать аутентификацию Apigility API для обеспечения безопасности только для зарегистрированных пользователей?
Прямо сейчас все, что я делаю, когда пользователь входит в систему, это создание сеанса (общий).
Мне нужно сделать больше, мне нужно как-то авторизовать его для API и заблокировать всех остальных (ни один не вошел)
Я немного новичок в ZF2 и Apigility, поэтому, пожалуйста, поговорите с ним.
Я читал о Apigility Auth2 и скорее не используйте это.
Мне нужно что-то попроще, например, когда вы входите в Facebook, вы можете «разрешить» другим приложениям использовать вашу учетную запись Facebook без необходимости повторного входа, то же самое должно быть для API.
Я бы посоветовал ZF-Campus — ZF MVC Auth для этого. Это модуль для Apigility
который делает именно это. Это Acl с ограниченной функциональностью, он только проверяет, аутентифицированы ли пользователи и разрешено ли им делать определенный запрос (метод на контроллере). Вы также можете настроить разрешения для неаутентифицированных пользователей (Гости).
Проверьте хранилище Вот.
Вам нужен модуль OAuth,
https://apigility.org/documentation/auth/authentication-oauth2#browser-based-applications
Рабочий процесс похож на Facebook,
Вы должны отправить пользователя на URL модуля OAuth, пользователь разрешит или запретит запрос данных доступа, а приложение перенаправит на вашу страницу токен для доступа к API.
Если интерфейс и API от одного разработчика, вы можете использовать самый простой способ с именем пользователя и паролем.
https://apigility.org/documentation/auth/authentication-oauth2#username-and-password-access
В этом рабочем процессе пользователь передаст имя пользователя и пароль в вашем приложении.
Ваш веб-интерфейс отправит запрос в API с этими данными и получит токен доступа.
Такой подход рекомендуется, когда API и Front принадлежат одному и тому же разработчику или разработчику, которому доверяют.