Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОБЛАСТЬ ПРИМЕНЕНИЯ: все уровни Управление API
Используйте политику authentication-managed-identity для аутентификации внутренней службы с помощью управляемого удостоверения. Эта политика по сути использует управляемое удостоверение для получения маркера доступа из Microsoft Entra ID для доступа к указанному ресурсу. После успешного получения маркера политика задаст значение маркера в заголовке Authorization с помощью схемы Bearer. Управление API кэширует маркер до истечения срока его действия.
Для запроса маркера может использоваться удостоверение, назначаемое системой, и любое из нескольких удостоверений, назначаемых пользователем. Если client-id это не указано, предполагается, что назначаемое системой удостоверение. Если указана переменная client-id, маркер запрашивается для этого удостоверения, назначаемого пользователем, из Microsoft Entra ID.
Примечание.
Задайте элементы политики и дочерние элементы в порядке, указанном в правиле политики. Узнайте, как устанавливать или изменять политики службы управления API.
Предостережение
Вопросы безопасности: Пользователи с разрешениями на изменение политик управления API могут использовать эту политику для проверки подлинности в качестве управляемого удостоверения службы. Однако они не могут получить прямой доступ к ресурсам, не назначив управляемому удостоверению экземпляру службы управления API. После назначения управляемого удостоверения пользователи, которые могут изменять политики, могут получить доступ к маркеру проверки подлинности, распространить его на серверную часть или записать его для последующего использования. Подробные рекомендации по безопасности и стратегии устранения рисков см. в статье "Рекомендации по обеспечению безопасности для управляемых удостоверений " в обзоре управляемого удостоверения.
Правило политики
<authentication-managed-identity resource="resource" client-id="clientid of user-assigned identity" output-token-variable-name="token-variable" ignore-error="true|false"/>
Атрибуты
| Атрибут | Описание | Обязательное поле | По умолчанию. |
|---|---|---|---|
| ресурс | Строка. Идентификатор приложения целевого веб-API (защищенного ресурса) в Microsoft Entra ID. Допустимы выражения политики. | Да | Н/П |
| идентификатор клиента | Строка. Идентификатор клиента назначаемого пользователем удостоверения в Microsoft Entra ID. Выражения политики не допускаются. | нет | Недоступно Назначаемое системой удостоверение используется, если атрибут отсутствует. |
| output-token-variable-name | Строка. Имя переменной контекста, которая получит значение токена в качестве объекта типа string. Выражения политики не допускаются. |
нет | Н/П |
| ignore-error | Логическое значение. Если задано значение true, конвейер политики продолжает выполняться, даже если маркер доступа не получен. |
нет | false |
Использование
- Разделы политики: inbound.
- Области политики: global, product, API, operation.
- Шлюзы: классическая, версия 2, потребление, локальное размещение
Заметки об использовании
Если эта политика определена в глобальной области, полученный маркер будет доступен в контексте выполнения политики для всех API, в том числе в рабочих областях. Если маркер должен быть доступен только для определенных API, рассмотрите возможность применения политики в более узкой области (например, на уровне продукта или API), а не для глобальной политики.
Пересылка маркеров — это ответственность клиента. При оценке этой политики управление API получает маркер из Microsoft Entra ID и перенаправляет его в серверную as-is в заголовке
Authorization. Управление API не проверяет, в какую серверную часть отправляется маркер. Это ответственность клиента, чтобы гарантировать, что маркеры перенаправляются только в предполагаемые и доверенные серверные службы. Тщательно настройте внутренние сущности и другие политики, чтобы предотвратить отправку маркеров в непреднамеренные назначения.
Примеры
Использование управляемого удостоверения для проверки подлинности во внутренней службе
<authentication-managed-identity resource="https://graph.microsoft.com"/>
<authentication-managed-identity resource="https://cognitiveservices.azure.com"/> <!--Azure OpenAI-->
<authentication-managed-identity resource="https://management.azure.com/"/> <!--Azure Resource Manager-->
<authentication-managed-identity resource="https://vault.azure.net"/> <!--Azure Key Vault-->
<authentication-managed-identity resource="https://servicebus.azure.net/"/> <!--Azure Service Bus-->
<authentication-managed-identity resource="https://eventhubs.azure.net/"/> <!--Azure Event Hub-->
<authentication-managed-identity resource="https://storage.azure.com/"/> <!--Azure Blob Storage-->
<authentication-managed-identity resource="https://database.windows.net/"/> <!--Azure SQL-->
<authentication-managed-identity resource="https://signalr.azure.com"/> <!--Azure SignalR-->
<authentication-managed-identity resource="AD_application_id"/> <!--Application (client) ID of your own Azure AD Application-->
Использование управляемого удостоверения и установка заголовка вручную
<authentication-managed-identity resource="AD_application_id"
output-token-variable-name="msi-access-token" ignore-error="false" /> <!--Application (client) ID of your own Azure AD Application-->
<set-header name="Authorization" exists-action="override">
<value>@("Bearer " + (string)context.Variables["msi-access-token"])</value>
</set-header>
Использование управляемого удостоверения в политике отправки запросов
<send-request mode="new" timeout="20" ignore-error="false">
<set-url>https://example.com/</set-url>
<set-method>GET</set-method>
<authentication-managed-identity resource="ResourceID"/>
</send-request>
Связанные политики
Связанный контент
Дополнительные сведения о работе с политиками см. в нижеуказанных статьях.
- Руководство. Преобразование и защита API
- Полный перечень операторов политик и их параметров см. в справочнике по политикам.
- Выражения политики
- Настройка или изменение политик
- Повторное использование конфигураций политик
- репозиторий Policy snippets
- репозиторий Policy
- набор средств политики Azure API Management
- Get Copilot помощь в создании, объяснении и устранении неполадок политик