Pular para o conteúdo principal

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

Esta página descreve como configurar Databricks lakehouse Federation para executar consultas federadas no Microsoft SQL Server usando a autenticação Microsoft Entra ID. Os fluxos OAuth de usuário para máquina (U2M) e de máquina para máquina (M2M) são suportados.

Fluxos OAuth suportados

  • U2M : Autentique usando uma account Microsoft . O usuário é solicitado a fazer login usando um URI de redirecionamento, e o access token é emitido para o usuário.
  • M2M : Autentique usando uma entidade de serviço. O access token é emitido para o aplicativo e não para um usuário específico.

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

Antes de começar

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

  • Acesso a inscrição Azure e permissões para registro de pedidos no Microsoft Entra ID.
  • Acesso de administrador à sua instância do SQL Server para criar entidades Entra.

registrar 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 aplicativos > Novo registro .

  3. Digite 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 (entidade de serviço) , deixe o URI de redirecionamento vazio.
  4. Clique em Registrar .

  5. Copie o ID do aplicativo (cliente) e o ID do diretório (tenant) .

  6. Navegue até Certificados e segredos > Novo segredo do cliente .

  7. Salve o valor secreto gerado.

Atribuir permissões ao aplicativo

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

  1. Navegue até Permissões de API > Adicionar uma permissão .
  2. Selecione Banco de Dados SQL do Azure > user_impersonation (Permissões delegadas).
  3. Para M2M, certifique-se de que o aplicativo tenha as permissões necessárias para autenticação da entidade de serviço.
  4. Para autenticação M2M na instância Azure SQL gerenciar, certifique-se de ter atribuído a identidade da instância do gerenciar à função "Leitores de diretório".

Crie uma entidade de serviço no SQL Server (somente M2M)

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

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

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

    SQL
    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:

Crie uma conexão

No workspace Databricks , faça o seguinte:

  1. Na barra lateral, clique em Catálogo > Adicionar > Adicionar uma conexão .

  2. Para Tipo de conexão , selecione SQL Server .

  3. Para Tipo de autenticação , selecione OAuth (U2M) ou OAuth Máquina para Máquina (M2M).

  4. Insira as seguintes propriedades de conexão:

    • Host : hostname SQL Server .

    • Porta : porta do SQL Server.

    • Usuário : Para U2M, seu usuário account Microsoft . Para M2M, o nome da entidade de serviço.

    • Digite o ID do cliente e o segredo do cliente do registro do aplicativo Entra.

    • Insira o ponto de extremidade 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 o escopo OAuth , insira https://database.windows.net/.default offline_access (somente U2M).

  5. Para U2M, clique em Entrar com o Azure Entra ID e conclua o fluxo de autenticação.

  6. Clique em Criar conexão e prossiga para a criação do catálogo.

Próximos passos

Agora que a conexão com SQL Server foi criada, veja como executar consultas federadas no Microsoft SQL Server para criar um catálogo externo e consultar seus dados.