Обеспечение возможности использования Apigility только для зарегистрированных пользователей с Zend Framework 2

Как я могу использовать аутентификацию Apigility API для обеспечения безопасности только для зарегистрированных пользователей?

Прямо сейчас все, что я делаю, когда пользователь входит в систему, это создание сеанса (общий).

Мне нужно сделать больше, мне нужно как-то авторизовать его для API и заблокировать всех остальных (ни один не вошел)

Я немного новичок в ZF2 и Apigility, поэтому, пожалуйста, поговорите с ним.

Я читал о Apigility Auth2 и скорее не используйте это.

Мне нужно что-то попроще, например, когда вы входите в Facebook, вы можете «разрешить» другим приложениям использовать вашу учетную запись Facebook без необходимости повторного входа, то же самое должно быть для API.

1

Решение

Я бы посоветовал ZF-Campus — ZF MVC Auth для этого. Это модуль для Apigility который делает именно это. Это Acl с ограниченной функциональностью, он только проверяет, аутентифицированы ли пользователи и разрешено ли им делать определенный запрос (метод на контроллере). Вы также можете настроить разрешения для неаутентифицированных пользователей (Гости).

Проверьте хранилище Вот.

1

Другие решения

Вам нужен модуль 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 принадлежат одному и тому же разработчику или разработчику, которому доверяют.

0