Как я могу добавить пользователей в шлюз apim и ограничить пользователей для определенных операций? - PullRequest
0 голосов
/ 26 декабря 2018

Я создал шлюз apim, теперь мне нужно добавить некоторых пользователей, и у них есть только права на выполнение определенных операций с API, так как некоторые пользователи имеют право только выполнять запросы GET, некоторые пользователи имеют право только навыполнять запросы POST и т. д. Как мне этого добиться?

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Часть времени выполнения APIM не зависит от ARM RBAC.Вместо этого APIM поддерживает свою собственную пользовательскую базу данных.Сценарий, который вы описываете, достижим, разделив ваши операции на несколько API и контролируя доступ к этим API с помощью подписок.

Все, что встроено в APIM, поэтому его легко настроить, но поддерживать громоздко.Если это так, то следующим вариантом будет использование политик и выражений политик.Посмотрите на политику choose, она позволяет вам условно прекратить обработку запроса (политика return-response).Конечно, для этого необходимо, чтобы вы могли принимать решение об авторизации исключительно на основе того, что доступно в запросе, т.е. пути, заголовков, идентификатора пользователя и т. Д.

В таких случаях предпочтительнее использовать политику validate-jwt, поскольку она позволяет вамполагаться на ограниченный набор утверждений в предоставленной идентичности, а не на жестко закодированный список идентификаторов / имен пользователей.Но он требует наличия токена JWT при каждом запросе.

0 голосов
/ 27 декабря 2018

Контроль доступа на основе ролей помогает в этом, см. Нижеприведенную выдержку из URL

Как RBAC определяет, имеет ли пользователь доступ к ресурсу это высокоуровневые шаги, которые RBAC использует, чтобы определить, есть ли у вас доступ к ресурсу в плоскости управления.Это полезно понять, если вы пытаетесь устранить проблему с доступом.

Пользователь (или участник службы) получает токен для Azure Resource Manager.

Маркер включает членство пользователя в группе (включая переходные группы).

Пользователь выполняет API-вызов REST для Azure Resource Manager с подключенным токеном.

Azure Resource Manager извлекает все назначения ролей и отклоняет назначения, которые применяются к ресурсупосле чего выполняется действие.

Azure Resource Manager сужает назначения ролей, которые применяются к этому пользователю или его группе, и определяет, какие роли пользователь имеет для этого ресурса.

AzureДиспетчер ресурсов определяет, включено ли действие в вызове API в роли, которые пользователь имеет для этого ресурса.

Если у пользователя нет роли с действием в запрошенной области действия, доступне предоставлено.В противном случае Azure Resource Manager проверяет, применяется ли запрещающее назначение.

Если применяется запрещающее назначение, доступ блокируется.В противном случае доступ предоставляется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...