Sdílet prostřednictvím


Blokování využití konektorů v Azure Logic Apps

Platí pro: Azure Logic Apps (Consumption + Standard)

Pokud vaše organizace nepovoluje připojení k omezeným nebo neschváleném prostředkům pomocí jejich spravovaných konektorů v Azure Logic Apps, můžete zablokovat možnost vytvářet a používat tato připojení v pracovních postupech aplikací logiky. Pomocí služby Azure Policy můžete definovat a vynutit zásady , které brání vytváření nebo používání připojení pro konektory, které chcete blokovat. Z bezpečnostních důvodů můžete například chtít blokovat připojení ke konkrétním platformám sociálních médií nebo jiným službám a systémům.

V této příručce se dozvíte, jak nastavit zásadu, která blokuje konkrétní připojení pomocí webu Azure Portal. Definice zásad můžete vytvářet i jinými způsoby. Můžete například použít šablony Azure REST API, Azure PowerShellu, Azure CLI nebo Azure Resource Manageru. Další informace najdete v tématu Vytváření a správa zásad pro vynucování dodržování předpisů.

Požadavky

  • Účet a předplatné Azure. Pokud předplatné nemáte, vytvořte si bezplatný účet Azure.

  • Referenční ID konektoru, který chcete blokovat. Tento průvodce ukazuje, jak najít toto ID reference.

Vyhledání referenčního ID konektoru

Pokud už máte pracovní postup aplikace logiky s připojením, které chcete blokovat, přeskočte tuto část. V opačném případě pomocí následujícího postupu vyhledejte ID reference ke konektoru:

Vyhledání ID pomocí referenční dokumentace ke konektoru

  1. Projděte si seznam všech spravovaných konektorů Azure Logic Apps.

  2. Najděte referenční stránku konektoru, který chcete blokovat.

    Pokud například chcete blokovat konektor Gmail, přejděte na tuto stránku:

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

  3. Z adresy URL stránky zkopírujte a uložte ID odkazu konektoru na konci bez lomítka (/například gmail).

    Později při vytváření definice zásady použijete toto ID v příkazu podmínky definice, například:

    "like": "*managedApis/gmail"

Vyhledání ID pomocí webu Azure Portal

  1. V portálu Azure otevřete prostředek logické aplikace.

  2. Na postranním panelu prostředků vyberte jednu z následujících možností:

    • Aplikace logiky Consumption: V části Vývojové nástroje vyberte připojení rozhraní API.

    • Standardní aplikace logiky: V části Pracovní postupy vyberte Připojení. V podokně Připojení vyberte připojení rozhraní API, pokud ještě není vybraná.

  3. Na stránce připojení rozhraní API vyberte připojení. Po otevření stránky připojení vyberte v pravém horním rohu Zobrazení JSON.

  4. api Vyhledejte objekt, který obsahuje id vlastnost a hodnotu, která má následující formát:

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

    Následující příklad ukazuje id vlastnost a hodnotu připojení Gmail:

    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/westus/managedApis/gmail"

  5. Zkopírujte a uložte referenční ID konektoru z hodnoty vlastnosti id, které se zobrazí na konci, například gmail.

    Později při vytváření definice zásady použijete toto ID v příkazu podmínky definice, například:

    "like": "*managedApis/gmail"

Zablokování vytváření připojení

Pokud chcete blokovat vytváření připojení v pracovním postupu, postupujte takto:

  1. Do vyhledávacího pole webu Azure Portal zadejte zásady a vyberte Zásady.

    Snímek obrazovky znázorňuje vyhledávací pole portálu Azure s vloženým textem

  2. V nabídce Zásady v části Vytváření vyberte Definice. Na panelu nástrojů Definice vyberte definici zásady.

    Snímek obrazovky se stránkou Definice se zvýrazněnou definicí zásad

  3. Na stránce Definice zásad zadejte informace o definici zásady na základě vlastností v tabulce, která následuje po obrázku:

    Snímek obrazovky znázorňující hodnoty definice zásad pro blokování Gmailu

    Parameter Požaduje se Hodnota Popis
    Umístění definice Ano < Název předplatného Azure> Předplatné Azure, které se má použít pro definici zásad

    1. Pokud chcete najít své předplatné, vyberte ellipsu (...).
    2. V seznamu Předplatné vyhledejte a vyberte své předplatné.
    3. Až budete hotovi, vyberte Vybrat.
    Název Ano < policy-definition-name> Název, který se má použít pro definici zásady.
    Popis No < policy-definition-name> Popis definice zásady.
    Kategorie Ano Aplikace logiky Název existující kategorie nebo nové kategorie pro definici zásady.
  4. V části Pravidlo zásad je pole pro úpravy JSON předem vyplněné šablonou definice zásad. Tuto šablonu nahraďte definicí zásad na základě vlastností popsaných v následující tabulce a pomocí této syntaxe:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "field": "Microsoft.Web/connections/api.id",
             "like": "*managedApis/{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Keyword Hodnota Popis
    mode All Režim, který určuje typy prostředků, které zásady vyhodnocují.

    Tento scénář se nastaví mode na All, který použije zásadu pro skupiny prostředků Azure, předplatná a všechny typy prostředků.

    Další informace naleznete v tématu Struktura definice zásad – režim.
    if {condition-to-evaluate} Podmínka, která určuje, kdy se má vynutit pravidlo zásady

    V tomto scénáři určuje, {condition-to-evaluate} zda api.id hodnota ve Microsoft.Web/connections/api.id shodě *managedApis/{connector-name}, která určuje hodnotu se zástupným znakem (*).

    Další informace najdete v tématu Struktura definice zásad – Pravidlo zásad.
    field Microsoft.Web/connections/api.id Hodnota field , která se má porovnat s podmínkou

    V tomto scénáři field používá alias , Microsoft.Web/connections/api.idpro přístup k hodnotě ve vlastnosti spojnice , api.id.
    like *managedApis/{connector-name} Logický operátor a hodnota, které se mají použít k porovnání field hodnoty

    V tomto scénáři operátor i zástupný znak (*) zajišťují, like aby pravidlo fungovalo bez ohledu na oblast a řetězec , je hodnota, *managedApis/{connector-name}která odpovídá {connector-name} ID konektoru, který chcete blokovat.

    Předpokládejme například, že chcete blokovat vytváření připojení k platformám nebo databázím sociálních médií:

    - X: x
    - Facebook: facebook
    - Pinterest: pinterest
    – SQL Server nebo Azure SQL: sql

    Id těchto konektorů najdete v části Vyhledání REFERENČNÍHO ID konektoru výše v tomto článku.
    then {effect-to-apply} Účinek, který se použije při if splnění podmínky

    V tomto scénáři {effect-to-apply} je blokovat a selhat požadavek nebo operaci, která nevyhovuje zásadám.

    Další informace najdete v tématu Struktura definice zásad – Pravidlo zásad.
    effect deny Cílem effect je zablokovat požadavek, kterým je vytvoření zadaného připojení.

    Další informace najdete v tématu Vysvětlení efektů Azure Policy – Odepřít.

    Předpokládejme například, že chcete blokovat vytváření připojení pomocí konektoru Gmail. Tady je definice zásady, kterou můžete použít:

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

    Tady je způsob, jakým se zobrazí okno Pravidla zásad :

    Snímek obrazovky s polem Pravidlo zásad s příkladem pravidla zásad

    U více konektorů můžete přidat více než jednu podmínku, například:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "anyOf": [
                {
                   "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": {}
     }
    
  5. Až budete hotovi, zvolte tlačítko Uložit.

    Po uložení definice zásady Azure Policy vygeneruje a přidá do definice zásady další hodnoty vlastností.

Pokud chcete přiřadit definici zásady, ve které chcete zásadu vynutit, vytvořte přiřazení zásad, jak je popsáno dále v tomto článku.

Další informace o definicích služby Azure Policy najdete tady:

Blokování přidružení připojení k aplikacím logiky

Když vytvoříte připojení v pracovním postupu, toto připojení existuje jako samostatný prostředek Azure. Pokud odstraníte jenom pracovní postup nebo prostředek aplikace logiky, prostředek připojení se neodstraní automaticky a dokud ho neodstraníte, bude existovat. Můžete mít scénář, ve kterém už prostředek připojení existuje nebo kde musíte vytvořit prostředek připojení pro použití mimo prostředek aplikace logiky.

Stále můžete zablokovat možnost přidružit připojení k jinému prostředku aplikace logiky vytvořením zásady, která brání ukládání pracovních postupů, které se pokusí použít omezené nebo neschválené připojení. Tato zásada má vliv jenom na pracovní postupy, které připojení ještě nepoužívají.

  1. Do vyhledávacího pole webu Azure Portal zadejte zásady a vyberte Zásady.

    Snímek obrazovky zobrazuje vyhledávací pole na portálu Azure, ve kterém je zadán text

  2. V nabídce Zásady v části Vytváření vyberte Definice. Na panelu nástrojů Na stránce Definice vyberte definici zásady.

    Snímek obrazovky se stránkou Definice se zvýrazněnou definicí zásad

  3. V části Definice zásady zadejte informace pro definici zásady na základě vlastností v tabulce, která následuje za obrázkem.

    Snímek obrazovky znázorňující hodnoty definic zásad pro ukládání připojení Gmailu

    Parameter Požaduje se Hodnota Popis
    Umístění definice Ano < Název předplatného Azure> Předplatné Azure, které se má použít pro definici zásad

    1. Pokud chcete najít své předplatné, vyberte tlačítko se třemi tečkami (...).
    2. V seznamu Předplatné vyhledejte a vyberte své předplatné.
    3. Až budete hotovi, vyberte Vybrat.
    Název Ano < policy-definition-name> Název, který se má použít pro definici zásady
    Popis No < policy-definition-name> Popis definice zásady
    Kategorie Ano Aplikace logiky Název existující kategorie nebo nové kategorie pro definici zásady
  4. V části Pravidlo zásad je pole pro úpravy JSON předem vyplněné šablonou definice zásad. Tuto šablonu nahraďte definicí zásad na základě vlastností popsaných v následující tabulce a pomocí této syntaxe:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "value": "[string(field('Microsoft.Logic/workflows/parameters'))]",
             "contains": "{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Keyword Hodnota Popis
    mode All Režim, který určuje typy prostředků, které zásady vyhodnocují.

    Tento scénář se nastaví mode na All, který použije zásadu pro skupiny prostředků Azure, předplatná a všechny typy prostředků.

    Další informace naleznete v tématu Struktura definice zásad – režim.
    if {condition-to-evaluate} Podmínka, která určuje, kdy se má vynutit pravidlo zásady

    V tomto scénáři určuje, {condition-to-evaluate} zda řetězec výstup z [string(field('Microsoft.Logic/workflows/parameters'))], obsahuje řetězec, {connector-name}.

    Další informace najdete v tématu Struktura definice zásad – Pravidlo zásad.
    value [string(field('Microsoft.Logic/workflows/parameters'))] Hodnota, která se má porovnat s podmínkou

    V tomto scénáři value je řetězcový výstup z [string(field('Microsoft.Logic/workflows/parameters'))], který převede $connectors objekt uvnitř objektu Microsoft.Logic/workflows/parameters na řetězec.
    contains {connector-name} Logický operátor a hodnota, které se mají použít pro porovnání s value vlastností

    V tomto scénáři operátor zajistí, contains že pravidlo funguje bez ohledu na to, kde {connector-name} se zobrazí, kde řetězec, {connector-name}je ID konektoru, který chcete omezit nebo blokovat.

    Předpokládejme například, že chcete blokovat používání připojení k platformám nebo databázím sociálních médií:

    - X: x
    - Facebook: facebook
    - Pinterest: pinterest
    – SQL Server nebo Azure SQL: sql

    Id těchto konektorů najdete v části Vyhledání REFERENČNÍHO ID konektoru výše v tomto článku.
    then {effect-to-apply} Účinek, který se použije při if splnění podmínky

    V tomto scénáři {effect-to-apply} je blokovat a selhat požadavek nebo operaci, která nevyhovuje zásadám.

    Další informace najdete v tématu Struktura definice zásad – Pravidlo zásad.
    effect deny Požadavek effect je deny nebo zablokuje uložení aplikace logiky, která používá zadané připojení.

    Další informace najdete v tématu Vysvětlení efektů Azure Policy – Odepřít.

    Předpokládejme například, že chcete blokovat uložení Logic Apps, které používají připojení ke Gmailu. Tady je definice zásady, kterou můžete použít:

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

    Tady je způsob, jakým se zobrazí pravidlo definice zásady:

    Snímek obrazovky znázorňující pravidlo definice politiky

  5. Až budete hotovi, zvolte tlačítko Uložit.

    Po uložení definice zásady Azure Policy vygeneruje a přidá do definice zásady další hodnoty vlastností.

Pokud chcete přiřadit definici zásady, ve které chcete zásadu vynutit, vytvořte přiřazení zásad, jak je popsáno dále v této příručce.

Další informace o definicích služby Azure Policy najdete tady:

Vytvoření přiřazení zásady

Musíte přiřadit definici zásady, ve které chcete zásadu vynutit. Můžete například přiřadit definici zásady jedné skupině prostředků, několika skupinám prostředků, tenantovi Microsoft Entra nebo předplatnému Azure. Pro tento úkol vytvořte přiřazení zásad pomocí následujícího postupu:

  1. Do vyhledávacího pole webu Azure Portal zadejte zásady a vyberte Zásady.

    Snímek obrazovky zobrazuje vyhledávací pole na portálu Azure, ve kterém je zadán text

  2. V nabídce Zásady v části Vytváření vyberte Přiřazení. Na panelu nástrojů Úkoly vyberte Přiřadit zásadu.

    Snímek obrazovky znázorňující panel nástrojů Přiřazení se zvýrazněnou možností Přiřadit zásadu

  3. Na stránce Přiřadit zásadu v části Základy zadejte tyto informace pro přiřazení zásad:

    Parameter Požaduje se Popis
    Scope Ano Prostředky, ve kterých chcete vynutit přiřazení zásad.

    1. Vedle pole Obor vyberte tlačítko se třemi tečkami (...).
    2. V seznamu předplatného vyberte předplatné Azure.
    3. Volitelně v seznamu skupina prostředků vyberte skupinu prostředků.
    4. Až budete hotovi, vyberte Vybrat.
    Vyloučení No Všechny prostředky Azure, které se mají vyloučit z přiřazení zásad.

    1. Vedle pole Vyloučení vyberte tlačítko se třemi tečkami (...).
    2. V seznamu zdrojů vyberte prostředek >.
    3. Až budete hotovi, vyberte Uložit.
    Selektory prostředků No
    Definice zásady Ano Název definice zásady, kterou chcete přiřadit a vynutit. Tento příklad pokračuje s ukázkovými zásadami Gmailu, blokovat připojení Gmailu.

    1. Vedle pole Definice zásady vyberte tlačítko se třemi tečkami (...).
    2. Vyhledejte a vyberte definici zásady pomocí filtru typu nebo vyhledávacího pole.
    3. Až budete hotovi, vyberte Vybrat.
    Overrides No
    Název přiřazení Ano Název, který se má použít pro přiřazení zásady, pokud se liší od definice zásady.
    Popis No Popis přiřazení zásady.
    Vynucení zásad Ano Nastavení, které povolí nebo zakáže přiřazení zásad.

    Pokud například chcete zásadu přiřadit ke skupině prostředků Azure pomocí příkladu Gmailu:

    Snímek obrazovky znázorňující hodnoty přiřazení zásad

  4. Až budete hotovi, vyberte Zkontrolovat a vytvořit.

    Po vytvoření zásady možná budete muset počkat až 15 minut, než se zásada projeví. Změny můžou mít podobné zpožděné účinky.

Jakmile zásada vstoupí v platnost, otestujte ji v další části.

Další informace najdete v tématu Rychlý start: Vytvoření přiřazení zásady k identifikaci nevyhovujících prostředků.

Testování zásad

Pokud chcete vyzkoušet zásadu, začněte vytvářet připojení pomocí nyní omezeného konektoru v návrháři pracovního postupu. Když se přihlásíte k Gmailu, zobrazí se chyba, že váš pracovní postup nedokázal vytvořit připojení.

Chybová zpráva obsahuje tyto informace:

Popis Content
Důvod selhání "Resource 'gmail' was disallowed by policy."
Název přiřazení "Block Gmail connections"
ID přiřazení "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/MyLogicApp-RG/providers/Microsoft.Authorization/policyAssignments/4231890fc3bd4352acb0b673"
ID definice zásady "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Authorization/policyDefinitions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"