Aracılığıyla paylaş


Azure Logic Apps'te bağlayıcı kullanımını engelleme

Şunlar için geçerlidir: Azure Logic Apps (Tüketim + Standart)

Kuruluşunuz Azure Logic Apps'te yönetilen bağlayıcılarını kullanarak kısıtlı veya onaylanmamış kaynaklara bağlanmaya izin vermiyorsa, mantıksal uygulama iş akışlarında bu bağlantıları oluşturma ve kullanma özelliğini engelleyebilirsiniz. Azure İlkesi ile, engellemek istediğiniz bağlayıcılar için bağlantı oluşturmayı veya kullanmayı engelleyen ilkeler tanımlayabilir ve uygulayabilirsiniz. Örneğin, güvenlik nedeniyle belirli sosyal medya platformlarına veya diğer hizmetlere ve sistemlere bağlantıları engellemek isteyebilirsiniz.

Bu makalede, Azure portalını kullanarak belirli bağlantıları engelleyen bir ilkenin nasıl ayarlanacağı gösterilmektedir, ancak ilke tanımlarını başka yollarla oluşturabilirsiniz. Örneğin Azure REST API, Azure PowerShell, Azure CLI ve Azure Resource Manager şablonlarını kullanabilirsiniz. Daha fazla bilgi için bkz . Öğretici: Uyumluluğu zorunlu kılmak için ilke oluşturma ve yönetme.

Önkoşullar

Bağlayıcı başvuru kimliğini bulma

Engellemek istediğiniz bağlantıya sahip bir mantıksal uygulamanız varsa Azure portalının adımlarını izleyin. Aksi takdirde şu adımları izleyin:

Bağlan veya başvuru belgesi

  1. Azure Logic Apps için Bağlan or'ları gözden geçirin.

  2. Engellemek istediğiniz bağlayıcının başvuru sayfasını bulun.

    Örneğin, kullanım dışı bırakılan Instagram bağlayıcısını engellemek istiyorsanız şu sayfaya gidin:

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

  3. Sayfanın URL'sinden, sonunda eğik çizgi (/ gibi instagram) olmadan bağlayıcı başvuru kimliğini kopyalayın ve kaydedin.

    Daha sonra ilke tanımınızı oluştururken, tanımın koşul deyiminde bu kimliği kullanırsınız, örneğin:

    "like": "*managedApis/instagram"

Azure portalı

  1. Azure portalında mantıksal uygulama iş akışınızı bulun ve açın.

  2. Mantıksal uygulama menüsünde aşağıdaki seçeneklerden birini belirleyin:

    • Tüketim mantığı uygulaması: Geliştirme Araçları'nın altında API bağlantıları'nı seçin.

    • Standart mantıksal uygulama: İş Akışları'nın altında Bağlan ions'ı seçin. Bağlan ions bölmesinde, henüz seçili değilse API Bağlan ions'ı seçin.

    1. API bağlantıları bölmesinde bağlantıyı seçin. Bağlantı bölmesi açıldığında, sağ üst köşede JSON Görünümü'nü seçin.

    2. Aşağıdaki biçime api sahip bir id özellik ve değer içeren nesnesini bulun:

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

      Aşağıdaki örnekte Bir Instagram bağlantısının id özelliği ve değeri gösterilmektedir:

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

    3. Özellik değerinden id , sonundaki bağlayıcı başvuru kimliğini kopyalayın ve kaydedin; örneğin, instagram.

      Daha sonra ilke tanımınızı oluştururken, tanımın koşul deyiminde bu kimliği kullanırsınız, örneğin:

      "like": "*managedApis/instagram"

Blok oluşturma bağlantıları

Mantıksal uygulama iş akışında bağlantı oluşturmayı tamamen engellemek için şu adımları izleyin:

  1. Azure portalı arama kutusuna ilke yazın ve İlke'yi seçin.

    Screenshot showing main Azure portal search box with

  2. İlke menüsünde, Yazma'nın altında Tanımlar'ı seçin. Tanımlar bölmesi araç çubuğunda İlke tanımı'nı seçin.

    Screenshot showing the

  3. İlke tanımı bölmesinde, örnek altında açıklanan özelliklere göre ilke tanımınıza ilişkin bilgileri sağlayın:

    Screenshot showing the policy definition properties.

    Özellik Zorunlu Değer Açıklama
    Tanım konumu Evet <Azure-subscription-name> İlke tanımı için kullanılacak Azure aboneliği

    1. Aboneliğinizi bulmak için üç nokta (...) düğmesini seçin.
    2. Abonelik listesinden aboneliğinizi bulun ve seçin.
    3. İşiniz bittiğinde Seç'i seçin.

    Adı Evet <policy-definition-name> İlke tanımı için kullanılacak ad
    Açıklama No <policy-definition-name> İlke tanımı için açıklama
    Kategori Evet Mantıksal uygulamalar İlke tanımı için mevcut bir kategorinin veya yeni kategorinin adı
    İlke uygulama Evet Etkin Bu ayar, çalışmanızı kaydederken ilke tanımının etkinleştirilip etkinleştirilmeymeyeceğini veya devre dışı bırakılıp bırakılmayacağını belirtir.
  4. İlkE KURALI altında JSON düzenleme kutusu bir ilke tanımı şablonuyla önceden doldurulur. Aşağıdaki tabloda açıklanan özelliklere göre ve bu söz dizimini izleyerek bu şablonu ilke tanımınızla değiştirin:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "field": "Microsoft.Web/connections/api.id",
             "like": "*managedApis/{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Özellik Değer Açıklama
    mode All İlkenin değerlendireceği kaynak türlerini belirleyen mod.

    Bu senaryo, ilkeyi AllAzure kaynak gruplarına, aboneliklere ve tüm kaynak türlerine uygulayan olarak ayarlarmode.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - mod.

    if {condition-to-evaluate} İlke kuralının ne zaman zorunlu kılındığını belirleyen koşul

    Bu senaryoda, {condition-to-evaluate} içindeki değerin api.id üzerinde eşleşip eşleşmediğini *managedApis/{connector-name}belirler. Bu değer joker karakter Microsoft.Web/connections/api.id (*) değerini belirtir.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - İlke kuralı.

    field Microsoft.Web/connections/api.id Koşulla field karşılaştıracak değer

    Bu senaryoda, field bağlayıcı özelliğindeki api.iddeğerine erişmek için diğer adıMicrosoft.Web/connections/api.id olan öğesini kullanır.

    like *managedApis/{connector-name} Değeri karşılaştırmak field için kullanılacak mantıksal işleç ve değer

    Bu senaryoda, like işleç ve joker karakter (*) karakteri, kuralın bölgeden bağımsız olarak çalıştığından emin olur ve dize, *managedApis/{connector-name}bağlayıcının engellemek istediğiniz kimliğiyle {connector-name} eşleşecek değerdir.

    Örneğin, sosyal medya platformlarına veya veritabanlarına bağlantı oluşturmayı engellemek istediğinizi varsayalım:

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

    Bu bağlayıcı kimliklerini bulmak için bu konunun önceki bölümlerinde yer alan Bağlayıcı başvuru kimliğini bulma bölümüne bakın.

    then {effect-to-apply} Koşul karşılandığında if uygulanacak etki

    Bu senaryoda, {effect-to-apply} ilkeyle uyumlu olmayan bir isteği veya işlemi engellemek ve başarısız olmaktır.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - İlke kuralı.

    effect deny effect, belirtilen bağlantıyı oluşturmak için isteği engellemektir

    Daha fazla bilgi için bkz. Azure İlkesi efektlerini anlama - Reddetme.

    Örneğin, Instagram bağlayıcısı ile bağlantı oluşturmayı engellemek istediğinizi varsayalım. Kullanabileceğiniz ilke tanımı aşağıdadır:

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

    İlkE KURALI kutusu şu şekilde görünür:

    Screenshot showing the

    Birden çok bağlayıcı için daha fazla koşul ekleyebilirsiniz, örneğin:

    {
       "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. Bitirdiğinizde, Kaydet'i seçin. İlke tanımını kaydettikten sonra, Azure İlkesi ilke tanımına daha fazla özellik değeri oluşturur ve ekler.

  6. Ardından, ilke tanımını ilkeyi zorunlu kılmak istediğiniz yere atamak için bir ilke ataması oluşturun.

Azure İlkesi tanımları hakkında daha fazla bilgi için şu konulara bakın:

Mantıksal uygulamalarla bağlantıları ilişkilendirmeyi engelleme

Mantıksal uygulama iş akışında bağlantı oluşturduğunuzda, bu bağlantı ayrı Azure kaynağı olarak bulunur. Yalnızca mantıksal uygulama iş akışını silerseniz, bağlantı kaynağı otomatik olarak silinmez ve silinene kadar varolmaya devam eder. Bağlantı kaynağının zaten var olduğu veya mantıksal uygulama dışında kullanmak üzere bağlantı kaynağını oluşturmanız gereken bir senaryonuz olabilir. Kısıtlı veya onaylanmamış bağlantıyı kullanmaya çalışan mantıksal uygulama iş akışlarının kaydedilmesini engelleyen bir ilke oluşturarak bağlantıyı farklı bir mantıksal uygulama iş akışıyla ilişkilendirme özelliğini yine de engelleyebilirsiniz. Bu ilke yalnızca bağlantıyı henüz kullanmayan mantıksal uygulama iş akışlarını etkiler.

  1. Azure portalı arama kutusuna ilke yazın ve İlke'yi seçin.

    Screenshot showing the Azure portal search box with

  2. İlke menüsünde, Yazma'nın altında Tanımlar'ı seçin. Tanımlar bölmesi araç çubuğunda İlke tanımı'nı seçin.

    Screenshot showing

  3. İlke tanımı altında, örnek altında açıklanan özelliklere dayanarak ilke tanımınıza ilişkin bilgileri sağlayın ve örnek olarak Instagram'ı kullanarak devam eder:

    Screenshot showing policy definition properties.

    Özellik Zorunlu Değer Açıklama
    Tanım konumu Evet <Azure-subscription-name> İlke tanımı için kullanılacak Azure aboneliği

    1. Aboneliğinizi bulmak için üç nokta (...) düğmesini seçin.
    2. Abonelik listesinden aboneliğinizi bulun ve seçin.
    3. İşiniz bittiğinde Seç'i seçin.

    Adı Evet <policy-definition-name> İlke tanımı için kullanılacak ad
    Açıklama No <policy-definition-name> İlke tanımı için açıklama
    Kategori Evet Mantıksal uygulamalar İlke tanımı için mevcut bir kategorinin veya yeni kategorinin adı
    İlke uygulama Evet Etkin Bu ayar, çalışmanızı kaydederken ilke tanımının etkinleştirilip etkinleştirilmeymeyeceğini veya devre dışı bırakılıp bırakılmayacağını belirtir.
  4. İlkE KURALI altında JSON düzenleme kutusu bir ilke tanımı şablonuyla önceden doldurulur. Aşağıdaki tabloda açıklanan özelliklere göre ve bu söz dizimini izleyerek bu şablonu ilke tanımınızla değiştirin:

    {
       "mode": "All",
       "policyRule": {
          "if": {
             "value": "[string(field('Microsoft.Logic/workflows/parameters'))]",
             "contains": "{connector-name}"
          },
          "then": {
             "effect": "deny"
          }
       },
       "parameters": {}
     }
    
    Özellik Değer Açıklama
    mode All İlkenin değerlendireceği kaynak türlerini belirleyen mod.

    Bu senaryo, ilkeyi AllAzure kaynak gruplarına, aboneliklere ve tüm kaynak türlerine uygulayan olarak ayarlarmode.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - mod.

    if {condition-to-evaluate} İlke kuralının ne zaman zorunlu kılındığını belirleyen koşul

    Bu senaryoda , {condition-to-evaluate} dize çıkışının [string(field('Microsoft.Logic/workflows/parameters'))]dizesini {connector-name}içerip içermediğini belirler.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - İlke kuralı.

    value [string(field('Microsoft.Logic/workflows/parameters'))] Koşulla karşılaştıracak değer

    Bu senaryoda, value nesnesinin içindeki Microsoft.Logic/workflows/parameters nesneyi dizeye dönüştüren $connectors dize çıkışıdır[string(field('Microsoft.Logic/workflows/parameters'))].

    contains {connector-name} özelliğiyle value karşılaştırmak için kullanılacak mantıksal işleç ve değer

    Bu senaryoda işleç, contains kuralın nerede {connector-name} göründüğünden bağımsız olarak çalıştığından emin olur; burada dize, {connector-name}kısıtlamak veya engellemek istediğiniz bağlayıcının kimliğidir.

    Örneğin, sosyal medya platformlarına veya veritabanlarına bağlantıların kullanılmasını engellemek istediğinizi varsayalım:

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

    Bu bağlayıcı kimliklerini bulmak için bu konunun önceki bölümlerinde yer alan Bağlayıcı başvuru kimliğini bulma bölümüne bakın.

    then {effect-to-apply} Koşul karşılandığında if uygulanacak etki

    Bu senaryoda, {effect-to-apply} ilkeyle uyumlu olmayan bir isteği veya işlemi engellemek ve başarısız olmaktır.

    Daha fazla bilgi için bkz . İlke tanımı yapısı - İlke kuralı.

    effect deny effect, belirtilen bağlantıyı kullanan bir mantıksal uygulamayı kaydetme isteğinin kime deny veya engellenmesidir

    Daha fazla bilgi için bkz. Azure İlkesi efektlerini anlama - Reddetme.

    Örneğin, Instagram bağlantılarını kullanan mantıksal uygulamaların kaydedilmesini engellemek istediğinizi varsayalım. Kullanabileceğiniz ilke tanımı aşağıdadır:

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

    İlkE KURALI kutusu şu şekilde görünür:

    Screenshot showing policy definition rule.

  5. Bitirdiğinizde, Kaydet'i seçin. İlke tanımını kaydettikten sonra, Azure İlkesi ilke tanımına daha fazla özellik değeri oluşturur ve ekler.

  6. Ardından, ilke tanımını ilkeyi zorunlu kılmak istediğiniz yere atamak için bir ilke ataması oluşturun.

Azure İlkesi tanımları hakkında daha fazla bilgi için şu konulara bakın:

İlke ataması oluştur

Ardından, ilke tanımını tek bir kaynak grubuna, birden çok kaynak grubuna, Microsoft Entra kiracısına veya Azure aboneliğine uygulamak istediğiniz yere atamanız gerekir. Bu görev için, ilke ataması oluşturmak için şu adımları izleyin:

  1. Azure portalında portal arama kutusuna ilke girin ve İlke'yi seçin.

    Screenshot showing Azure portal search box with

  2. İlke menüsünde, Yazma'nın altında Atamalar'ı seçin. Atamalar bölmesi araç çubuğunda İlke ata'yı seçin.

    Screenshot showing

  3. İlke ata bölmesindeki Temel bilgiler'in altında ilke ataması için şu bilgileri sağlayın:

    Özellik Zorunlu Açıklama
    Scope Evet İlke atamasını zorunlu kılmak istediğiniz kaynaklar.

    1. Kapsam kutusunun yanında üç nokta (...) düğmesini seçin.
    2. Abonelik listesinden Azure aboneliğini seçin.
    3. İsteğe bağlı olarak, Kaynak Grubu listesinden kaynak grubunu seçin.
    4. İşiniz bittiğinde Seç'i seçin.

    Dışlamalar No İlke atamasının dışında tutulacak tüm Azure kaynakları.

    1. Dışlamalar kutusunun yanında üç nokta (...) düğmesini seçin.
    2. Kaynak listesinden Seçili Kapsama Ekle kaynağını >seçin.
    3. İşiniz bittiğinde Kaydet'i seçin.

    İlke tanımı Evet Atamak ve uygulamak istediğiniz ilke tanımının adı. Bu örnek, örnek Instagram ilkesi olan "Instagram bağlantılarını engelle" ile devam eder.

    1. İlke tanımı kutusunun yanında üç nokta (...) düğmesini seçin.
    2. Tür filtresini veya Arama kutusunu kullanarak ilke tanımını bulun ve seçin.
    3. İşiniz bittiğinde Seç'i seçin.

    Atama adı Evet İlke tanımından farklıysa, ilke ataması için kullanılacak ad
    Atama Kimliği Evet İlke ataması için otomatik olarak oluşturulan kimlik
    Açıklama No İlke ataması için açıklama
    İlke uygulama Evet İlke atamasını etkinleştiren veya devre dışı bırakan ayar
    Atayan No İlke atamasını oluşturan ve uygulayan kişinin adı

    Örneğin, Instagram örneğini kullanarak ilkeyi bir Azure kaynak grubuna atamak için:

    Screenshot showing policy assignment properties.

  4. İşiniz bittiğinde Gözden geçir ve oluştur'u seçin.

    İlke oluşturduktan sonra, ilkenin geçerlilik kazanması için 15 dakika kadar beklemeniz gerekebilir. Değişiklikler de benzer gecikmeli etkilere sahip olabilir.

  5. İlke etkin olduktan sonra ilkenizi test edebilirsiniz.

Daha fazla bilgi için bkz . Hızlı Başlangıç: Uyumsuz kaynakları tanımlamak için ilke ataması oluşturma.

İlkeyi test etme

İlkenizi denemek için iş akışı tasarımcısında şimdi kısıtlanmış bağlayıcıyı kullanarak bağlantı oluşturmaya başlayın. Instagram örneğine devam edersek, Instagram'da oturum açtığınızda mantıksal uygulamanızın bağlantıyı oluşturamadığı hatasını alırsınız:

Screenshot showing connection failure due to applied policy.

İleti şu bilgileri içerir:

Açıklama İçerik
Hatanın nedeni "Resource 'instagram' was disallowed by policy."
Atama adı "Block Instagram connections"
Atama Kimliği "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/resourceGroups/MyLogicApp-RG/providers/Microsoft.Authorization/policyAssignments/4231890fc3bd4352acb0b673"
İlke tanımı kimliği "/subscriptions/xxxxxXXXXXxxxxxXXXXXxxxxxXXXXX/providers/Microsoft.Authorization/policyDefinitions/b5ddcfec-1b24-4cac-a353-360846a59f24"

Sonraki adımlar