Verifiëren met beheerde identiteit
VAN TOEPASSING OP: Alle API Management-lagen
Gebruik het authentication-managed-identity
beleid om te verifiëren met een back-endservice met behulp van de beheerde identiteit. Dit beleid maakt in feite gebruik van de beheerde identiteit om een toegangstoken van Microsoft Entra ID te verkrijgen voor toegang tot de opgegeven resource. Nadat het token is verkregen, stelt het beleid de waarde van het token in de Authorization
header in met behulp van het Bearer
schema. API Management slaat het token in de cache op totdat het verloopt.
Zowel door het systeem toegewezen identiteit als een van de meerdere door de gebruiker toegewezen identiteiten kunnen worden gebruikt om een token aan te vragen. Als client-id
deze niet is opgegeven, wordt ervan uitgegaan dat de door het systeem toegewezen identiteit wordt gebruikt. Als de client-id
variabele wordt opgegeven, wordt het token aangevraagd voor die door de gebruiker toegewezen identiteit van Microsoft Entra-id.
Notitie
Stel de elementen en onderliggende elementen van het beleid in de volgorde in die in de beleidsverklaring is opgegeven. Meer informatie over het instellen of bewerken van API Management-beleid.
Beleidsinstructie
<authentication-managed-identity resource="resource" client-id="clientid of user-assigned identity" output-token-variable-name="token-variable" ignore-error="true|false"/>
Kenmerken
Kenmerk | Beschrijving | Vereist | Standaardinstelling |
---|---|---|---|
resource | Snaar. De toepassings-id van de doelweb-API (beveiligde resource) in Microsoft Entra-id. Beleidsexpressies zijn toegestaan. | Ja | N.v.t. |
client-id | Snaar. De client-id van de door de gebruiker toegewezen identiteit in Microsoft Entra-id. Beleidsexpressies zijn niet toegestaan. | Nee | door het systeem toegewezen identiteit |
output-token-variable-name | Snaar. Naam van de contextvariabele die tokenwaarde als object van het type string ontvangt. Beleidsexpressies zijn niet toegestaan. |
Nee | N.v.t. |
ignore-error | Booleaans. Als deze optie is ingesteld true , wordt de beleidspijplijn nog steeds uitgevoerd, zelfs als er geen toegangstoken wordt verkregen. |
Nee | false |
Gebruik
- Beleidssecties: inkomend
- Beleidsbereiken: globaal, product, API, bewerking
- Gateways: klassiek, v2, verbruik, zelf-hostend
Voorbeelden
Beheerde identiteit gebruiken om te verifiëren met een back-endservice
<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-->
Beheerde identiteit gebruiken en koptekst handmatig instellen
<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>
Beheerde identiteit gebruiken in beleid voor verzenden-aanvragen
<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>
Gerelateerd beleid
Gerelateerde inhoud
Zie voor meer informatie over het werken met beleid:
- Zelfstudie: Uw API transformeren en beveiligen
- Beleidsreferentie voor een volledige lijst met beleidsinstructies en hun instellingen
- Beleidsexpressies
- Beleid instellen of bewerken
- Beleidsconfiguraties opnieuw gebruiken
- Beleidsfragmentenopslagplaats
- Beleid ontwerpen met Behulp van Microsoft Copilot in Azure