Partilhar via


Configurar e usar a autenticação de identidades gerenciadas do Azure para automação do Azure Databricks

Siga as etapas deste artigo para autenticar identidades gerenciadas para recursos do Azure (anteriormente Managed Service Identities (MSI)) para automatizar suas contas e espaços de trabalho do Azure Databricks.

O Azure gerencia automaticamente as identidades na ID do Microsoft Entra para os aplicativos usarem ao se conectar a recursos que dão suporte à autenticação do Microsoft Entra ID. Esses recursos incluem contas e espaços de trabalho do Azure Databricks. A autenticação de identidades gerenciadas do Azure para o Azure Databricks usa identidades gerenciadas para obter tokens de ID do Microsoft Entra sem precisar gerenciar nenhuma credencial.

Nota

As identidades geridas para recursos do Azure são diferentes dos principais de serviço geridos pelo Microsoft Entra ID, que o Azure Databricks também suporta para autenticação. Para saber como usar entidades de serviço gerenciado do Microsoft Entra ID para autenticação do Azure Databricks em vez de identidades gerenciadas para recursos do Azure, consulte:

Este artigo demonstra como configurar e usar a autenticação de identidades gerenciadas do Azure da seguinte maneira:

  • Crie uma identidade gerida atribuída pelo utilizador. O Azure dá suporte a identidades gerenciadas atribuídas pelo sistema e pelo usuário. O Databricks recomenda que você use identidades gerenciadas atribuídas pelo usuário para autenticação de identidades gerenciadas do Azure com o Azure Databricks.
  • Atribua sua identidade gerenciada à sua conta do Azure Databricks e a um espaço de trabalho do Azure Databricks nessa conta.
  • Crie e faça logon em uma máquina virtual do Azure (VM do Azure). Você deve usar um recurso que ofereça suporte a identidades gerenciadas, como uma VM do Azure, com uma identidade gerenciada atribuída a essa VM do Azure, para chamar programaticamente as operações de conta e espaço de trabalho do Azure Databricks.
  • Atribua sua identidade gerenciada atribuída pelo usuário à sua VM do Azure.
  • Instale a CLI do Databricks em sua VM do Azure e configure a CLI do Databricks para autenticação de identidades gerenciadas do Azure para o Azure Databricks usando a identidade gerenciada atribuída.
  • Execute comandos com a CLI do Databricks para automatizar sua conta e espaço de trabalho do Azure Databricks usando a autenticação de identidades gerenciadas do Azure para o Azure Databricks com a identidade gerenciada atribuída.

Requisitos

Etapa 1: Criar uma identidade gerenciada atribuída pelo usuário

Nesta etapa, você cria uma identidade gerenciada atribuída pelo usuário para recursos do Azure. O Azure dá suporte a identidades gerenciadas atribuídas pelo sistema e pelo usuário. O Databricks recomenda que você use identidades gerenciadas atribuídas pelo usuário para autenticação de identidades gerenciadas do Azure com o Azure Databricks. Consulte também Gerenciar identidades gerenciadas atribuídas pelo usuário.

  1. Inicie sessão no portal do Azure.

    Nota

    O portal a ser usado é diferente dependendo se você usa a nuvem pública do Azure ou uma nuvem nacional ou soberana. Para obter mais informações, consulte Nuvens nacionais.

  2. Se você tiver acesso a vários locatários, assinaturas ou diretórios, clique no ícone de engrenagem (Configurações) no menu superior para alternar para o diretório no qual deseja criar a identidade gerenciada.

  3. Em Pesquisar recursos, serviços e documentos, procure e selecione o serviço do Azure chamado Identidades Gerenciadas.

  4. Clique em + Criar.

  5. Na guia Noções básicas, para Grupo de recursos, escolha um grupo de recursos existente ao qual adicionar essa identidade gerenciada ou clique em Criar novo para criar um novo grupo de recursos ao qual adicionar essa identidade gerenciada. Para obter informações sobre grupos de recursos, consulte Gerenciar grupos de recursos do Azure usando o portal do Azure.

  6. Em Região, escolha a região apropriada à qual adicionar essa identidade gerenciada. Para obter informações sobre regiões, consulte Escolher a região do Azure certa para você.

  7. Em Nome, insira algum nome exclusivo para essa identidade gerenciada que seja fácil de lembrar.

  8. No separador Rever + criar, clique em Criar.

  9. Clique em Ir para recurso.

  10. Copie o valor do campo ID do Cliente, pois você precisará dele mais tarde para as Etapas 2, 3 e 8:

    Se você esquecer de copiar esse valor, poderá retornar à página de visão geral da identidade gerenciada mais tarde para obter esse valor. Para retornar à página de visão geral da identidade gerenciada, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da identidade gerenciada. Em seguida, na página de configurações da identidade gerenciada, clique em Visão geral na barra lateral.

Etapa 2: atribuir sua identidade gerenciada à sua conta do Azure Databricks

Nesta etapa, você concede à sua identidade gerenciada acesso à sua conta do Azure Databricks. Se você não quiser conceder acesso à sua identidade gerenciada à sua conta do Azure Databricks, pule para a Etapa 3.

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador na barra superior e clique em Gerir conta.

    Como alternativa, vá diretamente para o console da conta do Azure Databricks, em https://accounts.azuredatabricks.net.

  2. Entre na sua conta do Azure Databricks, se solicitado.

  3. Na barra lateral, clique em Gerenciamento de usuários.

  4. Clique na guia Entidades de serviço.

    Nota

    Embora essa guia seja rotulada como Entidades de serviço, ela também funciona com identidades gerenciadas. O Azure Databricks trata identidades gerenciadas como entidades de serviço em sua conta do Azure Databricks.

  5. Clique em Adicionar entidade de serviço.

  6. Insira algum Nome exclusivo para a entidade de serviço que seja fácil de lembrar.

  7. Para UUID, insira o valor de ID do Cliente para sua identidade gerenciada na Etapa 1.

  8. Clique em Adicionar. Sua identidade gerenciada é adicionada como uma entidade de serviço em sua conta do Azure Databricks.

  9. Atribua as permissões de nível de conta que você deseja que a entidade de serviço tenha:

    1. Na guia Entidades de serviço, clique no nome da entidade de serviço.
    2. Na guia Funções, alterne para habilitar ou desabilitar cada função de destino que você deseja que essa entidade de serviço tenha.
    3. Na guia Permissões, conceda acesso a qualquer usuário do Azure Databricks, entidades de serviço e funções de grupo de contas que você deseja gerenciar e usar essa entidade de serviço. Consulte Gerenciar funções em uma entidade de serviço.

Etapa 3: atribuir sua identidade gerenciada ao seu espaço de trabalho do Azure Databricks

Nesta etapa, você concede à sua identidade gerenciada acesso ao seu espaço de trabalho do Azure Databricks.

Se o espaço de trabalho estiver habilitado para federação de identidades:

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador na barra superior e clique em Definições.

  2. Clique em Entidades de serviço.

    Nota

    Embora essa guia seja rotulada como Entidades de serviço, ela também funciona com identidades gerenciadas. O Azure Databricks trata identidades gerenciadas como entidades de serviço em sua conta do Azure Databricks.

  3. Clique em Adicionar entidade de serviço.

  4. Selecione a entidade de serviço na Etapa 2 e clique em Adicionar. Sua entidade de serviço é adicionada como uma entidade de serviço em seu espaço de trabalho do Azure Databricks.

  5. Atribua quaisquer permissões no nível do espaço de trabalho que você deseja que a entidade de serviço tenha:

    1. Na guia Entidades de serviço, clique no nome da entidade de serviço.
    2. Na guia Configurações, selecione ou desmarque para conceder ou revogar cada status ou direito de destino que você deseja que essa entidade de serviço tenha.
    3. Na guia Permissões, conceda acesso a qualquer usuário do Azure Databricks, entidades de serviço e funções de grupo de contas que você deseja gerenciar e usar essa entidade de serviço. Consulte Gerenciar funções em uma entidade de serviço.

Pule para a Etapa 4.

Se o espaço de trabalho não estiver habilitado para federação de identidades:

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador na barra superior e clique em Definições.

  2. Clique em Entidades de serviço.

    Nota

    Embora essa guia seja rotulada como Entidades de serviço, ela também funciona com identidades gerenciadas. O Azure Databricks trata identidades gerenciadas como entidades de serviço em seu espaço de trabalho do Azure Databricks.

  3. Clique em Adicionar entidade de serviço.

  4. Na lista Entidade de serviço, selecione Adicionar nova entidade de serviço.

  5. Para ApplicationId, insira a ID do Cliente para sua identidade gerenciada na Etapa 1.

  6. Insira algum Nome para Exibição que seja fácil de lembrar para a nova entidade de serviço e clique em Adicionar. Sua identidade gerenciada é adicionada como uma entidade de serviço em seu espaço de trabalho do Azure Databricks.

  7. Atribua quaisquer permissões no nível do espaço de trabalho que você deseja que a entidade de serviço tenha:

    1. Na guia Entidades de serviço, clique no nome da entidade de serviço.
    2. Na guia Configurações, selecione ou desmarque para conceder ou revogar cada status ou direito de destino que você deseja que essa entidade de serviço tenha.
    3. Na guia Permissões, conceda acesso a qualquer usuário do Azure Databricks, entidades de serviço e funções de grupo de contas que você deseja gerenciar e usar essa entidade de serviço. Consulte Gerenciar funções em uma entidade de serviço.

Etapa 4: Obter a ID do recurso do Azure para seu espaço de trabalho do Azure Databricks

Nesta etapa, você obtém a ID do recurso que o Azure atribui ao seu espaço de trabalho do Azure Databricks. Você precisará dessa ID de recurso do Azure mais tarde para ajudar a autenticação de identidades gerenciadas do Azure a determinar o recurso específico do Azure que o Azure associa ao seu espaço de trabalho do Azure Databricks.

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador na barra superior e clique em Portal do Azure.

  2. No painel lateral, na seção Configurações , clique em Propriedades.

  3. Na seção Essenciais, copie o valor de Id, pois você precisará dele mais tarde na Etapa 8. Deve ter um aspeto semelhante ao seguinte:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.Databricks/workspaces/<workspace-id>
    

Etapa 5: Criar e fazer logon em uma VM do Azure

Nesta etapa, você cria e faz logon em uma máquina virtual do Azure (VM do Azure). As VMs do Azure são um dos tipos de recursos que dão suporte a identidades gerenciadas. Consulte também Guia de início rápido: criar uma máquina virtual Linux no portal do Azure.

Esta VM do Azure destina-se apenas a fins de demonstração. Essa VM do Azure usa configurações que não são necessariamente otimizadas para suas necessidades de uso contínuo. Depois de concluir a experimentação com essa VM do Azure, você deve excluí-la, conforme mostrado posteriormente na Etapa 11.

  1. No portal do Azure no qual você entrou na Etapa 1, em Pesquisar recursos, serviços e documentos, procure e selecione o serviço do Azure chamado Máquinas virtuais.

  2. Clique em + Criar > máquina virtual do Azure.

  3. Na guia Noções básicas, para Grupo de recursos, escolha um grupo de recursos existente ao qual adicionar essa VM do Azure ou clique em Criar novo para criar um novo grupo de recursos ao qual adicionar essa VM do Azure. Para obter informações sobre grupos de recursos, consulte Gerenciar grupos de recursos do Azure usando o portal do Azure.

  4. Para Nome da máquina virtual, insira algum nome exclusivo para esta VM do Azure que seja fácil de lembrar.

  5. Em Região, escolha a região apropriada à qual adicionar essa VM do Azure. Para obter informações sobre regiões, consulte Escolher a região do Azure certa para você.

  6. Para Imagem, escolha Ubuntu Server 22.04 LTS - x64 Gen 2.

  7. Para Tipo de autenticação, selecione Chave pública de SSH.

  8. Em Nome de usuário, digite azureuser.

  9. Para a fonte de chave pública SSH, deixe o padrão de Gerar novo par de chaves.

  10. Em Nome do par de chaves, digite myKey.

  11. Em Portas de entrada públicas, selecione Permitir portas selecionadas.

  12. Em Selecionar portas de entrada, selecione HTTP (80) e SSH (22).

  13. Deixe os padrões restantes.

  14. No separador Rever + criar, clique em Criar.

  15. Clique em Baixar chave privada e criar recurso. Seu arquivo de chave é baixado para sua máquina de desenvolvimento local como myKey.pem. Anote onde esse myKey.pem arquivo foi baixado, pois você precisará dele para fazer logon na VM do Azure posteriormente nesta etapa.

    Se você perder seu arquivo de chave, poderá retornar à página de configurações da VM do Azure mais tarde para obter um arquivo de chave de substituição. Para retornar à página de configurações da sua VM do Azure, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da sua VM do Azure. Para obter um arquivo de chave de substituição da página de configurações da VM do Azure, faça o seguinte:

    1. Na seção Ajuda no painel lateral, clique em Redefinir senha.
    2. Selecione Adicionar chave pública SSH.
    3. Em Nome do par de chaves, insira algum nome exclusivo.
    4. Clique em Atualizar.
    5. Clique em Download + create. Seu arquivo de chave é baixado com uma .pem extensão. Anote onde esse .pem arquivo foi baixado, pois você precisará dele para fazer logon na VM do Azure posteriormente nesta etapa.
  16. Depois que a VM do Azure for criada, clique em Ir para o recurso.

  17. Copie o valor do campo Endereço IP público, pois você precisará dele para fazer logon na VM do Azure posteriormente nesta etapa.

    Se você esquecer de copiar esse valor, poderá retornar à página de visão geral da sua VM do Azure mais tarde para obter esse valor. Para retornar à página de visão geral da sua VM do Azure, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da sua VM do Azure. Em seguida, na página de configurações da VM do Azure, clique em Visão geral na barra lateral e procure o campo Endereço IP público.

  18. Se sua máquina de desenvolvimento local executa Linux, macOS ou WSL no Windows, verifique se você tem acesso somente leitura à chave privada que acabou de baixar. Para fazer isso, execute o seguinte comando no terminal ou prompt de comando da máquina de desenvolvimento local. Neste comando, substitua os seguintes valores:

    • Substitua </path/to> pelo caminho para o arquivo baixado .pem .
    • Replacce myKey.pem com o nome do arquivo baixado .pem .
    chmod 400 </path/to>/myKey.pem
    
  19. Faça logon na VM do Azure. Para fazer isso, no terminal ou prompt de comando da máquina de desenvolvimento local, execute o seguinte comando. Neste comando, substitua os seguintes valores:

    • Substitua </path/to> pelo caminho para o arquivo baixado .pem .
    • Replacce myKey.pem com o nome do arquivo baixado .pem .
    • Substitua <public-ip-address> pelo valor do campo Endereço IP público que você copiou anteriormente nesta etapa.
    ssh -i </path/to>/myKey.pem azureuser@<public-ip-address>
    

    Por exemplo:

    ssh -i ./myKey.pem azureuser@192.0.2.0
    
  20. Se você nunca se conectou a essa VM do Azure antes, você será solicitado a verificar a impressão digital do host. Para fazer isso, siga as instruções na tela. O Databricks recomenda que você sempre valide a impressão digital do host.

  21. O terminal ou prompt de comando muda para azureuser@<your-azure-vm-name>:~$.

  22. Para sair da VM do Azure a qualquer momento, execute o comando logout ou exit. O terminal ou prompt de comando muda de volta ao normal.

Etapa 6: atribuir sua identidade gerenciada à sua VM do Azure

Nesta etapa, você associa sua identidade gerenciada à sua VM do Azure. Isso permite que o Azure use a identidade gerenciada para autenticação conforme necessário enquanto a VM do Azure está em execução. Consulte também Atribuir uma identidade gerenciada atribuída pelo usuário a uma VM existente.

  1. No portal do Azure no qual você entrou na Etapa 1, na página de configurações da VM do Azure, na seção Configurações no painel lateral, clique em Identidade.

    Para retornar à página de visão geral da sua VM do Azure se você a fechou anteriormente, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da sua VM do Azure.

  2. Na guia Usuário atribuído, clique em + Adicionar.

  3. Selecione a identidade gerenciada atribuída pelo usuário que você criou na Etapa 1 e clique em Adicionar.

Etapa 7: Instalar a CLI do Databricks em sua VM do Azure

Nesta etapa, você instala a CLI do Databricks para poder usá-la para executar comandos que automatizam suas contas e espaços de trabalho do Azure Databricks.

Gorjeta

Você também pode usar o provedor Databricks Terraform ou o SDK do Databricks para Go junto com a autenticação de identidades gerenciadas do Azure para automatizar suas contas e espaços de trabalho do Azure Databricks executando código HCL ou Go. Consulte o SDK do Databricks para Go e a autenticação de identidades gerenciadas do Azure.

  1. Com o terminal ou prompt de comando ainda aberto e conectado à sua VM do Azure na Etapa 5, instale a CLI do Databricks executando os dois comandos a seguir:

    sudo apt install unzip
    curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sudo sh
    
  2. Confirme se a CLI do Databricks está instalada executando o seguinte comando, que imprime a versão instalada da CLI do Databricks:

    databricks -v
    

Etapa 8: Configurar a CLI do Databricks para autenticação de identidades gerenciadas do Azure

Nesta etapa, você configura a CLI do Databricks para usar a autenticação de identidades gerenciadas do Azure para o Azure Databricks com as configurações da sua identidade gerenciada. Para fazer isso, você cria um arquivo com um nome de arquivo padrão em um local padrão onde a CLI do Databricks espera encontrar as configurações de autenticação necessárias.

  1. Com o terminal ou prompt de comando ainda aberto e conectado à sua VM do Azure a partir da Etapa 5, use o vi editor de texto para criar e abrir um arquivo nomeado .databrickscfg para edição no diretório inicial do usuário conectado, executando o seguinte comando:

    vi ~/.databrickscfg
    
  2. Comece a editar o .databrickscfg arquivo pressionando a combinação Esc de teclas do editor seguida de i. O prompt de comando desaparece, o vi editor é iniciado e a palavra -- INSERT -- aparece na parte inferior do editor para indicar que o .databrickscfg arquivo está no modo de edição.

  3. Insira o seguinte conteúdo. Neste conteúdo, substitua os seguintes valores:

    • Substitua <account-console-url> pela URL do console da conta do Azure Databricks, como https://accounts.azuredatabricks.net.
    • Substitua <account-id> pela ID da sua conta do Azure Databricks. Consulte Localizar o ID da sua conta.
    • Substitua <azure-managed-identity-application-id> pelo valor de ID do Cliente para sua identidade gerenciada na Etapa 1.
    • Substitua <workspace-url> pelo URL por espaço de trabalho, por exemplo https://adb-1234567890123456.7.azuredatabricks.net.
    • Substitua <azure-workspace-resource-id> pela ID do recurso do Azure da Etapa 4.
    • Você pode substituir os nomes AZURE_MI_ACCOUNT de perfil de configuração sugeridos e AZURE_MI_WORKSPACE por nomes de perfil de configuração diferentes, se desejar. Estes nomes específicos não são necessários.

    Se não quiser executar operações no nível da conta, você pode omitir a [AZURE_MI_ACCOUNT] seção no conteúdo a seguir.

    [AZURE_MI_ACCOUNT]
    host            = <account-console-url>
    account_id      = <account-id>
    azure_client_id = <azure-managed-identity-application-id>
    azure_use_msi   = true
    
    [AZURE_MI_WORKSPACE]
    host                        = <workspace-url>
    azure_workspace_resource_id = <azure-workspace-resource-id>
    azure_client_id             = <azure-managed-identity-application-id>
    azure_use_msi               = true
    
  4. Salve suas edições no .databrickscfg arquivo pressionando a combinação Escde teclas do editor , seguido de digitar :wq, seguido de Enter. O vi editor fecha e o prompt de comando reaparece.

Etapa 9: Executar um comando no nível da conta

Nesta etapa, você usa a CLI do Databricks para executar um comando que automatiza a conta do Azure Databricks que foi configurada na Etapa 8.

Se você não quiser executar comandos no nível da conta, pule para a Etapa 10.

Com o terminal ou prompt de comando ainda aberto e conectado à sua VM do Azure na Etapa 5, execute o seguinte comando para listar todos os usuários disponíveis em sua conta do Azure Databricks. Se você renomeou AZURE_MI_ACCOUNT na Etapa 8, certifique-se de substituí-lo aqui.

databricks account users list -p AZURE_MI_ACCOUNT

Etapa 10: Executar um comando no nível do espaço de trabalho

Nesta etapa, você usa a CLI do Databricks para executar um comando que automatiza o espaço de trabalho do Azure Databricks que foi configurado na Etapa 8.

Com o terminal ou prompt de comando ainda aberto e conectado à sua VM do Azure na Etapa 5, execute o seguinte comando para listar todos os usuários disponíveis em seu espaço de trabalho do Azure Databricks. Se você renomeou AZURE_MI_WORKSPACE na Etapa 8, certifique-se de substituí-lo aqui.

databricks users list -p AZURE_MI_WORKSPACE

Passo 11: Limpar

Este passo é opcional. Ele exclui a VM do Azure para economizar custos e exclui a identidade gerenciada se você não quiser mais continuar usando-a. Esta etapa também remove a identidade gerenciada excluída da sua conta e espaço de trabalho do Azure Databricks para integridade.

Excluir a VM do Azure

  1. Se o terminal ou prompt de comando ainda estiver aberto e conectado à sua VM do Azure na Etapa 5, saia da VM do Azure executando o comando logout ou exit. O terminal ou prompt de comando muda de volta ao normal.
  2. No portal do Azure no qual você entrou na Etapa 1, retorne à página de visão geral da VM do Azure se a tiver fechado anteriormente. Para fazer isso, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da sua VM do Azure.
  3. Na barra de menus da página de visão geral da VM do Azure, clique em Excluir.
  4. Marque a caixa de seleção Li e compreendo e clique em Excluir.

Excluir a identidade gerenciada de sua assinatura do Azure

  1. No portal do Azure no qual você entrou na Etapa 1, retorne à página de visão geral da identidade gerenciada se a tiver fechado anteriormente. Para fazer isso, em Pesquisar recursos, serviços e documentos, pesquise e selecione o nome da sua identidade gerenciada.
  2. Na barra de menus da página de visão geral da identidade gerenciada, clique em Excluir.
  3. Marque a caixa de seleção Li e compreendo e clique em Excluir.

Remover a identidade gerenciada da sua conta do Azure Databricks

  1. Na sua conta do Azure Databricks, na barra lateral, clique em Gerenciamento de usuários.
  2. Clique na guia Entidades de serviço.
  3. Clique no nome da entidade de serviço que você adicionou na Etapa 2. Se o nome da entidade de serviço não estiver visível, use Filtrar entidades de serviço para localizá-lo.
  4. Clique no botão de reticências e, em seguida, clique em Excluir.
  5. Clique em Confirmar exclusão.

Remova a identidade gerenciada do seu espaço de trabalho do Azure Databricks

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador na barra superior e clique em Definições.
  2. Clique na guia Entidades de serviço.
  3. Clique no nome da entidade de serviço que você adicionou na Etapa 3. Se o nome da entidade de serviço não estiver visível, use Filtrar entidades de serviço para localizá-lo.
  4. Clique em Eliminar.
  5. Na caixa de diálogo de confirmação, clique em Excluir.