Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması

Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması, kimlik doğrulaması için bir Microsoft Entra ID hizmet sorumlusunun kimlik bilgilerini kullanır. Azure Databricks için hizmet sorumluları oluşturmak ve yönetmek için bkz:

Not

Databricks, çoğu senaryoda Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması yerine OAuth makineden makineye (M2M) kimlik doğrulamasını kullanmanızı önerir. Bunun nedeni, OAuth M2M kimlik doğrulamasının yalnızca Azure Databricks ile kimlik doğrulaması yaparken daha güçlü olan Azure Databricks OAuth erişim belirteçlerini kullanmasıdır.

Microsoft Entra ID hizmet sorumlusu kimlik doğrulamasını yalnızca Azure Databricks ve diğer Azure kaynaklarıyla aynı anda kimlik doğrulaması yapmanız gereken durumlarda kullanmanız gerekir ve bu durum için Microsoft Entra ID belirteçleri gerekmektedir.

Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması yerine OAuth M2M kimlik doğrulamasını kullanmak için bu makaleyi atlayın ve bkz . OAuth makineden makineye (M2M) kimlik doğrulaması.

Microsoft Entra ID hizmet sorumluları, Azure databricks'in kimlik doğrulaması için de desteklediği Azure kaynakları için yönetilen kimliklerden farklıdır. Azure Databricks kimlik doğrulaması için Microsoft Entra ID hizmet sorumluları yerine Azure kaynakları için yönetilen kimlikleri kullanmayı öğrenmek için bkz . Azure Databricks otomasyonu için Azure yönetilen kimlikleri kimlik doğrulamasını ayarlama ve kullanma.

Azure Databricks ile Microsoft Entra ID hizmet sorumlusu kimlik doğrulamasını yapılandırmak için aşağıdaki ilişkili ortam değişkenlerini, alanları, .databrickscfg Terraform alanlarını veya Config alanları ayarlamanız gerekir:

  • Azure Databricks konağı.

    • Hesap işlemleri için belirtin https://accounts.azuredatabricks.net.

    • Çalışma alanı işlemleri için çalışma alanı başına URL'yi (örneğinhttps://adb-1234567890123456.7.azuredatabricks.net) belirtin.

      Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse bunun yerine Azure kaynak kimliğini belirtin. Bu durumda, Microsoft Entra Id hizmet sorumlusunun Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

  • Hesap işlemleri için Azure Databricks hesap kimliği.

  • Azure kaynak kimliği.

  • Microsoft Entra Id hizmet sorumlusunun kiracı kimliği.

  • Microsoft Entra Id hizmet sorumlusunun istemci kimliği.

  • Microsoft Entra ID hizmet sorumlusunun istemci gizli dizisi.

Azure Databricks ile Microsoft Entra ID hizmet sorumlusu kimlik doğrulamasını gerçekleştirmek için, katılan aracı veya SDK'yı temel alarak kodunuzda aşağıdakileri tümleştirin:

Ortam

Belirli bir Azure Databricks kimlik doğrulama türü için ortam değişkenlerini bir araç veya SDK ile kullanmak için bkz . Azure Databricks aracı veya SDK tarafından desteklenen kimlik doğrulama türleri ya da aracın ya da SDK'nın belgeleri. Ayrıca bkz. İstemci birleşik kimlik doğrulaması için ortam değişkenleri ve alanları ve istemci birleşik kimlik doğrulama yöntemleri ve kimlik bilgileri için varsayılan değerlendirme sırası.

Hesap düzeyinde işlemler için aşağıdaki ortam değişkenlerini ayarlayın:

  • DATABRICKS_HOST, Azure Databricks hesap konsolu URL'nizin https://accounts.azuredatabricks.netdeğerine ayarlayın.
  • DATABRICKS_ACCOUNT_ID
  • ARM_TENANT_ID
  • ARM_CLIENT_ID
  • ARM_CLIENT_SECRET

Çalışma alanı düzeyinde işlemler için aşağıdaki ortam değişkenlerini ayarlayın:

  • DATABRICKS_HOST, çalışma alanı başına Azure Databricks URL'nizin değerine (örneğin https://adb-1234567890123456.7.azuredatabricks.net) ayarlayın.
  • ARM_TENANT_ID
  • ARM_CLIENT_ID
  • ARM_CLIENT_SECRET

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine HOST Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinDATABRICKS_AZURE_RESOURCE_ID. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Profil

Dosyanızda .databrickscfg aşağıdaki alanlarla bir Azure Databricks yapılandırma profili oluşturun veya tanımlayın. Profili oluşturursanız yer tutucuları uygun değerlerle değiştirin. Profili bir araç veya SDK ile kullanmak için bkz . Azure Databricks aracı veya SDK tarafından desteklenen kimlik doğrulama türleri ya da aracın ya da SDK'nın belgeleri. Ayrıca bkz. İstemci birleşik kimlik doğrulaması için ortam değişkenleri ve alanları ve istemci birleşik kimlik doğrulama yöntemleri ve kimlik bilgileri için varsayılan değerlendirme sırası.

Hesap düzeyinde işlemler için dosyanızda .databrickscfg aşağıdaki değerleri ayarlayın. Bu durumda Azure Databricks hesap konsolu URL'si şöyledir 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>

Çalışma alanı düzeyinde işlemler için dosyanızda .databrickscfg aşağıdaki değerleri ayarlayın. Bu durumda konak, çalışma alanı başına Azure Databricks URL'sidir, örneğin 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>

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine host Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinazure_workspace_resource_id. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Clı

Databricks CLI için aşağıdakilerden birini yapın:

  • Ortam değişkenlerini bu makalenin "Ortam" bölümünde belirtildiği gibi ayarlayın.
  • Dosyanızdaki .databrickscfg değerleri bu makalenin "Profil" bölümünde belirtildiği gibi ayarlayın.

Ortam değişkenleri her zaman dosyanızdaki .databrickscfg değerlerden önceliklidir.

Ayrıca bkz. Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması.

Bağlan

Not

Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması aşağıdaki Databricks Bağlan sürümlerinde desteklenir:

  • Python için Databricks, Databricks Runtime 13.1 ve üzeri için Bağlan.
  • Scala için Databricks, Databricks Runtime 13.3 LTS ve üzeri için Bağlan.

Databricks Bağlan için aşağıdakilerden birini yapabilirsiniz:

  • Bu makalenin "Profil" bölümünde belirtildiği gibi Azure Databricks çalışma alanı düzeyinde işlemler için dosyanızdaki .databrickscfg değerleri ayarlayın. Ayrıca profilinizdeki ortam değişkenini cluster_id çalışma alanı başına URL'nize ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net.
  • Bu makalenin "Ortam" bölümünde belirtildiği gibi Azure Databricks çalışma alanı düzeyinde işlemler için ortam değişkenlerini ayarlayın. Ayrıca ortam değişkenini DATABRICKS_CLUSTER_ID çalışma alanı başına URL'nize ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net.

Dosyanızdaki .databrickscfg değerler her zaman ortam değişkenlerinden önceliklidir.

Databricks Bağlan istemcisini dosyanızdaki .databrickscfg bu ortam değişkenleri veya değerleriyle başlatmak için aşağıdakilerden birine bakın:

  • Python için bkz . Python için bağlantı özelliklerini yapılandırma.
  • Scala için bkz . Scala için bağlantı özelliklerini yapılandırma.

Vs code

Visual Studio Code için Databricks uzantısı için aşağıdakileri yapın:

  1. Bu makalenin "Profil" bölümünde belirtildiği gibi Azure Databricks çalışma alanı düzeyinde işlemler için dosyanızdaki .databrickscfg değerleri ayarlayın.
  2. Visual Studio Code için Databricks uzantısının Yapılandırma bölmesinde Databricks'i Yapılandır'a tıklayın.
  3. Komut Paleti'nde, Databricks Konağı için çalışma alanı başına URL'nizi (örneğinhttps://adb-1234567890123456.7.azuredatabricks.net) girin ve tuşuna basınEnter.
  4. Komut Paleti'nde, URL'niz için listeden hedef profilinizin adını seçin.

Diğer ayrıntılar için bkz . VS Code için Databricks uzantısı için kimlik doğrulaması kurulumu.

Terraform

Hesap düzeyinde işlemler için, varsayılan kimlik doğrulaması için:

provider "databricks" {
  alias = "accounts"
}

Doğrudan yapılandırma için (değerleri konsoldan veya HashiCorp Vault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Ayrıca bkz. Kasa Sağlayıcısı). Bu durumda Azure Databricks hesap konsolu URL'si şöyledir 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>
}

Çalışma alanı düzeyindeki işlemler için, varsayılan kimlik doğrulaması için:

provider "databricks" {
  alias = "workspace"
}

Doğrudan yapılandırma için (değerleri konsoldan veya HashiCorp Vault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Ayrıca bkz. Kasa Sağlayıcısı). Bu durumda konak, çalışma alanı başına Azure Databricks URL'sidir, örneğin 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>
}

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine host Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinazure_workspace_resource_id. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Databricks Terraform sağlayıcısıyla kimlik doğrulaması hakkında daha fazla bilgi için bkz . Kimlik doğrulaması.

Python

Hesap düzeyinde işlemler için, varsayılan kimlik doğrulaması için:

from databricks.sdk import AccountClient

a = AccountClient()
# ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda Azure Databricks hesap konsolu URL'si şöyledir 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()
)
# ...

Çalışma alanı düzeyindeki işlemler için, varsayılan kimlik doğrulaması için:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()
# ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda konak, çalışma alanı başına Azure Databricks URL'sidir, örneğin 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()
)
# ...

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine host Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinazure_workspace_resource_id. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Python kullanan ve Databricks istemcisi birleşik kimlik doğrulamasını uygulayan Databricks araçları ve SDK'ları ile kimlik doğrulaması hakkında daha fazla bilgi için bkz:

Java

Hesap düzeyinde işlemler için, varsayılan kimlik doğrulaması için:

import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda Azure Databricks hesap konsolu URL'si şöyledir 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);
// ...

Çalışma alanı düzeyindeki işlemler için, varsayılan kimlik doğrulaması için:

import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda konak, çalışma alanı başına Azure Databricks URL'sidir, örneğin 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);
// ...

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine setHost Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinsetAzureWorkspaceResourceId. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Java kullanan ve Databricks istemcisi birleşik kimlik doğrulamasını uygulayan Databricks araçları ve SDK'ları ile kimlik doğrulaması hakkında daha fazla bilgi için bkz:

Go

Hesap düzeyinde işlemler için, varsayılan kimlik doğrulaması için:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda Azure Databricks hesap konsolu URL'si şöyledir 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(),
}))
// ...

Çalışma alanı düzeyindeki işlemler için, varsayılan kimlik doğrulaması için:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...

Doğrudan yapılandırma için (değerleri konsoldan veya Azure KeyVault gibi başka bir yapılandırma deposundan almak için yer tutucuları kendi uygulamanızla değiştirinretrieve). Bu durumda konak, çalışma alanı başına Azure Databricks URL'sidir, örneğin 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(),
}))
// ...

Çalışma alanı düzeyindeki işlemler için, Microsoft Entra ID hizmet sorumlusu çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine Host Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinAzureWorkspaceResourceId. Bu durumda, Microsoft Entra ID hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

Go kullanan ve Databricks istemcisi birleşik kimlik doğrulaması uygulayan Databricks araçları ve SDK'ları ile kimlik doğrulaması hakkında daha fazla bilgi için bkz . Azure Databricks hesabınız veya çalışma alanınızla Go için Databricks SDK'sının kimliğini doğrulama.