Share via


Blockera anslutningsanvändning i Azure Logic Apps

Gäller för: Azure Logic Apps (Förbrukning + Standard)

Om din organisation inte tillåter anslutning till begränsade eller icke godkända resurser med hjälp av sina hanterade anslutningsappar i Azure Logic Apps kan du blockera möjligheten att skapa och använda dessa anslutningar i arbetsflöden för logikappar. Med Azure Policy kan du definiera och tillämpa principer som förhindrar att du skapar eller använder anslutningar för anslutningsappar som du vill blockera. Av säkerhetsskäl kanske du till exempel vill blockera anslutningar till specifika sociala medieplattformar eller andra tjänster och system.

Den här artikeln visar hur du konfigurerar en princip som blockerar specifika anslutningar med hjälp av Azure-portalen, men du kan skapa principdefinitioner på andra sätt. Du kan till exempel använda Azure REST API, Azure PowerShell, Azure CLI och Azure Resource Manager-mallar. Mer information finns i Självstudie: Skapa och hantera principer för att framtvinga efterlevnad.

Förutsättningar

Hitta anslutningsreferens-ID

Om du redan har en logikapp med den anslutning som du vill blockera följer du stegen för Azure-portalen. Annars följer du dessa steg:

Anslut eller referensdokument

  1. Granska Anslut orer för Azure Logic Apps.

  2. Leta upp referenssidan för anslutningsappen som du vill blockera.

    Om du till exempel vill blockera Instagram-anslutningsappen, som är inaktuell, går du till den här sidan:

    https://learn.microsoft.com/connectors/instagram/

  3. Från sidans URL kopierar och sparar du anslutningsreferens-ID:t i slutet utan snedstrecket (/), till exempel instagram.

    När du senare skapar din principdefinition använder du det här ID:t i definitionens villkorsuttryck, till exempel:

    "like": "*managedApis/instagram"

Azure Portal

  1. I Azure-portalen letar du upp och öppnar arbetsflödet för logikappen.

  2. Välj något av följande alternativ på logikappmenyn:

    • Förbrukningslogikapp: Under Utvecklingsverktyg väljer du API-anslutningar.

    • Standardlogikapp: Under Arbetsflöden väljer du Anslut ions. I fönstret Anslut ions väljer du API Anslut ions om du inte redan har valt det.

    1. I fönstret API-anslutningar väljer du anslutningen. När anslutningsfönstret öppnas väljer du JSON-vy i det övre högra hörnet.

    2. Leta reda på api objektet, som innehåller en egenskap och ett id värde som har följande format:

      "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{connection-name}"

      I följande exempel visas egenskapen id och värdet för en Instagram-anslutning:

      "id": "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/providers/Microsoft.Web/locations/westus/managedApis/instagram"

    3. Från egenskapsvärdet id kopierar och sparar du anslutningsappens referens-ID i slutet, instagramtill exempel .

      När du senare skapar din principdefinition använder du det här ID:t i definitionens villkorsuttryck, till exempel:

      "like": "*managedApis/instagram"

Blockera skapande av anslutningar

Följ dessa steg om du vill blockera skapandet av en anslutning helt och hållet i ett logikapparbetsflöde:

  1. I sökrutan i Azure-portalen anger du princip och väljer Princip.

    Screenshot showing main Azure portal search box with

  2. På menyn Princip går du till Redigering och väljer Definitioner. I verktygsfältet Definitioner väljer du Principdefinition.

    Screenshot showing the

  3. I fönstret Principdefinition anger du informationen för din principdefinition baserat på de egenskaper som beskrivs i exemplet:

    Screenshot showing the policy definition properties.

    Property Obligatoriskt Värde beskrivning
    Definitionsplats Ja <Namn-på-Azure-prenumeration> Den Azure-prenumeration som ska användas för principdefinitionen

    1. Om du vill hitta din prenumeration väljer du knappen ellipser (...).
    2. I prenumerationslistan letar du upp och väljer din prenumeration.
    3. När du är klar väljer du Välj.

    Namn Ja <policy-definition-name> Namnet som ska användas för principdefinitionen
    Beskrivning Nej <policy-definition-name> En beskrivning av principdefinitionen
    Kategori Ja Logikappar Namnet på en befintlig kategori eller ny kategori för principdefinitionen
    Principframtvingande Ja Aktiverad Den här inställningen anger om du vill aktivera eller inaktivera principdefinitionen när du sparar ditt arbete.
  4. Under PRINCIPREGEL fylls JSON-redigeringsrutan i förväg med en principdefinitionsmall. Ersätt den här mallen med din principdefinition baserat på de egenskaper som beskrivs i tabellen nedan och genom att följa den här syntaxen:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "field": "Microsoft.Web/connections/api.id",
             "like": "*managedApis/{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Property Värde beskrivning
    mode All Läget som avgör vilka resurstyper som principen utvärderar.

    Det här scenariot anger mode till All, som tillämpar principen på Azure-resursgrupper, prenumerationer och alla resurstyper.

    Mer information finns i Policydefinitionsstruktur – läge.

    if {condition-to-evaluate} Villkoret som avgör när principregeln ska tillämpas

    I det här scenariot {condition-to-evaluate} avgör om api.id värdet i Microsoft.Web/connections/api.id matchar på *managedApis/{connector-name}, som anger ett jokerteckenvärde (*).

    Mer information finns i Policydefinitionsstruktur – principregel.

    field Microsoft.Web/connections/api.id Det field värde som ska jämföras med villkoret

    I det här scenariot field använder aliaset , Microsoft.Web/connections/api.idför att komma åt värdet i anslutningsegenskapen, . api.id

    like *managedApis/{connector-name} Den logiska operatorn och värdet som ska användas för att field jämföra värdet

    I det här scenariot ser både operatorn like och jokertecknet (*) till att regeln fungerar oavsett region, och strängen , *managedApis/{connector-name}är det värde som ska matcha var {connector-name} är ID:t för anslutningsappen som du vill blockera.

    Anta till exempel att du vill blockera skapandet av anslutningar till plattformar eller databaser för sociala medier:

    -Twitter: twitter
    -Instagram: instagram
    -Facebook: facebook
    -Pinterest: pinterest
    – SQL Server eller Azure SQL: sql

    Information om hur du hittar dessa anslutnings-ID:er finns i Hitta anslutningsappens referens-ID tidigare i det här avsnittet.

    then {effect-to-apply} Den effekt som ska tillämpas när villkoret uppfylls if

    I det här scenariot {effect-to-apply} är att blockera och misslyckas en begäran eller åtgärd som inte följer principen.

    Mer information finns i Policydefinitionsstruktur – principregel.

    effect deny är effect att blockera begäran, vilket är att skapa den angivna anslutningen

    Mer information finns i Förstå Azure Policy-effekter – Neka.

    Anta till exempel att du vill blockera skapandet av anslutningar med Instagram-anslutningsappen. Här är den principdefinition som du kan använda:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "field": "Microsoft.Web/connections/api.id",
             "like": "*managedApis/instagram"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
    }
    

    Så här visas rutan PRINCIPREGEL:

    Screenshot showing the

    För flera anslutningsappar kan du lägga till fler villkor, till exempel:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "anyOf": [
                {
                   "field": "Microsoft.Web/connections/api.id",
                   "like": "*managedApis/instagram"
                },
                {
                   "field": "Microsoft.Web/connections/api.id",
                   "like": "*managedApis/twitter"
                },
                {
                   "field": "Microsoft.Web/connections/api.id",
                   "like": "*managedApis/facebook"
                },
                {
                   "field": "Microsoft.Web/connections/api.id",
                   "like": "*managedApis/pinterest"
                }
             ]
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
  5. När du är klar väljer du Spara. När du har sparat principdefinitionen genererar och lägger Azure Policy till fler egenskapsvärden i principdefinitionen.

  6. Skapa sedan en principtilldelning för att tilldela den principdefinition där du vill framtvinga principen.

Mer information om Azure Policy-definitioner finns i följande avsnitt:

Blockera koppling av anslutningar med logikappar

När du skapar en anslutning i ett logikapparbetsflöde finns den här anslutningen som en separat Azure-resurs. Om du bara tar bort arbetsflödet för logikappen tas inte anslutningsresursen bort automatiskt och fortsätter att finnas förrän den har tagits bort. Du kan ha ett scenario där anslutningsresursen redan finns eller där du måste skapa anslutningsresursen för användning utanför logikappen. Du kan fortfarande blockera möjligheten att associera anslutningen med ett annat logikapparbetsflöde genom att skapa en princip som förhindrar att logikappens arbetsflöden sparas som försöker använda den begränsade eller icke godkända anslutningen. Den här principen påverkar endast arbetsflöden för logikappar som inte redan använder anslutningen.

  1. I sökrutan i Azure-portalen anger du princip och väljer Princip.

    Screenshot showing the Azure portal search box with

  2. På menyn Princip går du till Redigering och väljer Definitioner. I verktygsfältet Definitioner väljer du Principdefinition.

    Screenshot showing

  3. Under Principdefinition anger du informationen för din principdefinition, baserat på de egenskaper som beskrivs i exemplet och fortsätter med Instagram som exempel:

    Screenshot showing policy definition properties.

    Property Obligatoriskt Värde beskrivning
    Definitionsplats Ja <Namn-på-Azure-prenumeration> Den Azure-prenumeration som ska användas för principdefinitionen

    1. Om du vill hitta din prenumeration väljer du knappen ellipser (...).
    2. I prenumerationslistan letar du upp och väljer din prenumeration.
    3. När du är klar väljer du Välj.

    Namn Ja <policy-definition-name> Namnet som ska användas för principdefinitionen
    Beskrivning Nej <policy-definition-name> En beskrivning av principdefinitionen
    Kategori Ja Logikappar Namnet på en befintlig kategori eller ny kategori för principdefinitionen
    Principframtvingande Ja Aktiverad Den här inställningen anger om du vill aktivera eller inaktivera principdefinitionen när du sparar ditt arbete.
  4. Under PRINCIPREGEL fylls JSON-redigeringsrutan i förväg med en principdefinitionsmall. Ersätt den här mallen med din principdefinition baserat på de egenskaper som beskrivs i tabellen nedan och genom att följa den här syntaxen:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "value": "[string(field('Microsoft.Logic/workflows/parameters'))]",
             "contains": "{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Property Värde beskrivning
    mode All Läget som avgör vilka resurstyper som principen utvärderar.

    Det här scenariot anger mode till All, som tillämpar principen på Azure-resursgrupper, prenumerationer och alla resurstyper.

    Mer information finns i Policydefinitionsstruktur – läge.

    if {condition-to-evaluate} Villkoret som avgör när principregeln ska tillämpas

    I det här scenariot {condition-to-evaluate} avgör om strängen utdata från [string(field('Microsoft.Logic/workflows/parameters'))], innehåller strängen, {connector-name}.

    Mer information finns i Policydefinitionsstruktur – principregel.

    value [string(field('Microsoft.Logic/workflows/parameters'))] Det värde som ska jämföras med villkoret

    I det här scenariot value är strängutdata från [string(field('Microsoft.Logic/workflows/parameters'))], som konverterar $connectors objektet inuti Microsoft.Logic/workflows/parameters objektet till en sträng.

    contains {connector-name} Den logiska operatorn och värdet som ska användas för att jämföra med value egenskapen

    I det här scenariot ser operatorn contains till att regeln fungerar oavsett var {connector-name} den visas, där strängen, {connector-name}, är ID:t för anslutningsappen som du vill begränsa eller blockera.

    Anta till exempel att du vill blockera användning av anslutningar till plattformar eller databaser för sociala medier:

    -Twitter: twitter
    -Instagram: instagram
    -Facebook: facebook
    -Pinterest: pinterest
    – SQL Server eller Azure SQL: sql

    Information om hur du hittar dessa anslutnings-ID:er finns i Hitta anslutningsappens referens-ID tidigare i det här avsnittet.

    then {effect-to-apply} Den effekt som ska tillämpas när villkoret uppfylls if

    I det här scenariot {effect-to-apply} är att blockera och misslyckas en begäran eller åtgärd som inte följer principen.

    Mer information finns i Policydefinitionsstruktur – principregel.

    effect deny effect är till deny eller blockera begäran om att spara en logikapp som använder den angivna anslutningen

    Mer information finns i Förstå Azure Policy-effekter – Neka.

    Anta till exempel att du vill blockera sparande av logikappar som använder Instagram-anslutningar. Här är den principdefinition som du kan använda:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "value": "[string(field('Microsoft.Logic/workflows/parameters'))]",
             "contains": "instagram"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    

    Så här visas rutan PRINCIPREGEL:

    Screenshot showing policy definition rule.

  5. När du är klar väljer du Spara. När du har sparat principdefinitionen genererar och lägger Azure Policy till fler egenskapsvärden i principdefinitionen.

  6. Skapa sedan en principtilldelning för att tilldela den principdefinition där du vill framtvinga principen.

Mer information om Azure Policy-definitioner finns i följande avsnitt:

Skapa principtilldelning

Därefter måste du tilldela principdefinitionen där du vill tillämpa principen, till exempel till en enskild resursgrupp, flera resursgrupper, Microsoft Entra-klientorganisation eller Azure-prenumeration. För den här uppgiften följer du de här stegen för att skapa en principtilldelning:

  1. I Azure-portalen , sökrutan i portalen, ange princip och välj Princip.

    Screenshot showing Azure portal search box with

  2. På menyn Princip går du till Redigering och väljer Tilldelningar. I verktygsfältet Tilldelningar väljer du Tilldela princip.

    Screenshot showing

  3. I fönstret Tilldela princip under Grundläggande anger du den här informationen för principtilldelningen:

    Property Obligatoriskt Beskrivning
    Definitionsområde Ja De resurser där du vill framtvinga principtilldelningen.

    1. Bredvid rutan Omfång väljer du knappen ellipser (...).
    2. I prenumerationslistan väljer du Azure-prenumerationen.
    3. Du kan också välja resursgruppen i listan Resursgrupp .
    4. När du är klar väljer du Välj.

    Undantag Nej Alla Azure-resurser som ska undantas från principtilldelningen.

    1. Bredvid rutan Undantag väljer du knappen ellipser (...).
    2. I resurslistan väljer du resursen >Lägg till i valt omfång.
    3. När du är klar väljer du Spara.

    Principdefinition Ja Namnet på den principdefinition som du vill tilldela och framtvinga. Det här exemplet fortsätter med Instagram-exempelprincipen "Blockera Instagram-anslutningar".

    1. Bredvid rutan Principdefinition väljer du knappen ellipser (...).
    2. Leta upp och välj principdefinitionen med hjälp av rutan Typfilter eller Sök .
    3. När du är klar väljer du Välj.

    Namn på tilldelning Ja Namnet som ska användas för principtilldelningen, om det skiljer sig från principdefinitionen
    Tilldelnings-ID Ja Det automatiskt genererade ID:t för principtilldelningen
    Beskrivning Nej En beskrivning av principtilldelningen
    Principframtvingande Ja Inställningen som aktiverar eller inaktiverar principtilldelningen
    Tilldelad av Nej Namnet på den person som skapade och tillämpade principtilldelningen

    Om du till exempel vill tilldela principen till en Azure-resursgrupp med hjälp av Instagram-exemplet:

    Screenshot showing policy assignment properties.

  4. När du är klar väljer du Granska + skapa.

    När du har skapat en princip kan du behöva vänta upp till 15 minuter innan principen börjar gälla. Ändringar kan också ha liknande fördröjda effekter.

  5. När principen börjar gälla kan du testa principen.

Mer information finns i Snabbstart: Skapa en principtilldelning för att identifiera icke-kompatibla resurser.

Testa principen

Om du vill prova principen börjar du skapa en anslutning med hjälp av den nu begränsade anslutningsappen i arbetsflödesdesignern. Om du fortsätter med Instagram-exemplet får du det här felet när du loggar in på Instagram att logikappen inte kunde skapa anslutningen:

Screenshot showing connection failure due to applied policy.

Meddelandet innehåller följande information:

beskrivning Innehåll
Orsak till felet "Resource 'instagram' was disallowed by policy."
Namn på tilldelning "Block Instagram connections"
Tilldelnings-ID "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/resourceGroups/MyLogicApp-RG/providers/Microsoft.Authorization/policyAssignments/4231890fc3bd4352acb0b673"
Principdefinitions-ID "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/providers/Microsoft.Authorization/policyDefinitions/b5ddcfec-1b24-4cac-a353-360846a59f24"

Nästa steg