Yönetilen kimlikle kimlik doğrulaması
UYGULANANLAR: Tüm API Management katmanları
authentication-managed-identity
Yönetilen kimliği kullanarak bir arka uç hizmetiyle kimlik doğrulaması yapmak için ilkeyi kullanın. Bu ilke temelde yönetilen kimliği kullanarak belirtilen kaynağa erişmek için Microsoft Entra Id'den bir erişim belirteci alır. Belirteci başarıyla aldıktan sonra ilke, düzeni kullanarak Bearer
üst bilgideki Authorization
belirtecin değerini ayarlar. API Management, süresi dolana kadar belirteci önbelleğe alır.
Belirteç istemek için hem sistem tarafından atanan kimlik hem de kullanıcı tarafından atanan birden çok kimlik kullanılabilir. Sağlanmazsa client-id
, sistem tarafından atanan kimlik varsayılır. client-id
Değişken sağlanırsa, Microsoft Entra Id'den kullanıcı tarafından atanan kimlik için belirteç istenir.
Not
İlkenin öğelerini ve alt öğelerini ilke bildiriminde sağlanan sırayla ayarlayın. API Management ilkelerini ayarlama veya düzenleme hakkında daha fazla bilgi edinin.
İlke bildirimi
<authentication-managed-identity resource="resource" client-id="clientid of user-assigned identity" output-token-variable-name="token-variable" ignore-error="true|false"/>
Özellikler
Öznitelik | Açıklama | Zorunlu | Varsayılan |
---|---|---|---|
kaynak | Dizgi. Microsoft Entra Id'de hedef web API'sinin (güvenli kaynak) uygulama kimliği. İlke ifadelerine izin verilir. | Yes | Yok |
istemci kimliği | Dizgi. Microsoft Entra Id'de kullanıcı tarafından atanan kimliğin istemci kimliği. İlke ifadelerine izin verilmez. | Hayır | sistem tarafından atanan kimlik |
output-token-variable-name | Dizgi. Belirteç değerini türünde string bir nesne olarak alacak bağlam değişkeninin adı. İlke ifadelerine izin verilmez. |
Hayır | YOK |
ignore-error | Boole. olarak ayarlanırsa true , erişim belirteci alınmasa bile ilke işlem hattı yürütülmeye devam eder. |
Hayır | false |
Kullanım
- İlke bölümleri: gelen
- İlke kapsamları: genel, ürün, API, işlem
- Ağ geçitleri: klasik, v2, tüketim, şirket içinde barındırılan
Örnekler
Arka uç hizmetiyle kimlik doğrulaması yapmak için yönetilen kimlik kullanma
<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-->
Yönetilen kimliği kullanma ve üst bilgiyi el ile ayarlama
<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>
İstek gönderme ilkesinde yönetilen kimliği kullanma
<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>
İlgili ilkeler
İlgili içerik
İlkelerle çalışma hakkında daha fazla bilgi için bkz: