В настоящее время я работаю над REST API, в котором мы традиционно указывали, какие поля являются обязательными, а какие необязательными в ответе или DTO. Это было несложно, поскольку каждая конечная точка имела фиксированный набор обязательных и необязательных полей.
Теперь мы представляем управление доступом на основе атрибутов или ролей (RBAC) или управление доступом по атрибутам (ABAC). ) на определенных конечных точках, и этот подход больше не работает. Например. Каждая роль может иметь свой набор обязательных и необязательных полей, что усложняет поддержание четких и последовательных ответов и DTO.
Например:
У нас есть 3 атрибута в ответе a,b,c
a и c являются обязательными, а b необязательным
Роль A позволяет видеть атрибут a, b, но не c.
Роль B позволяет видеть атрибут c, b, но не a.
Должны ли все атрибуты быть необязательными?
Кроме того, в этом примере отсутствует/нулевой/необязательный параметр семантически то же самое в ответе.
Мой вопрос: каковы наилучшие методы управления доступом в REST API, где обязательные и необязательные атрибуты могут различаться в зависимости от правил доступа?
Как я могу поддерживать понятную и удобную для пользователя документацию API+ответы+классы DTO в этих условиях?
Любые лучшие практики или примеры будут полезны.
Даже если возможно более одного решения.
Подробнее здесь: https://stackoverflow.com/questions/787 ... attributes
Рекомендации по использованию RBAC/ABAC в REST API с обязательными и необязательными атрибутами [закрыто] ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Рекомендации по использованию ключа и секрета API в комплекте в приложении
Anonymous » » в форуме Android - 0 Ответы
- 33 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Рекомендации по использованию ключа и секрета API в комплекте в приложении
Anonymous » » в форуме IOS - 0 Ответы
- 30 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как пройти аутентификацию для FCM Rest API с помощью Google REST API в PHP REST API?
Anonymous » » в форуме Php - 0 Ответы
- 152 Просмотры
-
Последнее сообщение Anonymous
-