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 OAuthkullanarak hizmet sorumlusuyla Azure Databricks kaynaklarına katılımsız erişim yetkilendirme 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, Azure Databricks otomasyonu için Azure yönetilen kimliklerini ayarlama ve kimlik doğrulamasını kullanmabölümüne bakın.
Ö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, .databrickscfg
alanlarını, Terraform alanlarını veya Config
alanlarını 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.
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 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_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
, azure databricks çalışma alanı başına URLdeğerine ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net
. 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
DATABRICKS_AZURE_RESOURCE_ID
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinHOST
. 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 aşağıdaki alanlarla bir Azure Databricks .databrickscfg
oluşturun veya tanımlayın. Profil 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_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
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 azure_workspace_resource_id
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinhost
. 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.
-
.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. 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:
- Azure Databricks çalışma alanı düzeyinde işlemler için
.databrickscfg
dosyanızdaki değerleri bu makalenin "Profil" bölümünde belirtildiği gibi ayarlayın. Ayrıca profilinizdekicluster_id
ortam değişkenini çalışma alanı başına URLolarak ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net
. - Azure Databricks çalışma alanı düzeyinde işlemler için ortam değişkenlerini bu makalenin "Ortam" bölümünde belirtildiği gibi ayarlayın. Ayrıca
DATABRICKS_CLUSTER_ID
ortam değişkenini çalışma alanı başına URLolarak ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net
.
.databrickscfg
dosyanızdaki değerler her zaman ortam değişkenlerinden önceliklidir.
Databricks Connect istemcisini
Visual Studio Code için Databricks uzantısı için aşağıdakileri yapın:
- Azure Databricks çalışma alanı düzeyinde işlemler için
.databrickscfg
dosyanızdaki değerleri bu makalenin "Profil" bölümünde belirtildiği gibi ayarlayın. - Visual Studio Code için Databricks uzantısının Yapılandırma bölmesinde Databricks'i Yapılandır'a tıklayın.
- Komut Paleti'nde, Databricks Konağı için çalışma alanı başına URL'nizi (örneğin) girin ve tuşuna basın
https://adb-1234567890123456.7.azuredatabricks.net
.Enter
- Komut Paleti'nde, URL’niz için listeden hedef profilinizin adını seçin.
Daha fazla ayrıntı için bkz. Visual Studio Codeiçin Databricks uzantısı için yetkilendirmeyi ayarlama .
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_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, 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_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 azure_workspace_resource_id
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinhost
. 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 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
:
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 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
:
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 azure_workspace_resource_id
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinhost
. 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:
- Python için Databricks Connect istemcisini ayarlama
- Visual Studio Code için Databricks uzantısı için yetkilendirmeyi ayarlama
- Azure Databricks hesabınız veya çalışma alanınızla Python için Databricks SDK'sının kimliğini doğrulama
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 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 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 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 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 setAzureWorkspaceResourceId
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinsetHost
. 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:
- Scala için Databricks Connect istemcisini ayarlama (Scala için Databricks Connect istemcisi, kimlik doğrulaması için Java için Databricks SDK'sını kullanır)
- Azure Databricks hesabınız veya çalışma alanınızla Java için Databricks SDK'sının kimliğini doğrulama
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(),
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 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(),
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 AzureWorkspaceResourceId
Azure Databricks çalışma alanı için Azure kaynak kimliğiyle birlikte belirtinHost
. 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.