المصادقة الأساسية لخدمة MS Entra
تستخدم المصادقة الأساسية لخدمة MS Entra بيانات اعتماد كيان خدمة MS Entra للمصادقة. لإنشاء وإدارة أساسيات الخدمة ل Azure Databricks، راجع:
إشعار
توصي Databricks باستخدام مصادقة OAuth من جهاز إلى جهاز (M2M) في معظم السيناريوهات بدلا من المصادقة الأساسية لخدمة MS Entra. وذلك لأن مصادقة OAuth M2M تستخدم رموز وصول Azure Databricks OAuth المميزة الأكثر قوة عند المصادقة فقط مع Azure Databricks.
يجب استخدام المصادقة الأساسية لخدمة MS Entra فقط في الحالات التي يجب فيها المصادقة مع Azure Databricks وموارد Azure الأخرى في نفس الوقت.
لاستخدام مصادقة OAuth M2M بدلا من مصادقة مدير خدمة MS Entra، تخط هذه المقالة وشاهد مصادقة الوصول إلى Azure Databricks باستخدام كيان خدمة باستخدام OAuth (OAuth M2M).
تختلف أساسيات خدمة MS Entra عن الهويات المدارة لموارد Azure، والتي يدعمها Azure Databricks أيضا للمصادقة. لمعرفة كيفية استخدام الهويات المدارة لموارد Azure بدلا من أساسيات خدمة MS Entra لمصادقة Azure Databricks، راجع إعداد مصادقة الهويات المدارة في Azure واستخدامها لأتمتة Azure Databricks.
للحصول على تفاصيل حول مصادقة Microsoft Entra إلى Databricks باستخدام Azure DevOps على وجه التحديد، راجع المصادقة باستخدام Azure DevOps على Databricks.
لتكوين المصادقة الأساسية لخدمة MS Entra باستخدام Azure Databricks، يجب تعيين متغيرات البيئة المقترنة التالية أو .databrickscfg
الحقول أو حقول Terraform أو Config
الحقول:
مضيف Azure Databricks.
لعمليات الحساب، حدد
https://accounts.azuredatabricks.net
.لعمليات مساحة العمل، حدد عنوان URL لكل مساحة عمل، على سبيل المثال
https://adb-1234567890123456.7.azuredatabricks.net
.إذا لم تتم إضافة كيان خدمة MS Entra بالفعل إلى مساحة العمل، فحدد معرف مورد Azure بدلا من ذلك. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure.
لعمليات الحساب، معرف حساب Azure Databricks.
معرف مورد Azure.
معرف المستأجر الخاص بكيان خدمة MS Entra.
معرف العميل الخاص بكيان خدمة MS Entra.
سر العميل الخاص بكيان خدمة MS Entra.
لتنفيذ المصادقة الأساسية لخدمة MS Entra مع Azure Databricks، قم بدمج ما يلي ضمن التعليمات البرمجية الخاصة بك، استنادا إلى الأداة المشاركة أو SDK:
لاستخدام متغيرات البيئة لنوع مصادقة Azure Databricks معين باستخدام أداة أو SDK، راجع مصادقة الوصول إلى موارد Azure Databricks أو وثائق الأداة أو SDK. راجع أيضا متغيرات البيئة وحقول المصادقة الموحدة للعميل والأساليب الافتراضية للمصادقة الموحدة للعميل.
بالنسبة للعمليات على مستوى الحساب، قم بتعيين متغيرات البيئة التالية:
DATABRICKS_HOST
، قم بتعيين إلى قيمة عنوان URL لوحدة تحكم حساب Azure Databricks،https://accounts.azuredatabricks.net
.DATABRICKS_ACCOUNT_ID
ARM_TENANT_ID
ARM_CLIENT_ID
ARM_CLIENT_SECRET
بالنسبة للعمليات على مستوى مساحة العمل، قم بتعيين متغيرات البيئة التالية:
DATABRICKS_HOST
، قم بتعيين إلى قيمة عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
.ARM_TENANT_ID
ARM_CLIENT_ID
ARM_CLIENT_SECRET
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد
DATABRICKS_AZURE_RESOURCE_ID
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا منHOST
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
إنشاء ملف تعريف تكوين Azure Databricks أو تعريفه باستخدام الحقول التالية في ملفك.databrickscfg
. إذا قمت بإنشاء ملف التعريف، فاستبدل العناصر النائبة بالقيم المناسبة. لاستخدام ملف التعريف مع أداة أو SDK، راجع مصادقة الوصول إلى موارد Azure Databricks أو وثائق الأداة أو SDK. راجع أيضا متغيرات البيئة وحقول المصادقة الموحدة للعميل والأساليب الافتراضية للمصادقة الموحدة للعميل.
بالنسبة للعمليات على مستوى الحساب، قم بتعيين القيم التالية في ملفك .databrickscfg
. في هذه الحالة، عنوان URL لوحدة تحكم حساب Azure Databricks هو https://accounts.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <account-console-url>
account_id = <account-id>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
بالنسبة للعمليات على مستوى مساحة العمل، قم بتعيين القيم التالية في الملف..databrickscfg
في هذه الحالة، يكون المضيف هو عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد azure_workspace_resource_id
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا من host
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
بالنسبة إلى Databricks CLI، قم بأحد الإجراءات التالية:
- تعيين متغيرات البيئة كما هو محدد في قسم "البيئة" لهذه المقالة.
- تعيين القيم الموجودة في
.databrickscfg
الملف كما هو محدد في قسم "ملف التعريف" في هذه المقالة.
دائما ما تكون لمتغيرات البيئة الأسبقية على القيم الموجودة في الملف..databrickscfg
راجع أيضا المصادقة الأساسية لخدمة Microsoft Entra ID.
إشعار
يتم دعم المصادقة الأساسية لخدمة MS Entra على إصدارات Databricks Connect التالية:
- بالنسبة إلى Python وDatabricks Connect ل Databricks Runtime 13.1 وما فوق.
- بالنسبة إلى Scala وDatabricks Connect ل Databricks Runtime 13.3 LTS وما فوق.
بالنسبة إلى Databricks Connect، يمكنك القيام بأحد الإجراءات التالية:
- تعيين القيم الموجودة في الملف لعمليات
.databrickscfg
Azure Databricks على مستوى مساحة العمل كما هو محدد في قسم "ملف التعريف" في هذه المقالة. قم أيضا بتعيينcluster_id
متغير البيئة في ملف التعريف الخاص بك إلى عنوان URL لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
. - تعيين متغيرات البيئة لعمليات Azure Databricks على مستوى مساحة العمل كما هو محدد في قسم "البيئة" في هذه المقالة. قم أيضا بتعيين
DATABRICKS_CLUSTER_ID
متغير البيئة إلى عنوان URL لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
.
دائما ما تكون للقيم الموجودة في .databrickscfg
الملف الأسبقية على متغيرات البيئة.
لتهيئة عميل Databricks Connect مع متغيرات البيئة هذه أو القيم في ملفك .databrickscfg
، راجع أحد الإجراءات التالية:
- بالنسبة إلى Python، راجع تكوين خصائص الاتصال ل Python.
- بالنسبة إلى Scala، راجع تكوين خصائص الاتصال ل Scala.
للحصول على ملحق Databricks ل Visual Studio Code، قم بما يلي:
- تعيين القيم الموجودة في الملف لعمليات
.databrickscfg
Azure Databricks على مستوى مساحة العمل كما هو محدد في قسم "ملف التعريف" في هذه المقالة. - في جزء التكوين من ملحق Databricks ل Visual Studio Code، انقر فوق تكوين Databricks.
- في لوحة الأوامر، لمضيف Databricks، أدخل عنوان URL لكل مساحة عمل، على سبيل المثال
https://adb-1234567890123456.7.azuredatabricks.net
، ثم اضغطEnter
على . - في لوحة الأوامر، حدد اسم ملف التعريف الهدف في قائمة عنوان URL الخاص بك.
لمزيد من التفاصيل، راجع إعداد المصادقة لملحق Databricks ل Visual Studio Code.
بالنسبة للعمليات على مستوى الحساب، للمصادقة الافتراضية:
provider "databricks" {
alias = "accounts"
}
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل HashiCorp Vault. راجع أيضا موفر Vault). في هذه الحالة، عنوان URL لوحدة تحكم حساب Azure Databricks هو https://accounts.azuredatabricks.net
:
provider "databricks" {
alias = "accounts"
host = <retrieve-account-console-url>
account_id = <retrieve-account-id>
azure_tenant_id = <retrieve-azure-tenant-id>
azure_client_id = <retrieve-azure-client-id>
azure_client_secret = <retrieve-azure-client-secret>
}
بالنسبة للعمليات على مستوى مساحة العمل، للمصادقة الافتراضية:
provider "databricks" {
alias = "workspace"
}
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل HashiCorp Vault. راجع أيضا موفر Vault). في هذه الحالة، يكون المضيف هو عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
:
provider "databricks" {
alias = "workspace"
host = <retrieve-workspace-url>
azure_tenant_id = <retrieve-azure-tenant-id>
azure_client_id = <retrieve-azure-client-id>
azure_client_secret = <retrieve-azure-client-secret>
}
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد azure_workspace_resource_id
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا من host
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
لمزيد من المعلومات حول المصادقة مع موفر Databricks Terraform، راجع المصادقة.
بالنسبة للعمليات على مستوى الحساب، للمصادقة الافتراضية:
from databricks.sdk import AccountClient
a = AccountClient()
# ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، عنوان URL لوحدة تحكم حساب Azure Databricks هو https://accounts.azuredatabricks.net
:
from databricks.sdk import AccountClient
a = AccountClient(
host = retrieve_account_console_url(),
account_id = retrieve_account_id(),
azure_tenant_id = retrieve_azure_tenant_id(),
azure_client_id = retrieve_azure_client_id(),
azure_client_secret = retrieve_azure_client_secret()
)
# ...
بالنسبة للعمليات على مستوى مساحة العمل، للمصادقة الافتراضية:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، يكون المضيف هو عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(
host = retrieve_workspace_url(),
azure_tenant_id = retrieve_azure_tenant_id(),
azure_client_id = retrieve_azure_client_id(),
azure_client_secret = retrieve_azure_client_secret()
)
# ...
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد azure_workspace_resource_id
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا من host
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
لمزيد من المعلومات حول المصادقة باستخدام أدوات Databricks وSDKs التي تستخدم Python والتي تنفذ المصادقة الموحدة لعميل Databricks، راجع:
- إعداد عميل Databricks Connect ل Python
- إعداد المصادقة لملحق Databricks ل Visual Studio Code
- مصادقة Databricks SDK ل Python باستخدام حساب Azure Databricks أو مساحة العمل
بالنسبة للعمليات على مستوى الحساب، للمصادقة الافتراضية:
import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، عنوان URL لوحدة تحكم حساب Azure Databricks هو https://accounts.azuredatabricks.net
:
import com.databricks.sdk.AccountClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveAccountConsoleUrl())
.setAccountId(retrieveAccountId())
.setAzureTenantId(retrieveAzureTenantId())
.setAzureClientId(retrieveAzureClientId())
.setAzureClientSecret(retrieveAzureClientSecret())
AccountClient a = new AccountClient(cfg);
// ...
بالنسبة للعمليات على مستوى مساحة العمل، للمصادقة الافتراضية:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، يكون المضيف هو عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
:
import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveWorkspaceUrl())
.setAzureTenantId(retrieveAzureTenantId())
.setAzureClientId(retrieveAzureClientId())
.setAzureClientSecret(retrieveAzureClientSecret())
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد setAzureWorkspaceResourceId
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا من setHost
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
لمزيد من المعلومات حول المصادقة باستخدام أدوات Databricks وSDKs التي تستخدم Java والتي تنفذ المصادقة الموحدة لعميل Databricks، راجع:
- إعداد عميل Databricks Connect ل Scala (يستخدم عميل Databricks Connect ل Scala Databricks SDK المضمن ل Java للمصادقة)
- مصادقة Databricks SDK ل Java باستخدام حساب Azure Databricks أو مساحة العمل
بالنسبة للعمليات على مستوى الحساب، للمصادقة الافتراضية:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، عنوان URL لوحدة تحكم حساب Azure Databricks هو https://accounts.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: retrieveAccountConsoleUrl(),
AccountId: retrieveAccountId(),
AzureTenantId: retrieveAzureTenantId(),
AzureClientId: retrieveAzureClientId(),
AzureClientSecret: retrieveAzureClientSecret(),
}))
// ...
بالنسبة للعمليات على مستوى مساحة العمل، للمصادقة الافتراضية:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
للتكوين المباشر (استبدل العناصر النائبة retrieve
بتطبيقك الخاص لاسترداد القيم من وحدة التحكم أو مخزن تكوين آخر، مثل Azure KeyVault). في هذه الحالة، يكون المضيف هو عنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: retrieveWorkspaceUrl(),
AzureTenantId: retrieveAzureTenantId(),
AzureClientId: retrieveAzureClientId(),
AzureClientSecret: retrieveAzureClientSecret(),
}))
// ...
بالنسبة للعمليات على مستوى مساحة العمل، إذا لم تتم إضافة أساس خدمة MS Entra بالفعل إلى مساحة العمل، فحدد AzureWorkspaceResourceId
مع معرف مورد Azure لمساحة عمل Azure Databricks، بدلا من Host
عنوان URL لمساحة العمل. في هذه الحالة، يجب أن يكون لمدير خدمة MS Entra أذونات المساهم أو المالك على الأقل على مورد Azure لمساحة عمل Azure Databricks.
لمزيد من المعلومات حول المصادقة باستخدام أدوات Databricks وSDKs التي تستخدم Go والتي تنفذ المصادقة الموحدة لعميل Databricks، راجع مصادقة Databricks SDK ل Go باستخدام حساب Azure Databricks أو مساحة العمل.