مشاركة عبر


تصفية نقاط نهاية الموصل (إصدار أولي)

إشعار

إن مركز مسؤولي Power Platformالجديد والمحسن موجود الآن في إصدار أولي للاستخدام العام! لقد صممنا مركز الإدارة الجديد ليكون أسهل في الاستخدام، مع التنقل الموجه نحو المهام الذي يساعدك على تحقيق نتائج محددة بشكل أسرع. سننشر وثائق جديدة ومحدثة مع انتقال مركز مسؤولي Power Platform الجديد إلى التوفر العام.

[هذا المقال عبارة عن وثائق نسخة مسبقة وهو عرضة للتغيير.]

تتيح نقطة النهاية تصفية الموصل للمسؤولين إمكانية إدارة نقاط النهاية المحددة التي يمكن لصانعي النهاية الاتصال بها عند بناء التطبيقات أو البيانات أو المحادثة. تم تكوينه داخل سياسة منع فقد البيانات (D CONNECTOR)، وهو متوفر حصريا لستة موصلات:

  • HTTP
  • HTTP بمعرف Microsoft Entra ID(AD)
  • إخطار على الويب HTTP
  • SQL Server (يتضمن استخدام SQL Server Connector للوصول إلى مستودع بيانات Azure Synapse)
  • Azure Blob التخزين
  • SMTP

عندما يحاول صانع توصيل تطبيقه أو انسيابه أو الدردشة مع تطبيق نقطة النهاية حجبه، سيواجه رسالة خطأ D و.

تحذير

لا يتم فرض قواعد تصفية نقطة النهاية على متغيرات البيئة أو المدخلات المخصصة أو أي نقطة نهاية يتم إنشاؤها ديناميكيًا في وقت التشغيل. يتم تقييم نقاط النهاية الثابتة فقط في التطبيق أو في التدفق أو في مصممي chatpoint. لمزيد من المعلومات، راجع القيود المعروفة.

مهم

الهدف من ميزات المعاينة ليس الاستخدام في الإنتاج وقد يكون لها دالات مقيدة. تتوفر هذه الميزات قبل إصدار رسمي وبذلك يستطيع العملاء الحصول على وصول مبكر وتقديم التعليقات.

إضافة نقطة النهاية تصفية البيانات لنهج D،D،

يشير عمود نقطة النهاية القابلة للتكوين في صفحة الموصلات المنشأة مسبقًا في سياسات البيانات ما إذا كانت إمكانية تصفية نقطة النهاية مدعومة للموصل

يمكن تكوين نقطة النهاية في صفحة الموصلات المنشأة مسبقًا.

إذا كانت قيمة العمود نقطة النهاية القابلة للتكوين هي نعم، يمكنك استخدام هذه الإمكانية بالنقر بزر الماوس الأيمن فوق ثم تحديد تكوين الموصل>نقاط نهاية الموصلات.

تكوين الموصل > نقاط نهاية الموصلات.

حيث يفتح هذا لوحة جانبية حيث يمكنك تحديد قائمة مرتبة تتضمن أنماط URL للسماح أو الرفض. سيكون الصف الأخير في القائمة دائمًا قاعدة لحرف البدل*، والذي ينطبق على جميع نقاط النهاية في هذا الموصل. بشكل افتراضي، يتم إعداد النمط * على أنه السماح بسياسات منع فقدان البيانات الجديدة، ولكن يمكنك وضع علامة على هذا على أنه سماح أو رفض.

تحديد قائمة مرتبة من أنماط السماح والرفض لعناوين URL للموصلات المخصصة.

إضافة قاعدة جديدة

يمكنك إضافة قواعد جديدة عن طريق تحديد إضافة نقطة نهاية. تتم إضافة قواعد جديدة إلى نهاية قائمة الأنماط كقاعدة من الثاني إلى الأخير. وذلك لأن * هذا سيكون دائما الإدخال الأخير في القائمة. ومع ذلك، يمكنك تحديث ترتيب الأنماط باستخدام القائمة المنسدلة الأمر أو تحديد تحريك لأعلى أو تحريك لأسفل.

حدد إضافة نقطة نهاية لإضافة قواعد جديدة.

بعد إضافة نمط، يمكنك تحرير هذه الأنماط أو حذفها عن طريق تحديد صف معين ثم تحديد حذف.

حذف نمط.

بعد حفظ قواعد نقطة النهاية وتصفية الموصل ونهاية D CONNECTOR التي تم تعريفها بها، يتم فرضها بشكل فوري على البيئات المستهدفة. وفيما يلي مثال حاول فيه صانع توصيل تدفق السحابة بHTTP نقطة النهاية غير مسموح به.

خطأ D و، م، نقطة النهاية قواعد التصفية.

الحدود المعروفة

  • لا يتم فرض تطبيق قواعد تصفية نقطة النهاية على متغيرات البيئة والإدخالات المخصصة ونقاط النهاية المرتبطة ديناميكيًا أثناء وقت التشغيل. لا يتم فرض سوى نقاط النهاية الثابتة المعروفة والمحددة عند بناء تطبيق أو سير عمل أو روبوت دردشة أثناء وقت التصميم. وهذا يعني أن قواعد تصفية نقطة نهاية الموصل لـ SQL Server وAzure Blob Storage لا يتم فرضها إذا تمت مصادقة الاتصالات مع معرف Microsoft Entra . في صورتي الشاشة أدناه، بناء سير مجموعة النظراء الذي يحدد خادم SQL وقاعدة البيانات داخل المتغيرات، ثم يستخدم هذه المتغيرات كمدخل في تعريف الاتصال. وبالتالي، نقطة النهاية تقييم قواعد التصفية ويمكن تنفيذ التدفق السحابي بنجاح.

    يستخدم التدفق السحابي المتغيرات للاتصال ب SQL. يعمل التدفق السحابي بنجاح.

  • بعض Power Apps المنشورة قبل 1 أكتوبر 2020 ، يلزم إعادة نشرها لتطبيق قواعد إجراء موصل DLP وقواعد نقطة النهاية. يمكّن البرنامج النصي التالي المسؤولين والمنشئين من تحديد التطبيقات التي يجب إعادة نشرها لمراعاة قواعد عنصر التحكم الدقيقة DLP الجديدة:

    Add-PowerAppsAccount
    
    $GranularDLPDate = Get-Date -Date "2020-10-01 00:00:00Z"
    
    ForEach ($app in Get-AdminPowerApp){
    
        $versionAsDate = [datetime]::Parse($app.LastModifiedTime)
    
        $olderApp = $versionAsDate -lt $GranularDLPDate
    
        $wasBackfilled = $app.Internal.properties.executionRestrictions -ne $null -and $app.Internal.properties.executionRestrictions.dataLossPreventionEvaluationResult -ne $null -and ![string]::IsNullOrEmpty($app.Internal.properties.executionRestrictions.dataLossPreventionEvaluationResult.lastAdvancedBackfillDate) 
    
        If($($olderApp -and !$wasBackfilled)){
            Write-Host "App must be republished to be Granular DLP compliant: " $app.AppName " "  $app.Internal.properties.displayName " " $app.Internal.properties.owner.email
        } 
        Else{ 
            Write-Host "App is already Granular DLP compliant: " $app.AppName 
        }
    }
    

تنسيقات وأمثلة إدخال نقطة النهاية

ويختلف كل موصل عن ما تعنيه نقطة النهاية ذلك الموصل. علاوة على ذلك، يمكن تعريف بعض نقاط النهاية بتنسيقات متعددة. لذلك، يجب إدخال نقاط النهاية بجميع التنسيقات الممكنة لمنع المصنّعين من استخدامها أثناء إنشاء التطبيقات والتدفقات. يمكن للمسؤولين إما إدخال اسم نقطة النهاية بالكامل أو استخدام نمط مطابق مع حرف البدل (*) عند إنشاء قاعدة تصفية نقطة النهاية. يتم إدخال هذه القواعد وتقديمها في قائمة مرتبة من أنماط نقطة النهاية، مما يعني أنه سيتم تقييمها بترتيب تصاعدي حسب الرقم. لاحظ أن القاعدة الأخيرة لأي موصل معين هي دائما * السماح أو رفض * . السماح هو الافتراضي، والذي يمكن تغييره إلى رفض.

توضح الإرشادات التالية كيفية إدخال نقاط نهاية الموصل أثناء إنشاء قواعد للسماح بها أو رفضها.

SQL Server

يجب إدراج نقاط نهاية اتصال SQL Server بتنسيق <Server_name, database_name>. عليك أن تضع في اعتبارك بعض الأمور:

  • يمكن إدخال اسم الخادم بتنسيقات مختلفة بواسطة صناع. وبالتالي، لمعالجة عملية نقطة النهاية بحق، يجب إدخالها بجميع التنسيقات الممكنة. على سبيل المثال، يمكن أن تكون المثيلات المحلية بتنسيق <machine_name\named_instance, database_name> أو <IP address, custom port, database_name>. في هذه الحالة، سيكون عليك تطبيق قواعد السماح أو حظرها بتنسيقين لكل من تنسيقات نقطة النهاية. على سبيل المثال:

    • حظر WS12875676\Servername1,MktingDB
    • حظر 11.22.33.444,1401,MktingDB
  • لا يوجد منطق خاص للتعامل مع العناوين النسبية مثل localhost. لذلك، إذا قمت بحظر *localhost*، فسيؤدي ذلك إلى منع المنشئين من استخدام أي نقاط نهاية باستخدام localhost كجزء من نقطة نهاية SQL Server. ومع ذلك، فلن يمنعهم من الوصول إلى نقطة النهاية باستخدام العنوان المطلق، ما لم يتم حظر العنوان المطلق من قبل المسؤول أيضا.

فيما يلي أمثلة:

  • السماح فقط لمثيلات Azure SQL Server:

    1. السماح لـ *.database.windows.net*
    2. رفض *
  • السماح بنطاق IP محدد فقط: (لاحظ أنه لا يزال من الممكن إدخال عناوين IP غير المسموح بها بواسطة المُصنِّع في <machine_name\named_instance> شكل.)

    1. السماح لـ 11.22.33*
    2. رفض *

Dataverse

Dataverse يتم تمثيل نقاط النهاية بواسطة معرف المنظمة, مثل, 00aa00aa-bb11-cc22-dd33-44ee44ee44ee. يُرجَى ملاحظة أن موصل Dataverse العادي فقط هو حاليًا في نطاق تصفية نقطة النهاية. Dataverse ‏dynamics وموصلات Dataverse الحالية غير موجودة في النطاق. أيضًا، لا يمكن أبدًا حظر المثيل المحلي لـ Dataverse (المعروف أيضًا بالبيئة الحالية) للاستخدام داخل بيئة ما. يعني هذا أنه في أي بيئة معينة، يمكن للمنشئين دائمًا الوصول إلى بيئة Dataverse الحالية.

وبالتالي، قاعدة تقول ما يلي:

  1. السماح لـ 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  2. رفض *

يعني في الواقع:

  1. السماح لـ Dataverse current environment
  2. السماح لـ 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
  3. رفض *

السماح بـ Dataverse current environment هو دائمًا القاعدة الأولى في قائمة تصفية Dataverse لنقطة النهاية لأي بيئة معينة.

Azure Blob Storage

يتم تمثيل نقاط نهاية مساحة تخزين Azure Blob باسم حساب مساحة تخزين Azure.

SMTP

يتم تمثيل نقاط نهاية SMTP بتنسيق <SMTP server address, port number>.

فيما يلي مثال على سيناريو:

  1. رفض smtp.gmail.com,587
  2. السماح لـ *

HTTP مع معرف Microsoft Entra ، خطاف ويب HTTP، وموصلات HTTP

يتم تمثيل نقاط النهاية لجميع موصلات HTTP من خلال نمط URL. إن إجراء الحصول على مورد الويب لـ HTTP مع موصل Microsoft Entra خارج النطاق.

فيما يلي مثال على سيناريو:

السماح بالوصول إلى صفحة اشتراكات Azure فقط داخل https://management.azure.com/.

  1. السماح لـ https://management.azure.com/subscriptions*
  2. رفض https://management.azure.com/*
  3. رفض *

دعم PowerShell لتصفية نقاط النهاية

تكوين قواعد تصفية نقاط النهاية لسياسة

يُشار إلى الكائن الذي يحتوي على قواعد تصفية نقاط النهاية لسياسة ما أدناه باسم تكوينات الموصل.

يكون كائن تكوينات الموصل له البنية التالية:

$ConnectorConfigurations = @{ 
  connectorActionConfigurations = @() # used for connector action rules
  endpointConfigurations = @( # array – one entry per 
    @{  
      connectorId # string
      endpointRules = @( # array – one entry per rule 
        @{ 
          order # number 
          endpoint # string
          behavior # supported values: Allow/Deny
        }
      ) 
    }
  ) 
}

ملاحظات

  • يجب دائمًا تطبيق القاعدة الأخيرة لكل موصل على عنوان URL *,للتأكد من أن جميع عناوين URL مغطاة بالقواعد.
  • يجب ملء خاصية ترتيب القواعد لكل موصل بالأرقام من 1 إلى N، حيث يكون N هو عدد القواعد لهذا الموصل

استرجع تكوينات الموصل الحالية لسياسة منع فقدان البيانات (DLP)

Get-PowerAppDlpPolicyConnectorConfigurations 

إنشاء تكوينات موصل لسياسة منع فقدان البيانات (DLP)

New-PowerAppDlpPolicyConnectorConfigurations

تحديث تكوينات موصل لسياسة منع فقدان البيانات (DLP)

Set-PowerAppDlpPolicyConnectorConfigurations

مثال

الهدف:

لموصل SQL Server:

  • رفض قاعدة البيانات "testdatabase" للخادم "myservername.database.windows.net"
  • السماح لجميع قواعد البيانات الأخرى للخادم "myservername.database.windows.net"
  • رفض جميع الخوادم الأخرى

بالنسبة لموصل SMTP:

  • السماح لـ Gmail (عنوان الخادم: smtp.gmail.com، المنفذ: 587)
  • رفض جميع العناوين الأخرى

بالنسبة لموصل HTTP:

  • السماح بنقاط النهاية https://mywebsite.com/allowedPath1 وhttps://mywebsite.com/allowedPath2
  • رفض جميع عناوين URL الأخرى

‏‫ملاحظة‬

في أمر cmdlet التالي، يشير PolicyName إلى معرف GUID فريد. يمكنك استرداد معرف DLP GUID بواسطة تشغيل أمر cmdlet Get-DlpPolicy.

$ConnectorConfigurations = @{ 
  endpointConfigurations = @(
    @{  
      connectorId = "/providers/Microsoft.PowerApps/apis/shared_sql" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "myservername.database.windows.net,testdatabase" 
          behavior = "Deny"
        }, 
        @{ 
          order = 2 
          endpoint = "myservername.database.windows.net,*" 
          behavior = "Allow"
        }, 
        @{ 
          order = 3
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    }, 
    @{  
      connectorId = "/providers/Microsoft.PowerApps/apis/shared_smtp" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "smtp.gmail.com,587" 
          behavior = "Allow"
        }, 
        @{ 
          order = 2 
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    },
    @{  
      connectorId = "http" 
      endpointRules = @(
        @{ 
          order = 1 
          endpoint = "https://mywebsite.com/allowedPath1" 
          behavior = "Allow"
        }, 
        @{ 
          order = 2
          endpoint = "https://mywebsite.com/allowedPath2" 
          behavior = "Allow"
        }, 
        @{ 
          order = 3
          endpoint = "*" 
          behavior = "Deny"
        } 
      ) 
    } 
  ) 
}
New-PowerAppDlpPolicyConnectorConfigurations -TenantId $TenantId -PolicyName $PolicyName -NewDlpPolicyConnectorConfigurations $ConnectorConfigurations