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.
- Yönetilen kimlikler hakkında bilgi için bkz . Azure kaynakları için yönetilen kimlikler nelerdir?.
- Yönetilen kimlik oluşturmayı ve Azure Databricks hesaplarına ve çalışma alanlarına erişme izni vermeyi öğrenmek için bkz . Azure Databricks otomasyonu için Azure yönetilen kimlikleri kimlik doğrulamasını ayarlama ve kullanma.
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:
- MS Entra hizmet sorumlusu kimlik doğrulaması
- Azure CLI kimlik doğrulaması
- Hizmet sorumlularını yönetme
- Terraform kullanarak hizmet sorumlusu sağlama
- Hizmet sorumluları için Microsoft Entra Id belirteçleri alma
- Microsoft Entra ID hizmet sorumlusuyla Azure CLI oturumu açma
- Microsoft Entra ID hizmet sorumlusuyla PowerShell oturumu açma
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 belirtin
https://accounts.azuredatabricks.net
. - Çalışma alanı işlemleri için çalışma alanı başına URL'yi (örneğin
https://adb-1234567890123456.7.azuredatabricks.net
) belirtin.
- Hesap işlemleri için belirtin
- 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 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'nizinhttps://accounts.azuredatabricks.net
değerine ayarlayın.DATABRICKS_ACCOUNT_ID
ARM_CLIENT_ID
ARM_USE_MSI
olarak ayarlayıntrue
.
Ç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ğinhttps://adb-1234567890123456.7.azuredatabricks.net
) ayarlayın.ARM_CLIENT_ID
ARM_USE_MSI
olarak ayarlayıntrue
.
Ç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 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_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.
CLI
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 Connect, 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.