OAuth (OAuth M2M) kullanarak hizmet sorumlusuyla Azure Databricks'e erişimin kimliğini doğrulama
Bu makalede, hedef varlıkta kimlik doğrulaması yapmak için Azure Databricks hizmet sorumlusu oluşturma ve bu hizmet sorumlusu veya Microsoft Entra ID yönetilen hizmet sorumlusu kullanma açıklanmaktadır.
Not
Hizmet sorumluları için Azure Databricks OAuth kimlik bilgilerini yönetmek için Azure Databricks hesap yöneticisi olmanız gerekir.
1. Adım: Azure hesabınızda Microsoft Entra ID hizmet sorumlusu oluşturma
Microsoft Entra ID hizmet sorumlusunu Azure Databricks hesabınıza, çalışma alanınıza veya her ikisine bağlamak istiyorsanız bu adımı tamamlayın. Aksi takdirde 2. Adıma geçin.
Azure Portal’ında oturum açın.
Not
Kullanılacak portal, Microsoft Entra ID uygulamanızın Azure genel bulutunda mı yoksa ulusal veya bağımsız bir bulutta mı çalıştığına bağlı olarak farklılık gösterir. Daha fazla bilgi için bkz . Ulusal bulutlar.
Birden çok kiracıya, aboneliğe veya dizine erişiminiz varsa, üst menüdeki Dizinler + abonelikler (filtreli dizin) simgesine tıklayarak hizmet sorumlusunu sağlamak istediğiniz dizine geçin.
Kaynak, hizmet ve belge ara bölümünde Microsoft Entra ID'yi arayın ve seçin.
+ Ekle'ye tıklayın ve Uygulama kaydı'ı seçin.
Ad alanına uygulama için bir ad girin.
Desteklenen hesap türleri bölümünde Yalnızca bu kuruluş dizinindeki hesaplar (Tek kiracı) öğesini seçin.
Kaydet’e tıklayın.
Uygulama sayfasının Genel Bakış sayfasının Temel Parçalar bölümünde aşağıdaki değerleri kopyalayın:
- Uygulama (istemci) kimliği
- Dizin (kiracı) kimliği
İstemci gizli dizisi oluşturmak için Yönet'in içinde Sertifikalar ve gizli diziler'e tıklayın.
Not
Azure Databricks ile Microsoft Entra ID hizmet sorumlularının kimliğini doğrulamak için Microsoft Entra Id belirteçleri oluşturmak için bu istemci gizli dizisini kullanırsınız. Azure Databricks aracının veya SDK'sının Microsoft Entra ID belirteçlerini kullanıp kullanamayacağını belirlemek için aracın veya SDK'nın belgelerine bakın.
İstemci gizli dizileri sekmesinde Yeni istemci gizli dizisi'ne tıklayın.
İstemci gizli dizisi ekle bölmesinde, Açıklama için istemci gizli dizisi için bir açıklama girin.
Süre Sonu için, istemci gizli dizisi için bir süre sonu süresi seçin ve ekle'ye tıklayın.
Bu istemci gizli dizisi uygulamanızın parolası olduğundan istemci gizli dizisinin Değerini kopyalayın ve güvenli bir yerde depolayın.
2. Adım: Azure Databricks hesabınıza hizmet sorumlusu ekleme
Bu adım yalnızca hedef Azure Databricks çalışma alanınız kimlik federasyonu için etkinleştirildiğinde çalışır. Çalışma alanınız kimlik federasyonu için etkinleştirilmemişse 3. Adıma geçin.
Azure Databricks çalışma alanınızda üst çubukta kullanıcı adınıza tıklayın ve Hesabı yönet'e tıklayın.
Alternatif olarak, adresinde doğrudan Azure Databricks hesap konsolunuza https://accounts.azuredatabricks.netgidin.
İstenirse Azure Databricks hesabınızda oturum açın.
Kenar çubuğunda Kullanıcı yönetimi'ne tıklayın.
Hizmet sorumluları sekmesine tıklayın.
Hizmet sorumlusu ekle'ye tıklayın.
Yönetim'in altında Databricks tarafından yönetilen veya Microsoft Entra Id managed seçeneğini belirleyin.
Yönetilen Microsoft Entra Kimliği'ni seçtiyseniz, Microsoft Entra uygulama kimliği'nin altına 1. Adım'dan uygulama (istemci) kimliği değerini yapıştırın.
Hizmet sorumlusu için bir Ad girin.
Ekle'yi tıklatın.
(İsteğe bağlı) Hizmet sorumlusuna hesap düzeyi izinleri atayın:
- Hizmet sorumluları sekmesinde hizmet sorumlunuzun adına tıklayın.
- Roller sekmesinde, bu hizmet sorumlusunun sahip olmasını istediğiniz her hedef rolü etkinleştirmek veya devre dışı bırakmak için iki durumlu düğmeyi kullanın.
- İzinler sekmesinde, yönetmek ve bu hizmet sorumlusunu kullanmak istediğiniz tüm Azure Databricks kullanıcılarına, hizmet sorumlularına ve hesap grubu rollerine erişim verin. Bkz. Hizmet sorumlusundaki rolleri yönetme.
3. Adım: Hizmet sorumlusunu Azure Databricks çalışma alanınıza ekleme
Çalışma alanınız kimlik federasyonu için etkinleştirildiyse:
- Azure Databricks çalışma alanınızda üst çubukta kullanıcı adınıza tıklayın ve ayarlar'a tıklayın.
- Kimlik ve erişim sekmesine tıklayın.
- Hizmet sorumluları'nın yanındaki Yönet'e tıklayın.
- Hizmet sorumlusu ekle'ye tıklayın.
- 2. Adım'dan hizmet sorumlunuzu seçin ve Ekle'ye tıklayın.
4. Adıma geçin.
Çalışma alanınız kimlik federasyonu için etkinleştirilmemişse:
- Azure Databricks çalışma alanınızda üst çubukta kullanıcı adınıza tıklayın ve ayarlar'a tıklayın.
- Kimlik ve erişim sekmesine tıklayın.
- Hizmet sorumluları'nın yanındaki Yönet'e tıklayın.
- Hizmet sorumlusu ekle'ye tıklayın.
- Yeni ekle'ye tıklayın.
- Yönetim'in altında Databricks tarafından yönetilen veya Microsoft Entra Id managed seçeneğini belirleyin.
- Yönetilen Microsoft Entra Kimliği'ni seçtiyseniz, Microsoft Entra uygulama kimliği'nin altına 1. Adım'dan uygulama (istemci) kimliği değerini yapıştırın.
- Yeni hizmet sorumlusu için görünen ad girin ve Ekle'ye tıklayın.
4. Adım: Hizmet sorumlusuna çalışma alanı düzeyinde izinler atama
- Çalışma alanınızın yönetici konsolu henüz açık değilse, üst çubukta kullanıcı adınıza tıklayın ve Ayarlar'a tıklayın.
- Kimlik ve erişim sekmesine tıklayın.
- Hizmet sorumluları'nın yanındaki Yönet'e tıklayın.
- Hizmet sorumlunuzun adına tıklayarak ayarlar sayfasını açın.
- Yapılandırmalar sekmesinde, hizmet sorumlunuzun bu çalışma alanı için sahip olmasını istediğiniz her yetkilendirmenin yanındaki kutuyu işaretleyin ve güncelleştir'e tıklayın.
- İzinler sekmesinde, yönetmek ve bu hizmet sorumlusunu kullanmak istediğiniz tüm Azure Databricks kullanıcılarına, hizmet sorumlularına ve gruplara erişim verin. Bkz. Hizmet sorumlusundaki rolleri yönetme.
5. Adım: Hizmet sorumlusu için Azure Databricks OAuth gizli dizisi oluşturma
Azure Databricks'de kimlik doğrulaması yapmak için OAuth'u kullanabilmeniz için önce OAuth erişim belirteçleri oluşturmak için kullanılabilecek bir OAuth gizli dizisi oluşturmanız gerekir. Bir hizmet sorumlusu en fazla beş OAuth gizli dizisine sahip olabilir.
Hesap konsolundan bir hizmet sorumlusu için OAuth gizli dizisi oluşturmak için:
- Adresinde Azure Databricks hesap konsolunda https://accounts.azuredatabricks.netoturum açın.
- İstenirse Azure Databricks hesabınızda oturum açın.
- Kenar çubuğunda Kullanıcı yönetimi'ne tıklayın.
- Hizmet sorumluları sekmesine tıklayın.
- Hizmet sorumlusunun adına tıklayın.
- Asıl bilgiler sekmesinin OAuth gizli dizileri bölümünde Gizli dizi oluştur'a tıklayın.
- Gizli dizi oluştur iletişim kutusunda Gizli dizi değerini kopyalayın ve güvenli bir yerde depolayın. Bu OAuth gizli dizisi, hizmet sorumlusunun parolasıdır.
- Bitti'ye tıklayın.
Çalışma alanından bir hizmet sorumlusu için OAuth gizli dizisi oluşturmak için:
Çalışma alanı yöneticisi olarak üst çubukta kullanıcı adınıza tıklayın ve ardından Ayarlar'a tıklayın.
Kimlik ve erişim sekmesine tıklayın.
Hizmet sorumluları'nın yanındaki Yönet'e tıklayın.
Hizmet sorumlunuzun adına tıklayarak ayarlar sayfasını açın.
Gizli Diziler sekmesine tıklayın.
OAuth gizli dizileri'nin altında Gizli dizi oluştur'a tıklayın.
Görüntülenen Gizli Dizi ve İstemci Kimliğini kopyalayın, ardından Bitti'ye tıklayın.
Gizli dizi, oluşturma sırasında yalnızca bir kez açığa çıkar. İstemci kimliği, hizmet sorumlusunun uygulama kimliğiyle aynıdır.
Not
Hizmet sorumlusunun kümeleri veya SQL ambarlarını kullanmasını sağlamak için hizmet sorumlusuna bunlara erişim vermeniz gerekir. Bkz. İşlem izinleri veya SQL ambarı yönetme.
OAuth M2M kimlik doğrulamasını yapılandırmayı bitirme
OAuth M2M kimlik doğrulamasını yapılandırmayı tamamlamak için aşağıdaki ilişkili ortam değişkenlerini, alanları, .databrickscfg
Terraform alanlarını veya Config
alanları ayarlamanız gerekir:
- Hesap işlemleri için olarak
https://accounts.azuredatabricks.net
belirtilen Azure Databricks konağı veya çalışma alanı işlemleri gibihttps://adb-1234567890123456.7.azuredatabricks.net
çalışma alanı başına hedef URL'si. - Azure Databricks hesap işlemleri için Azure Databricks hesap kimliği.
- Hizmet sorumlusu istemci kimliği.
- Hizmet sorumlusu gizli dizisi.
OAuth M2M kimlik doğrulamasını 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'si olarakhttps://accounts.azuredatabricks.net
ayarlayın.DATABRICKS_ACCOUNT_ID
DATABRICKS_CLIENT_ID
DATABRICKS_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'sine ayarlayın, örneğinhttps://adb-1234567890123456.7.azuredatabricks.net
.DATABRICKS_CLIENT_ID
DATABRICKS_CLIENT_SECRET
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>
client_id = <service-principal-client-id>
client_secret = <service-principal-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>
client_id = <service-principal-client-id>
client_secret = <service-principal-secret>
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. OAuth makineden makineye (M2M) kimlik doğrulaması.
Bağlan
Not
OAuth M2M kimlik doğrulaması aşağıdaki Databricks Connect sürümlerinde desteklenir:
- Python için Databricks Runtime 14.0 ve üzeri için Databricks Connect.
- Scala için Databricks Runtime 13.3 LTS ve üzeri için Databricks Connect. Databricks Runtime 13.3 LTS ve üzeri için Databricks Connect'e dahil olan Java için Databricks SDK'sı, Java 0.17.0 veya üzeri için Databricks SDK'sına yükseltilmelidir.
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şkeninicluster_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.
VS Code
Visual Studio Code için Databricks uzantısı için aşağıdakileri yapın:
- 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. - 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
https://adb-1234567890123456.7.azuredatabricks.net
) girin ve tuşuna basınEnter
. - 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.
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>
client_id = <retrieve-client-id>
client_secret = <retrieve-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>
client_id = <retrieve-client-id>
client_secret = <retrieve-client-secret>
}
Databricks Terraform sağlayıcısıyla kimlik doğrulaması hakkında daha fazla bilgi için bkz . Kimlik doğrulaması.
Python
Hesap düzeyinde işlemler için, varsayılan kimlik doğrulaması için aşağıdakileri kullanın:
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ştirerek retrieve
aşağıdakileri kullanın. 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(),
client_id = retrieve_client_id(),
client_secret = retrieve_client_secret()
)
# ...
Çalışma alanı düzeyindeki işlemler için, özellikle varsayılan kimlik doğrulaması:
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(),
client_id = retrieve_client_id(),
client_secret = retrieve_client_secret()
)
# ...
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
- Azure Databricks hesabınız veya çalışma alanınızla Python için Databricks SDK'sının kimliğini doğrulama
Not
Visual Studio Code için Databricks uzantısı Python kullanır ancak henüz OAuth M2M kimlik doğrulamasını uygulamamıştır.
Java
Ç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())
.setClientId(retrieveClientId())
.setClientSecret(retrieveClientSecret());
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
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
Go
Hesap düzeyinde 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 Azure Databricks hesap konsolu URL'si şöyledir https://accounts.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: retrieveAccountConsoleUrl(),
AccountId: retrieveAccountId(),
ClientId: retrieveClientId(),
ClientSecret: retrieveClientSecret(),
}))
// ...
Çalışma alanı düzeyindeki 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 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"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: retrieveWorkspaceUrl(),
ClientId: retrieveClientId(),
ClientSecret: retrieveClientSecret(),
}))
// ...
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.
OAuth M2M kimlik doğrulaması için erişim belirteçlerini el ile oluşturma ve kullanma
Databricks istemcisi birleşik kimlik doğrulama standardını uygulayan Azure Databricks araçları ve SDK'ları, OAuth M2M kimlik doğrulaması için gerektiğinde sizin yerinize Azure Databricks OAuth erişim belirteçlerini otomatik olarak oluşturur, yeniler ve kullanır.
OAuth M2M kimlik doğrulaması için Azure Databricks OAuth erişim belirteçlerini el ile oluşturmanız, yenilemeniz veya kullanmanız gerekiyorsa, bu bölümdeki yönergeleri izleyin.
1. Adım: Hizmet sorumlusu ve OAuth gizli dizisi oluşturma
Azure Databricks yönetilen hizmet sorumlunuz veya Microsoft Entra Id yönetilen hizmet sorumlunuz ve buna karşılık gelen Azure Databricks OAuth gizli dizisi yoksa, bu makalenin başındaki 1-5 arası adımları tamamlayarak bunları oluşturun.
2. Adım: El ile erişim belirteci oluşturma
Azure Databricks OAuth erişim belirtecinin hem hesap düzeyinde REST API'lerinde hem de çalışma alanı düzeyinde REST API'lerinde kimlik doğrulaması yapmak üzere bir Azure Databricks OAuth erişim belirteci istemek için Azure Databricks yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun istemci kimliğini ve Azure Databricks OAuth gizli dizisini kullanın. Belirtecin süresi bir saat içinde dolacak. Süre dolduktan sonra yeni bir Azure Databricks OAuth erişim belirteci istemeniz gerekir. OAuth erişim belirtecinin kapsamı, belirteci oluşturduğunuz düzeye bağlıdır. Hesap düzeyinde veya çalışma alanı düzeyinde aşağıdaki gibi bir belirteç oluşturabilirsiniz:
- Azure Databricks yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun erişimi olduğu hesaplar ve çalışma alanları içinde hesap düzeyinde ve çalışma alanı düzeyinde REST API'leri çağırmak için hesap düzeyinde el ile bir erişim belirteci oluşturun.
- Azure Databricks yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun erişimi olan tek bir çalışma alanında REST API'leri çağırmak için, yalnızca bu çalışma alanı için çalışma alanı düzeyinde el ile bir erişim belirteci oluşturabilirsiniz.
Hesap düzeyinde erişim belirtecini el ile oluşturma
Hesap düzeyinden oluşturulan bir Azure Databricks OAuth erişim belirteci, hesaptaki ve Azure Databricks tarafından yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun atandığı tüm çalışma alanlarındaki Databricks REST API'lerine karşı kullanılabilir.
Sağ üst köşedeki kullanıcı adınızın yanındaki aşağı oka tıklayın.
Hesap Kimliğinizi kopyalayın.
Aşağıdaki URL'yi kopyaladığınız hesap kimliğiyle değiştirerek
<my-account-id>
belirteç uç noktası URL'sini oluşturun.https://accounts.azuredatabricks.net/oidc/accounts/<my-account-id>/v1/token
Belirteç uç noktası URL'si, Azure Databricks yönetilen hizmet sorumlusunun istemci kimliği (uygulama kimliği olarak da bilinir) veya Microsoft Entra ID yönetilen hizmet sorumlusu ve Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra ID yönetilen hizmet sorumlusu için oluşturduğunuz Azure Databricks OAuth gizli dizisi ile bir Azure Databricks OAuth erişim belirteci istemek için gibi
curl
bir istemci kullanın. Kapsam,all-apis
Azure Databricks tarafından yönetilen hizmet sorumlusuna veya Microsoft Entra ID yönetilen hizmet sorumlusuna erişim izni verilen tüm Databricks REST API'lerine erişmek için kullanılabilecek bir Azure Databricks OAuth erişim belirteci ister.- değerini yukarıdan belirteç uç noktası URL'si ile değiştirin
<token-endpoint-URL>
. - değerini Azure Databricks yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun uygulama kimliği olarak da bilinen istemci kimliğiyle değiştirin
<client-id>
. - değerini, Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra Id yönetilen hizmet sorumlusu için oluşturduğunuz Azure Databricks OAuth gizli dizisiyle değiştirin
<client-secret>
.
export CLIENT_ID=<client-id> export CLIENT_SECRET=<client-secret> curl --request POST \ --url <token-endpoint-URL> \ --user "$CLIENT_ID:$CLIENT_SECRET" \ --data 'grant_type=client_credentials&scope=all-apis'
Bu, şuna benzer bir yanıt oluşturur:
{ "access_token": "eyJraWQiOiJkYTA4ZTVjZ…", "scope": "all-apis", "token_type": "Bearer", "expires_in": 3600 }
yanıttan öğesini
access_token
kopyalayın.Azure Databricks OAuth erişim belirtecinin süresi bir saat içinde dolacak. Süre sonundan sonra el ile yeni bir Azure Databricks OAuth erişim belirteci oluşturmanız gerekir.
- değerini yukarıdan belirteç uç noktası URL'si ile değiştirin
3. Adım: Databricks REST API'sini çağırma adımına geçin.
Çalışma alanı düzeyinde erişim belirtecini el ile oluşturma
Çalışma alanı düzeyinden oluşturulan bir Azure Databricks OAuth erişim belirteci, Azure Databricks tarafından yönetilen hizmet sorumlusu veya Microsoft Entra ID yönetilen hizmet sorumlusu bir hesap yöneticisi veya diğer çalışma alanlarının üyesi olsa bile yalnızca bu çalışma alanında REST API'lerine erişebilir.
öğesini Azure Databricks dağıtımınızın çalışma alanı URL'si ile değiştirerek
https://<databricks-instance>
belirteç uç noktası URL'sini oluşturun:https://<databricks-instance>/oidc/v1/token
Belirteç uç noktası URL'si, Azure Databricks yönetilen hizmet sorumlusunun istemci kimliği (uygulama kimliği olarak da bilinir) veya Microsoft Entra ID yönetilen hizmet sorumlusu ve Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra ID yönetilen hizmet sorumlusu için oluşturduğunuz Azure Databricks OAuth gizli dizisi ile bir Azure Databricks OAuth erişim belirteci istemek için gibi
curl
bir istemci kullanın. Kapsam,all-apis
Azure Databricks tarafından yönetilen hizmet sorumlusuna veya Microsoft Entra ID yönetilen hizmet sorumlusuna, belirteci istediğiniz çalışma alanı içinde erişim izni verilen tüm Databricks REST API'lerine erişmek için kullanılabilecek bir Azure Databricks OAuth erişim belirteci ister.değerini yukarıdan belirteç uç noktası URL'si ile değiştirin
<token-endpoint-URL>
.değerini Azure Databricks yönetilen hizmet sorumlusunun veya Microsoft Entra Id yönetilen hizmet sorumlusunun uygulama kimliği olarak da bilinen istemci kimliğiyle değiştirin
<client-id>
.değerini, Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra Id yönetilen hizmet sorumlusu için oluşturduğunuz Azure Databricks OAuth gizli dizisiyle değiştirin
<client-secret>
.export CLIENT_ID=<client-id> export CLIENT_SECRET=<client-secret> curl --request POST \ --url <token-endpoint-URL> \ --user "$CLIENT_ID:$CLIENT_SECRET" \ --data 'grant_type=client_credentials&scope=all-apis'
Bu, şuna benzer bir yanıt oluşturur:
{ "access_token": "eyJraWQiOiJkYTA4ZTVjZ…", "scope": "all-apis", "token_type": "Bearer", "expires_in": 3600 }
yanıttan öğesini
access_token
kopyalayın.
3. Adım: Databricks REST API'sini çağırma
Artık Azure Databricks hesap düzeyi REST API'lerinde ve çalışma alanı düzeyinde REST API'lerinde kimlik doğrulaması yapmak için Azure Databricks OAuth erişim belirteci kullanabilirsiniz. Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra ID yönetilen hizmet sorumlusu, hesap düzeyinde REST API'leri çağırmak için bir hesap yöneticisi olmalıdır.
Kimlik doğrulamasını kullanarak Bearer
üst bilgide belirteci ekleyebilirsiniz. Bu yaklaşımı veya oluşturduğunuz herhangi bir istemciyle curl
kullanabilirsiniz.
Örnek hesap düzeyinde REST API isteği
Bu örnek, bir hesapla ilişkili tüm çalışma alanlarının listesini almak için kimlik doğrulamasını kullanır Bearer
.
- değerini Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra Id yönetilen hizmet sorumlusu için Azure Databricks OAuth erişim belirteci ile değiştirin
<oauth-access-token>
. - değerini hesap kimliğiniz ile değiştirin
<account-id>
.
export OAUTH_TOKEN=<oauth-access-token>
curl --request GET --header "Authorization: Bearer $OAUTH_TOKEN" \
'https://accounts.azuredatabricks.net/api/2.0/accounts/<account-id>/workspaces'
Örnek çalışma alanı düzeyinde REST API isteği
Bu örnekte kimlik doğrulaması, belirtilen çalışma alanında kullanılabilir tüm kümeleri listelemek için kullanılır Bearer
.
değerini Azure Databricks yönetilen hizmet sorumlusu veya Microsoft Entra Id yönetilen hizmet sorumlusu için Azure Databricks OAuth erişim belirteci ile değiştirin
<oauth-access-token>
.değerini, biçimine
adb-1111111111111111.1.azuredatabricks.net
benzer olan temel çalışma alanı URL'nizle değiştirin<workspace-URL>
.export OAUTH_TOKEN=<oauth-access-token> curl --request GET --header "Authorization: Bearer $OAUTH_TOKEN" \ 'https://<workspace-URL>/api/2.0/clusters/list'
Ek kaynaklar
- Hizmet sorumluları
- Databricks kimlik modeline genel bakış
- Kimlik doğrulaması ve erişim denetimi hakkında ek bilgiler