Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
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 wezen gebruik van de beheerde identiteit om een toegangstoken te verkrijgen van Microsoft Entra ID 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 variabele client-id is 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.
Waarschuwing
Beveiligingsoverweging: Gebruikers met machtigingen voor het bewerken van API Management-beleid kunnen dit beleid gebruiken om te verifiëren als de beheerde identiteit van de service. Ze kunnen echter geen directe toegang krijgen tot resources zonder eerst een beheerde identiteit toe te wijzen aan het API Management-exemplaar. Zodra een beheerde identiteit is toegewezen, kunnen gebruikers die beleidsregels kunnen wijzigen mogelijk het verificatietoken exfiltreren, doorgeven aan een back-end of deze registreren voor later gebruik. Zie Beveiligingsoverwegingen voor beheerde identiteiten in het overzicht van beheerde identiteiten voor gedetailleerde beveiligingsrichtlijnen en risicobeperkingsstrategieën.
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 |
|---|---|---|---|
| hulpbron | 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 | N.v.t. Door het systeem toegewezen identiteit wordt gebruikt als het kenmerk niet aanwezig is. |
| output-token-variable-name | Snaar. Naam van de contextvariabele die tokenwaarde als object van het type stringontvangt. 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
- Policy-fragmentenopslagplaats
- Policy-opslagplaats voor speeltuin
- Azure API Management-beleidstoolkit
- Get Copilot hulp bij het maken, uitleggen en oplossen van problemen met beleidsregels