Authentifizieren des Zugriffs auf und der Verbindungen mit Azure-Ressourcen mithilfe verwalteter Identitäten in Azure Logic Apps
Gilt für: Azure Logic Apps (Verbrauch + Standard)
Wenn Sie verhindern möchten, dass Anmeldeinformationen, Geheimnisse oder Microsoft Entra-Token bereitgestellt, gespeichert und verwaltet werden, können Sie eine verwaltete Identität verwenden, um den Zugriff oder Verbindungen aus Ihrem Logik-App-Workflow zu von Microsoft Entra geschützten Ressourcen zu authentifizieren. In Azure Logic Apps-Workflows unterstützen einige Connectorvorgänge die Verwendung einer verwalteten Identität, wenn Sie den Zugriff auf Ressourcen authentifizieren müssen, die durch Microsoft Entra ID geschützt werden. Azure verwaltet diese Identität und hilft, die Sicherheit von Authentifizierungsinformationen zu bewahren, damit Sie diese sensiblen Daten nicht verwalten müssen. Weitere Informationen finden Sie unter Was sind verwaltete Identitäten für Azure-Ressourcen?.
Azure Logic Apps unterstützt die folgenden Typen von verwalteten Identitäten:
In der folgenden Liste werden einige Unterschiede zwischen diesen Typen von verwalteten Identitäten beschrieben:
Eine Logik-App-Ressource kann nur eine eindeutige vom System zugewiesene Identität aktivieren und verwenden.
Eine Logik-App-Ressource kann dieselbe vom Benutzer zugewiesene Identität mit einer Gruppe anderer Logik-App-Ressourcen gemeinsam nutzen.
In diesem Leitfaden wird gezeigt, wie Sie die folgenden Aufgaben ausführen:
Aktivieren und Einrichten der systemseitig zugewiesenen Identität für Ihre Logik-App-Ressource. Dieses Handbuch enthält ein Beispiel, das zeigt, wie die Identität für die Authentifizierung verwendet wird.
Erstellen und Einrichten einer benutzerseitig zugewiesenen Identität. In diesem Handbuch wird gezeigt, wie Sie diese Identität mithilfe des Azure-Portals oder einer Azure Resource Manager-Vorlage (ARM-Vorlage) erstellen und die Identität für die Authentifizierung verwenden. Informationen zu Azure PowerShell, Azure CLI und der Azure-REST-API finden Sie in der folgenden Dokumentation:
Tool Dokumentation Azure PowerShell Erstellen einer benutzerseitig zugewiesenen Identität Azure-Befehlszeilenschnittstelle Erstellen einer benutzerseitig zugewiesenen Identität Azure-REST-API Erstellen einer benutzerseitig zugewiesenen Identität
Voraussetzungen
Ein Azure-Konto und ein Azure-Abonnement. Falls Sie kein Abonnement besitzen, können Sie sich für ein kostenloses Azure-Konto registrieren. Für die verwaltete Identität sowie die Azure-Zielressource, auf die Sie zugreifen möchten, muss dasselbe Azure-Abonnement verwendet werden.
Die Azure-Zielressource, auf die Sie zugreifen möchten. Für diese Ressource fügen Sie die erforderliche Rolle für die verwaltete Identität hinzu, um auf die Ressource im Auftrag Ihrer Logik-App oder Verbindung zuzugreifen. Für das Hinzufügen einer Rolle zu einer verwalteten Identität benötigen Sie Microsoft Entra-Administratorberechtigungen, mit denen Rollen verwalteten Identitäten im zugehörigen Microsoft Entra-Mandanten zugewiesen werden können.
Die Logik-App-Ressource und der Workflow, in der bzw. dem Sie den Trigger oder die Aktionen verwenden möchten, die verwaltete Identitäten unterstützen.
Unterschiede bei verwalteten Identitäten für Verbrauchs- und Standard-Logik-Apps
Basierend auf dem Ressourcentyp Ihrer Logik-App können Sie entweder die systemseitig zugewiesene Identität, die vom Benutzer zugewiesene Identität oder beide gleichzeitig aktivieren:
Logik-App | Environment | Unterstützung verwalteter Identitäten |
---|---|---|
Verbrauch | – Azure Logic Apps mit mehreren Mandanten | – Sie können die systemseitig zugewiesene Identität oder die benutzerseitig zugewiesene Identität, aber nicht beide für Ihre Logik-App aktivieren. – Sie können die verwaltete Identität auf Logik-App-Ressourcenebene und Verbindungsebene verwenden. – Wenn Sie die benutzerseitig zugewiesene Identität erstellen und aktivieren, kann Ihre Logik-App jeweils nur eine benutzerseitig zugewiesene Identität verwenden. |
Standard | - Azure Logic Apps-Instanz mit nur einem Mandanten - App Service-Umgebung v3 (ASEv3) - Logik-Apps mit Azure Arc-Unterstützung |
– Sie können die systemseitig zugewiesene, standardmäßig aktivierte Identität und die benutzerseitig zugewiesene Identität gleichzeitig aktivieren. Sie können Ihrer Logik-App auch mehrere benutzerseitig zugewiesene verwaltete Identitäten hinzufügen. Ihre Logik-App kann jedoch jeweils nur eine verwaltete Identität verwenden. – Sie können die verwaltete Identität auf Logik-App-Ressourcenebene und Verbindungsebene verwenden. |
Informationen zu Grenzwerten für verwaltete Identitäten in Azure Logic Apps finden Sie unter Grenzwerte für verwaltete Identitäten für Logik-Apps. Weitere Informationen zu den Ressourcentypen und Umgebungen der Verbrauchs- und Standard-Logik-App finden Sie in der folgenden Dokumentation:
Verwendung einer verwalteten Identität
In Azure Logic Apps können nur bestimmte integrierte und verwaltete Connectorvorgänge, die OAuth mit Microsoft Entra ID unterstützen, eine verwaltete Identität für die Authentifizierung verwenden. Die folgenden Tabellen enthalten nur eine Beispielauswahl. Eine umfassendere Liste finden Sie in der folgenden Dokumentation:
Authentifizierungstypen für Trigger und Aktionen, die die Authentifizierung unterstützen
Azure-Dienste, die verwaltete Identitäten für Azure-Ressourcen unterstützen
Azure-Dienste, die die Microsoft Entra-Authentifizierung unterstützen
In der folgenden Tabelle werden Beispielconnectors für einen Verbrauchs-Logik-App-Workflow aufgeführt, die die Authentifizierung mit einer verwalteten Identität unterstützen:
Connectortyp | Unterstützte Connectors |
---|---|
Integriert | – Azure API Management – Azure App Services – Azure Functions – HTTP – HTTP + Webhook Hinweis: HTTP-Vorgänge können Verbindungen mit Azure Storage Konten hinter Azure-Firewalls mit der systemseitig zugewiesenen Identität authentifizieren. HTTP-Vorgänge unterstützen jedoch nicht die benutzerseitig zugewiesene verwaltete Identität für die Authentifizierung derselben Verbindungen. |
Verwaltet | - Azure App Service – Azure Automation – Azure Blob Storage - Azure-Containerinstanz – Azure Cosmos DB – Azure Data Explorer - Azure Data Factory - Azure Data Lake – Azure Digital Twins – Azure Event Grid – Azure Event Hubs - Azure IoT Central V2 – Azure Key Vault – Azure Monitor-Protokolle - Azure-Warteschlangen – Azure Resource Manager – Azure Service Bus – Azure Sentinel – Azure Table Storage - virtueller Azure-Computer - SQL Server |
Aktivieren der systemseitig zugewiesenen Identität im Azure-Portal
Bei einer Verbrauchs-Logik-App-Ressource müssen Sie die systemseitig zugewiesene Identität manuell aktivieren.
Öffnen Sie im Azure-Portal Ihre verbrauchsbasierte Logik-App-Ressource.
Wählen Sie im Menü der Logik-App unter Einstellungen die Option Identität aus.
Wählen Sie im Bereich Identität unter Systemseitig zugewiesen die Option Aktiviert>Speichern aus. Wenn Sie von Azure zur Bestätigung aufgefordert werden, wählen Sie Ja aus.
Hinweis
Wenn Sie eine Fehlermeldung erhalten, dass Sie nur eine einzige verwaltete Identität verwenden können, ist Ihrer Logik-App-Ressource bereits eine benutzerseitig zugewiesene Identität zugeordnet. Bevor Sie die systemseitig zugewiesene Identität hinzufügen können, müssen Sie zuerst die benutzerseitig zugewiesene Identität aus Ihrer Logik-App-Ressource entfernen.
Ihre Logik-App-Ressource kann jetzt die vom System zugewiesene Identität verwenden. Diese Identität wird bei Microsoft Entra ID registriert und durch eine Objekt-ID dargestellt.
Eigenschaft Wert BESCHREIBUNG Objekt-ID (Prinzipal) <Identität-Ressourcen-ID> Eine GUID (Globally Unique Identifier), die die systemseitig zugewiesene Identität für Ihre Logik-App in einem Microsoft Entra-Mandanten angibt Führen Sie nun die Schritte, die der systemseitig zugewiesenen Identität Zugriff auf die Ressource gewähren, weiter unten in diesem Artikel aus.
Aktivieren der systemseitig zugewiesenen Identität in einer ARM-Vorlage
Sie können eine ARM-Vorlage verwenden, um die Erstellung und Bereitstellung von Logik-App-Ressourcen zu automatisieren. Um die systemseitig zugewiesene Identität für die Logik-App-Ressource in der Vorlage zu aktivieren, fügen Sie das identity-Objekt und die untergeordnete type-Eigenschaft in der Ressourcendefinition der Logik-App in der Vorlage hinzu, beispielsweise:
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicappName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "SystemAssigned"
},
"properties": {},
<...>
}
Wenn die Ressourcendefinition der Logik-App in Azure erstellt wird, erhält das identity-Objekt diese weiteren Eigenschaften:
"identity": {
"type": "SystemAssigned",
"principalId": "<principal-ID>",
"tenantId": "<Entra-tenant-ID>"
}
Eigenschaft (JSON) | Wert | Beschreibung |
---|---|---|
principalId | <principal-ID> | Die GUID (Globally Unique Identifier) des Dienstprinzipalobjekts für die verwaltete Identität, die die Logik-App im Microsoft Entra-Mandanten angibt Diese GUID wird manchmal als „Objekt-ID“ oder objectID angezeigt. |
tenantId | <Microsoft-Entra-ID-tenant-ID> | Die GUID (Globally Unique Identifier), die den Microsoft Entra-Mandanten angibt, in dem die Logik-App nun Mitglied ist Im Microsoft Entra-Mandanten hat der Dienstprinzipal den gleichen Namen wie die Logik-App-Instanz. |
Erstellen einer benutzerseitig zugewiesenen Identität im Azure-Portal
Bevor Sie die benutzerseitig zugewiesene Identität für eine Verbrauchs-Logik-App- oder Standard-Logik-App-Ressource aktivieren können, müssen Sie diese Identität zunächst als separate Azure-Ressource erstellen.
Geben Sie im Suchfeld im Azure-Portal den Begriff Verwaltete Identitäten ein. Wählen Sie in der Ergebnisliste Verwaltete Identitäten aus.
Wählen Sie in der Symbolleiste der Seite Verwaltete Identitäten die Option Erstellen aus.
Geben Sie Informationen zu Ihrer verwalteten Identität an, und wählen Sie dann Überprüfen und erstellen aus, beispielsweise:
Eigenschaft Erforderlich Wert BESCHREIBUNG Abonnement Ja <Name des Azure-Abonnements> Name des Azure-Abonnements Ressourcengruppe Ja <Name der Azure-Ressourcengruppe> Der Azure-Ressourcengruppenname. Erstellen Sie eine neue Gruppe, oder wählen Sie eine vorhandene Gruppe aus. In diesem Beispiel wird eine neue Gruppe mit dem Namen fabrikam-managed-identities-RG erstellt. Region Ja <Azure-Region> Die Azure-Region, in der die Informationen zu Ihrer Ressource gespeichert werden sollen. In diesem Beispiel wird USA, Westen verwendet. Name Ja <user-assigned-identity-name> Der Name für die benutzerseitig zugewiesene Identität. In diesem Beispiel wird Fabrikam-user-assigned-identity verwendet. Nach Überprüfung dieser Informationen durch Azure erstellt Azure Ihre verwaltete Identität. Nun können Sie Ihrer Logik-App-Ressource die vom Benutzer zugewiesene Identität hinzufügen.
Hinzufügen einer vom Benutzer zugewiesenen Identität zur Logik-App im Azure-Portal
Öffnen Sie im Azure-Portal Ihre verbrauchsbasierte Logik-App-Ressource.
Wählen Sie im Menü der Logik-App unter Einstellungen die Option Identität aus.
Wählen Sie auf der Seite Identität die Option Benutzerseitig zugewiesen aus, und wählen Sie dann Hinzufügen aus.
Führen Sie im Bereich Benutzerseitig zugewiesene verwaltete Identität hinzufügen die folgenden Schritte aus:
Wählen Sie in der Liste Abonnement auswählen Ihr Azure-Abonnement aus.
Wählen Sie in der Liste mit allen verwalteten Identitäten in Ihrem Abonnement die gewünschte benutzerseitig zugewiesene Identität aus. Um die Liste zu filtern, geben Sie im Suchfeld Benutzerseitig zugewiesene verwaltete Identitäten den Namen der Identität oder Ressourcengruppe ein.
Wenn Sie fertig sind, wählen Sie Hinzufügen aus.
Hinweis
Wenn Sie eine Fehlermeldung erhalten, dass Sie nur eine einzige verwaltete Identität verwenden können, ist Ihrer Logik-App bereits die systemseitig zugewiesene Identität zugeordnet. Bevor Sie die benutzerseitig zugewiesene Identität hinzufügen können, müssen Sie zuerst die systemseitig zugewiesene Identität deaktivieren.
Ihre Logik-App ist jetzt der benutzerseitig zugewiesenen Identität zugeordnet.
Führen Sie nun die Schritte für das Gewähren des Zugriffs der Identität auf die Ressource weiter unten in diesem Handbuch aus.
Erstellen einer benutzerseitig zugewiesenen Identität in einer ARM-Vorlage
Sie können eine ARM-Vorlage verwenden, um die Erstellung und Bereitstellung von Logik-App-Ressourcen zu automatisieren. Diese Vorlagen unterstützen benutzerseitig zugewiesene Identitäten für die Authentifizierung.
Im Abschnitt Ressourcen Ihrer Vorlage sind in der Ressourcendefinition Ihrer Logik-App die folgenden Elemente erforderlich:
Ein identity-Objekt mit der auf UserAssigned festgelegten type-Eigenschaft
Ein untergeordnetes userAssignedIdentities-Objekt, das die benutzerseitig zugewiesene Ressource und den Namen angibt
Dieses Beispiel zeigt die Ressourcen- und Workflowdefinition einer Verbrauchs-Logik-App für eine HTTP PUT-Anforderung mit einem nicht parametrisierten identity-Objekt. Die Antworten auf die PUT-Anforderung und den nachfolgenden GET-Vorgang enthalten ebenfalls dieses identity-Objekt:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {<template-parameters>},
"resources": [
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicappName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>": {}
}
},
"properties": {
"definition": {<logic-app-workflow-definition>}
},
"parameters": {},
"dependsOn": []
},
],
"outputs": {}
}
Wenn die Vorlage auch die Ressourcendefinition der verwalteten Identität enthält, können Sie das identity-Objekt parametrisieren. Das folgende Beispiel zeigt, wie das untergeordnete userAssignedIdentities-Objekt auf eine userAssignedIdentityName-Variable verweist, die Sie im Abschnitt variables der Vorlage definieren. Diese Variable verweist auf die Ressourcen-ID für Ihre benutzerseitig zugewiesene Identität.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"Template_LogicAppName": {
"type": "string"
},
"Template_UserAssignedIdentityName": {
"type": "securestring"
}
},
"variables": {
"logicAppName": "[parameters(`Template_LogicAppName')]",
"userAssignedIdentityName": "[parameters('Template_UserAssignedIdentityName')]"
},
"resources": [
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicAppName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]": {}
}
},
"properties": {
"definition": {<logic-app-workflow-definition>}
},
"parameters": {},
"dependsOn": [
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]"
]
},
{
"apiVersion": "2018-11-30",
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"name": "[parameters('Template_UserAssignedIdentityName')]",
"location": "[resourceGroup().location]",
"properties": {}
}
]
}
Zuweisen des Zugriffs der Identität auf Ressourcen
Bevor Sie die verwaltete Identität Ihrer Logik-App für die Authentifizierung verwenden können, müssen Sie den Zugriff für die Identität in der Azure-Zielressource einrichten, in der Sie die Identität verwenden möchten. Die Art und Weise, wie Sie den Zugriff einrichten, variiert je nach Zielressource.
Hinweis
Wenn eine verwaltete Identität Zugriff auf eine Azure-Ressource im gleichen Abonnement hat, kann die Identität nur auf diese Ressource zugreifen. Bei einigen Triggern und Aktionen, die verwaltete Identitäten unterstützen, müssen Sie jedoch zuerst die Azure-Ressourcengruppe auswählen, die die Zielressource enthält. Wenn die Identität keinen Zugriff auf Ressourcengruppenebene hat, werden keine Ressourcen in dieser Gruppe aufgelistet, obwohl sie Zugriff auf die Zielressource haben.
Um dieses Verhalten zu behandeln, müssen Sie der Identität auch Zugriff auf die Ressourcengruppe gewähren, nicht nur auf die Ressource. Wenn Sie Ihr Abonnement auswählen müssen, bevor Sie die Zielressource auswählen können, müssen Sie der Identität Zugriff auf das Abonnement gewähren.
In einigen Fällen benötigen Sie möglicherweise die Identität, um Zugriff auf die zugeordnete Ressource zu erhalten. Angenommen, Sie verfügen über eine verwaltete Identität für eine Logik-App, die Zugriff benötigt, um die Anwendungseinstellungen für dieselbe Logik-App über einen Workflow zu aktualisieren. Sie müssen dieser Identität Zugriff auf die zugeordnete Logik-App gewähren.
Um beispielsweise mit Ihrer verwalteten Identität auf ein Azure Blob Storage-Konto oder einen Azure-Schlüsseltresor zuzugreifen, müssen Sie den Zugriff mithilfe der rollenbasierten Zugriffssteuerung von Azure (Azure Role-Based Access Control, Azure RBAC) einrichten und dem Speicherkonto oder Schlüsseltresor die entsprechende Rolle für diese Identität zuweisen.
In den Schritten in diesem Abschnitt wird beschrieben, wie Sie rollenbasierten Zugriff mithilfe des Azure-Portals und der Azure Resource Manager-Vorlage (ARM) zuweisen. Informationen zu Azure PowerShell, Azure CLI und der Azure-REST-API finden Sie in der folgenden Dokumentation:
Tool | Dokumentation |
---|---|
Azure PowerShell | Hinzufügen der Rollenzuweisung |
Azure CLI | Hinzufügen der Rollenzuweisung |
Azure-REST-API | Hinzufügen der Rollenzuweisung |
Bei einem Azure-Schlüsseltresor haben Sie außerdem die Möglichkeit, eine Zugriffsrichtlinie für Ihre verwaltete Identität in Ihrem Schlüsseltresor zu erstellen und die entsprechenden Berechtigungen für die Identität für diesen Schlüsseltresor zuweisen. In den späteren Schritten in diesem Abschnitt wird beschrieben, wie Sie diese Aufgabe mithilfe des Azure-Portals ausführen. Informationen zu Resource Manager-Vorlagen, PowerShell und Azure CLI finden Sie in der folgenden Dokumentation:
Tool | Dokumentation |
---|---|
Azure Resource Manager-Vorlage (ARM-Vorlage) | Key Vault-Zugriffsrichtlinien-Ressourcendefinition |
Azure PowerShell | Zuweisen einer Key Vault-Zugriffsrichtlinie |
Azure CLI | Zuweisen einer Key Vault-Zugriffsrichtlinie |
Zuweisen des rollenbasierten Zugriffs für verwaltete Identitäten im Azure-Portal
Um eine verwaltete Identität für die Authentifizierung zu verwenden, erfordern einige Azure-Ressourcen wie Azure-Speicherkonten, dass Sie diese Identität einer Rolle zuweisen, die über die entsprechenden Berechtigungen für die Zielressource verfügt. Andere Azure-Ressourcen, z. B. Azure-Schlüsseltresore, unterstützen mehrere Optionen, sodass Sie entweder rollenbasierten Zugriff oder eine Zugriffsrichtlinie, die über die entsprechenden Berechtigungen für die Zielressource für diese Identität verfügt, auswählen können.
Öffnen Sie im Azure-Portal die Ressource, auf der Sie die Identität verwenden möchten.
Wählen Sie im Menü der Ressource Zugriffssteuerung (IAM)>Hinzufügen>Rollenzuweisung hinzufügen aus.
Hinweis
Wenn die Option Rollenzuweisung hinzufügen deaktiviert ist, sind Sie nicht zum Zuweisen von Rollen berechtigt. Weitere Informationen finden Sie unter Integrierte Rollen in Microsoft Entra.
Weisen Sie Ihrer verwalteten Identität die erforderliche Rolle zu. Weisen Sie auf der Registerkarte Rolle eine Rolle zu, die Ihrer Identität den erforderlichen Zugriff auf die aktuelle Ressource gewährt.
Weisen Sie in diesem Beispiel die Rolle mit dem Namen Mitwirkender an Storage-Blobdaten zu, die Schreibzugriff für Blobs in einem Azure Storage-Container umfasst. Weitere Informationen zu bestimmten Rollen für Speichercontainer finden Sie unter Rollen, die auf Blobs in einem Azure Storage-Container zugreifen können.
Wählen Sie als Nächstes die verwaltete Identität aus, der Sie die Rolle zuweisen möchten. Wählen Sie unter Zugriff zuweisen zu die Optionen Verwaltete Identität>Mitglieder hinzufügen aus.
Wählen Sie basierend auf dem Typ Ihrer verwalteten Identität die folgenden Werte aus, oder geben Sie sie an:
type Azure-Dienstinstanz Subscription Member Systemseitig zugewiesen Logik-App <Name des Azure-Abonnements> <Name Ihrer Logik-App> Benutzerseitig zugewiesen Nicht zutreffend <Name des Azure-Abonnements> <Name Ihrer benutzerseitig zugewiesenen Identität> Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zuweisen von Azure-Rollen mit dem Azure-Portal.
Anschließend können Sie die Identität verwenden, um den Zugriff für Trigger und Aktionen zu authentifizieren, die verwaltete Identitäten unterstützen.
Weitere allgemeine Informationen zu dieser Aufgabe finden Sie unter Zuweisen des Zugriffs einer verwalteten Identität auf eine Azure-Ressource oder eine andere Ressource.
Erstellen einer Zugriffsrichtlinie mithilfe des Azure-Portals
Um eine verwaltete Identität für die Authentifizierung zu verwenden, unterstützen oder erfordern andere Azure-Ressourcen auch, dass Sie eine Zugriffsrichtlinie erstellen, die über die entsprechenden Berechtigungen für die Zielressource für diese Identität verfügt. Einige Azure-Ressourcen wie Azure-Speicherkonten hingegen erfordern, dass Sie diese Identität einer Rolle zuweisen, die über die entsprechenden Berechtigungen für die Zielressource verfügt.
Öffnen Sie im Azure-Portal die Zielressource, auf der Sie die Identität verwenden möchten. In diesem Beispiel wird ein Azure-Schlüsseltresor als Zielressource verwendet.
Wählen Sie im Menü der Ressource Zugriffsrichtlinien>Erstellen aus, wodurch der Bereich Zugriffsrichtlinie erstellen geöffnet wird.
Hinweis
Wenn die Ressource nicht über die Option Zugriffsrichtlinien verfügt, versuchen Sie stattdessen, eine Rollenzuweisung durchzuführen.
Wählen Sie auf der Registerkarte Berechtigungen die erforderlichen Berechtigungen aus, die die Identität für den Zugriff auf die Zielressource benötigt.
Um beispielsweise die Identität mit dem Vorgang Geheimnisse auflisten des verwalteten Azure Key Vault-Connectors zu verwenden, benötigt die Identität Berechtigungen zum Auflisten. Wählen Sie also in der Spalte Geheimnisberechtigungen die Option Auflisten aus.
Klicken Sie abschließend auf Weiter. Wählen Sie auf der Registerkarte Prinzipal die verwaltete Identität aus, bei der es sich in diesem Beispiel um eine vom Benutzer zugewiesene Identität handelt, und wählen Sie sie aus.
Überspringen Sie den Schritt optionalen Schritt Anwendung, wählen Sie Weiter aus, und schließen Sie die Erstellung der Zugriffsrichtlinie ab.
Im nächsten Abschnitt wird die Verwendung einer verwalteten Identität mit einem Trigger oder einer Aktion erläutert, um den Zugriff zu authentifizieren. Das Beispiel wird mit den Schritten aus einem früheren Abschnitt fortgesetzt, in dem Sie den Zugriff für eine verwaltete Identität mithilfe von RBAC und einem Azure-Speicherkonto als Beispiel einrichten. Die allgemeinen Schritte zum Verwenden einer verwalteten Identität für die Authentifizierung sind jedoch identisch.
Authentifizieren des Zugriffs mit der verwalteten Identität
Nachdem Sie die verwaltete Identität für die Logik-App-Ressource aktiviert und dieser Identität Zugriff auf die Azure-Zielressource oder den Zieldienst gewährt haben, können Sie diese Identität in Triggern und Aktionen verwenden, die verwaltete Identitäten unterstützen.
Wichtig
Für eine Azure-Funktion, für die die systemseitig zugewiesene Identität verwendet werden soll, müssen Sie zunächst die Authentifizierung für Azure-Funktionen aktivieren.
Die folgenden Schritte veranschaulichen, wie Sie die verwaltete Identität über das Azure-Portal mit einem Trigger oder einer Aktion verwenden. Informationen zum Angeben der verwalteten Identität in der zugrunde liegenden JSON-Definition eines Triggers oder einer Aktion finden Sie unter Authentifizierung der verwalteten Identität.
Öffnen Sie im Azure-Portal Ihre verbrauchsbasierte Logik-App-Ressource.
Wenn dies noch nicht erfolgt ist, fügen Sie den Trigger oder die Aktion hinzu, der bzw. die verwaltete Identitäten unterstützt.
Hinweis
Nicht alle Connectorvorgänge unterstützen das Hinzufügen eines Authentifizierungstyps. Weitere Informationen finden Sie unter Authentifizierungstypen für Trigger und Aktionen, die die Authentifizierung unterstützen.
Führen Sie für den hinzugefügten Trigger oder die hinzugefügte Aktion die folgenden Schritte aus:
Integrierte Connectorvorgänge, die die Authentifizierung mit verwalteter Identität unterstützen
Mit diesen Schritten wird weiter die HTTP-Aktion als Beispiel verwendet.
Fügen Sie in der Liste Erweiterte Parameter die Eigenschaft Authentifizierung hinzu, wenn die Eigenschaft noch nicht angezeigt wird.
Nun werden sowohl die Eigenschaft Authentifizierung als auch die Liste Authentifizierungstyp für die Aktion angezeigt.
Wählen Sie in der Liste Authentifizierungstyp die Option Verwaltete Identität aus.
Im Abschnitt Authentifizierung werden nun die folgenden Optionen angezeigt:
Die Liste Verwaltete Identität, aus der Sie eine bestimmte verwaltete Identität auswählen können
Die Eigenschaft Zielgruppe wird für bestimmte Trigger und Aktionen angezeigt, damit Sie die Ressourcen-ID für die Azure-Zielressource oder den Zieldienst festlegen können. Andernfalls wird für die Audience-Eigenschaft standardmäßig die Ressourcen-ID
https://management.azure.com/
verwendet, bei der es sich um die Ressourcen-ID für Azure Resource Manager handelt.
Wählen Sie in der Liste Verwaltete Identität die Identität aus, die Sie verwenden möchten, z. B.:
Hinweis
Die standardmäßig ausgewählte Option ist Systemseitig zugewiesene verwaltete Identität, auch wenn keine verwalteten Identitäten aktiviert sind.
Um eine verwaltete Identität zu verwenden, müssen Sie diese Identität zuerst in Ihrer Logik-App aktivieren. Bei einer Verbrauchs-Logik-App können Sie entweder die systemseitig oder benutzerseitig zugewiesene verwaltete Identität verwenden, aber nicht beide.
Weitere Informationen finden Sie im Beispiel: Authentifizieren eines vordefinierten Triggers oder einer Aktion über eine verwaltete Identität.
Verwaltete Connectorvorgänge, die die Authentifizierung mit verwalteter Identität unterstützen
Wählen Sie im Bereich Verbindung erstellen aus der Liste Authentifizierung die Option Verwaltete Identitätaus, z. B.:
Geben Sie auf der nächsten Seite unter Verbindungsname einen Namen an, der für die Verbindung verwendet werden soll.
Wählen Sie als Authentifizierungstyp basierend auf Ihrem verwalteten Connector eine der folgenden Optionen aus:
Einfache Authentifizierung: Diese Connectors unterstützen nur einen Authentifizierungstyp, in diesem Fall eine verwaltete Identität.
Wählen Sie in der Liste Verwaltete Identität die aktuell aktivierte verwaltet Identität aus.
Wählen Sie Neu erstellen aus, wenn Sie fertig sind.
Mehrfachauthentifizierung: Diese Connectors unterstützen mehrere Authentifizierungstypen, aber Sie können jeweils nur einen Typ auswählen.
Mit diesen Schritten wird weiter eine Azure Blob Storage-Aktion als Beispiel verwendet.
Weitere Informationen finden Sie im Beispiel: Authentifizieren eines Triggers mit verwaltetem Connector oder einer Aktion über eine verwaltete Identität.
Beispiel: Authentifizieren eines vordefinierten Triggers oder einer Aktion über eine verwaltete Identität
Die für die Logik-App-Ressource aktivierte systemseitig zugewiesene Identität kann von dem integrierten HTTP-Trigger oder der HTTP-Aktion verwendet werden. Im Allgemeinen werden im HTTP-Trigger oder der HTTP-Aktion die folgenden Eigenschaften verwendet, um die Ressource oder Entität anzugeben, auf die Sie zugreifen möchten:
Eigenschaft | Erforderlich | BESCHREIBUNG |
---|---|---|
Methode | Ja | Die HTTP-Methode, die in dem Vorgang verwendet wird, den Sie ausführen möchten. |
URI | Ja | Die Endpunkt-URL für den Zugriff auf die Azure-Zielressource oder Azure-Zielentität. Die URI-Syntax enthält normalerweise die Ressourcen-ID für die Azure-Zielressource oder den Azure-Zieldienst. |
Headers | Nein | Alle Headerwerte, die Sie in der ausgehenden Anforderung einfügen müssen oder möchten, z. B. den Inhaltstyp |
Abfragen | Nein | Alle Abfrageparameter, die Sie in die Anforderung einschließen müssen oder möchten – beispielsweise Abfrageparameter für einen bestimmten Vorgang oder für die API-Version des Vorgangs, den Sie ausführen möchten. |
Authentifizierung | Ja | Der Authentifizierungstyp, der zum Authentifizieren des Zugriffs auf die Zielressource oder den Zieldienst verwendet werden soll |
Als konkretes Beispiel wird angenommen, dass Sie den Snapshot Blob-Vorgang für ein Blob in dem Azure Storage-Konto ausführen möchten, in dem Sie zuvor den Zugriff für die Identität eingerichtet haben. Jedoch unterstützt der Azure Blob Storage-Connector diesen Vorgang derzeit nicht. Stattdessen können Sie diesen Vorgang mithilfe der HTTP-Aktion oder mit einem anderen REST-API-Vorgang des Blob-Diensts ausführen.
Wichtig
Stellen Sie für den Zugriff auf Azure-Speicherkonten hinter Firewalls mithilfe des Azure Blob Storage-Connectors und verwalteter Identitäten sicher, dass Sie Ihr Speicherkonto auch mit der Ausnahme, die den Zugriff durch vertrauenswürdige Microsoft-Dienste zulässt, einrichten.
Zum Ausführen des Snapshot Blob-Vorgangs werden in der HTTP-Aktion die folgenden Eigenschaften angegeben:
Eigenschaft | Erforderlich | Beispielwert | Beschreibung |
---|---|---|---|
URI | Ja | https://<storage-account-name>/<folder-name>/{name} |
Die Ressourcen-ID für eine Azure Blob Storage-Datei in der globalen (öffentlichen) Azure-Umgebung, in der diese Syntax verwendet wird. |
Methode | Ja | PUT |
Die im Snapshot Blob-Vorgang verwendete HTTP-Methode |
Headers | Für Azure Storage | x-ms-blob-type = BlockBlob x-ms-version = 2024-05-05 x-ms-date = formatDateTime(utcNow(),'r') |
Die Headerwerte x-ms-blob-type , x-ms-version und x-ms-date , die für Azure Storage-Vorgänge erforderlich sind. Wichtig: In ausgehenden Anforderungen für HTTP-Trigger und HTTP-Aktionen für Azure Storage sind für den Header die x-ms-version -Eigenschaft und die API-Version für den auszuführenden Vorgang erforderlich. x-ms-date muss das aktuelle Datum sein. Andernfalls tritt bei Ihrem Workflow ein 403 FORBIDDEN -Fehler auf. Um das aktuelle Datum im erforderlichen Format abzurufen, können Sie den Ausdruck im Beispielwert verwenden. Weitere Informationen finden Sie in der folgenden Dokumentation: - Anforderungsheader: Snapshot Blob - Versionsverwaltung für Azure Storage-Dienste |
Abfragen | Nur für den Vorgang für den Momentaufnahmeblob | comp = snapshot |
Der Name und der Wert des Abfrageparameters für den Vorgang. |
Fügen Sie im Workflow-Designer alle gewünschten Trigger hinzu, und fügen Sie dann die HTTP-Aktion hinzu.
Das folgende Beispiel zeigt eine HTTP-Beispielaktion mit allen zuvor beschriebenen Eigenschaftswerten, die für den Momentaufnahmeblobvorgang verwendet werden sollen:
Fügen Sie in der HTTP-Aktion die Eigenschaft Authentifizierung hinzu. Wählen Sie in der Liste Erweiterte Parameter die Option Authentifizierung aus.
Der Abschnitt Authentifizierung wird nun in Ihrer HTTP-Aktion angezeigt.
Hinweis
Sie können nicht für alle Trigger und Aktionen einen Authentifizierungstyp hinzufügen. Weitere Informationen finden Sie unter Authentifizierungstypen für Trigger und Aktionen, die die Authentifizierung unterstützen.
Wählen Sie in der Liste Authentifizierungstyp die Option Verwaltete Identität aus.
Wählen Sie in der Liste Verwaltete Identität einen Eintrag für Ihr Szenario aus.
Wenn Sie die systemseitig zugewiesene Identität eingerichtet haben, wählen Sie Systemseitig zugewiesene verwaltete Identität aus.
Wenn Sie die benutzerseitig zugewiesene Identität einrichten, wählen Sie diese Identität aus.
In diesem Beispiel wird weiterhin die Systemseitig zugewiesene verwaltete Identität verwendet.
Die Eigenschaft Zielgruppe wird für bestimmte Trigger und Aktionen angezeigt, damit Sie die Ressourcen-ID für die Azure-Zielressource oder den Zieldienst festlegen können.
Wenn Sie beispielsweise den Zugriff auf eine Key Vault-Ressource in der globalen Azure-Cloud authentifizieren möchten, müssen Sie die Audience-Eigenschaft auf exakt die folgende Ressourcen-ID festlegen:
https://vault.azure.net
Wenn Sie die Audience-Eigenschaft nicht festlegen, verwendet die Audience-Eigenschaft standardmäßig die Ressourcen-ID
https://management.azure.com/
, bei der es sich um die Ressourcen-ID für Azure Resource Manager handelt.Wichtig
Vergewissern Sie sich, dass die Zielressourcen-ID genau dem Wert entspricht, der in Microsoft Entra ID erwartet wird. Andernfalls wird möglicherweise ein
400 Bad Request
-Fehler oder ein401 Unauthorized
-Fehler angezeigt. Wenn die Ressourcen-ID also nachfolgende Schrägstriche enthält, stellen Sie sicher, dass sie einbezogen werden. Andernfalls schließen Sie sie nicht ein.Die Ressourcen-ID für alle Azure Blob Storage-Konten erfordert z. B. einen nachgestellten Schrägstrich. Allerdings erfordert die Ressourcen-ID für ein bestimmtes Speicherkonto keinen nachgestellten Schrägstrich. Hier finden Sie die Ressourcen-IDs für die Azure-Dienste, die die Microsoft Entra ID-Authentifizierung unterstützen.
In diesem Beispiel wird die Audience-Eigenschaft auf
https://storage.azure.com/
festgelegt, sodass die für die Authentifizierung verwendeten Zugriffstoken für alle Speicherkonten gültig sind. Sie können jedoch auch die Stammdienst-URL für ein bestimmtes Speicherkonto angeben, z. B.https://<your-storage-account>.blob.core.windows.net
.Weitere Informationen zum Autorisieren des Zugriffs mit Microsoft Entra ID für Azure Storage finden Sie in der folgenden Dokumentation:
Fahren Sie damit fort, den Workflow wie gewünscht zu erstellen.
Beispiel: Authentifizieren eines Triggers oder einer Aktion eines verwalteter Connectors über eine verwaltete Identität
Der verwaltete Azure Resource Manager-Connector verfügt über eine Aktion namens Ressource lesen, die die verwaltete Identität verwenden kann, die Sie für Ihre Logik-App-Ressource aktivieren. Dieses Beispiel zeigt Ihnen die Verwendung der systemseitig zugewiesenen verwalteten Identität mit einem verwalteten Connector.
Fügen Sie im Workflow-Designer die Azure Resource Manager-Aktion namens Ressource lesenhinzu.
Wählen Sie im Bereich Verbindung erstellen aus der Liste Authentifizierung die Option Verwaltete Identität aus, und wählen Sie dann Anmelden aus.
Hinweis
Für andere Connectors wird in der Liste Authentifizierungstyp stattdessen Verwaltete Logic Apps-Identität angezeigt. Wählen Sie daher diese Option aus.
Geben Sie einen Namen für die Verbindung an, und wählen Sie die verwaltete Identität aus, die Sie verwenden möchten.
Wenn Sie die systemseitig zugewiesene Identität aktiviert haben, wählt die Liste Verwaltete Identität automatisch Systemseitig zugewiesene verwaltete Identität aus. Wenn Sie stattdessen eine benutzerseitig zugewiesene Identität aktiviert haben, wählt die Liste automatisch die benutzerseitig zugewiesene Identität aus.
In diesem Beispiel ist die systemseitig zugewiesene verwaltete Identität die einzige verfügbare Auswahl.
Hinweis
Wenn die verwaltete Identität nicht aktiviert ist, wenn Sie versuchen, die Verbindung zu erstellen oder zu ändern, oder wenn die verwaltete Identität entfernt wurde, während eine Verbindung mit aktivierter verwalteter Identität noch vorhanden ist, wird eine Fehlermeldung angezeigt, dass Sie die Identität aktivieren und Zugriff auf die Zielressource gewähren müssen.
Wählen Sie Neu erstellen aus, wenn Sie fertig sind.
Nachdem der Designer die Verbindung erfolgreich erstellt hat, kann er dynamische Werte, Inhalte oder Schemas durch Authentifizierung über die verwaltete Identität abrufen.
Fahren Sie damit fort, den Workflow wie gewünscht zu erstellen.
Ressourcendefinition und Verbindungen von Logik-Apps, die eine verwaltete Identität verwenden
Eine Verbindung, die eine verwaltete Identität aktiviert und verwendet, ist ein spezieller Verbindungstyp, der nur mit einer verwalteten Identität funktioniert. Zur Laufzeit verwendet die Verbindung die verwaltete Identität, die für die Logik-App-Ressource aktiviert wurde. Azure Logic Apps prüft, ob verwaltete Connectorvorgänge im Workflow für die Verwendung der verwalteten Identität eingerichtet sind. Außerdem wird sichergestellt, dass alle erforderlichen Berechtigungen vorhanden sind, um über die verwaltete Identität auf die Zielressourcen zuzugreifen, die durch die Connectorvorgänge angegeben werden. Bei erfolgreicher Prüfung ruft Azure Logic Apps das Microsoft Entra-Token ab, das der verwalteten Identität zugeordnet ist, authentifiziert anhand dieser Identität den Zugriff auf die Azure-Zielressource und führt die konfigurierten Vorgänge im Workflow aus.
In einer Verbrauchs-Logik-App-Ressource wird die Verbindungskonfiguration im parameters
-Objekt der Ressourcendefinition gespeichert, das das $connections
-Objekt mit Zeigern auf die Ressourcen-ID der Verbindung zusammen mit der Ressourcen-ID der verwalteten Identität enthält, wenn die benutzerseitig zugewiesene Identität aktiviert ist.
Dieses Beispiel zeigt die Konfiguration des parameters
-Objekts bei Aktivierung der systemseitig zugewiesenen Identität in der Logik-App:
"parameters": {
"$connections": {
"value": {
"<action-name>": {
"connectionId": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>",
"connectionName": "<connector-name>",
"connectionProperties": {
"authentication": {
"type": "ManagedServiceIdentity"
}
},
"id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/<managed-connector-type>"
}
}
}
}
Dieses Beispiel zeigt die Konfiguration des parameters
-Objekts bei Aktivierung der benutzerseitig zugewiesenen verwalteten Identität in der Logik-App:
"parameters": {
"$connections": {
"value": {
"<action-name>": {
"connectionId": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>",
"connectionName": "<connector-name>",
"connectionProperties": {
"authentication": {
"type": "ManagedServiceIdentity",
"identity": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/microsoft.managedidentity/userassignedidentities/<managed-identity-name>"
}
},
"id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/<managed-connector-type>"
}
}
}
}
ARM-Vorlage für API-Verbindungen und verwaltete Identitäten
Wenn Sie eine ARM-Vorlage zum Automatisieren der Bereitstellung verwenden und Ihr Workflow eine API-Verbindung enthält, die von einem verwalteten Connector erstellt wird, der eine verwaltete Identität verwendet, müssen Sie einen zusätzlichen Schritt ausführen.
In einer ARM-Vorlage unterscheidet sich die zugrunde liegende Definition der Connectorressource je nachdem, ob Sie eine Verbrauchs- oder Standard-Logik-App-Ressource haben und ob der Connector Optionen für die einfache oder mehrfache Authentifizierung aufweist.
Die folgenden Beispiele gelten für Verbrauchs-Logik-App-Ressourcen und zeigen, wie sich die zugrunde liegende Definition der Connectorressource zwischen einem Connector mit einfacher Authentifizierung und einem Connector mit mehrfacher Authentifizierung unterscheidet.
Einfache Authentifizierung
In diesem Beispiel wird die zugrunde liegende Definition einer Verbindungsressource für eine Connectoraktion gezeigt, die nur einen Authentifizierungstyp unterstützt und eine verwaltete Identität in einem Verbrauchs-Logik-App-Workflow verwendet, wobei die Definition die folgenden Attribute enthält:
Die
kind
-Eigenschaft wird für eine Verbrauchs-Logik-App aufV1
festgelegt.Die
parameterValueType
-Eigenschaft ist aufAlternative
festgelegt.
{
"type": "Microsoft.Web/connections",
"apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
"name": "[variables('connections_<connector-name>_name')]",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"alternativeParameterValues": {},
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureautomation')]"
},
"authenticatedUser": {},
"connectionState": "Enabled",
"customParameterValues": {},
"displayName": "[variables('connections_<connector-name>_name')]",
"parameterValueSet": {},
"parameterValueType": "Alternative"
}
},
Mehrfachauthentifizierung
In diesem Beispiel wird die zugrunde liegende Definition einer Verbindungsressource für eine Connectoraktion gezeigt, die mehrere Authentifizierungstypen unterstützt und eine verwaltete Identität in einem Verbrauchs-Logik-App-Workflow verwendet, wobei die Definition die folgenden Attribute enthält:
Die
kind
-Eigenschaft wird für eine Verbrauchs-Logik-App aufV1
festgelegt.Das
parameterValueSet
-Objekt umfasst einename
-Eigenschaft, die auf festgelegtmanagedIdentityAuth
ist, sowie einevalues
-Eigenschaft, die auf ein leeres Objekt festgelegt ist.
{
"type": "Microsoft.Web/connections",
"apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
"name": "[variables('connections_<connector-name>_name')]",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"alternativeParameterValues":{},
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureblob')]"
},
"authenticatedUser": {},
"connectionState": "Enabled",
"customParameterValues": {},
"displayName": "[variables('connections_<connector-name>_name')]",
"parameterValueSet":{
"name": "managedIdentityAuth",
"values": {}
},
"parameterValueType": "Alternative"
}
}
Einrichten der erweiterten Steuerung der API-Verbindungsauthentifizierung
Wenn Ihr Standard-Logik-App-Workflow eine API-Verbindung verwendet, die von einem verwalteten Connector erstellt wird, kommuniziert Azure Logic Apps über zwei Verbindungen mit der Zielressource, z. B. Ihrem E-Mail-Konto, Ihrem Schlüsseltresor usw.:
Verbindung 1 wird mit Authentifizierung für den internen Tokenspeicher eingerichtet.
Verbindung 2 wird mit Authentifizierung für die Zielressource eingerichtet.
Wenn ein Verbrauchs-Logik-App-Workflow allerdings eine API-Verbindung verwendet, wird Verbindung 1 ohne Konfigurationsoptionen von Ihnen abstrahiert. Mit einer Standard-Logik-App-Ressource haben Sie mehr Kontrolle über Ihre Logik-App und die Workflows. Standardmäßig wird die Verbindung 1 automatisch für die Verwendung der systemseitig zugewiesenen Identität eingerichtet.
Wenn Ihr Szenario eine feinere Steuerung der Authentifizierung von API-Verbindungen erfordert, können Sie optional die Authentifizierung für Verbindung 1 von der systemseitig zugewiesenen Standardidentität in eine beliebige benutzerseitig zugewiesene Identität ändern, die Sie Ihrer Logik-App hinzugefügt haben. Diese Authentifizierung gilt für jede API-Verbindung, sodass Sie vom System zugewiesene und vom Benutzer zugewiesene Identitäten verschiedene Verbindungen übergreifend für dieselbe Zielressource kombinieren können.
In der Datei connections.json Ihrer Standard-Logik-App, in der Informationen zu jeder API-Verbindung gespeichert werden, enthält jede Verbindungsdefinition zwei authentication
-Abschnitte, z. B.:
"keyvault": {
"api": {
"id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault"
},
"authentication": {
"type": "ManagedServiceIdentity",
},
"connection": {
"id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>"
},
"connectionProperties": {
"authentication": {
"audience": "https://vault.azure.net",
"type": "ManagedServiceIdentity"
}
},
"connectionRuntimeUrl": "<connection-runtime-URL>"
}
Der erste Abschnitt vom Typ
authentication
ist der Verbindung 1 zugeordnet.In diesem Abschnitt wird die Authentifizierung beschrieben, die für die Kommunikation mit dem internen Tokenspeicher verwendet wird. In der Vergangenheit wurde dieser Abschnitt für eine App, die in Azure bereitgestellt wurde und keine konfigurierbaren Optionen hatte, immer auf
ManagedServiceIdentity
festgelegt.Der zweite Abschnitt vom Typ
authentication
ist der Verbindung 2 zugeordnet.In diesem Abschnitt wird die Authentifizierung beschrieben, die für die Kommunikation mit der Zielressource verwendet wird, und kann je nach dem Authentifizierungstyp variieren, den Sie für diese Verbindung auswählen.
Warum sollte die Authentifizierung für den Tokenspeicher geändert werden?
In einigen Szenarien können Sie dieselbe API-Verbindung für mehrere Logik-App-Ressourcen freigeben und verwenden, aber nicht die systemseitig zugewiesene Identität für jede Logik-App-Ressource der Zugriffsrichtlinie der Zielressource hinzufügen.
In anderen Szenarien möchten Sie nicht, dass die vom System zugewiesene Identität vollständig in Ihrer Logik-App eingerichtet wird, sodass Sie die Authentifizierung in eine vom Benutzer zugewiesene Identität ändern und die vom System zugewiesene Identität vollständig deaktivieren können.
Ändern der Authentifizierung für den Tokenspeicher
Öffnen Sie im Azure-Portal Ihre Ressource vom Typ „Logic App (Standard)“.
Wählen Sie im Ressourcenmenü unter Workflows die Option Verbindungen aus.
Wählen Sie im Bereich Verbindungen die Option JSON-Ansicht aus.
Suchen Sie im JSON-Editor nach dem Abschnitt
managedApiConnections
, der die API-Verbindungen für alle Workflows in Ihrer Logik-App-Ressource enthält.Suchen Sie die Verbindung, der Sie eine vom Benutzer zugewiesene verwaltete Identität hinzufügen möchten.
Angenommen, Ihr Workflow verfügt über eine Azure Key Vault-Verbindung:
"keyvault": { "api": { "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault" }, "authentication": { "type": "ManagedServiceIdentity" }, "connection": { "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>" }, "connectionProperties": { "authentication": { "audience": "https://vault.azure.net", "type": "ManagedServiceIdentity" } }, "connectionRuntimeUrl": "<connection-runtime-URL>" }
Führen Sie in der Verbindungsdefinition die folgenden Schritte aus:
Suchen Sie den ersten
authentication
-Abschnitt. Wenn in diesemauthentication
-Abschnitt noch keineidentity
-Eigenschaft vorhanden ist, verwendet die Logik-App implizit die systemseitig zugewiesene Identität.Fügen Sie mithilfe des Beispiels in diesem Schritt eine
identity
-Eigenschaft hinzu.Legen Sie den Eigenschaftswert auf die Ressourcen-ID für die vom Benutzer zugewiesene Identität fest.
"keyvault": { "api": { "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault" }, "authentication": { "type": "ManagedServiceIdentity", // Add "identity" property here "identity": "/subscriptions/<Azure-subscription-ID>/resourcegroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity-resource-ID>" }, "connection": { "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>" }, "connectionProperties": { "authentication": { "audience": "https://vault.azure.net", "type": "ManagedServiceIdentity" } }, "connectionRuntimeUrl": "<connection-runtime-URL>" }
Wechseln Sie im Azure-Portal zur Zielressource, und gewähren Sie basierend auf den Anforderungen der Zielressource Zugriff auf die vom Benutzer zugewiesene verwaltete Identität.
Fügen Sie beispielsweise für Azure Key Vault die Identität den Zugriffsrichtlinien des Schlüsseltresors hinzu. Weisen Sie für Azure Blob Storage die erforderliche Rolle für die Identität dem Speicherkonto zu.
Deaktivieren von verwalteten Identitäten
Um die Verwendung der verwalteten Identität für die Authentifizierung zu beenden, entfernen Sie zunächst den Zugriff der Identität auf die Zielressource. Deaktivieren Sie als Nächstes in Ihrer Logik-App-Ressource die systemseitig zugewiesene Identität, oder entfernen Sie die vom Benutzer zugewiesene Identität.
Wenn Sie die verwaltete Identität für Ihre Logik-App-Ressource deaktivieren, entfernen Sie die Funktion für diese Identität, Zugriff auf Azure-Ressourcen anzugeben, auf die die Identität Zugriff hatte.
Hinweis
Wenn Sie die systemseitig zugewiesene Identität deaktivieren, funktionieren alle Verbindungen, die von Workflows im Workflow dieser Logik-App verwendet werden, nicht zur Laufzeit, auch wenn Sie die Identität sofort wieder aktivieren. Dieses Verhalten tritt auf, da durch das Deaktivieren der Identität die Objekt-ID gelöscht wird. Jedes Mal, wenn Sie die Identität aktivieren, generiert Azure die Identität mit einer anderen und eindeutigen Objekt-ID. Um dieses Problem zu beheben, müssen Sie die Verbindungen neu erstellen, damit sie die aktuelle Objekt-ID für die aktuelle systemseitig zugewiesene Identität verwenden.
Versuchen Sie, die systemseitig zugewiesene Identität so weit wie möglich zu deaktivieren. Wenn Sie den Zugriff der Identität auf Azure-Ressourcen entfernen möchten, entfernen Sie die Rollenzuweisung der Identität aus der Zielressource. Wenn Sie die Logik-App-Ressource löschen, wird in Azure die verwaltete Identität automatisch aus Microsoft Entra ID entfernt.
Die Schritte in diesem Abschnitt behandeln die Verwendung des Azure-Portals und der Azure Resource Manager Vorlage (ARM-Vorlage). Informationen zu Azure PowerShell, Azure CLI und der Azure-REST-API finden Sie in der folgenden Dokumentation:
Tool | Dokumentation |
---|---|
Azure PowerShell | 1. Entfernen von Rollenzuweisungen. 2. Löschen von benutzerseitig zugewiesenen Identitäten. |
Azure-Befehlszeilenschnittstelle | 1. Entfernen von Rollenzuweisungen. 2. Löschen von benutzerseitig zugewiesenen Identitäten. |
Azure-REST-API | 1. Entfernen von Rollenzuweisungen. 2. Löschen von benutzerseitig zugewiesenen Identitäten. |
Weitere Informationen finden Sie unter Entfernen von Azure-Rollenzuweisungen.
Deaktivieren der verwalteten Identität im Azure-Portal
Um den Zugriff für die verwaltete Identität zu entfernen, entfernen Sie die Rollenzuweisung der Identität aus der Zielressource, und deaktivieren Sie dann die verwaltete Identität.
Entfernen von Rollenzuweisungen
Mit den folgenden Schritten wird der Zugriff auf die Zielressource aus der verwalteten Identität entfernt:
Navigieren Sie im Azure-Portal zu der Azure-Zielressource, für die Sie den Zugriff für die verwaltete Identität aufheben möchten.
Wählen Sie im Menü der Zielressource die Option Zugriffssteuerung (IAM) aus. Wählen Sie auf der Symbolleiste die Option Rollenzuweisungen aus.
Wählen Sie in der Liste der Rollen die verwalteten Identitäten aus, die Sie entfernen möchten. Wählen Sie auf der Symbolleiste die Option Entfernen aus.
Tipp
Wenn die Option Entfernen deaktiviert ist, verfügen Sie wahrscheinlich nicht über die erforderlichen Berechtigungen. Weitere Informationen zu den Berechtigungen, mit denen Sie Rollen für Ressourcen verwalten können, finden Sie unter Berechtigungen der Administratorrolle in Microsoft Entra ID.
Deaktivieren einer verwalteten Identität für die Logik-App-Ressource
Öffnen Sie Ihre Logik-App-Ressource im Azure-Portal.
Wählen Sie im Ressourcenmenü der Logik-App unter Einstellungen die Option Identität aus, und befolgen Sie dann die Schritte für Ihre Identität:
Wählen Sie Vom System zugewiesen>Ein>Speichern aus. Wenn Sie von Azure zur Bestätigung aufgefordert werden, wählen Sie Ja aus.
Wählen Sie Vom Benutzer zugewiesen, die verwaltete Identität und dann Entfernen aus. Wenn Sie von Azure zur Bestätigung aufgefordert werden, wählen Sie Ja aus.
Deaktivieren einer verwalteten Identität in einer ARM-Vorlage
Wenn Sie die verwaltete Identität der Logik-App mithilfe einer ARM-Vorlage erstellt haben, legen Sie die untergeordnete type
-Eigenschaft des identity
-Objekts auf None
fest.
"identity": {
"type": "None"
}