نطاقات سرية

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

نظرة عامة

هناك نوعان من النطاق السري: Azure مفتاح المدفن المدعومة و Databricks المدعومة.

نطاقات Azure مفتاح المدفن المدعومة

للإشارة إلى الأسرار المخزنة في قبو مفتاح Azure، يمكنك إنشاء نطاق سري مدعوم ب Azure Key Vault. يمكنك بعد ذلك الاستفادة من جميع الأسرار في مثيل Key Vault المقابل من هذا النطاق السري. لأن نطاق Azure مفتاح Vault-المدعومة سرية واجهة للقراءة فقط إلى Vault مفتاح، PutSecret و أسرار API DeleteSecretPutSecret غير مسموح العمليات. لإدارة الأسرار في Azure Key Vault، يجب استخدام واجهة API للراحة في Azure SetSecret أو واجهة مستخدم مدخل Azure.

نطاقات مدعومة بالبيانات

يتم تخزين نطاق سري مدعوم من Databricks في (مدعومة) قاعدة بيانات مشفرة مملوكة ومدارة بواسطة Azure Databricks. اسم النطاق السري:

  • يجب أن تكون فريدة داخل مساحة عمل.
  • يجب أن تتكون من أحرف أبجدية رقمية شرطات، تسطير أسفل السطر وفترات، وقد لا يتجاوز 128 حرفا.

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

إنشاء نطاق سرية تدعمها Databricks باستخدام CLI Databricks (الإصدار 0.7.1 وما فوق). بدلا من ذلك، يمكنك استخدام الأسرار API 2.0.

أذونات النطاق

يتم إنشاء نطاقات مع أذونات التحكم بها من قبل ACLs. افتراضيا، يتم إنشاء نطاقات بإذن MANAGE للمستخدم الذي أنشأ النطاق “” (المنشئ)، والذي يتيح للمنشئ قراءة الأسرار في النطاق، وكتابة الأسرار إلى النطاق، وتغيير ACLs للنطاق. إذا كان حسابك يحتوي على مخطط Premium Azure Databricks، فيمكنك تعيين أذونات دقيقة في أي وقت بعد إنشاء النطاق. للحصول على التفاصيل، راجع التحكم السري في الوصول.

يمكنك أيضا تجاوز الافتراضي ومنح الإذن بشكل صريح MANAGE لكافة المستخدمين عند إنشاء النطاق. في الواقع، يجب القيام بذلك إذا لم يكن الحساب الخاص بك خطة Premium Azure Databricks.

أفضل الممارسات

وكقبر فريق، قد تحتاج إلى إنشاء نطاقات مختلفة لبيانات اعتماد تخزين Azure Synapse Analytics و Azure Blob، ثم توفير مجموعات فرعية مختلفة في وصول الفريق إلى تلك النطاقات. يجب مراعاة كيفية تحقيق ذلك باستخدام أنواع النطاق المختلفة:

  • إذا كنت تستخدم نطاق Databricks المدعومة وإضافة الأسرار في هذين النطاقين، فإنها ستكون أسرار مختلفة (تحليلات Azure Synapse في النطاق 1، وتخزين Azure Blob في النطاق 2).
  • إذا كنت تستخدم نطاق Azure Key Vault المدعوم مع كل نطاق يشير إلى قبو مفتاح Azure مختلف وأضف أسرارك إلى هذين القبوين من Azure Key Vaults ، فسيكونان مجموعتين مختلفتين من الأسرار (Azure Synapse Analytics في النطاق 1 ، وتخزين Azure Blob في النطاق 2). ستعمل هذه مثل نطاقات تدعمها Databricks.
  • إذا كنت تستخدم نطاقين مدعومين ب Azure Key Vault مع كلا النطاقين اللذين يشيران إلى نفس Azure Key Vault وأضف أسرارك إلى قبو مفتاح Azure، ستكون جميع تحليلات Azure Synapse وأسرار تخزين Azure Blob متاحة. بما أن ACLs على مستوى النطاق، فإن جميع الأعضاء عبر المجموعتين الفرعيتين سيرون جميع الأسرار. لا يلبي هذا الترتيب حالة الاستخدام الخاصة بك لتقييد الوصول إلى مجموعة من الأسرار لكل مجموعة.

إنشاء نطاق سري مدعوم بمفتاح Azure

يمكنك إنشاء نطاق سري مدعوم بمفتاح Azure باستخدام واجهة المستخدم أو باستخدام Databricks CLI.

إنشاء نطاق سري مدعوم بمفتاح Azure باستخدام واجهة المستخدم

  1. تحقق من أن لديك إذن المساهم على مثيل Azure Key Vault الذي تريد استخدامه لدعم النطاق السري.

    إذا لم يكن لديك مثيل "مفتاح Vault"، فاتبع الإرشادات الواردة في Quickstart: إنشاء قبو مفاتيح باستخدام مدخل Azure.

  2. انتقل إلى https://<databricks-instance>#secrets/createScope. عنوان URL هذا حساس لحالة الأحرف؛ يجب أن يكون النطاق في createScope أحرف كبيرة.

    Create scope

  3. أدخل اسم النطاق السري. أسماء نطاقات البيانات السرية غير حساسة لحالة الأحرف.

  4. استخدم القائمة المنسدلة إدارة الرئيسي لتحديد ما إذا كان لدى كافة المستخدمين إذن لهذا النطاق السري أو فقط منشئ النطاق السري (أي أنت).

    MANAGEيسمح إذن للمستخدمين القراءة والكتابة إلى هذا النطاق السري، وفي حالة الحسابات على MANAGE، لتغيير أذونات النطاق.

    يجب أن يكون حسابك مخطط البيانات Azure Premium لتتمكن من تحديد منشئ. هذا هو الأسلوب المستحسن: منح MANAGE الإذن إلى MANAGE عند إنشاء نطاق سري، ومن ثم تعيين أذونات وصول أكثر الحبيبية بعد اختبار النطاق. للحصول على مثال لسير العمل، راجع مثال سير العمل السري.

    إذا كان الحساب الخاص بك يحتوي على "الخطة القياسية"، يجب تعيين MANAGE الإذن إلى “ مجموعة "كافة ” المستخدمين". إذا قمت بتحديد منشئ هنا، سترى رسالة خطأ عند محاولة حفظ النطاق.

    لمزيد من المعلومات حول MANAGE الإذن، راجع MANAGE.

  5. أدخل اسم DNS (على سبيل المثال، ) و معرف المورد، على سبيل المثال:

    /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/databricks-rg/providers/Microsoft.KeyVault/vaults/databricksKV
    

    تتوفر هذه الخصائص من علامة التبويب خصائص من قبو مفتاح Azure في مدخل Azure الخاص بك.

    Azure Key Vault Properties tab

  6. انقر فوق الزر Create.

  7. استخدم الأمر Databricks CLI للتحقق من أن النطاق تم إنشاؤه بنجاح.

للحصول على مثال عن استخدام الأسرار عند الوصول إلى تخزين Azure Blob، راجع تحميل حاوية تخزين Azure Blob.

إنشاء نطاق سري مدعوم بمفتاح Azure باستخدام Databricks CLI

  1. تثبيت CLI وتكوينه لاستخدام رمز مميز Azure Active Directory (Azure AD) للمصادقة.

    هام

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

    إذا كان قبو المفتاح موجودا في مستأجر مختلف عن مساحة عمل Azure Databricks، يجب أن يكون لدى مستخدم Azure AD الذي ينشئ النطاق السري إذن لإنشاء أساسيات الخدمة في مستأجر خزان المفاتيح. وإلا، يحدث الخطأ التالي:

    Unable to grant read/list permission to Databricks service principal to KeyVault 'https://xxxxx.vault.azure.net/': Status code 403, {"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"Insufficient privileges to complete the operation."},"requestId":"XXXXX","date":"YYYY-MM-DDTHH:MM:SS"}}
    
  2. إنشاء نطاق قبو مفتاح Azure:

    databricks secrets create-scope --scope <scope-name> --scope-backend-type AZURE_KEYVAULT --resource-id <azure-keyvault-resource-id> --dns-name <azure-keyvault-dns-name>
    

    افتراضيا، يتم إنشاء نطاقات بإذن MANAGE للمستخدم الذي أنشأ النطاق. إذا لم يكن الحساب الخاص بك Azure Databricks Premium Plan، يجب تجاوز هذا الافتراضي ومنح الإذن بشكل صريح إلى المجموعة users (كافة المستخدمين) عند إنشاء النطاق:

     databricks secrets create-scope --scope <scope-name> --scope-backend-type AZURE_KEYVAULT --resource-id <azure-keyvault-resource-id> --dns-name <azure-keyvault-dns-name> --initial-manage-principal users
    

    إذا كان حسابك في Azure Databricks Premium Plan، يمكنك تغيير الأذونات في أي وقت بعد إنشاء النطاق. للحصول على التفاصيل، راجع التحكم السري في الوصول.

    بمجرد إنشاء نطاق سري مدعوم من Databricks ، يمكنك إضافة أسرار.

للحصول على مثال عن استخدام الأسرار عند الوصول إلى تخزين Azure Blob، راجع تحميل حاوية تخزين Azure Blob.

إنشاء نطاق سري مدعوم من Databricks

أسماء نطاقات البيانات السرية غير حساسة لحالة الأحرف.

لإنشاء نطاق باستخدام CLI Databricks:

databricks secrets create-scope --scope <scope-name>

افتراضيا، يتم إنشاء نطاقات بإذن MANAGE للمستخدم الذي أنشأ النطاق. إذا لم يكن الحساب الخاص بك Azure Databricks Premium Plan، يجب تجاوز هذا الافتراضي ومنح الإذن للمستخدمين ” (كافة المستخدمين) عند إنشاء النطاق:

databricks secrets create-scope --scope <scope-name> --initial-manage-principal users

يمكنك أيضا إنشاء نطاق سري مدعوم من Databricks باستخدام عملية Secrets API Put السرية.

إذا كان حسابك يحتوي على خطة azure Databricks Premium،فيمكنك تغيير الأذونات في أي وقت بعد إنشاء النطاق. للحصول على التفاصيل، راجع التحكم السري في الوصول.

بمجرد إنشاء نطاق سري مدعوم من Databricks ، يمكنك إضافة أسرار.

سرد النطاقات السرية

لسرد النطاقات الموجودة في مساحة عمل باستخدام CLI:

databricks secrets list-scopes

يمكنك أيضا سرد النطاقات الموجودة باستخدام عملية أسرار قائمة الأسرار API.

حذف نطاق سري

حذف نطاق سري حذف كافة الأسرار و ACLs تطبيقها على النطاق. لحذف نطاق باستخدام CLI:

databricks secrets delete-scope --scope <scope-name>

يمكنك أيضا حذف نطاق سري باستخدام عملية نطاق SECRETS API Delete السرية.