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çlerini 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 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 azure databricks kaynaklarına erişimi yetkilendirme veya aracın ya da SDK'nın belgelerine bakın. 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.
-
DATABRICKS_HOST
, Azure Databricks hesap konsolu URL'nizin değeri olarakhttps://accounts.azuredatabricks.net
ayarlayın. DATABRICKS_ACCOUNT_ID
ARM_CLIENT_ID
-
ARM_USE_MSI
olarak ayarlayıntrue
.
-
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_AZURE_RESOURCE_ID
Azure Databricks çalışma alanı için Azure kaynak kimliği ile birlikte belirtinDATABRICKS_HOST
. 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 aşağıdaki alanlarla bir Azure Databricks .databrickscfg
oluşturun veya tanımlayın. Profili oluşturduğunuzda, yer tutucuları uygun değerlerle değiştirin. Profili bir araç veya SDK ile kullanmak için Azure Databricks kaynaklarına erişimi yetkilendirme veya aracın ya da SDK'nın belgelerine bakın. 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.
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
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 azure_workspace_resource_id
Azure Databricks çalışma alanı için Azure kaynak kimliği ile birlikte belirtinhost
. 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.
-
.databrickscfg
dosyanızdaki değerleri bu makalenin "Profil" bölümünde belirtildiği gibi ayarlayın.
Ortam değişkenleri her zaman .databrickscfg
dosyanızdaki 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, konsoldan veya retrieve
gibi başka bir yapılandırma deposundan değerleri almak amacıyla, yer tutucularını kendi uygulamanızla değiştirin. Ayrıca bkz. Vault 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, konsoldan veya retrieve
gibi başka bir yapılandırma deposundan değerleri almak amacıyla, yer tutucularını kendi uygulamanızla değiştirin. Ayrıca bkz. Vault 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 azure_workspace_resource_id
Azure Databricks çalışma alanı için Azure kaynak kimliği ile birlikte belirtinhost
. 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 retrieve
gibi başka bir yapılandırma deposundan almak için yer tutucularını kendi uygulamanızla değiştirin). 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 retrieve
gibi başka bir yapılandırma deposundan almak için yer tutucularını kendi uygulamanızla değiştirin). 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 AzureResourceID
Azure Databricks çalışma alanı için Azure kaynak kimliği ile birlikte belirtinHost
. 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.