pro-dev
@pro-dev

Как правильно передавать разрешения с токеном в API?

Использую бандл https://github.com/trikoder/oauth2-bundle над библиотекой https://github.com/thephpleague/oauth2-server. У себя в проекте использую такие разрешения

role_hierarchy:
    ROLE_ADMIN:
      - ROLE_USER
      - ROLE_MANAGE_USERS
      - ROLE_MANAGE_CRM


В контроллерах использую @IsGranted("ROLE_MANAGE_USERS").

Но теперь мне надо эти разрешения передавать во Frontend, чтобы отобразить ту или иную функциональность. В библиотеке для этого используются scopes, но что-то не очень понял как их использовать. Может быть я не правильным путём пошел? Первый раз это делаю, поэтому не понимаю. Ещё говорили что в JWT есть playload и можно выдать вместе с токеном разрешения. Но опять же не знаю как поступить в моём случае.

Кто-то пользовался этой библиотекой? Кто знает как это сделать?
  • Вопрос задан
  • 148 просмотров
Решения вопроса 1
passionkillah
@passionkillah
Backend-разработчик
Если у Вас API + отдельный фронт - то мало смысла явно передавать на фронт разрешения. Вам достаточно будет при запросе ресурса получать текущего пользователя по токену, проверять его права и отдавать 403 (или 401, если пользователь не предоставил токен вовсе), если их недостаточно для доступа к ресурсу.
В свою очередь на фронте Вы будете обрабатывать код ответа и выводить на экран то, что нужно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы