Azure yönetilen kimlikleri kimlik doğrulaması

Azure yönetilen kimlikleri kimlik doğrulaması, Azure Databricks ile kimlik doğrulaması yapmak için Azure kaynakları (eski adıyla Yönetilen Hizmet Kimlikleri (MSI)) için yönetilen kimlikleri kullanır. Azure Databricks hesabına ve çalışma alanı işlemlerine yapılan programlı çağrılar, Azure VM'leri gibi yönetilen kimlikleri destekleyen Azure kaynaklarıyla çalışırken bu yönetilen kimliği kullanır.

Not

Azure kaynakları için yönetilen kimlikler, Azure Databricks'in kimlik doğrulaması için de desteklediği Microsoft Entra ID hizmet sorumlularından farklıdır. Azure kaynakları için yönetilen kimlikler yerine Azure Databricks kimlik doğrulaması için Microsoft Entra ID hizmet sorumlularını kullanmayı öğrenmek için bkz:

Azure yönetilen kimlikleri kimlik doğrulaması yalnızca Azure sanal makineleri (Azure VM'leri) gibi yönetilen kimlikleri destekleyen düzgün yapılandırılmış kaynaklar ile Azure Databricks hesapları ve çalışma alanları arasında desteklenir.

Azure Databricks ile Azure yönetilen kimlik 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ı düzgün desteklenen bir Azure VM'sinde ayarlamanız gerekir:

  • Azure Databricks konağı.
  • Hesap işlemleri için Azure Databricks hesap kimliği.
  • Yönetilen kimliğin kiracı kimliği.
  • Yönetilen kimliğin istemci kimliği.
  • Azure kaynak kimliği.
  • Azure kullanımı yönetilen kimlikleri true olarak ayarlayın.

Azure Databricks ile Azure yönetilen kimlik kimlik doğrulaması gerçekleştirmek için, katılan aracı veya SDK'yı temel alarak aşağıdakileri kodunuzla 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_CLIENT_ID
  • ARM_USE_MSIolarak ayarlayın true.

Ç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_CLIENT_ID
  • ARM_USE_MSIolarak ayarlayın true.

Çalışma alanı düzeyindeki işlemler için, hedef kimlik çalışma alanına henüz eklenmemişse, çalışma alanı URL'si yerine DATABRICKS_HOST Azure Databricks çalışma alanı için Azure kaynak kimliği ile birlikte belirtinDATABRICKS_AZURE_RESOURCE_ID. Bu durumda, hedef kimliğin Azure Databricks çalışma alanı için Azure kaynağı üzerinde 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_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

Ç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_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

Çalışma alanı düzeyindeki işlemler için, hedef kimlik ç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ği ile birlikte belirtinazure_workspace_resource_id. Bu durumda, hedef kimliğin Azure Databricks çalışma alanı için Azure kaynağı üzerinde 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. Azure yönetilen kimlikleri kimlik doğrulaması.

Bağlan

Not

Databricks Bağlan, kimlik doğrulaması için Python için Databricks SDK'sını kullanıyor. Python için Databricks SDK'sı henüz Azure yönetilen kimlikleri kimlik doğrulamasını uygulamadı.

Vs code

Not

Visual Studio Code için Databricks uzantısı henüz Azure yönetilen kimlik kimlik doğrulamasını desteklememektedir.

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_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

Ç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_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

Çalışma alanı düzeyindeki işlemler için, hedef kimlik ç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ği ile birlikte belirtinazure_workspace_resource_id. Bu durumda, hedef kimliğin Azure Databricks çalışma alanı için Azure kaynağı üzerinde 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

Not

Python için Databricks SDK'sı henüz Azure yönetilen kimlikleri kimlik doğrulamasını uygulamadı.

Java

Not

Java için Databricks SDK'sı henüz Azure tarafından yönetilen kimlik doğrulaması gerçekleştirmemiştir.

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(),
  AzureClientId: retrieveAzureClientId(),
  AzureUseMSI:   true,
}))
// ...

Ç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(),
  AzureClientId: retrieveAzureClientId(),
  AzureUseMSI:   true,
}))
// ...

Çalışma alanı düzeyindeki işlemler için, hedef kimlik ç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ği ile birlikte belirtinAzureResourceID. Bu durumda, hedef kimliğin Azure Databricks çalışma alanı için Azure kaynağı üzerinde 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.