Регистрация приложения Azure ограничивает доступ к секрету/сертификату клиента

Я разрабатываю API, который будет использоваться другим приложением, и использую платформу Microsoft Identify. API предоставляет несколько конечных точек, и одно приложение будет использовать все конечные точки, а другое — их подмножество. Для этого при регистрации приложения я создаю две роли приложения (скажем, чтение и чтение/запись).

Теперь клиентские приложения будут использовать для аутентификации либо секрет пользователя, либо сертификат, но я не могу найти способ назначить конкретный секрет/сертификат пользователя одной или обеим созданным ролям. Похоже, что если клиентское приложение использует секрет/сертификат пользователя, оно получает доступ ко всем конечным точкам.

Я что-то упускаю или смотрю на это не с той точки зрения?

Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
0
119
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Роли приложения не связаны с методами аутентификации. В этом сценарии вам потребуется три регистрации приложения. Один для вашего API, который определяет роли приложения. И по одному для каждого клиентского приложения. Каждому клиентскому приложению будут предоставлены разрешения API для вашего приложения API с соответствующей ролью.

Например

  • Регистрация приложения MyAPIApp, имеет роль 1 и роль 2.

  • Регистрация приложения ClientApp1 имеет разрешение API для MyAPIApp с ролью Role1.

  • Регистрация приложения ClientApp2 имеет разрешение API для MyAPIApp с ролью Role2.

Спасибо. Итак, чтобы соединить все вместе, мне нужно настроить сертификат в «клиентском приложении регистрации приложения1» и использовать этот сертификат из «клиентского приложения 1», верно?

Albert T 04.04.2024 17:07

Каждое из ClientApp1 и ClientApp2 будет использовать для аутентификации либо сертификат, либо секрет клиента.

David Browne - Microsoft 04.04.2024 18:15

Другие вопросы по теме