Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A federação de tokens OAuth do Databricks, também conhecida como OpenID Connect (OIDC), permite que suas cargas de trabalho automatizadas executadas fora do Databricks acessem com segurança o Databricks sem a necessidade de segredos do Databricks. Consulte Autenticar o acesso ao Azure Databricks usando a federação de tokens OAuth.
Para habilitar a federação de identidades de carga de trabalho para ações do GitHub:
Depois de habilitar a federação de identidades de carga de trabalho, os SDKs do Databricks e a CLI do Databricks buscam automaticamente tokens de identidade de carga de trabalho do GitHub e os trocam por tokens OAuth do Databricks.
Criar uma política de federação
Primeiro, crie uma política de federação de identidade de carga de trabalho. Para obter instruções, consulte Configurar uma política de federação da entidade de serviço. Para o GitHub, defina os seguintes valores para a política:
-
Organização: O nome da sua organização do Github. Por exemplo, se a URL do repositório for
https://github.com/databricks-inc/data-platform, a organização serádatabricks-inc. -
Repositório: O nome do repositório único a ser permitido, como
data-platform. -
Tipo de entidade: O tipo de entidade do GitHub representada na
subdeclaração (assunto) do seu token. O padrão é Branch. O Databricks recomenda o uso de Environment, que você pode habilitar definindo oenvironmentatributo em seu arquivo YAML de ações do GitHub. Consulte Implantando em um ambiente específico. -
URL do emissor:
https://token.actions.githubusercontent.com - Assunto: Uma cadeia de caracteres formada pela concatenação de valores do contexto de trabalho Ações do GitHub.
- Audiências: O Databricks recomenda definir isso para sua ID de conta do Azure Databricks. Se omitido, o ID da conta é usado por padrão.
-
Reivindicação de assunto: (Opcional) A declaração JWT que contém o valor de identidade da carga de trabalho (
sub) do token OIDC. Para o GitHub, deixe o campo comosub, que codifica o repositório, ramificação, tag, solicitação pull/merge ou ambiente que disparou o fluxo de trabalho.
Por exemplo, o seguinte comando da CLI do Databricks cria uma política de federação para uma organização nomeada my-org e uma ID numérica da entidade de serviço Databricks de 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"
}
}'
Configurar o arquivo YAML de ações do GitHub
Em seguida, configure o arquivo YAML de ações do GitHub. Defina as seguintes variáveis de ambiente:
-
DATABRICKS_AUTH_TYPE:github-oidc -
DATABRICKS_HOST: URL do espaço de trabalho do Databricks -
DATABRICKS_CLIENT_ID: O ID da entidade de serviço (aplicativo)
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