Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Federacja tokenów OAuth w Databricks, znana również jako OpenID Connect (OIDC), umożliwia automatycznym procesom działającym poza środowiskiem Databricks bezpieczny dostęp do Databricks bez potrzeby używania tajnych kluczy dostępu. Zobacz Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu federacji tokenów OAuth.
Aby włączyć federację tożsamości operacji dla funkcji GitHub Actions:
Po włączeniu federacji tożsamości obciążenia zestawy SDK usługi Databricks i interfejs wiersza polecenia usługi Databricks automatycznie pobierają tokeny tożsamości obciążenia z usługi GitHub i wymieniają je dla tokenów OAuth usługi Databricks.
Tworzenie zasad federacji
Najpierw utwórz zasady federacji tożsamości obciążenia. Aby uzyskać instrukcje, zobacz Konfigurowanie zasad federacyjnych jednostki usługi. W przypadku usługi GitHub ustaw następujące wartości dla polisy:
-
Organizacja: Nazwa organizacji usługi GitHub. Jeśli na przykład adres URL repozytorium to
https://github.com/databricks-inc/data-platform, organizacja todatabricks-inc. -
Repozytorium: Nazwa pojedynczego repozytorium, na przykład
data-platform. -
Typ jednostki: Rodzaj jednostki Usługi GitHub reprezentowany w oświadczeniu
sub(podmiotu) tokenu. Wartość domyślna to Gałąź. Usługa Databricks zaleca korzystanie ze środowiska, które można włączyć, ustawiającenvironmentatrybut w pliku YAML funkcji GitHub Actions. Zobacz Wdrażanie w określonym środowisku. -
Adres URL wystawcy:
https://token.actions.githubusercontent.com - Temat: Ciąg utworzony przez łączenie wartości z kontekstu zadania funkcji GitHub Actions.
- Odbiorcy: Usługa Databricks zaleca ustawienie tego na ID konta usługi Azure Databricks. W przypadku pominięcia identyfikator konta jest używany domyślnie.
-
Oświadczenie podmiotu: (opcjonalnie) Oświadczenie JWT, które zawiera wartość tożsamości obciążenia (
sub) z tokenu OIDC. W przypadku usługi GitHub pozostaw pole jakosub, które koduje repozytorium, gałąź, tag, żądanie ściągnięcia/scalania lub środowisko, które wyzwoliło przepływ pracy.
Na przykład następujące polecenie interfejsu wiersza polecenia usługi Databricks tworzy zasady federacji dla organizacji o nazwie my-org i identyfikator liczbowy jednostki usługi Databricks :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"
}
}'
Skonfiguruj plik YAML GitHub Actions
Następnie skonfiguruj plik YAML funkcji GitHub Actions. Ustaw następujące zmienne środowiskowe:
-
DATABRICKS_AUTH_TYPE:github-oidc -
DATABRICKS_HOST: Adres URL obszaru roboczego usługi Databricks -
DATABRICKS_CLIENT_ID: identyfikator jednostki usługi (aplikacji)
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