Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Databricks OAuth-jogkivonat-összevonás, más néven OpenID Connect (OIDC) lehetővé teszi, hogy a Databricksen kívül futó automatizált számítási feladatok biztonságosan hozzáférjenek a Databrickshez Databricks-titkos kódok nélkül. Lásd : Az Azure Databricks hozzáférésének hitelesítése OAuth-jogkivonat-összevonással.
A számítási feladatok identitás-összevonásának engedélyezése a GitHub Actionshez:
A számítási feladatok identitás-összevonásának engedélyezése után a Databricks SDK-k és a Databricks CLI automatikusan lekéri a számítási feladatok identitási jogkivonatait a GitHubról, és kicserélik őket Databricks OAuth-jogkivonatokra.
Szövetségi politika létrehozása
Először hozzon létre egy számítási feladat identitás-összevonási szabályzatát. Útmutatásért tekintse meg a szolgáltatásnév összevonási szabályzatának konfigurálását. A GitHub esetében állítsa be a következő értékeket a szabályzathoz:
-
Szervezet: A Github-szervezet neve. Ha például az adattár URL-címe
https://github.com/databricks-inc/data-platform, akkor a szervezet azdatabricks-inc. -
Raktár: Az engedélyezendő egyetlen adattár neve, például
data-platform. -
Entitás típusa: A jogkivonat (tárgy) jogcímében
subképviselt GitHub-entitás típusa. Az alapértelmezett érték az Ág. A Databricks a Környezet használatát javasolja, amelyet aenvironmentGitHub Actions YAML-fájljában lévő attribútum beállításával engedélyezheti. Lásd : Üzembe helyezés egy adott környezetben. -
Kiállító URL-címe:
https://token.actions.githubusercontent.com - Tárgy: A GitHub Actions munka kontextus értékeinek összefűzésével létrehozott karakterlánc.
- Közönség: A Databricks azt javasolja, hogy állítsa be ezt az Azure Databricks-fiókazonosítóra. Ha nincs megadva, a rendszer alapértelmezés szerint a fiókazonosítót használja.
-
Tulajdonosi jogcím: (Nem kötelező) Az OIDC-jogkivonat számítási feladatidentitását (
sub) tartalmazó JWT-jogcím. A GitHub esetében hagyja meg a mezőt a munkafolyamatot aktiváló adattárat, ágat, címkét, lekéréses/egyesítési kérelmet vagy környezetet kódoló mezőkéntsub. Ha a hívó adattár helyett újrahasználható munkafolyamatként szeretne hitelesíteni, olvassa el a Hitelesítés újrafelhasználható munkafolyamat használatával című témakört.
A következő Databricks CLI-parancs például egy összevonási szabályzatot hoz létre egy nevű my-org szervezet számára, és egy Databricks szolgáltatás felelősének numerikus azonosítójával 5581763342009999.
databricks account service-principal-federation-policy create 5581763342009999 --json '{
"oidc_policy": {
"issuer": "https://token.actions.githubusercontent.com",
"audiences": [
"a2222dd9-33f6-455z-8888-999fbbd77900"
],
"subject": "repo:my-github-org/my-repo:environment:prod"
}
}'
A GitHub Actions YAML-fájljának konfigurálása
Ezután konfigurálja a GitHub Actions YAML-fájlt. Állítsa be a következő környezeti változókat:
-
DATABRICKS_AUTH_TYPE:github-oidc -
DATABRICKS_HOST: A Databricks-munkaterület URL-címe -
DATABRICKS_CLIENT_ID: A szolgáltatási főszereplő (alkalmazás) azonosítója
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: workflow_dispatch
permissions:
id-token: write
contents: read
jobs:
my_script_using_wif:
runs-on: ubuntu-latest
environment: prod
env:
DATABRICKS_AUTH_TYPE: github-oidc
DATABRICKS_HOST: https://my-workspace.cloud.databricks.com/
DATABRICKS_CLIENT_ID: a1b2c3d4-ee42-1eet-1337-f00b44r
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Databricks CLI
uses: databricks/setup-cli@main
- name: Run Databricks CLI commands
run: databricks current-user me
Hitelesítés újrafelhasználható munkafolyamat használatával
Alapértelmezés szerint a sub jogcím azonosítja a hívási adattárat. Ha a hívó adattár helyett újrahasználható munkafolyamatként szeretne hitelesíteni, állítsa subject_claimjob_workflow_ref be az összevonási szabályzatban. Bármely csapat meghívhatja az újrahasználható munkafolyamatot, de csak maga az újrahasználható munkafolyamat hitelesít a Databricks használatával.
Szövetségi politika létrehozása
Föderációs szabályzat létrehozása job_workflow_ref mint témakör állítás. Állítsa be az subject értékét az újrahasználható munkafolyamat-fájl referencia értékére:
databricks account service-principal-federation-policy create 5581763342009999 --json '{
"oidc_policy": {
"issuer": "https://token.actions.githubusercontent.com",
"audiences": [
"a2222dd9-33f6-455z-8888-999fbbd77900"
],
"subject": "my-github-org/shared-workflows/.github/workflows/deploy.yml@refs/heads/main",
"subject_claim": "job_workflow_ref"
}
}'
Konfigurálja a GitHub Actions YAML-fájlokat
Hozzon létre egy újrafelhasználható munkafolyamatot, amely hitelesít az Azure Databricks-szel, és egy hívási munkafolyamatot bármely adattárban, amely meghívja azt.
Az alábbi példa egy újrafelhasználható munkafolyamatfájlt mutat be (.github/workflows/deploy.yml a megosztott munkafolyamatok adattárában):
on:
workflow_call:
jobs:
deploy:
runs-on: ubuntu-latest
env:
DATABRICKS_AUTH_TYPE: github-oidc
DATABRICKS_HOST: https://my-workspace.cloud.databricks.com/
DATABRICKS_CLIENT_ID: a1b2c3d4-ee42-1eet-1337-f00b44r
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Databricks CLI
uses: databricks/setup-cli@main
- name: Run Databricks CLI commands
run: databricks current-user me
Az alábbi példa egy hívó munkafolyamatot mutat be az újrahasználható munkafolyamatot használó adattárakban:
on: workflow_dispatch
permissions:
id-token: write
contents: read
jobs:
call-deploy:
uses: my-github-org/shared-workflows/.github/workflows/deploy.yml@main
Megjegyzés:
Állítsa be permissions: id-token: write a hívási folyamatnál, nem az újrafelhasználható folyamatnál. GitHub csak akkor tartalmazza a job_workflow_ref jogcímet az OIDC-jogkivonatban, ha a id-token: write meg van adva a hívó munkafolyamatban.