Aracılığıyla paylaş


MS Entra hizmet sorumlusu kimlik doğrulaması

MS Entra hizmet sorumlusu kimlik doğrulaması, kimlik doğrulaması için MS Entra 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 MS Entra 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.

MS Entra 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.

MS Entra hizmet sorumlusu kimlik doğrulaması yerine OAuth M2M kimlik doğrulamasını kullanmak için bu makaleyi atlayın ve OAuth (OAuth M2M) kullanarak hizmet sorumlusuyla Azure Databricks'e erişimin kimliğini doğrulama bölümüne bakın.

MS Entra 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 MS Entra hizmet sorumluları yerine Azure kaynakları için yönetilen kimliklerin nasıl kullanılacağını öğrenmek için bkz . Azure Databricks otomasyonu için Azure yönetilen kimlikleri kimlik doğrulamasını ayarlama ve kullanma.

Özellikle Azure DevOps ile Databricks'te Microsoft Entra kimlik doğrulaması hakkında ayrıntılı bilgi için bkz . Databricks üzerinde Azure DevOps ile kimlik doğrulaması.

Azure Databricks ile MS Entra 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.

      MS Entra hizmet sorumlusu çalışma alanına henüz eklenmemişse, bunun yerine Azure kaynak kimliğini belirtin. Bu durumda, MS Entra 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.

  • MS Entra hizmet sorumlusunun kiracı kimliği.

  • MS Entra hizmet sorumlusunun istemci kimliği.

  • MS Entra hizmet sorumlusunun istemci gizli dizisi.

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

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 kaynaklarına erişimin kimliğini doğrulama veya 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ğrulaması için Varsayılan yöntemler.

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, MS Entra 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, MS Entra hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

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 kaynaklarına erişimin kimliğini doğrulama veya 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ğrulaması için Varsayılan yöntemler.

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, MS Entra 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, MS Entra hizmet sorumlusunun Azure Databricks çalışma alanı için Azure kaynağında en az Katkıda Bulunan veya Sahip izinlerine sahip olması gerekir.

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ı.

Not

MS Entra hizmet sorumlusu kimlik doğrulaması aşağıdaki Databricks Connect sürümlerinde desteklenir:

  • Python için Databricks Runtime 13.1 ve üzeri için Databricks Connect.
  • Scala için Databricks Runtime 13.3 LTS ve üzeri için Databricks Connect.

Databricks Connect 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 Connect istemcisini dosyanızdaki .databrickscfg bu ortam değişkenleri veya değerlerle 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.

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 . Visual Studio Code için Databricks uzantısı için kimlik doğrulaması kurulumu.

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, MS Entra 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, MS Entra 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ı.

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, MS Entra 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, MS Entra 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:

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, MS Entra 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, MS Entra 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:

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, MS Entra 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, MS Entra 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.