Partilhar via


Autenticação para a CLI do Databricks

Nota

Essas informações se aplicam às versões 0.205 e superiores da CLI do Databricks. A CLI do Databricks está em Visualização Pública.

O uso da CLI do Databricks está sujeito à Licença do Databricks e ao Aviso de Privacidade do Databricks, incluindo quaisquer disposições de Dados de Uso.

Este artigo explica como configurar a autenticação entre a CLI do Azure Databricks e suas contas e espaços de trabalho do Azure Databricks. Ele pressupõe que você já tenha instalado a CLI do Azure Databricks. Consulte Instalar ou atualizar a CLI do Databricks.

Antes de executar os comandos da CLI do Azure Databricks, você deve configurar a autenticação para as contas ou espaços de trabalho que planeja usar. A configuração necessária depende se você deseja executar comandos no nível do espaço de trabalho , comandos no nível da conta ou ambos.

Para exibir os grupos de comandos da CLI disponíveis, execute databricks -h. Para obter a lista de operações correspondentes da API REST, consulte Databricks REST API.

Para obter informações sobre a autenticação do Microsoft Entra para Databricks com o Azure DevOps especificamente, consulte Autenticar com o Azure DevOps no Azure Databricks.

Autenticação OAuth entre máquinas (M2M)

A autenticação máquina-a-máquina (M2M) com OAuth permite que serviços, scripts ou aplicativos acessem recursos do Databricks sem login interativo do usuário. Em vez de depender de tokens de acesso pessoal (PATs) ou credenciais de usuário, a autenticação M2M usa uma entidade de serviço e um fluxo de credenciais de cliente OAuth para solicitar e gerenciar tokens.

Para configurar e usar a autenticação OAuth M2M:

  1. Conclua as etapas de configuração de autenticação OAuth M2M. Consulte Autorizar o acesso da entidade de serviço ao Azure Databricks com OAuth.

  2. Crie um perfil de configuração do Azure Databricks com os seguintes campos em seu .databrickscfg arquivo.

    Para comandos no nível da conta

    [<some-unique-configuration-profile-name>]
    host          = <account-console-url>
    account_id    = <account-id>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

    Para comandos no nível do espaço de trabalho

    [<some-unique-configuration-profile-name>]
    host          = <workspace-url>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

Para usar o perfil, passe-o com o sinalizador --profile ou -p nos comandos da CLI. Por exemplo:

databricks account groups list -p <profile-name>

Pressione Tab depois --profile ou -p para mostrar uma lista de perfis disponíveis.

Autenticação OAuth utilizador-para-máquina (U2M)

Com a autenticação U2M (user-to-machine) OAuth, você efetua login interativamente e a CLI gerencia tokens de curta duração em seu nome. Os tokens OAuth expiram em menos de uma hora, o que reduz o risco se um token for exposto acidentalmente. Consulte Autorizar o acesso do usuário ao Azure Databricks com OAuth.

Para iniciar sessão:

Para comandos no nível da conta

databricks auth login --host <account-console-url> --account-id <account-id>

Para comandos no nível do espaço de trabalho

databricks auth login --host <workspace-url>

A CLI orienta você através de um fluxo de login baseado em navegador. Quando você terminar, a CLI salvará as credenciais como um perfil de configuração. Pode aceitar o nome de perfil sugerido ou introduzir o seu próprio.

Para usar o perfil, passe-o com o sinalizador --profile ou -p nos comandos da CLI. Por exemplo:

databricks clusters list -p <profile-name>

Pressione Tab depois --profile ou -p para mostrar uma lista de perfis disponíveis.

Autenticação de identidades gerenciadas do Azure

A autenticação de identidades gerenciadas do Azure usa identidades gerenciadas para recursos do Azure (anteriormente Identidades de Serviço Gerenciado (MSI)) para autenticação. Consulte O que são identidades gerenciadas para recursos do Azure?. Consulte também Autenticar com identidades gerenciadas do Azure.

Para criar uma identidade gerenciada atribuída pelo usuário do Azure, faça o seguinte:

  1. Crie ou identifique uma VM do Azure e instale a CLI do Databricks nela e, em seguida, atribua sua identidade gerenciada à sua VM do Azure e às suas contas, espaços de trabalho ou ambos do Azure Databricks de destino. Consulte Usar identidades gerenciadas do Azure com o Azure Databricks.

  2. Na VM do Azure, crie ou identifique um perfil de configuração do Azure Databricks com os seguintes campos em seu .databrickscfg arquivo. Se criar o perfil, substitua os marcadores de posição pelos valores apropriados.

    Para os comandos de nível de conta , defina os seguintes valores no ficheiro .databrickscfg:

    [<some-unique-configuration-profile-name>]
    host            = <account-console-url>
    account_id      = <account-id>
    azure_client_id = <azure-managed-identity-application-id>
    azure_use_msi   = true
    

    Para comandos no nível do espaço de trabalho , defina os seguintes valores no arquivo .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host            = <workspace-url>
    azure_client_id = <azure-managed-identity-application-id>
    azure_use_msi   = true
    

    O Databricks recomenda usar host e atribuir explicitamente a identidade ao espaço de trabalho. Em alternativa, use azure_workspace_resource_id com o ID de recurso Azure. Esta abordagem requer permissões de Contribuidor ou Proprietário sobre o recurso Azure, ou um papel personalizado com permissões específicas do Azure Databricks.

  3. Na VM do Azure, use a opção --profile ou -p da CLI do Databricks, seguida do nome do seu perfil de configuração, para definir o perfil para o Databricks usar, por exemplo, databricks account groups list -p <configuration-profile-name> ou databricks clusters list -p <configuration-profile-name>.

    Gorjeta

    Você pode pressionar Tab após --profile ou -p para exibir uma lista de perfis de configuração disponíveis existentes para escolher, em vez de inserir o nome do perfil de configuração manualmente.

Autenticação do principal de serviço do Microsoft Entra ID

A autenticação da entidade de serviço do Microsoft Entra ID usa as credenciais de uma entidade de serviço do Microsoft Entra ID para autenticar. Para criar e gerenciar entidades de serviço para o Azure Databricks, consulte Entidades de serviço. Ver também Autenticar com os principais serviços Microsoft Entra.

Para configurar e usar a autenticação do principal de serviço do Microsoft Entra ID, deve ter Authenticate with the Azure CLI instalada localmente. Você também deve fazer o seguinte:

  1. Crie ou identifique um perfil de configuração do Azure Databricks com os seguintes campos em seu .databrickscfg arquivo. Se criar o perfil, substitua os marcadores de posição pelos valores apropriados.

    Para os comandos de nível de conta , defina os seguintes valores no ficheiro .databrickscfg:

    [<some-unique-configuration-profile-name>]
    host                = <account-console-url>
    account_id          = <account-id>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

    Para comandos no nível do espaço de trabalho , defina os seguintes valores no arquivo .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host                = <workspace-url>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

    O Databricks recomenda usar host e atribuir explicitamente o principal de serviço Microsoft Entra ID ao espaço de trabalho. Em alternativa, use azure_workspace_resource_id com o ID de recurso Azure. Esta abordagem requer permissões de Contribuidor ou Proprietário sobre o recurso Azure, ou um papel personalizado com permissões específicas do Azure Databricks.

  2. Utilize a opção --profile ou -p da CLI do Databricks seguido do nome do seu perfil de configuração, como parte do comando de chamada da CLI do Databricks, por exemplo databricks account groups list -p <configuration-profile-name> ou databricks clusters list -p <configuration-profile-name>.

    Gorjeta

    Você pode pressionar Tab após --profile ou -p para exibir uma lista de perfis de configuração disponíveis existentes para escolher, em vez de inserir o nome do perfil de configuração manualmente.

Autenticação da CLI do Azure

A autenticação da CLI do Azure usa a CLI do Azure para autenticar a entidade conectada. Consulte também Autenticar com a CLI do Azure.

Para configurar a autenticação da CLI do Azure, você deve fazer o seguinte:

  1. Tenha a CLI do Azure instalada localmente.

  2. Use a CLI do Azure para fazer logon no Azure Databricks executando o az login comando. Consulte Entrar com a CLI do Azure.

  3. Crie ou identifique um perfil de configuração do Azure Databricks com os seguintes campos em seu .databrickscfg arquivo. Se criar o perfil, substitua os marcadores de posição pelos valores apropriados.

    Para os comandos de nível de conta , defina os seguintes valores no ficheiro .databrickscfg:

    [<some-unique-configuration-profile-name>]
    host       = <account-console-url>
    account_id = <account-id>
    

    Para comandos no nível do espaço de trabalho , defina os seguintes valores no arquivo .databrickscfg :

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    
  4. Utilize a opção --profile ou -p da CLI do Databricks seguido do nome do seu perfil de configuração, como parte do comando de chamada da CLI do Databricks, por exemplo databricks account groups list -p <configuration-profile-name> ou databricks clusters list -p <configuration-profile-name>.

    Gorjeta

    Você pode pressionar Tab após --profile ou -p para exibir uma lista de perfis de configuração disponíveis existentes para escolher, em vez de inserir o nome do perfil de configuração manualmente.

Ordem de autenticação da avaliação

Sempre que a CLI do Databricks se autentica em um espaço de trabalho ou conta do Azure Databricks, ela procura as configurações necessárias na seguinte ordem:

  1. Arquivos de configurações do pacote, para comandos executados a partir de um diretório de trabalho do pacote. Os arquivos de configurações do pacote não podem conter valores de credenciais diretamente.
  2. Variáveis de ambiente, conforme listado neste artigo e em Variáveis de ambiente e campos para autenticação unificada.
  3. Perfis de configuração no .databrickscfg arquivo.

Assim que a CLI encontrar a configuração necessária, ela para de pesquisar outros locais.

Examples:

  • Se uma variável de DATABRICKS_TOKEN ambiente for definida, a CLI a usará, mesmo que existam vários tokens no .databrickscfg.
  • Se no DATABRICKS_TOKEN estiver definido e um ambiente de pacote fizer referência a um nome de perfil, como dev → perfil DEV, a CLI usará as credenciais desse perfil no .databrickscfg.
  • Se no DATABRICKS_TOKEN estiver definido e um ambiente de pacote especificar um host valor, a CLI procurará um perfil com .databrickscfg uma correspondência host e usará seu token.

Autenticação de token de acesso pessoal (preterida)

Importante

A autenticação básica usando um nome de usuário e senha do Azure Databricks chegou ao fim da vida útil em 10 de julho de 2024. Para autenticar com a conta do Azure Databricks, use um dos seguintes métodos de autenticação:

A autenticação do token de acesso pessoal do Azure Databricks usa um token de acesso pessoal do Azure Databricks para autenticar a entidade de destino do Azure Databricks, como uma conta de usuário do Azure Databricks. Consulte Autentique-se com tokens de acesso pessoal do Azure Databricks (legado).

Para criar um token de acesso pessoal, siga as etapas em Criar tokens de acesso pessoal para usuários do espaço de trabalho.