Compartilhar via


Autenticação da CLI do Databricks

Observação

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 workspaces do Azure Databricks. Ele pressupõe que você já instalou a CLI do Azure Databricks. Confira Instalar ou atualizar a CLI do Databricks.

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

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

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

Autenticação M2M (de computador para computador) do OAuth

A autenticação M2M (máquina a máquina) com o OAuth permite que serviços, scripts ou aplicativos acessem recursos do Databricks sem entrada interativa do usuário. Em vez de depender de PATs (tokens de acesso pessoal) ou credenciais de usuário, a autenticação M2M usa uma entidade de serviço e um fluxo de credencial do 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 do OAuth M2M. Consulte Autorizar o acesso da entidade de serviço ao Azure Databricks com o OAuth.

  2. Crie um perfil de configuração do Azure Databricks com os campos a seguir 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 workspace

    [<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 ou --profile os -p 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 U2M (usuário para computador) do OAuth

Com a autenticação U2M (usuário para máquina) do OAuth, você faz logon 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 o OAuth.

Para fazer logon:

Para comandos no nível da conta

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

Para comandos no nível do workspace

databricks auth login --host <workspace-url>

A CLI orienta você por meio de um fluxo de logon baseado em navegador. Quando você termina, a CLI salva as credenciais como um perfil de configuração. Você pode aceitar o nome de perfil sugerido ou inserir o seu próprio.

Para usar o perfil, passe-o com o sinalizador ou --profile os -p 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 Identidades gerenciadas do Azure usa identidades gerenciadas para recursos do Azure (anteriormente MSI [Identidades de Serviço Gerenciado]) 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 gerida atribuída pelo utilizador 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 contas, aos espaços de trabalho do Azure Databricks de destino ou a ambos. 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 arquivo .databrickscfg. Se você criar o perfil, substitua os espaços reservados pelos valores apropriados.

    Para comandos no nível da conta, defina os seguintes valores no seu arquivo .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 workspace, defina os seguintes valores no seu 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 workspace. Como alternativa, use azure_workspace_resource_id com a ID do recurso do Azure. Essa abordagem requer permissões de Colaborador ou Proprietário no recurso do Azure ou uma função personalizada com permissões específicas do Azure Databricks.

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

    Dica

    Pressione Tab depois de --profile ou -p para visualizar uma lista de perfis de configuração disponíveis existentes para sua escolha, em vez de inserir o nome do perfil de configuração manualmente.

Autenticação da entidade de serviço do Microsoft Entra ID

A autenticação de entidades 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 as entidades de serviço. Consulte também Autenticar com as entidades de serviço do Microsoft Entra.

Para configurar e usar a autenticação do principal de serviço do Microsoft Entra ID, você deve ter o Azure CLI instalado 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 arquivo do .databrickscfg. Se você criar o perfil, substitua os espaços reservados pelos valores apropriados.

    Para comandos no nível da conta, defina os seguintes valores no seu arquivo .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 workspace, defina os seguintes valores no seu 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 do Microsoft Entra ID ao workspace. Como alternativa, use azure_workspace_resource_id com a ID do recurso do Azure. Essa abordagem requer permissões de Colaborador ou Proprietário no recurso do Azure ou uma função personalizada com permissões específicas do Azure Databricks.

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

    Dica

    Pressione Tab depois de --profile ou -p para visualizar uma lista de perfis de configuração disponíveis existentes para sua escolha, 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. Ter a CLI do Azure instalada localmente.

  2. Use a CLI do Azure para fazer logon no Azure Databricks executando o comando az login. 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 arquivo do .databrickscfg. Se você criar o perfil, substitua os espaços reservados pelos valores apropriados.

    Para comandos no nível da conta, defina os seguintes valores no seu arquivo .databrickscfg:

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

    Para comandos no nível do workspace, defina os seguintes valores no seu arquivo .databrickscfg:

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

    Dica

    Pressione Tab depois de --profile ou -p para visualizar uma lista de perfis de configuração disponíveis existentes para sua escolha, em vez de inserir o nome do perfil de configuração manualmente.

Ordem de avaliação de autenticação

Sempre que a CLI do Databricks se autentica em um workspace ou conta do Azure Databricks, ele procura as configurações necessárias na seguinte ordem:

  1. Arquivos de configurações de pacote, para comandos executados em um diretório de trabalho de pacote. Os arquivos de configurações de pacote não podem conter valores de credencial 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 interromperá a pesquisa em outros locais.

Exemplos:

  • Se uma DATABRICKS_TOKEN variável de ambiente for definida, a CLI a usará, mesmo que existam vários tokens..databrickscfg
  • Se nenhum 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 em .databrickscfg.
  • Se nenhum DATABRICKS_TOKEN estiver definido e um ambiente de pacote especificar um host valor, a CLI procurará um perfil .databrickscfg com 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 atingiu o 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 de 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 Autenticar com tokens de acesso pessoal do Azure Databricks (herdado).

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