Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY: Wszystkie warstwy usługi API Management
authentication-managed-identity Użyj zasad, aby uwierzytelnić się za pomocą usługi zaplecza przy użyciu tożsamości zarządzanej. Te zasady zasadniczo używają tożsamości zarządzanej do uzyskania tokenu dostępu z Microsoft Entra ID na potrzeby uzyskiwania dostępu do określonego zasobu. Po pomyślnym uzyskaniu tokenu zasady ustawią wartość tokenu w nagłówku Authorization przy użyciu schematu Bearer . Usługa API Management buforuje token do momentu jego wygaśnięcia.
Tożsamość przypisana przez system i dowolna z wielu tożsamości przypisanych przez użytkownika może służyć do żądania tokenu. Jeśli client-id nie zostanie podana, przyjmuje się, że przyjmuje się tożsamość przypisaną przez system. Jeśli jest podana zmienna client-id, token jest wymagany dla tej tożsamości przypisanej przez użytkownika z Microsoft Entra ID.
Uwaga
Ustaw elementy zasad i elementy podrzędne w kolejności podanej w instrukcji zasad. Dowiedz się więcej na temat ustawiania lub edytowania zasad usługi API Management.
Ostrzeżenie
Zagadnienia dotyczące zabezpieczeń: Użytkownicy z uprawnieniami do edytowania zasad usługi API Management mogą używać tych zasad do uwierzytelniania jako tożsamości zarządzanej usługi. Nie mogą jednak uzyskać bezpośredniego dostępu do zasobów bez uprzedniego przypisania tożsamości zarządzanej do wystąpienia usługi API Management. Po przypisaniu tożsamości zarządzanej użytkownicy, którzy mogą modyfikować zasady, mogą eksfiltrować token uwierzytelniania, propagować go do zaplecza lub rejestrować do późniejszego użycia. Aby uzyskać szczegółowe wskazówki dotyczące zabezpieczeń i strategie ograniczania ryzyka, zobacz Zagadnienia dotyczące zabezpieczeń tożsamości zarządzanych w omówieniu tożsamości zarządzanej.
Instrukcja zasad
<authentication-managed-identity resource="resource" client-id="clientid of user-assigned identity" output-token-variable-name="token-variable" ignore-error="true|false"/>
Atrybuty
| Atrybut | opis | Wymagani | Wartość domyślna |
|---|---|---|---|
| zasób | Struna. Identyfikator aplikacji docelowego internetowego interfejsu API (zabezpieczony zasób) w Microsoft Entra ID. Wyrażenia zasad są dozwolone. | Tak | Nie dotyczy |
| identyfikator klienta | Struna. Identyfikator klienta tożsamości przypisanej przez użytkownika w Microsoft Entra ID. Wyrażenia zasad nie są dozwolone. | Nie. | Nie dotyczy. Tożsamość przypisana przez system jest używana, jeśli atrybut nie jest obecny. |
| output-token-variable-name | Struna. Nazwa zmiennej kontekstowej, która będzie otrzymywać wartość tokenu jako obiekt typu string. Wyrażenia zasad nie są dozwolone. |
Nie. | Nie dotyczy |
| ignoruj błąd | Wartość logiczna. Jeśli ustawiono truewartość , potok zasad będzie nadal wykonywany, nawet jeśli token dostępu nie zostanie uzyskany. |
Nie. | false |
Użycie
- Sekcje zasad: ruch przychodzący
- Zakresy zasad: globalny, produkt, interfejs API, operacja
- Bramy: klasyczne, v2, zużycie, self-hosted
Przykłady
Używanie tożsamości zarządzanej do uwierzytelniania za pomocą usługi zaplecza
<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-->
Ręczne używanie tożsamości zarządzanej i ustawianie nagłówka
<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>
Używanie tożsamości zarządzanej w zasadach wysyłania żądań
<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>
Powiązane zasady
Powiązana zawartość
Aby uzyskać więcej informacji na temat pracy z zasadami, zobacz:
- Samouczek: przekształcanie i ochrona interfejsu API
- Dokumentacja zasad dla pełnej listy instrukcji zasad i ich ustawień
- Wyrażenia zasad
- Ustawianie lub edytowanie zasad
- Ponowne używanie konfiguracji zasad
- repozytorium Policy
- Repozytorium testowe polityki
- Azure API Management zestawu narzędzi zasad
- Pobierz pomoc Copilot tworzenia, wyjaśniania i rozwiązywania problemów z zasadami