Blockieren der Connectornutzung in Azure Logic Apps
Gilt für: Azure Logic Apps (Verbrauch + Standard)
Falls Ihre Organisation das Herstellen einer Verbindung mit eingeschränkten oder nicht genehmigten Ressourcen mithilfe der verwalteten Connectors in Azure Logic Apps nicht erlaubt, können Sie die Funktion zum Erstellen und Verwenden dieser Verbindungen in Logik-App-Workflows blockieren. Mit Azure Policy können Sie Richtlinien definieren und erzwingen, mit denen die Erstellung oder Verwendung von Verbindungen für Connectors, die Sie blockieren möchten, verhindert wird. Es kann beispielsweise sein, dass Sie aus Sicherheitsgründen Verbindungen mit bestimmten Social Media-Plattformen oder anderen Diensten und Systemen blockieren möchten.
In diesem Artikel wird veranschaulicht, wie Sie über das Azure-Portal eine Richtlinie einrichten, mit der bestimmte Verbindungen blockiert werden. Sie können Richtliniendefinitionen aber auch auf andere Arten erstellen. Sie können beispielsweise die Azure-REST-API, Azure PowerShell, die Azure CLI und Azure Resource Manager-Vorlagen verwenden. Weitere Informationen finden Sie im Tutorial: Erstellen und Verwalten von Richtlinien zur Konformitätserzwingung.
Voraussetzungen
Ein Azure-Konto und ein Azure-Abonnement. Sollten Sie noch kein Abonnement besitzen, erstellen Sie ein kostenloses Azure-Konto.
Die Verweis-ID für den Connector, den Sie blockieren möchten. Weitere Informationen finden Sie im Abschnitt zur Ermittlung der Verweis-ID für den Connector.
Ermitteln der Verweis-ID für den Connector
Führen Sie die Schritte für das Azure-Portal aus, wenn Sie bereits über eine Logik-App mit der Verbindung verfügen, die Sie blockieren möchten. Führen Sie andernfalls die folgenden Schritte aus:
Referenzdokument zu Connectors
Weitere Informationen finden Sie unter Connectors für Azure Logic Apps.
Suchen Sie nach der Referenzseite für den Connector, den Sie blockieren möchten.
Greifen Sie beispielsweise auf die folgende Seite zu, wenn Sie den Instagram-Connector, der veraltet ist, blockieren möchten:
https://learn.microsoft.com/connectors/instagram/
Kopieren Sie am Ende der Seiten-URL die Verweis-ID des Connectors ohne den Schrägstrich (
/
), z. B.instagram
, und speichern Sie sie.Später beim Erstellen Ihrer Richtliniendefinition verwenden Sie diese ID in der Bedingungsanweisung der Definition, z. B.:
"like": "*managedApis/instagram"
Azure-Portal
Suchen Sie im Azure-Portal nach Ihrem Logik-App-Workflow, und öffnen Sie ihn.
Wählen Sie im Logik-App-Menü eine der folgenden Optionen aus:
Verbrauchsbasierte Logik-App: Wählen Sie unter Entwicklungstools die Option API-Verbindungen aus.
Standard-Logik-App: Wählen Sie unter Workflows die Option Verbindungen aus. Wählen Sie im Bereich Verbindungen die Option API-Verbindungen aus, sofern noch nicht geschehen.
Wählen Sie im Bereich „API-Verbindungen“ die Verbindung aus. Wenn der Bereich „Verbindung“ geöffnet wird, wählen Sie in der oberen rechten Ecke JSON-Ansicht aus.
Suchen Sie das
api
-Objekt, das eineid
-Eigenschaft und einen Wert im folgenden Format enthält:"id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{connection-name}"
Im folgenden Beispiel sind die Eigenschaft
id
und der Wert für eine Instagram-Verbindung angegeben:"id": "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/providers/Microsoft.Web/locations/westus/managedApis/instagram"
Kopieren Sie am Ende des Eigenschaftswerts
id
die Verweis-ID des Connectors, z. B.instagram
, und speichern Sie sie.Später beim Erstellen Ihrer Richtliniendefinition verwenden Sie diese ID in der Bedingungsanweisung der Definition, z. B.:
"like": "*managedApis/instagram"
Blockieren der Verbindungserstellung
Führen Sie die folgenden Schritte aus, um die Erstellung einer Verbindung in einem Logik-App-Workflow vollständig zu blockieren:
Geben Sie im Azure-Portal ins Suchfeld Richtlinie ein, und wählen Sie Richtlinie aus.
Wählen Sie im Menü Richtlinie unter Erstellen die Option Definitionen aus. Wählen Sie auf der Symbolleiste des Bereichs Definitionen die Option Richtliniendefinition aus.
Geben Sie im Bereich Richtliniendefinition die Informationen zu Ihrer Richtliniendefinition basierend auf den Eigenschaften an, die unter dem Beispiel beschrieben sind:
Eigenschaft Erforderlich Wert BESCHREIBUNG Definitionsspeicherort Ja <Name des Azure-Abonnements> Das Azure-Abonnement, das für die Richtliniendefinition verwendet werden soll. 1. Wählen Sie die Schaltfläche mit den Auslassungszeichen ( ... ) aus, um nach Ihrem Abonnement zu suchen.
2. Suchen Sie in der Liste Abonnement nach Ihrem Abonnement, und wählen Sie es aus.
3. Wählen Sie die Option Auswählen aus, wenn Sie fertig sind.Name Ja <policy-definition-name> Der Name, der für die Richtliniendefinition verwendet werden soll. Beschreibung Nein <policy-definition-name> Eine Beschreibung für die Richtliniendefinition. Kategorie Ja Logik-Apps Der Name einer vorhandenen Kategorie oder neuen Kategorie für die Richtliniendefinition. Richtlinienerzwingung Ja Aktiviert Mit dieser Einstellung wird angegeben, ob die Richtliniendefinition aktiviert oder deaktiviert werden soll, wenn Sie Ihre Arbeit speichern. Unter RICHTLINIENREGEL wird das JSON-Bearbeitungsfeld vorab mit einer Vorlage für Richtliniendefinitionen aufgefüllt. Ersetzen Sie diese Vorlage durch Ihre Richtliniendefinition, indem Sie die unten in der Tabelle beschriebenen Eigenschaften und die folgende Syntax verwenden:
{ "mode": "All", "policyRule": { "if": { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/{connector-name}" }, "then": { "effect": "deny" } }, "parameters": {} }
Eigenschaft Wert BESCHREIBUNG mode
All
Der Modus, mit dem die von der Richtlinie ausgewerteten Ressourcentypen bestimmt werden. In diesem Szenario wird
mode
aufAll
festgelegt, um die Richtlinie auf Azure-Ressourcengruppen, -Abonnements und alle Ressourcentypen anzuwenden.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Modus.
if
{condition-to-evaluate}
Bedingung, die bestimmt, wann die Richtlinienregel erzwungen werden soll In diesem Szenario wird mit
{condition-to-evaluate}
bestimmt, ob der Wertapi.id
inMicrosoft.Web/connections/api.id
mit dem Element*managedApis/{connector-name}
übereinstimmt, in dem ein Platzhalterzeichen (*) angegeben ist.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Richtlinienregel.
field
Microsoft.Web/connections/api.id
Wert field
für den Vergleich mit der BedingungIn diesem Szenario wird für
field
der Alias,Microsoft.Web/connections/api.id
verwendet, um auf den Wert in der Connectoreigenschaftapi.id
zuzugreifen.like
*managedApis/{connector-name}
Logischer Operator und Wert für den Vergleich des field
-WertsIn diesem Szenario wird mit dem Operator
like
und dem Platzhalterzeichen (*) jeweils sichergestellt, dass die Regel unabhängig von der Region funktioniert und dass die Zeichenfolge*managedApis/{connector-name}
der Wert für den Abgleich ist. Hierbei steht{connector-name}
für die ID des Connectors, den Sie blockieren möchten.Angenommen, Sie möchten die Erstellung von Verbindungen mit Social Media-Plattformen oder -Datenbanken blockieren:
- X:
x
- Instagram:instagram
- Facebook:facebook
- Pinterest:pinterest
- SQL Server oder Azure SQL:sql
Informationen zum Ermitteln dieser Connector-IDs finden Sie weiter oben in diesem Thema unter Ermitteln der Verweis-ID für den Connector.
then
{effect-to-apply}
Auswirkung, die bei Erfüllung der if
-Bedingung erfolgen sollIn diesem Szenario umfasst
{effect-to-apply}
das Blockieren und Ablehnen einer Anforderung oder eines Vorgangs, die bzw. der die Bedingungen der Richtlinie nicht erfüllt.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Richtlinienregel.
effect
deny
effect
umfasst die Blockade der Anforderung, mit der die angegebene Verbindung erstellt werden sollWeitere Informationen finden Sie unter Grundlegendes zu Azure Policy-Auswirkungen: Verweigern.
Angenommen, Sie möchten die Erstellung von Verbindungen mit dem Instagram-Connector blockieren. Hier ist die Richtliniendefinition angegeben, die Sie verwenden können:
{ "mode": "All", "policyRule": { "if": { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/instagram" }, "then": { "effect": "deny" } }, "parameters": {} }
Hier ist dargestellt, wie das Feld RICHTLINIENREGEL angezeigt wird:
Für mehrere Connectors können Sie weitere Bedingungen hinzufügen, z. B.:
{ "mode": "All", "policyRule": { "if": { "anyOf": [ { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/instagram" }, { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/x" }, { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/facebook" }, { "field": "Microsoft.Web/connections/api.id", "like": "*managedApis/pinterest" } ] }, "then": { "effect": "deny" } }, "parameters": {} }
Klicken Sie auf Speichern, wenn Sie fertig sind. Nachdem Sie die Richtliniendefinition gespeichert haben, werden von Azure Policy weitere Eigenschaftswerte generiert und der Richtliniendefinition hinzugefügt.
Erstellen Sie als Nächstes eine Richtlinienzuweisung, um die Richtliniendefinition dem Ort zuzuweisen, an dem Sie sie erzwingen möchten.
Weitere Informationen zu Azure Policy-Definitionen finden Sie in den folgenden Artikeln:
- Struktur von Azure Policy-Definitionen
- Tutorial: Erstellen und Verwalten von Richtlinien zur Konformitätserzwingung
- Integrierte Azure Policy-Richtliniendefinitionen für Azure Logic Apps
Blockieren der Zuordnung von Verbindungen zu Logik-Apps
Wenn Sie eine Verbindung in einem Logik-App-Workflow erstellen, handelt es sich dabei um eine separate Azure-Ressource. Wenn Sie nur den Logik-App-Workflow löschen, wird die Verbindungsressource nicht automatisch gelöscht und ist so lange vorhanden, bis das Löschen erfolgt. Es kann vorkommen, dass die Verbindungsressource bereits vorhanden ist oder dass Sie die Verbindungsressource für die Nutzung außerhalb der Logik-App erstellen möchten. Sie können die Funktion trotzdem blockieren, um die Verbindung einem anderen Logik-App-Workflow zuzuordnen. Erstellen Sie hierfür eine Richtlinie, mit der das Speichern von Logik-App-Workflows verhindert wird, die versuchen, die eingeschränkte oder nicht genehmigte Verbindung zu verwenden. Diese Richtlinie wirkt sich nur auf Logik-App-Workflows aus, die die Verbindung nicht bereits verwenden.
Geben Sie im Azure-Portal ins Suchfeld Richtlinie ein, und wählen Sie Richtlinie aus.
Wählen Sie im Menü Richtlinie unter Erstellen die Option Definitionen aus. Wählen Sie auf der Symbolleiste des Bereichs Definitionen die Option Richtliniendefinition aus.
Geben Sie unter Richtliniendefinition die Informationen zu Ihrer Richtliniendefinition basierend auf den Eigenschaften an, die unter dem Beispiel beschrieben sind (wir verwenden weiterhin Instagram als Beispiel):
Eigenschaft Erforderlich Wert BESCHREIBUNG Definitionsspeicherort Ja <Name des Azure-Abonnements> Das Azure-Abonnement, das für die Richtliniendefinition verwendet werden soll. 1. Wählen Sie die Schaltfläche mit den Auslassungszeichen ( ... ) aus, um nach Ihrem Abonnement zu suchen.
2. Suchen Sie in der Liste Abonnement nach Ihrem Abonnement, und wählen Sie es aus.
3. Wählen Sie die Option Auswählen aus, wenn Sie fertig sind.Name Ja <policy-definition-name> Der Name, der für die Richtliniendefinition verwendet werden soll. Beschreibung Nein <policy-definition-name> Eine Beschreibung für die Richtliniendefinition. Kategorie Ja Logik-Apps Der Name einer vorhandenen Kategorie oder neuen Kategorie für die Richtliniendefinition. Richtlinienerzwingung Ja Aktiviert Mit dieser Einstellung wird angegeben, ob die Richtliniendefinition aktiviert oder deaktiviert werden soll, wenn Sie Ihre Arbeit speichern. Unter RICHTLINIENREGEL wird das JSON-Bearbeitungsfeld vorab mit einer Vorlage für Richtliniendefinitionen aufgefüllt. Ersetzen Sie diese Vorlage durch Ihre Richtliniendefinition, indem Sie die unten in der Tabelle beschriebenen Eigenschaften und die folgende Syntax verwenden:
{ "mode": "All", "policyRule": { "if": { "value": "[string(field('Microsoft.Logic/workflows/parameters'))]", "contains": "{connector-name}" }, "then": { "effect": "deny" } }, "parameters": {} }
Eigenschaft Wert BESCHREIBUNG mode
All
Der Modus, mit dem die von der Richtlinie ausgewerteten Ressourcentypen bestimmt werden. In diesem Szenario wird
mode
aufAll
festgelegt, um die Richtlinie auf Azure-Ressourcengruppen, -Abonnements und alle Ressourcentypen anzuwenden.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Modus.
if
{condition-to-evaluate}
Bedingung, die bestimmt, wann die Richtlinienregel erzwungen werden soll In diesem Szenario wird mit
{condition-to-evaluate}
bestimmt, ob die Zeichenfolgenausgabe von[string(field('Microsoft.Logic/workflows/parameters'))]
die Zeichenfolge{connector-name}
enthält.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Richtlinienregel.
value
[string(field('Microsoft.Logic/workflows/parameters'))]
Wert für den Vergleich mit der Bedingung In diesem Szenario ist
value
die Zeichenfolgenausgabe von[string(field('Microsoft.Logic/workflows/parameters'))]
, mit der das Objekt$connectors
im ObjektMicrosoft.Logic/workflows/parameters
in eine Zeichenfolge konvertiert wird.contains
{connector-name}
Logischer Operator und Wert für den Vergleich mit der Eigenschaft value
In diesem Szenario wird mit dem Operator
contains
sichergestellt, dass die Regel unabhängig davon funktioniert, wo{connector-name}
erscheint. Hierbei ist die Zeichenfolge{connector-name}
die ID für den Connector, den Sie einschränken oder blockieren möchten.Angenommen, Sie möchten die Verwendung von Verbindungen mit Social Media-Plattformen oder -Datenbanken blockieren:
- X:
x
- Instagram:instagram
- Facebook:facebook
- Pinterest:pinterest
- SQL Server oder Azure SQL:sql
Informationen zum Ermitteln dieser Connector-IDs finden Sie weiter oben in diesem Thema unter Ermitteln der Verweis-ID für den Connector.
then
{effect-to-apply}
Auswirkung, die bei Erfüllung der if
-Bedingung erfolgen sollIn diesem Szenario umfasst
{effect-to-apply}
das Blockieren und Ablehnen einer Anforderung oder eines Vorgangs, die bzw. der die Bedingungen der Richtlinie nicht erfüllt.Weitere Informationen finden Sie unter Struktur von Richtliniendefinitionen: Richtlinienregel.
effect
deny
effect
dient zum Ablehnen (deny
) oder Blockieren der Anforderung zum Speichern einer Logik-App, von der die angegebene Verbindung genutzt wirdWeitere Informationen finden Sie unter Grundlegendes zu Azure Policy-Auswirkungen: Verweigern.
Angenommen, Sie möchten das Speichern von Logik-Apps blockieren, für die Instagram-Verbindungen verwendet werden. Hier ist die Richtliniendefinition angegeben, die Sie verwenden können:
{ "mode": "All", "policyRule": { "if": { "value": "[string(field('Microsoft.Logic/workflows/parameters'))]", "contains": "instagram" }, "then": { "effect": "deny" } }, "parameters": {} }
Hier ist dargestellt, wie das Feld RICHTLINIENREGEL angezeigt wird:
Klicken Sie auf Speichern, wenn Sie fertig sind. Nachdem Sie die Richtliniendefinition gespeichert haben, werden von Azure Policy weitere Eigenschaftswerte generiert und der Richtliniendefinition hinzugefügt.
Erstellen Sie als Nächstes eine Richtlinienzuweisung, um die Richtliniendefinition dem Ort zuzuweisen, an dem Sie sie erzwingen möchten.
Weitere Informationen zu Azure Policy-Definitionen finden Sie in den folgenden Artikeln:
- Struktur von Azure Policy-Definitionen
- Tutorial: Erstellen und Verwalten von Richtlinien zur Konformitätserzwingung
- Integrierte Azure Policy-Richtliniendefinitionen für Azure Logic Apps
Erstellen einer Richtlinienzuweisung
Als Nächstes müssen Sie die Richtliniendefinition dem Element zuweisen, für das Sie die Richtlinie erzwingen möchten, z. B. einer oder mehreren Ressourcengruppen, einem Microsoft Entra-Mandanten oder einem Azure-Abonnement. Führen Sie die folgenden Schritte aus, um eine Richtlinienzuweisung zu erstellen:
Geben Sie im Azure-Portal ins Suchfeld Richtlinie ein, und wählen Sie Richtlinie aus.
Wählen Sie im Menü Richtlinie unter Erstellen die Option Zuweisungen aus. Wählen Sie auf der Symbolleiste im Bereich Zuordnungen die Option Richtlinie zuweisen aus.
Geben Sie im Bereich Richtlinie zuweisen unter Grundlagen die folgenden Informationen für die Richtlinienzuweisung an:
Eigenschaft Erforderlich BESCHREIBUNG Umfang Ja Die Ressourcen, für die Sie die Richtlinienzuweisung erzwingen möchten. 1. Wählen Sie neben dem Feld Bereich die Schaltfläche mit den Auslassungszeichen ( ... ) aus.
2. Wählen Sie in der Liste Abonnement das Azure-Abonnement aus.
3. Wählen Sie optional in der Liste Ressourcengruppe die Ressourcengruppe aus.
4. Wählen Sie die Option Auswählen aus, wenn Sie fertig sind.Ausschlüsse Nein Alle Azure-Ressourcen, die aus der Richtlinienzuweisung ausgeschlossen werden sollen. 1. Wählen Sie neben dem Feld Ausschlüsse die Schaltfläche mit den Auslassungszeichen ( ... ) aus.
2. Wählen Sie in der Liste Ressource die Ressource und dann die Option Zu ausgewähltem Bereich hinzufügen aus.
3. Klicken Sie auf Speichern, wenn Sie fertig sind.Richtliniendefinition Ja Der Name für die Richtliniendefinition, die Sie zuweisen und erzwingen möchten. In diesem Beispiel wird weiterhin die Beispielrichtlinie zum „Blockieren von Instagram-Verbindungen“ verwendet. 1. Wählen Sie neben dem Feld Richtliniendefinition die Schaltfläche mit den Auslassungszeichen ( ... ) aus.
2. Suchen Sie nach der Richtliniendefinition, und wählen Sie sie aus, indem Sie den Filter Typ oder das Feld Suche verwenden.
3. Wählen Sie die Option Auswählen aus, wenn Sie fertig sind.Zuweisungsname Ja Der Name für die Richtlinienzuweisung, wenn er sich vom Namen der Richtliniendefinition unterscheidet. Zuweisungs-ID Ja Die automatisch generierte ID für die Richtlinienzuweisung. Beschreibung Nein Eine Beschreibung für die Richtlinienzuweisung. Richtlinienerzwingung Ja Die Einstellung, mit der die Richtlinienzuweisung aktiviert oder deaktiviert wird. Zugewiesen von Nein Der Name der Person, die die Richtlinienzuweisung erstellt und angewendet hat. Gehen Sie beispielsweise wie folgt vor, um die Richtlinie basierend auf dem Instagram-Beispiel einer Azure-Ressourcengruppe zuzuweisen:
Wählen Sie abschließend Überprüfen + erstellen aus.
Nachdem Sie eine Richtlinie erstellt haben, müssen Sie ggf. bis zu 15 Minuten warten, bis sie wirksam wird. Bei Änderungen kann es zu ähnlichen Verzögerungen kommen.
Wenn die Richtlinie wirksam ist, können Sie die Richtlinie testen.
Weitere Informationen finden Sie unter Schnellstart: Erstellen einer Richtlinienzuweisung zum Identifizieren nicht kompatibler Ressourcen.
Testen der Richtlinie
Beginnen Sie zum Testen Ihrer Richtlinie mit der Erstellung einer Verbindung, indem Sie den nun eingeschränkten Connector im Workflow-Designer verwenden. Wenn Sie weiter das Instagram-Beispiel verwenden und sich bei Instagram anmelden, erhalten Sie einen Fehler der folgenden Art mit einem Hinweis, dass die Verbindung von Ihrer Logik-App nicht erstellt werden konnte:
Die Meldung enthält die folgenden Informationen:
BESCHREIBUNG | Inhalt |
---|---|
Grund für den Fehler | "Resource 'instagram' was disallowed by policy." |
Zuweisungsname | "Block Instagram connections" |
Zuweisungs-ID | "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/resourceGroups/MyLogicApp-RG/providers/Microsoft.Authorization/policyAssignments/4231890fc3bd4352acb0b673" |
Richtliniendefinitions-ID | "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/providers/Microsoft.Authorization/policyDefinitions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e" |
Nächste Schritte
- Informieren Sie sich weiter über Azure Policy.