Ověřování přístupu k Azure Databricks pomocí instančního objektu pomocí OAuth (OAuth M2M)
Tento článek vysvětluje, jak vytvořit instanční objekt Azure Databricks a použít ho nebo spravovaný instanční objekt Microsoft Entra ID k ověření v cílové entitě.
Poznámka:
Abyste mohli spravovat přihlašovací údaje Azure Databricks OAuth pro instanční objekty, musíte být správcem účtu Azure Databricks.
Krok 1: Vytvoření instančního objektu Microsoft Entra ID ve vašem účtu Azure
Tento krok proveďte, pokud chcete propojit instanční objekt Microsoft Entra ID s vaším účtem, pracovním prostorem nebo oběma účty Azure Databricks. V opačném případě přeskočte k kroku 2.
Přihlaste se k portálu Azure.
Poznámka:
Portál, který se má použít, se liší v závislosti na tom, jestli vaše aplikace Microsoft Entra ID běží ve veřejném cloudu Azure nebo v národním nebo suverénním cloudu. Další informace najdete v tématu Národní cloudy.
Pokud máte přístup k více tenantům, předplatným nebo adresářům, klikněte v horní nabídce na ikonu Adresáře a předplatná (adresář s filtrem) a přepněte do adresáře, ve kterém chcete zřídit instanční objekt.
Ve vyhledávacích prostředcích, službách a dokumentech vyhledejte a vyberte MICROSOFT Entra ID.
Klikněte na + Přidat a vyberte Registrace aplikace.
Jako Název zadejte název aplikace.
V části Podporované typy účtů vyberte Účty pouze v tomto organizačním adresáři (jeden tenant).
Klikněte na Zaregistrovat.
Na stránce Přehled stránky aplikace zkopírujte v části Základy následující hodnoty:
- ID aplikace (klienta)
- ID adresáře (tenanta)
Pokud chcete vygenerovat tajný klíč klienta, klikněte v části Spravovat na Certifikáty a tajné kódy.
Poznámka:
Tento tajný klíč klienta použijete ke generování tokenů ID Microsoft Entra pro ověřování instančních objektů služby Microsoft Entra ID pomocí Azure Databricks. Pokud chcete zjistit, jestli nástroj Azure Databricks nebo sada SDK můžou používat tokeny ID Microsoft Entra, přečtěte si dokumentaci k nástroji nebo sadě SDK.
Na kartě Tajné kódy klienta klikněte na Nový tajný klíč klienta.
V podokně Přidat tajný klíč klienta zadejte popis tajného klíče klienta.
V případě vypršení platnosti vyberte časové období vypršení platnosti tajného klíče klienta a klikněte na tlačítko Přidat.
Zkopírujte a uložte hodnotu tajného klíče klienta na bezpečném místě, protože tento tajný klíč klienta je heslo pro vaši aplikaci.
Krok 2: Přidání instančního objektu do účtu Azure Databricks
Tento krok funguje jenom v případě, že je pro federaci identit povolený váš cílový pracovní prostor Azure Databricks. Pokud váš pracovní prostor není povolený pro federaci identit, přeskočte k kroku 3.
V pracovním prostoru Azure Databricks klikněte na své uživatelské jméno v horním panelu a klikněte na Spravovat účet.
Případně přejděte přímo do konzoly účtu Azure Databricks na adrese https://accounts.azuredatabricks.net.
Pokud se zobrazí výzva, přihlaste se ke svému účtu Azure Databricks.
Na bočním panelu klikněte na Správa uživatelů.
Klikněte na kartu Instanční objekty .
Klikněte na Přidat instanční objekt.
V části Správa zvolte Spravovaná databricks nebo Spravované ID Microsoft Entra.
Pokud jste zvolili spravované ID Microsoft Entra, vložte v části ID aplikace Microsoft Entra hodnotu ID aplikace (klienta) z kroku 1.
Zadejte název instančního objektu.
Klikněte na tlačítko Přidat.
(Volitelné) Přiřaďte instančnímu objektu oprávnění na úrovni účtu:
- Na kartě Instanční objekty klikněte na název instančního objektu.
- Na kartě Role přepněte nebo zakažte každou cílovou roli, kterou má mít tento instanční objekt.
- Na kartě Oprávnění udělte přístup všem uživatelům Azure Databricks, instančním objektům a rolím skupiny účtů, které chcete spravovat a používat. Viz Správa rolí v instančním objektu.
Krok 3: Přidání instančního objektu do pracovního prostoru Azure Databricks
Pokud je váš pracovní prostor povolený pro federaci identit:
- V pracovním prostoru Azure Databricks klikněte na své uživatelské jméno v horním panelu a klikněte na Nastavení.
- Klikněte na kartu Identita a přístup .
- Vedle instančních objektů klikněte na Spravovat.
- Klikněte na Přidat instanční objekt.
- V kroku 2 vyberte instanční objekt a klikněte na Přidat.
Přeskočte k kroku 4.
Pokud váš pracovní prostor není povolený pro federaci identit:
- V pracovním prostoru Azure Databricks klikněte na své uživatelské jméno v horním panelu a klikněte na Nastavení.
- Klikněte na kartu Identita a přístup .
- Vedle instančních objektů klikněte na Spravovat.
- Klikněte na Přidat instanční objekt.
- Klikněte na Přidat nový.
- V části Správa zvolte Spravovaná databricks nebo Spravované ID Microsoft Entra.
- Pokud jste zvolili spravované ID Microsoft Entra, vložte v části ID aplikace Microsoft Entra hodnotu ID aplikace (klienta) z kroku 1.
- Zadejte zobrazovaný název nového instančního objektu a klikněte na Přidat.
Krok 4: Přiřazení oprávnění na úrovni pracovního prostoru k instančnímu objektu
- Pokud konzola pro správu vašeho pracovního prostoru ještě není otevřena, klikněte na své uživatelské jméno v horním panelu a klikněte na Nastavení.
- Klikněte na kartu Identita a přístup .
- Vedle instančních objektů klikněte na Spravovat.
- Kliknutím na název instančního objektu otevřete stránku nastavení.
- Na kartě Konfigurace zaškrtněte políčko vedle každého nároku, který má mít instanční objekt pro tento pracovní prostor, a klikněte na tlačítko Aktualizovat.
- Na kartě Oprávnění udělte přístup všem uživatelům, instančním objektům a skupinám Azure Databricks, které chcete spravovat a používat. Viz Správa rolí v instančním objektu.
Krok 5: Vytvoření tajného klíče Azure Databricks OAuth pro instanční objekt
Než budete moct použít OAuth k ověření v Azure Databricks, musíte nejdřív vytvořit tajný klíč OAuth, který se dá použít k vygenerování přístupových tokenů OAuth. Instanční objekt může mít až pět tajných kódů OAuth.
Vytvoření tajného kódu OAuth pro instanční objekt z konzoly účtu:
- Přihlaste se ke konzole účtu Azure Databricks na adrese https://accounts.azuredatabricks.net.
- Pokud se zobrazí výzva, přihlaste se ke svému účtu Azure Databricks.
- Na bočním panelu klikněte na Správa uživatelů.
- Klikněte na kartu Instanční objekty .
- Klikněte na název instančního objektu.
- V části Tajné kódy OAuth na kartě Hlavní informace klikněte na Vygenerovat tajný klíč.
- V dialogovém okně Generovat tajný kód zkopírujte a uložte hodnotu Tajné na bezpečném místě, protože tento tajný klíč OAuth je heslo pro instanční objekt.
- Klikněte na tlačítko Hotovo.
Vytvoření tajného kódu OAuth pro instanční objekt z pracovního prostoru:
Jako správce pracovního prostoru klikněte na své uživatelské jméno v horním panelu a klikněte na Nastavení.
Klikněte na kartu Identita a přístup .
Vedle instančních objektů klikněte na Spravovat.
Kliknutím na název instančního objektu otevřete stránku nastavení.
Klikněte na kartu Tajné kódy .
V části Tajné kódy OAuth klikněte na Generovat tajný kód.
Zkopírujte zobrazený tajný kód a ID klienta a klikněte na Tlačítko Hotovo.
Tajný kód bude odhalen pouze jednou během vytváření. ID klienta je stejné jako ID aplikace instančního objektu.
Poznámka:
Pokud chcete instančnímu objektu povolit používání clusterů nebo SQL Warehouse, musíte k nim instančnímu objektu udělit přístup. Přečtěte si informace o výpočetních oprávněních nebo správě SLUŽBY SQL Warehouse.
Dokončení konfigurace ověřování OAuth M2M
Pokud chcete dokončit konfiguraci ověřování OAuth M2M, musíte nastavit následující přidružené proměnné prostředí, .databrickscfg
pole, pole Terraformu nebo Config
pole:
- Hostitel Azure Databricks určený pro
https://accounts.azuredatabricks.net
operace účtu nebo cílovou adresu URL pracovního prostoru, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
pro operace pracovního prostoru. - ID účtu Azure Databricks pro operace účtu Azure Databricks
- ID klienta instančního objektu.
- Tajný klíč instančního objektu.
Pokud chcete provést ověřování OAuth M2M, integrujte následující kód na základě zúčastněného nástroje nebo sady SDK:
Prostředí
Pokud chcete použít proměnné prostředí pro konkrétní typ ověřování Azure Databricks pomocí nástroje nebo sady SDK, přečtěte si téma Ověřování přístupu k prostředkům Azure Databricks nebo dokumentaci k nástroji nebo sadě SDK. Viz také proměnné prostředí a pole pro jednotné ověřování klienta a výchozí metody pro jednotné ověřování klienta.
Pro operace na úrovni účtu nastavte následující proměnné prostředí:
DATABRICKS_HOST
, nastavte adresu URLhttps://accounts.azuredatabricks.net
konzoly účtu Azure Databricks.DATABRICKS_ACCOUNT_ID
DATABRICKS_CLIENT_ID
DATABRICKS_CLIENT_SECRET
Pro operace na úrovni pracovního prostoru nastavte následující proměnné prostředí:
DATABRICKS_HOST
, nastavte na adresu URL Azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
.DATABRICKS_CLIENT_ID
DATABRICKS_CLIENT_SECRET
Profil
Vytvořte nebo identifikujte konfigurační profil Azure Databricks s následujícími poli v .databrickscfg
souboru. Pokud vytvoříte profil, nahraďte zástupné symboly příslušnými hodnotami. Pokud chcete profil použít s nástrojem nebo sadou SDK, přečtěte si téma Ověřování přístupu k prostředkům Azure Databricks nebo dokumentaci k nástroji nebo sadě SDK. Viz také proměnné prostředí a pole pro jednotné ověřování klienta a výchozí metody pro jednotné ověřování klienta.
V případě operací na úrovni účtu nastavte v .databrickscfg
souboru následující hodnoty. V tomto případě adresa URL konzoly účtu Azure Databricks je 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>
U operací na úrovni pracovního prostoru nastavte v .databrickscfg
souboru následující hodnoty. V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
client_id = <service-principal-client-id>
client_secret = <service-principal-secret>
Rozhraní příkazového řádku
Pro rozhraní příkazového řádku Databricks proveďte jednu z následujících věcí:
- Nastavte proměnné prostředí, jak je uvedeno v části Prostředí tohoto článku.
- Nastavte hodnoty v
.databrickscfg
souboru, jak je uvedeno v části Profil tohoto článku.
Proměnné prostředí mají vždy přednost před hodnotami v .databrickscfg
souboru.
Viz také ověřování OAuth typu počítač-počítač (M2M).
Propojit
Poznámka:
Ověřování OAuth M2M se podporuje v následujících verzích Databricks Connect:
- Pro Python databricks Connect pro Databricks Runtime 14.0 a novější.
- Pro Scala, Databricks Connect pro Databricks Runtime 13.3 LTS a vyšší. Sada Databricks SDK pro Javu, která je součástí Databricks Connect pro Databricks Runtime 13.3 LTS a vyšší, musí být upgradována na Sadu Databricks SDK pro Javu 0.17.0 nebo vyšší.
Pro Databricks Connect můžete udělat jednu z těchto věcí:
- Nastavte hodnoty v
.databrickscfg
souboru pro operace na úrovni pracovního prostoru Azure Databricks, jak je uvedeno v části Profil tohoto článku. Nastavte také proměnnoucluster_id
prostředí ve vašem profilu na adresu URL pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
. - Nastavte proměnné prostředí pro operace na úrovni pracovního prostoru Azure Databricks, jak je uvedeno v části Prostředí tohoto článku. Nastavte také proměnnou
DATABRICKS_CLUSTER_ID
prostředí na adresu URL pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
.
Hodnoty v .databrickscfg
souboru mají vždy přednost před proměnnými prostředí.
Pokud chcete inicializovat klienta Databricks Connect pomocí těchto proměnných prostředí nebo hodnot v souboru, podívejte .databrickscfg
se na jednu z těchto věcí:
- Informace o Pythonu najdete v tématu Konfigurace vlastností připojení pro Python.
- Informace o jazyce Scala naleznete v tématu Konfigurace vlastností připojení pro Scala.
VS Code
Pro rozšíření Databricks pro Visual Studio Code postupujte takto:
- Nastavte hodnoty v
.databrickscfg
souboru pro operace na úrovni pracovního prostoru Azure Databricks, jak je uvedeno v části Profil tohoto článku. - V podokně Konfigurace rozšíření Databricks pro Visual Studio Code klikněte na Konfigurovat Databricks.
- V paletě příkazů zadejte pro hostitele Databricks adresu URL pro jednotlivé pracovní prostory, například
https://adb-1234567890123456.7.azuredatabricks.net
a stiskněteEnter
. - V paletě příkazů vyberte v seznamu pro svoji adresu URL název cílového profilu.
Další podrobnosti najdete v tématu Nastavení ověřování pro rozšíření Databricks pro Visual Studio Code.
Terraform
Pro operace na úrovni účtu pro výchozí ověřování:
provider "databricks" {
alias = "accounts"
}
Pro přímou retrieve
konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například HashiCorp Vault. Viz také poskytovatel trezoru). V tomto případě adresa URL konzoly účtu Azure Databricks je 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>
}
Pro operace na úrovni pracovního prostoru pro výchozí ověřování:
provider "databricks" {
alias = "workspace"
}
Pro přímou retrieve
konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například HashiCorp Vault. Viz také poskytovatel trezoru). V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net
:
provider "databricks" {
alias = "workspace"
host = <retrieve-workspace-url>
client_id = <retrieve-client-id>
client_secret = <retrieve-client-secret>
}
Další informace o ověřování pomocí zprostředkovatele Databricks Terraform najdete v tématu Ověřování.
Python
Pro operace na úrovni účtu použijte pro výchozí ověřování následující:
from databricks.sdk import AccountClient
a = AccountClient()
# ...
Pro přímou konfiguraci použijte následující retrieve
nahrazení zástupných symbolů vlastní implementací a načtení hodnot z konzoly nebo jiného úložiště konfigurace, jako je Azure KeyVault. V tomto případě adresa URL konzoly účtu Azure Databricks je 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()
)
# ...
Pro operace na úrovni pracovního prostoru konkrétně výchozí ověřování:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
V případě přímé konfigurace nahraďte retrieve
zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, jako je Azure KeyVault. V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://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()
)
# ...
Další informace o ověřování pomocí nástrojů Databricks a sad SDK, které používají Python a implementují jednotné ověřování klienta Databricks, najdete v tématu:
- Nastavení klienta Databricks Connect pro Python
- Ověření sady Databricks SDK pro Python pomocí účtu nebo pracovního prostoru Azure Databricks
Poznámka:
Rozšíření Databricks pro Visual Studio Code používá Python, ale ještě neimplementovalo ověřování OAuth M2M.
Java
Pro operace na úrovni pracovního prostoru pro výchozí ověřování:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
Pro přímou retrieve
konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například Azure KeyVault). V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://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);
// ...
Další informace o ověřování pomocí nástrojů Databricks a sad SDK, které používají Javu a implementují jednotné ověřování klientů Databricks, najdete v tématu:
- Nastavení klienta Databricks Connect pro Scala (klient Databricks Connect pro Scala používá k ověřování zahrnutou sadu Databricks SDK pro Javu)
- Ověření sady Databricks SDK pro Javu pomocí účtu nebo pracovního prostoru Azure Databricks
Go
Pro operace na úrovni účtu pro výchozí ověřování:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
Pro přímou retrieve
konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například Azure KeyVault). V tomto případě adresa URL konzoly účtu Azure Databricks je 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(),
}))
// ...
Pro operace na úrovni pracovního prostoru pro výchozí ověřování:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
Pro přímou retrieve
konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například Azure KeyVault). V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://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(),
}))
// ...
Další informace o ověřování pomocí nástrojů Databricks a sad SDK, které používají Go a které implementují jednotné ověřování klienta Databricks, najdete v tématu Ověření sady Databricks SDK for Go pomocí účtu nebo pracovního prostoru Azure Databricks.
Ruční generování a používání přístupových tokenů pro ověřování OAuth M2M
Nástroje a sady SDK Azure Databricks, které implementují standard sjednoceného ověřování klienta Databricks, automaticky vygenerují, aktualizují a použijí přístupové tokeny Azure Databricks OAuth vaším jménem podle potřeby pro ověřování OAuth M2M.
Pokud musíte ručně generovat, aktualizovat nebo používat přístupové tokeny Azure Databricks OAuth pro ověřování OAuth M2M, postupujte podle pokynů v této části.
Krok 1: Vytvoření instančního objektu a tajného kódu OAuth
Pokud ještě nemáte spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID a odpovídající tajný klíč Azure Databricks OAuth, vytvořte ho provedením kroků 1 až 5 na začátku tohoto článku.
Krok 2: Ruční vygenerování přístupového tokenu
Pomocí id klienta spravovaného instančního objektu Azure Databricks nebo spravovaného instančního objektu Microsoft Entra ID a tajného klíče Azure Databricks OAuth požádejte o přístupový token Azure Databricks OAuth k ověření rozhraní REST API na úrovni účtu i rozhraní REST API na úrovni pracovního prostoru. Platnost tokenu vyprší za jednu hodinu. Po vypršení platnosti musíte požádat o nový přístupový token Azure Databricks OAuth. Rozsah přístupového tokenu OAuth závisí na úrovni, ze které token vytvoříte. Token můžete vytvořit na úrovni účtu nebo na úrovni pracovního prostoru následujícím způsobem:
- Pokud chcete volat rozhraní REST API na úrovni účtu a pracovního prostoru v rámci účtů a pracovních prostorů, ke kterým má instanční objekt spravované služby Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID přístup, ručně vygenerujte přístupový token na úrovni účtu.
- Pokud chcete volat rozhraní REST API pouze v jednom pracovním prostoru, ke kterému má spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID přístup, můžete ručně vygenerovat přístupový token na úrovni pracovního prostoru pouze pro tento pracovní prostor.
Ruční vygenerování přístupového tokenu na úrovni účtu
Přístupový token Azure Databricks OAuth vytvořený z úrovně účtu se dá použít pro rozhraní Databricks REST API v účtu a v jakémkoli pracovním prostoru, ke kterému je přiřazený spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID.
Jako správce účtu se přihlaste ke konzole účtu.
Klikněte na šipku dolů vedle svého uživatelského jména v pravém horním rohu.
Zkopírujte ID účtu.
Vytvořte adresu URL koncového bodu tokenu tak
<my-account-id>
, že nahradíte následující adresu URL ID účtu, které jste zkopírovali.https://accounts.azuredatabricks.net/oidc/accounts/<my-account-id>/v1/token
Použijte klienta, například
curl
k vyžádání přístupového tokenu Azure Databricks OAuth s adresou URL koncového bodu tokenu, ID klienta (označovaného také jako ID aplikace) instančního objektu spravované služby Azure Databricks nebo spravovaného instančního objektu Microsoft Entra ID a tajného klíče Azure Databricks OAuth, který jste vytvořili pro instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID. Oborall-apis
požaduje přístupový token Azure Databricks OAuth, který lze použít pro přístup ke všem rozhraním REST API Databricks, ke kterým byl udělen přístup spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID.- Nahraďte
<token-endpoint-URL>
výše uvedenou adresou URL koncového bodu tokenu. - Nahraďte
<client-id>
ID klienta spravovaného instančního objektu Azure Databricks nebo ID spravovaného instančního objektu Microsoft Entra ID, které se označuje také jako ID aplikace. - Nahraďte
<client-secret>
tajným kódem Azure Databricks OAuth, který jste vytvořili pro instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID.
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'
Tím se vygeneruje podobná odpověď:
{ "access_token": "eyJraWQiOiJkYTA4ZTVjZ…", "scope": "all-apis", "token_type": "Bearer", "expires_in": 3600 }
access_token
Zkopírujte odpověď.Platnost přístupového tokenu Azure Databricks OAuth vyprší za hodinu. Po vypršení platnosti musíte ručně vygenerovat nový přístupový token Azure Databricks OAuth.
- Nahraďte
Přeskočte k kroku 3: Volání rozhraní REST API Databricks.
Ruční vygenerování přístupového tokenu na úrovni pracovního prostoru
Přístupový token Azure Databricks OAuth vytvořený z úrovně pracovního prostoru může přistupovat pouze k rozhraním REST API v daném pracovním prostoru, i když je instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID správcem účtu nebo je členem jiných pracovních prostorů.
Vytvořte adresu URL koncového bodu tokenu nahrazením
https://<databricks-instance>
adresy URL pracovního prostoru vašeho nasazení Azure Databricks:https://<databricks-instance>/oidc/v1/token
Použijte klienta, například
curl
k vyžádání přístupového tokenu Azure Databricks OAuth s adresou URL koncového bodu tokenu, ID klienta (označovaného také jako ID aplikace) spravovaného instančního objektu Azure Databricks nebo spravovaného instančního objektu Microsoft Entra ID Microsoftu a tajného klíče Azure Databricks OAuth, který jste vytvořili pro spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID. Rozsahall-apis
požaduje přístupový token Azure Databricks OAuth, který lze použít pro přístup ke všem rozhraním DATAbricks REST API, ke kterým má instanční objekt spravované služby Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID udělený přístup v rámci pracovního prostoru, ze kterého token požadujete.Nahraďte
<token-endpoint-URL>
výše uvedenou adresou URL koncového bodu tokenu.Nahraďte
<client-id>
ID klienta spravovaného instančního objektu Azure Databricks nebo ID spravovaného instančního objektu Microsoft Entra ID, které se označuje také jako ID aplikace.Nahraďte
<client-secret>
tajným kódem Azure Databricks OAuth, který jste vytvořili pro instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID.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'
Tím se vygeneruje podobná odpověď:
{ "access_token": "eyJraWQiOiJkYTA4ZTVjZ…", "scope": "all-apis", "token_type": "Bearer", "expires_in": 3600 }
access_token
Zkopírujte odpověď.
Krok 3: Volání rozhraní REST API služby Databricks
Teď můžete použít přístupový token Azure Databricks OAuth k ověření v rozhraních REST API na úrovni účtu Azure Databricks a rozhraní REST API na úrovni pracovního prostoru. Spravovaný instanční objekt Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID musí být správcem účtu, který volá rozhraní REST API na úrovni účtu.
Token můžete zahrnout do hlavičky pomocí Bearer
ověřování. Tento přístup můžete použít s libovolným klientem curl
, kterého sestavíte.
Příklad požadavku rozhraní REST API na úrovni účtu
Tento příklad používá Bearer
ověřování k získání seznamu všech pracovních prostorů přidružených k účtu.
- Nahraďte
<oauth-access-token>
přístupovým tokenem Azure Databricks OAuth pro instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID. - Nahraďte
<account-id>
ID účtu.
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'
Příklad požadavku rozhraní REST API na úrovni pracovního prostoru
Tento příklad používá Bearer
ověřování k výpisu všech dostupných clusterů v zadaném pracovním prostoru.
Nahraďte
<oauth-access-token>
přístupovým tokenem Azure Databricks OAuth pro instanční objekt spravované službou Azure Databricks nebo spravovaný instanční objekt Microsoft Entra ID.Nahraďte
<workspace-URL>
adresou URL základního pracovního prostoru, která má formulář podobnýadb-1111111111111111.1.azuredatabricks.net
.export OAUTH_TOKEN=<oauth-access-token> curl --request GET --header "Authorization: Bearer $OAUTH_TOKEN" \ 'https://<workspace-URL>/api/2.0/clusters/list'
Další materiály
- Instanční objekty
- Přehled modelu identit Databricks
- Další informace o ověřování a řízení přístupu