Sdílet prostřednictvím


Konfigurace přihlašování k Azure Databricks z dbt Core pomocí ID Microsoft Entra

Důležité

Tato funkce je ve verzi Public Preview.

Tento článek popisuje, jak nakonfigurovat přihlašování k Azure Databricks z dbt Core pomocí ID Microsoft Entra. Po dokončení této jednorázové konfigurace jako správce účtu Azure Databricks můžou uživatelé připojit Azure Databricks k dbt Core pomocí jednotného přihlašování (SSO).

Kromě použití Microsoft Entra ID můžete použít Databricks M2M OAuth k integraci s dbt Core. Viz Povolení nebo zakázání partnerských aplikací OAuth.

Než začnete

Než dokončíte kroky v tomto článku, musíte:

  • Přístup k místnímu prostředí dbt Core
  • Získejte název hostitele serveru a cestu HTTP pro SQL Warehouse ve vašem pracovním prostoru Azure Databricks.
  • Být správcem účtu Azure Databricks
  • Máte oprávnění k vytvoření registrace aplikace Azure v tenantovi Azure pro váš účet Azure Databricks.

Konfigurace ověřování M2M (machine-to-machine) pro dbt Core

Tato část popisuje, jak nakonfigurovat ověřování M2M (machine-to-machine) pro Azure Databricks a dbt Core. Pracovní postup M2M OAuth umožňuje automatizovaným procesům, jako je integrace CI/CD, bezpečně přistupovat k prostředkům bez zásahu člověka. Klient dbt běží jako instanční objekt, získává token OAuth z Azure AD pomocí instančního objektu a využívá tento token pro připojení k rozhraní SQL API Databricks.

Vytvoření registrace aplikace Azure

  1. Pomocí webu Azure Portal se přihlaste k tenantovi Azure pro svůj účet Azure Databricks na adrese https://portal.azure.com/<tenant-id>.
  2. Klikněte na Registrace aplikací. Pokud Registrace aplikací není vidět, klikněte na Další služby a pomocí textového pole Filtrovat služby vyhledejte Registrace aplikací.
  3. Klikněte na Nová registrace.
  4. Zadejte název aplikace.
  5. V identifikátoru URI přesměrovánívyberte veřejný klient nebo nativní (mobilní & desktop) a zadejte .
  6. Klikněte na Zaregistrovat.
  7. Zkopírujte ID aplikace (klienta). Tuto hodnotu budete potřebovat později.

Vygenerování tajného klíče klienta pro registraci aplikace Azure

  1. Na webu Azure Portal vyberte registraci aplikace, kterou jste vytvořili v předchozím kroku.
  2. Klepněte na tlačítko Certifikáty a tajné kódy a potom klepněte na tlačítko Nový tajný klíč klienta.
  3. Zadejte popis a klikněte na Přidat.
  4. Zkopírujte hodnotu tajného kódu. Tuto hodnotu budete potřebovat později a budete k ní mít přístup jenom po vytvoření tajného kódu.

Přidání instančního objektu Microsoft Entra ID do pracovního prostoru

  1. V pracovním prostoru Azure Databricks klikněte na své uživatelské jméno v pravém horním rohu a potom klikněte na Nastavení.
  2. Klikněte na kartu Identita a přístup .
  3. Vedle instančních objektů klikněte na Spravovat.
  4. Klepněte na tlačítko Přidat instanční objekt a potom klepněte na tlačítko ID klienta.
  5. Jako ApplicationId zadejte ID aplikace (klienta), které jste zkopírovali dříve.
  6. Jako zobrazovaný název zadejte logický název instančního objektu a klikněte na tlačítko Přidat.

Přidání profilu M2M do projektu dbt

  1. Nastavte ID aplikace (klienta) a tajný klíč klienta, který jste zkopírovali dříve jako proměnné prostředí. Databricks nedoporučuje ukládat citlivé informace, jako profiles.yml jsou tajné kódy přímo.

    ~ export DATABRICKS_CLIENT_ID=<client-id>
    ~ export DATABRICKS_CLIENT_SECRET=<client-secret>
    
  2. Přidejte do souboru v projektu dbt profil profiles.yml M2M.

    Následuje příklad profiles.yml souboru se zadaným profilem azure-oauth-m2m M2M. Určení azure-oauth-m2m pro target nastavení profilu M2M jako výchozího profilu spuštění používaného dbt.

    databricks_demo:
      outputs:
        ...
        azure-oauth-m2m:
          catalog: uc_demos
          host: "adb-xxx.azuredatabricks.net"
          http_path: "/sql/1.0/warehouses/9196548d010cf14d"
          schema: databricks_demo
          threads: 1
          type: databricks
          auth_type: oauth
          client_id: "{{ env_var('DATABRICKS_CLIENT_ID') }}"
          client_secret: "{{ env_var('DATABRICKS_CLIENT_SECRET') }}"
    target: azure-oauth-m2m
    

Autorizace instančního objektu pro přístup k SQL Warehouse

  1. Na bočním panelu klikněte na SQL Warehouse, klikněte na sql warehouse a potom klikněte na Oprávnění.
  2. Vedle služebního objektu, který jste vytvořili dříve v tomto článku, vyberte v rozevírací nabídce POUŽÍT.

Ověření nastavení aplikace OAuth

Spuštěním dbt debug příkazu ověřte, že je aplikace OAuth správně nakonfigurovaná. Příklad:

dbt debug --target azure-oauth-m2m

Následuje příklad výstupu úspěšného dbt debug spuštění:

  ...
  Configuration:
    profiles.yml file [OK found and valid]
    dbt_project.yml file [OK found and valid]

  Required dependencies:
    - git [OK found]

  Connection:
    ...
    Connection test: OK connection ok

Konfigurace ověřování uživatelem na počítač (U2M) pro dbt Core

Tato část popisuje, jak nakonfigurovat ověřování uživatelem na počítač pomocí Azure Databricks a dbt Core. Pracovní postup U2M OAuth umožňuje přístup k systémům jménem uživatele, jako je klient dbt, zabezpečeným získáním tokenu OAuth prostřednictvím automaticky otevíraného okna prohlížeče z Azure AD. Dbt používá tento token pro připojení k rozhraní SQL API Databricks, což zjednodušuje ověřování a autorizaci.

Vytvoření registrace aplikace Azure

  1. Pomocí webu Azure Portal se přihlaste k tenantovi Azure pro svůj účet Azure Databricks na adrese https://portal.azure.com/<tenant-id>.
  2. Klikněte na Registrace aplikací. Pokud Registrace aplikací není vidět, klikněte na Další služby a pomocí textového pole Filtrovat služby vyhledejte Registrace aplikací.
  3. Klikněte na Nová registrace.
  4. Zadejte název aplikace.
  5. V rozevíracím seznamu pro identifikátor URI přesměrování, vyberte veřejný klient/nativní (mobilní & desktop) a zadejte http://localhost:8020.
  6. Klikněte na Zaregistrovat.
  7. Zkopírujte ID aplikace (klienta) a ID tenanta. Tyto hodnoty budete potřebovat později.

Přidání profilu U2M do projektu dbt

Do souboru v projektu dbt přidejte profil profiles.yml U2M.

Následuje příklad profiles.yml souboru se zadaným profilem azure-oauth-u2m U2M. Zadání azure-oauth-u2m pro target nastavení profilu U2M jako výchozího profilu spuštění používaného dbt.

databricks_demo:
outputs:
  azure-oauth-u2m:
    catalog: uc_demos
    host: "adb-xxx.azuredatabricks.net"
    http_path: "/sql/1.0/warehouses/9196548d010cf14d"
    schema: databricks_demo
    threads: 1
    type: databricks
    auth_type: oauth
    client_id: "9729e77e-ba94-4d53-8cfb-bb609f43f881"
target: azure-oauth-u2m

Ověření nastavení aplikace OAuth

  1. Spuštěním dbt debug příkazu ověřte, že je aplikace OAuth správně nakonfigurovaná. Příklad:

    dbt debug --target azure-oauth-u2m
    

    V prohlížeči se otevře požadovaná stránka Oprávnění.

  2. Klikněte na Akceptovat.

Následuje příklad výstupu úspěšného dbt debug spuštění:

...
Configuration:
  profiles.yml file [OK found and valid]
  dbt_project.yml file [OK found and valid]

Required dependencies:
  - git [OK found]

Connection:
  ...
  Connection test: OK connection ok

Další materiály

Pokud chcete vytvořit nový projekt dbt Core a připojit se k Azure Databricks pomocí ověřování jednotného přihlašování, přečtěte si téma Připojení k dbt Core.