Compartilhar via


Configurar a ID do Microsoft Entra para federação do SQL Server

Esta página descreve como configurar a Federação do Databricks Lakehouse para executar consultas federadas no Microsoft SQL Server usando a autenticação da ID do Microsoft Entra. Há suporte para os fluxos OAuth do usuário para o computador (U2M) e do computador para o computador (M2M).

Fluxos OAuth com suporte

  • U2M: autenticar usando uma conta da Microsoft. O usuário é solicitado a entrar usando um URI de redirecionamento e o token de acesso é emitido para o usuário.
  • M2M: Autentique usando um principal de serviço. O token de acesso é emitido para o aplicativo em vez de para um usuário específico.

No workspace do Databricks, o OAuth refere-se à autenticação U2M e OAuth Machine to Machine refere-se à autenticação M2M.

Antes de começar

Antes de executar consultas federadas no SQL Server usando a ID do Entra, você deve ter o seguinte:

  • Acesso a uma assinatura do Azure e permissões para registrar aplicativos na ID do Microsoft Entra.
  • Acesso de administrador à instância do SQL Server para criar principais Entra.

Registre um aplicativo no Microsoft Entra ID

Para criar um registro de aplicativo para autenticação, faça o seguinte:

  1. Entre no portal do Azure.
  2. Navegue até Microsoft Entra ID>registros de aplicativo>Nova inscrição.
  3. Insira um nome para seu aplicativo.
    • Para U2M (OAuth), defina o URI de redirecionamento para o seguinte: https://<workspace-url>/login/oauth/azure.html
    • Para M2M (Service Principal), deixe o URI de redirecionamento vazio.
  4. Clique em Registrar.
  5. Copie a ID do aplicativo (client) e a ID do diretório (tenant).
  6. Navegue até Certificados &segredos>Novo segredo do cliente.
  7. Salve o valor do segredo gerado.

Atribuir permissões ao aplicativo

Para permitir que o aplicativo se autentique no SQL Server, atribua as permissões de API necessárias:

  1. Navegue para Permissões de API>Adicionar uma permissão.
  2. Selecioneuser_impersonation do Banco > de Dados SQL do Azure(permissões delegadas).
  3. Para M2M, verifique se o aplicativo tem as permissões necessárias para autenticação da entidade de serviço.
  4. Para autenticação M2M na Instância Gerenciada de SQL do Azure, verifique se você atribuiu a identidade da instância gerenciada à função "Leitores de Diretório".

Crie um principal de serviço no SQL Server (somente M2M)

  1. Conecte-se à instância do SQL Server usando suas credenciais de logon do Entra ID. Você deve ter permissões para criar um novo usuário.

  2. Crie um novo logon e um usuário para o aplicativo Entra.

  3. Conceda permissões de leitura ao usuário.

    CREATE LOGIN [<app_name>] FROM EXTERNAL PROVIDER;
    CREATE USER [<app_name>] FROM LOGIN [<app_name>];
    ALTER ROLE db_datareader ADD MEMBER [<app_name>];
    

Para obter detalhes e cenários avançados, consulte as seguintes páginas na documentação da Microsoft:

Criar uma conexão

No workspace do Databricks, faça o seguinte:

  1. Na barra lateral, clique em Adicionar Catálogo>adicionar>uma conexão.
  2. Para o tipo de conexão, selecione SQL Server.
  3. Para o tipo de autenticação, selecione OAuth (U2M) ou OAuth Machine to Machine (M2M).
  4. Insira as seguintes propriedades de conexão:
    • Host: nome do host do SQL Server.
    • Porta: porta do SQL Server.
    • Usuário: Para U2M, seu usuário de conta da Microsoft. Para M2M, o nome principal de serviço.
    • Insira a ID do cliente e o segredo do cliente do registro do aplicativo Entra.
    • Insira o endpoint de autorização:
      • U2M: https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize
      • M2M: https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
    • Para escopo do OAuth, insira https://database.windows.net/.default offline_access (somente para U2M).
  5. Para U2M, clique em Entrar com a ID do Azure Entra e conclua o fluxo de autenticação.
  6. Clique em Criar conexão e prossiga para a criação do catálogo.

Próximas etapas

Agora que a conexão com o SQL Server foi criada, você pode: