إدارة الوصول إلى مشاركات بيانات Delta Sharing (للموفرين)

توضح هذه المقالة كيفية منح مستلم البيانات حق الوصول إلى مشاركة Delta Sharing. كما يشرح كيفية عرض الوصول وتحديثه وإبطاله.

المتطلبات

لمشاركة البيانات مع المستلمين:

  • يجب استخدام مساحة عمل Azure Databricks التي تحتوي على مخزن بيانات تعريف كتالوج Unity مرفق.
  • يجب استخدام مستودع SQL أو نظام مجموعة يستخدم وضع الوصول إلى نظام مجموعة قادر على كتالوج Unity.
  • يجب تحديد المشاركات والمستلمين بالفعل.
  • يجب أن تكون أحد الإجراءات التالية:
    • مسؤول Metastore.
    • المستخدم الذي له أذونات مفوضة أو ملكية على كل من عناصر المشاركة والمستلم ((USE SHARE + SET SHARE PERMISSION) أو مالك المشاركة) و (USE RECIPIENT أو مالك المستلم).

منح المستلم حق الوصول للمشاركة

لمنح حق الوصول للمشاركة للمستلمين، يمكنك استخدام مستكشف الكتالوج أو Databricks Unity Catalog CLI أو أوامر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

الأذونات المطلوبة: أحد الإجراءات التالية:

  • مسؤول Metastore.
  • الأذونات المفوضة أو الملكية على كل من عنصري المشاركة والمستلم ((USE SHARE + SET SHARE PERMISSION) أو مالك المشاركة) و (USE RECIPIENT أو مالك المستلم).

مستكشف الكتالوج

لإضافة مستلمين إلى مشاركة (بدءا من المشاركة):

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب مشاركات ، ابحث عن المشاركة وحددها.
  4. انقر فوق إضافة مستلم.
  5. في مربع الحوار إضافة مستلم ، ابدأ بكتابة اسم المستلم أو انقر فوق القائمة المنسدلة لتحديد المستلمين الذين تريد إضافتهم إلى المشاركة.
  6. انقر فوق إضافة.

لمنح حق الوصول للمشاركة إلى مستلم (بدءا من المستلم):

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب المستلمون ، ابحث عن المستلم وحدده.
  4. انقر فوق منح مشاركة.
  5. في مربع الحوار منح مشاركة ، ابدأ بكتابة اسم المشاركة أو انقر فوق القائمة المنسدلة لتحديد المشاركات التي تريد منحها.
  6. انقر فوق منح.

Sql

قم بتشغيل الأمر التالي في دفتر ملاحظات أو محرر استعلام Databricks SQL.

GRANT SELECT ON SHARE <share-name> TO RECIPIENT <recipient-name>;

SELECT هو الامتياز الوحيد الذي يمكنك منحه لمستلم على مشاركة.

CLI

قم بتشغيل الأمر التالي باستخدام Databricks CLI. استبدل <share-name> باسم المشاركة التي تريد منحها للمستلم، واستبدل <recipient-name> باسم المستلم. SELECT هو الامتياز الوحيد الذي يمكنك منحه على المشاركة.

databricks shares update <share-name> \
--json='{
  "changes": [
    {
      "principal": "<recipient-name>",
      "add": [
        "SELECT"
      ]
    }
  ]
}'

إبطال وصول المستلم إلى مشاركة

لإبطال وصول المستلم إلى مشاركة، يمكنك استخدام مستكشف الكتالوج أو Databricks Unity Catalog CLI أو REVOKE ON SHARE الأمر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

الأذونات المطلوبة: مسؤول Metastore أو المستخدم الذي لديه الامتياز USE SHARE أو مشاركة مالك العنصر.

مستكشف الكتالوج

لإبطال وصول المستلم إلى مشاركة، بدءا من المشاركة:

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب مشاركات ، ابحث عن المشاركة وحددها.
  4. في علامة التبويب المستلمون ، ابحث عن المستلم.
  5. قائمة كباب انقر فوق قائمة الكباب (المعروفة أيضا باسم القائمة ذات النقاط الثلاث) وحدد إبطال.
  6. في مربع حوار التأكيد، انقر فوق إبطال.

لإبطال وصول المستلم إلى مشاركة، بدءا من المستلم:

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب المستلمون ، ابحث عن المستلم وحدده.
  4. في علامة التبويب مشاركات ، ابحث عن المشاركة.
  5. قائمة كباب انقر فوق قائمة kebab (المعروفة أيضا باسم القائمة ثلاثية النقاط) في صف المشاركة وحدد إبطال.
  6. في مربع حوار التأكيد، انقر فوق إبطال.

Sql

قم بتشغيل الأمر التالي في دفتر ملاحظات أو محرر استعلام Databricks SQL.

REVOKE SELECT ON SHARE <share-name> FROM RECIPIENT <recipient-name>;

CLI

قم بتشغيل الأمر التالي باستخدام Databricks CLI. استبدل <share-name> باسم المشاركة التي تريد إزالتها للمستلم، واستبدل <recipient-name> باسم المستلم. SELECT هو الامتياز الوحيد الذي يمكنك إزالته للمستلم.

databricks shares update <share-name> \
--json='{
  "changes": [
    {
      "principal": "<recipient-name>",
      "remove": [
        "SELECT"
      ]
    }
  ]
}'

عرض المنح على حصة أو منح يمتلكها مستلم

لعرض المنح الحالية على مشاركة، يمكنك استخدام مستكشف الكتالوج أو كتالوج Databricks Unity CLI أو SHOW GRANTS ON SHARE أمر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

الأذونات المطلوبة: إذا كنت تعرض المستلمين الذين تم منحهم حق الوصول إلى مشاركة، فيجب أن تكون مسؤول metastore أو مستخدما يتمتع بالامتياز USE SHARE أو مالك عنصر المشاركة. إذا كنت تعرض مشاركات تم منحها لمستلم، فيجب أن تكون مسؤول metastore أو مستخدما يتمتع بالامتياز USE RECIPIENT أو مالك كائن المستلم.

مستكشف الكتالوج

لعرض المستلمين الذين لهم حق الوصول إلى مشاركة:

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب مشاركات ، ابحث عن المشاركة وحددها.
  4. انتقل إلى علامة التبويب المستلمون لعرض جميع المستلمين الذين لديهم حق الوصول إلى المشاركة.

Sql

قم بتشغيل الأمر التالي في دفتر ملاحظات أو محرر استعلام Databricks SQL.

SHOW GRANT ON SHARE <share-name>;

CLI

قم بتشغيل الأمر التالي باستخدام Databricks CLI.

databricks shares share-permissions <share-name>

لعرض منح المشاركة الحالية التي يمتلكها مستلم، يمكنك استخدام مستكشف الكتالوج أو Databricks CLI أو SHOW GRANTS TO RECIPIENT أمر SQL في دفتر ملاحظات Azure Databricks أو محرر استعلام Databricks SQL.

مستكشف الكتالوج

لعرض المشاركات الممنوحة للمستلم:

  1. في مساحة عمل Azure Databricks، انقر فوق أيقونة الكتالوجكتالوج.
  2. في الجزء الأيمن، قم بتوسيع قائمة Delta Sharing وحدد Shared by me.
  3. في علامة التبويب المستلمون ، ابحث عن المستلم وحدده.
  4. انتقل إلى علامة التبويب مشاركات لعرض كافة المشاركات التي يمكن للمستلم الوصول إليها.

Sql

قم بتشغيل الأمر التالي في دفتر ملاحظات أو محرر استعلام Databricks SQL.

SHOW GRANTS TO RECIPIENT <recipient-name>;

CLI

قم بتشغيل الأمر التالي باستخدام Databricks CLI.

databricks recipients share-permissions <recipient-name>