Authentifier avec l’identité gérée
S’APPLIQUE À : Tous les niveaux de Gestion des API
La stratégie authentication-managed-identity
permet l’authentification auprès d’un service principal à l’aide de l’identité managée. Cette stratégie utilise essentiellement l’identité managée pour obtenir un jeton d’accès auprès de Microsoft Entra ID afin d’accéder à la ressource spécifiée. Une fois le jeton obtenu, la stratégie définit la valeur du jeton dans l'en-tête Authorization
à l’aide du schéma Bearer
. Gestion des API met en cache le jeton jusqu’à son expiration.
Tant les identités attribuées par le système que les identités attribuées par l’utilisateur permettent de demander un jeton. Si la valeur client-id
n’est pas fournie, l’identité attribuée par le système est supposée. Si la variable client-id
est fournie, un jeton est demandé pour cette identité attribuée par l’utilisateur à partir de Microsoft Entra ID.
Remarque
Définissez les éléments enfants et de stratégie dans l’ordre fourni dans l’instruction de stratégie. En savoir plus sur comment définir ou modifier des stratégies du service Gestion des API.
Instruction de la stratégie
<authentication-managed-identity resource="resource" client-id="clientid of user-assigned identity" output-token-variable-name="token-variable" ignore-error="true|false"/>
Attributs
Attribut | Description | Obligatoire | Default |
---|---|---|---|
resource | Chaîne. ID d’application de l’API web cible (ressource sécurisée) dans Microsoft Entra ID. Les expressions de stratégie sont autorisées. | Oui | N/A |
client-id | Chaîne. ID de client de l’identité attribuée par l’utilisateur dans Microsoft Entra ID. Les expressions de stratégie ne sont pas autorisées. | Non | N/A. L'identité affectée par le système est utilisée si l’attribut n’est pas présent. |
output-token-variable-name | Chaîne. Nom de la variable de contexte qui recevra la valeur du jeton en tant que type d’objet string . Les expressions de stratégie ne sont pas autorisées. |
Non | N/A |
ignore-error | Propriété booléenne. Si cet attribut a la valeur true , le pipeline de stratégie continue à s’exécuter même si aucun jeton d’accès n’est obtenu. |
Non | false |
Usage
- Sections de la stratégie : inbound
- Étendues de la stratégie : global, product, API, operation
- Passerelles : classiques, v2, de consommation, auto-hébergées
Exemples
Utiliser Identité managée pour s’authentifier auprès d’un service principal
<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-->
Utiliser l’identité managée et définir l’en-tête manuellement
<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>
Utiliser Identité managée dans la stratégie d’envoi de requête
<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>
Stratégies connexes
Contenu connexe
Pour plus d’informations sur l’utilisation des stratégies, consultez :
- Tutoriel : Transformer et protéger votre API
- Référence de stratégie pour obtenir la liste complète des instructions et des paramètres de stratégie
- Expressions de stratégie
- Définir ou modifier des stratégies
- Réutilisation de configurations de stratégie
- Référentiel d’extrait de stratégie
- Kit de ressources des stratégies Gestion des API Azure
- Créer des stratégies à l’aide de Microsoft Copilot dans Azure