@TAnonim

Как принято управлять many-to-many зависимостями в REST API?

Приветствую. Пусть есть объект роли, разрешения и пользователя. У роли может быть несколько разрешений, одно разрешение может относится к нескольким ролям, то есть обычный rbac подход. Теперь я проектирую API под такую систему, и возник вопрос: как вообще управлять зависимостями в rest API?
Сейчас у меня есть, например, endpoint example.com/api/v1/users/, я делаю к нему post запрос и создаю пользователя, делаю get запрос - получаю пользователей, и так далее, всё по стандартной схеме. А как должен выглядеть endpoint, например, для операции прикрепления разрешения к роли?
  • Вопрос задан
  • 323 просмотра
Пригласить эксперта
Ответы на вопрос 1
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Все зависит от того какая логика у вас в проекте. Допустимы разные варианты:

1. Роли у вас это Organization Unit.
PUT {baseUrl}/roles/{roleID}/users/{userID}

2. Роли и вас это просто группировка прав доступа:
PUT {baseUrl}/users/{userID}/roles/{roleID}

3. Роли у вас копируются как независимый набор прав (inline policy)
POST {baseUrl}/users/{userID}/policy

Главное чтобы API отражало ваши use-cases
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы