بيانات الاعتماد

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

يستخدم كتالوج Unity ومخزن بيانات Azure Databricks Hive المضمن المواقع الافتراضية للجداول المدارة. يقدم كتالوج Unity العديد من الكائنات القابلة للتأمين الجديدة لمنح امتيازات لخدمات السحابة الخارجية والبيانات في تخزين الكائنات السحابية.

بيانات اعتماد

بيانات الاعتماد هي كائن قابل للتأمين يمثل هوية مدارة من Azure أو كيان خدمة معرف Microsoft Entra.

بعد إنشاء بيانات اعتماد، يمكن منح حق الوصول إليها إلى الأساسيات (المستخدمون والمجموعات).

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

أسماء بيانات الاعتماد غير مؤهلة ويجب أن تكون فريدة داخل metastore.

تمثيل رسومي للعلاقات

يصف الرسم التخطيطي التالي العلاقة بين:

  • بيانات اعتماد التخزين
  • المواقع الخارجية
  • جداول خارجية
  • مسارات التخزين
  • كيانات IAM
  • حسابات خدمة Azure

رسم تخطيطي ER للموقع الخارجي

الأمثلة

يؤدي استخدام CLI إلى إنشاء بيانات اعتماد my_azure_storage_cred تخزين لمدير خدمة معرف Microsoft Entra.

databricks storage-credentials create --json '{"name": "my_azure_storage_cred", "azure_service_principal": {"directory_id": "12345678-9abc-def0-1234-56789abcdef0", "application_id": "23456789-9abc-def0-1234-56789abcdef0", "client_secret": "Cli3nt5ecr3t"}}'

يمكن تشغيل بقية الأوامر داخل SQL.

-- Grant access to the storage credential
> GRANT READ FILES ON STORAGE CREDENTIAL my_azure_storage_cred TO ceo;

-- ceo can directly read from any storage path using myazure_storage_cred
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/finance/forecast/somefile` WITH (CREDENTIAL my_azure_storage_cred);
  100
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/hr/employees` WITH (CREDENTIAL my_azure_storage_cred);
  2017

-- Create an external location on specific path to which `my_azure_storage_cred` has access
> CREATE EXTERNAL LOCATION finance_loc URL 'abfss://container@storageaccount.dfs.core.windows.net/depts/finance'
    WITH (CREDENTIAL my_azure_storage_cred)
    COMMENT 'finance';