У меня есть провайдер идентификации, несколько клиентских приложений и куча ресурсов API, реализованных в виде сервисов RESTful.Некоторым клиентам нужен один API, другим - несколько API.Также могут существовать «зависимости между API», например, клиенту нужен API X, а API X - API Y.
Какова подходящая гранулярность области в этом случае?Есть ли передовой опыт?
Я могу представить следующие решения:
- Одна область действия на API: может привести к большим токенам.Кроме того, в приведенном выше примере клиент не знает, что ему действительно необходим API Y.
- Одна область действия для всех API: это сработает (детализация согласия пользователя не является проблемой).Однако клиент получает сверхмощный токен доступа, который ему фактически не нужен.
- Одна область на API, но с использованием ссылочных токенов: как решение 1, но токены остаются маленькими.Это приведет к большому количеству вызовов к конечной точке самоанализа.