الامتيازات والكائنات القابلة للتأمين في Hive metastore

ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime

الامتياز هو حق يمنح لمدير للعمل على كائن قابل للتأمين في metastore.

يختلف نموذج الامتياز والكائنات القابلة للتأمين اعتمادا على ما إذا كنت تستخدم مخزن بيانات تعريف كتالوج Unity أو مخزن بيانات تعريف Hive القديم. توضح هذه المقالة نموذج الامتياز ل Hive metastore القديم. إذا كنت تستخدم كتالوج Unity، فشاهد الامتيازات والكائنات القابلة للتأمين في كتالوج Unity.

الكائنات القابلة للتأمين في Hive metastore

الكائن القابل للتأمين هو كائن معرف في metastore حيث يمكن منح الامتيازات إلى كيان.

لإدارة الامتيازات على أي كائن يجب أن تكون مالكه أو مسؤولا.

بناء الجملة

  securable_object
    { ANY FILE |
      CATALOG [ catalog_name ] |
      { SCHEMA | DATABASE } schema_name |
      FUNCTION function_name |
      [ TABLE ] table_name |
      VIEW view_name
      }

المعلمات

  • ANY FILE

    يتحكم في الوصول إلى نظام الملفات الأساسي.

  • CATALOGcatalog_name

    يتحكم في الوصول إلى كتالوج البيانات بأكمله.

  • { SCHEMA | DATABASE }schema_name

    يتحكم في الوصول إلى مخطط.

  • FUNCTIONfunction_name

    يتحكم في الوصول إلى دالة مسماة.

  • [ TABLE ]table_name

    يتحكم في الوصول إلى جدول مدار أو خارجي.

  • VIEWview_name

    يتحكم في الوصول إلى طرق عرض SQL.

نموذج التوريث

الكائنات القابلة للتأمين في Hive metastore هرمية ويتم توريث الامتيازات لأسفل. وهذا يعني أن منح امتياز أو رفضه CATALOG على منح الامتياز تلقائيا أو رفضه لجميع المخططات في الكتالوج. وبالمثل، يتم توريث الامتيازات الممنوحة على كائن مخطط بواسطة كافة الكائنات في هذا المخطط. هذا النمط صحيح لجميع الكائنات القابلة للتأمين.

إذا رفضت امتيازات مستخدم على جدول، فلن يتمكن المستخدم من رؤية الجدول عن طريق محاولة سرد جميع الجداول في المخطط. إذا رفضت امتيازات مستخدم على مخطط، فلن يتمكن المستخدم من رؤية أن المخطط موجود عن طريق محاولة سرد كافة المخططات في الكتالوج.

أنواع الامتيازات

يوضح الجدول التالي الامتيازات المقترنة بالكائنات القابلة للتأمين.

نوع الامتياز الدالة ANONYMOUS أي ملف كتالوج مخطط دالة TABLE منظر
CREATE نعم ‏‏نعم‬
MODIFY ‏‏نعم‬ نعم نعم ‏‏نعم‬
READ_METADATA ‏‏نعم‬ نعم نعم ‏‏نعم‬
حدد … ‏‏نعم‬ نعم نعم نعم نعم نعم ‏‏نعم‬
الاستخدام ‏‏نعم‬ ‏‏نعم‬
  • ALL PRIVILEGES

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

  • CREATE

    إنشاء كائنات داخل الكتالوج أو المخطط.

  • MODIFY

    انسخ إلى الجدول أو حدث DELETE أو INSERT أو MERGE في الجدول.

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

  • READ_METADATA

    اكتشاف الكائن القابل للتأمين في SHOW واستجواب الكائن في وصف

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

  • READ FILES

    الاستعلام عن الملفات مباشرة باستخدام بيانات اعتماد التخزين أو الموقع الخارجي.

  • SELECT

    الاستعلام عن جدول أو طريقة عرض، أو استدعاء دالة معرفة من قبل مستخدم أو مجهول، أو تحديد ANY FILE. يحتاج SELECT المستخدم إلى الجدول أو العرض أو الدالة، بالإضافة إلى USAGE مخطط الكائن وكتالوجه.

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

  • USAGE

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

  • WRITE FILES

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

الأمثلة

-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;

-- Revoke a privilege from the general public group.
> REVOKE USAGE ON SCHEMA some_schema FROM `alf@melmak.et`;