Conecte-se ao Azure Synapse Analytics com autenticação Microsoft Entra

Este artigo mostra como usar a autenticação Microsoft Entra para se conectar ao Azure Synapse Analytics.

Note

As entidades de segurança do servidor do Microsoft Entra estão atualmente em versão prévia para o Azure Synapse Analytics.

Prerequisites

Para se conectar, você precisa configurar a autenticação Microsoft Entra para o seu recurso Azure Synapse.

Para confirmar que o administrador do Microsoft Entra está configurado corretamente, conecte-se ao master banco de dados usando a conta de administrador do Microsoft Entra.

Para criar um usuário de banco de dados contido baseado no Microsoft Entra, conecte-se ao banco de dados usando uma identidade Microsoft Entra com acesso ao banco de dados e pelo menos a permissão ALTER ANY USER.

Conectar-se com SSMS ou SSDT

Os procedimentos a seguir mostram como conectar ao Synapse SQL com uma identidade Microsoft Entra usando o SQL Server Management Studio (SSMS) ou o SQL Server Database Tools (SSDT).

Microsoft Entra Integrado

Use esse método quando quiser fazer login usando suas credenciais do Windows que são federadas no Microsoft Entra ID. Para obter mais informações, consulte Logon único sem problemas do Microsoft Entra.

  1. Inicie o SSMS ou o SSDT e, na guia Logon da caixa de diálogo Conectar ao Servidor (ou Conectar ao Mecanismo de Banco de Dados):

    1. Insira o nome do servidor totalmente qualificado para seu endpoint SQL. Para formatos de endpoint, veja Connect to Synapse SQL.
    2. Para Autenticação, selecione Microsoft Entra integrado. Você não precisa digitar uma senha porque suas credenciais existentes são usadas para a conexão.
    3. Para Criptografia, selecione Estrito.
  2. Na guia Propriedades da conexão, no campo Conectar-se ao banco de dados, digite o nome do banco de dados do usuário ao qual você deseja se conectar.

Senha do Microsoft Entra

Use este método ao se conectar com um nome da entidade de segurança do Microsoft Entra usando o domínio gerenciado do Microsoft Entra. Você também pode usá-lo para contas federadas sem acesso ao domínio quando, por exemplo, estiver trabalhando remotamente.

Use este método para autenticar no Synapse SQL com usuários com identidades somente na nuvem do Microsoft Entra ou usuários que possuem identidades híbridas do Microsoft Entra. Esse método suporta usuários que desejam usar sua credencial do Windows quando sua máquina local não está associada ao domínio, como ao usar acesso remoto.

  1. Inicie o SSMS ou o SSDT e na guia Logon da caixa de diálogo Conectar ao Servidor (ou Conectar ao Mecanismo de Banco de Dados):

    1. Insira o nome do servidor totalmente qualificado para seu endpoint SQL. Para formatos de endpoint, veja Conectar ao Synapse SQL.
    2. Para Autenticação, selecione Senha do Microsoft Entra.
    3. Na caixa Nome de usuário, digite seu nome de usuário do Microsoft Entra no formato username@domain.com. Os nomes de usuário devem ser uma conta do Microsoft Entra ID ou uma conta de um domínio gerenciado ou federado com o Microsoft Entra ID.
    4. Na caixa Senha, digite sua senha de usuário para a conta do Microsoft Entra ou conta de domínio gerenciado/federado.
    5. Para Encryption, selecione Strict.
  2. Na guia Propriedades da conexão, no campo Conectar-se ao banco de dados, digite o nome do banco de dados do usuário ao qual você deseja se conectar.

MFA do Microsoft Entra

Use este método para autenticação interativa com autenticação multifator (MFA), com a senha solicitada de forma interativa. Esse método pode ser usado para autenticar no Synapse SQL usuários de identidade somente em nuvem do Microsoft Entra ou usuários que possuem identidades híbridas do Microsoft Entra.

Os passos a seguir mostram como se conectar usando autenticação multifator na versão mais recente do SSMS.

  1. Para se conectar usando MFA, na caixa de diálogo Conectar ao Servidor no SSMS, selecione Microsoft Entra MFA.

  2. Preencha a caixa Nome do servidor com o nome do servidor. Preencha a caixa Nome de usuário com suas credenciais do Microsoft Entra, no formato user_name@domain.com.

  3. Selecione Conectar.

  4. Quando a caixa de diálogo Entrar na sua conta aparece, ela está pré-preenchida com o nome de usuário que você forneceu na etapa 2. Nenhuma senha será necessária se um usuário fizer parte de um domínio federado com o Microsoft Entra ID.

  5. Você será solicitado a autenticar usando um dos métodos configurados com base na configuração do administrador da MFA.

  6. Quando a verificação for concluída, o SSMS se conectará normalmente considerando as credenciais válidas e o acesso ao firewall.

Principal de Serviço do Microsoft Entra

Use este método para autenticar no Synapse SQL com entidades de serviço do Microsoft Entra.

Identidade gerenciada da Microsoft Entra

Use este método para autenticar no SQL Synapse com identidades gerenciadas pelo Microsoft Entra. Para mais informações, veja Identidades gerenciadas no Microsoft Entra para Azure Synapse Analytics.

Padrão do Microsoft Entra

A opção de autenticação padrão com Microsoft Entra ID permite autenticação por meio de mecanismos sem senha e não interativos, incluindo identidades gerenciadas.

Conectar-se a partir de aplicativo cliente

Os procedimentos a seguir mostram como conectar ao Synapse SQL com uma identidade Microsoft Entra a partir de um aplicativo cliente. Esta lista não inclui todos os métodos de autenticação. Para mais informações, veja autenticação Microsoft Entra e SqlClient.

Configurar aplicativos cliente

Note

System.Data.SqlClient usa a ADAL (Biblioteca de Autenticação do Azure Active Directory), que será preterida. Se você estiver usando o namespace System.Data.SqlClient para autenticação do Microsoft Entra, migre os aplicativos para Microsoft.Data.SqlClient e para a MSAL (Biblioteca de Autenticação da Microsoft). Para entender os métodos de conexão disponíveis no .NET, veja autenticação Microsoft Entra e SqlClient.

Se você precisar continuar usando ADAL.DLL em suas aplicações, utilize os links nesta seção para instalar o driver ODBC ou OLE DB mais recente, que contém a biblioteca ADAL.DLL mais recente.

Em todas as máquinas clientes das quais seus aplicativos ou usuários se conectam ao Azure Synapse Analytics usando identidades Microsoft Entra, instale o seguinte software:

Você pode atender a esses requisitos:

  • A instalação da versão mais recente do SQL Server Management Studio ou do SQL Server Data Tools atende aos requisitos do .NET Framework 4.6.
    • O SSMS instala a versão x86 do ADAL.DLL.
    • O SSDT instala a versão amd64 do ADAL.DLL.
    • O Visual Studio mais recente dos downloads do Visual Studio atende ao requisito do .NET Framework 4.6, mas não instala a versão amd64 necessária do ADAL.DLL.

Autenticação integrada do Microsoft Entra

Para usar autenticação do Windows integrada, o Active Directory do seu domínio deve estar federado com o Microsoft Entra ID, ou ser um domínio gerenciado configurado para login único contínuo para autenticação pass-through ou hash de senha. Para obter mais informações, consulte Logon único sem problemas do Microsoft Entra.

Para se conectar ao banco de datos, uma aplicação (ou serviço) deve rodar em uma máquina ingressada no domínio usando as credenciais de domínio do usuário.

Para conectar a um banco de dados usando autenticação integrada e uma identidade Microsoft Entra, defina a Authentication palavra-chave na cadeia de conexão do banco de dados para Active Directory Integrated. Substitua <server_name> pelo seu nome do servidor lógico. O exemplo de código em C# a seguir usa ADO .NET.

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

A palavra-chave Integrated Security=True cadeia de conexão não é suportada para conexão com Synapse SQL. Ao fazer uma conexão ODBC, remova espaços e defina a autenticação para ActiveDirectoryIntegrated.

Autenticação por senha do Microsoft Entra

Para se conectar a um banco de dados usando contas de usuário com identidade somente em nuvem do Microsoft Entra, ou usuários que usam identidades híbridas do Microsoft Entra, defina a palavra-chave Autenticação para Active Directory Password. A string de conexão deve conter as palavras-chave e valores de User ID/UID e Senha/PWD. Substitua <server_name>, <email_address> e <password> pelos valores apropriados. O exemplo de código em C# a seguir usa ADO .NET.

string ConnectionString =
@"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; UID=<email_address>; PWD=<password>";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Saiba mais sobre métodos de autenticação da Microsoft Entra usando os exemplos de código de demonstração disponíveis no Microsoft Entra authentication GitHub Demo.

Token de acesso do Microsoft Entra ID

Esse método de autenticação permite que serviços de nível intermediário obtenham JSON Web Tokens (JWT) do Microsoft Entra ID para se conectar ao Synapse SQL ao obter um token do Microsoft Entra ID. Esse método permite vários cenários de aplicativo, incluindo identidades de serviço, entidades de serviço e aplicativos que usam a autenticação baseada em certificado. Você precisa concluir quatro etapas básicas para usar a autenticação de token do Microsoft Entra:

  1. Registre o aplicativo no Microsoft Entra ID e obtenha a ID do cliente para seu código.
  2. Crie um usuário de banco de dados que represente o aplicativo (conforme descrito na seção Criar usuários contidos mapeados para identidades do Microsoft Entra).
  3. Crie um certificado no computador cliente que roda a aplicação.
  4. Adicionar o certificado como uma chave para seu aplicativo.

Exemplo de cadeia de conexão. Substitua <server-name> pelo seu nome do servidor lógico:

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.AccessToken = "Your JWT token";
conn.Open();

Para obter informações sobre como adicionar um certificado, consulte Introdução à autenticação baseada em certificado no Microsoft Entra ID.

Autenticação multifator do Microsoft Entra

A autenticação multifator do Microsoft Entra é um método de autenticação com suporte para todas as ferramentas de SQL. Para obter informações sobre como autenticar programaticamente com o Microsoft Entra, consulte a Visão geral da Biblioteca do Microsoft Authenticator (MSAL).

sqlcmd

As seguintes instruções se conectam por meio da versão 13.1 do sqlcmd. Baixar Utilitários de Linha de Comando 14.0 da Microsoft para SQL Server.

Note

sqlcmd com o comando -G não funciona com identidades de sistema e requer login de usuário.

sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -G
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -U adrian@contoso.com -P <password> -G -l 30