Управляемые удостоверения для Azure AppService для вызова AppService

Я изучаю возможность реализации управляемых удостоверений для REST API, размещенных в службе приложений Azure. Этот Api использует несколько сторонних API, которые находятся вне нашего контроля и защищены AAD.

В настоящее время мы храним AAD ApplicationId / Secret в конфигурации. Всякий раз, когда нам нужно использовать какой-либо сторонний API, мы следуем нижеприведенному процессу -

  1. Используйте ApplicationId & Secret для генерации токена
  2. Вызвать сторонний API с токеном в заголовке
  3. Во время звонка clientId в токене проверяется на авторизацию

Можем ли мы использовать управляемые удостоверения в этом сценарии? Требует ли это изменения кода для какого-либо из этих API? Могу ли я получить доступ к ClientIds, которые я могу использовать для сторонних API для авторизации?

1 ответ

AFAIK, возможно, вы не сможете сделать это через MSI, MSI используется для предоставления доступа к службе приложений / функциям приложения другим ресурсам Azure. Если вы включите MSI веб-приложения, оно просто автоматически создаст субъект службы без приложения AD.

Есть ли способ узнать ClientId SPN, которым управляет управляемая идентификация?

Это возможно, перейдите к приложениям Enterprise в Azure Active Directory-> Поиск по имени вашего веб-приложения (вам нужно указать Application Type фильтр с All Applications) -> в PropertiesВы могли бы найти Application IDэто также называется ClientID какой ты хочешь.

Но даже если вы сможете найти его, вы не сможете сгенерировать секрет принципала службы. Я думаю, что вы могли бы сделать это только с приложением AD (регистрация приложения).

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