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

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

Note

Os principais de servidor do Microsoft Entra estão atualmente em pré-visualização para o Azure Synapse Analytics.

Prerequisites

Para estabelecer ligação, precisa de configurar a autenticação Microsoft Entra para o seu recurso Azure Synapse.

Para confirmar que o administrador da Microsoft Entra está devidamente configurado, ligue-se à master base de dados usando a conta de administrador da Microsoft Entra.

Para criar um utilizador de base de dados contida baseado no Microsoft Entra, ligue-se à base de dados usando uma identidade Microsoft Entra com acesso à base de dados e pelo menos a ALTER ANY USER permissão.

Conecte-se com SSMS ou SSDT

Os procedimentos seguintes mostram-lhe como ligar-se ao Synapse SQL com uma identidade Microsoft Entra utilizando o SQL Server Management Studio (SSMS) ou o SQL Server Database Tools (SSDT).

Microsoft Entra Integrado

Use este método quando quiser iniciar sessão, utilizando as suas credenciais do Windows que estão federadas para o Microsoft Entra ID. Para obter mais informações, consulte Microsoft Entra seamless single sign-on.

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

    1. Introduza o nome do servidor totalmente qualificado para o seu endpoint SQL. Para formatos de endpoint, veja Ligar ao Synapse SQL.
    2. Em Autenticação, selecione Microsoft Entra Integrado. Não precisas de introduzir uma palavra-passe porque as tuas credenciais existentes são usadas para a ligação.
    3. Para Encriptação, selecione Estrito.
  2. Na guia Propriedades da conexão , no campo Conectar ao banco de dados , digite o nome do banco de dados do usuário ao qual você deseja se conectar.

Palavra-passe do Microsoft Entra

Use este método ao estabelecer ligação com um nome da entidade principal do Microsoft Entra, utilizando o domínio gerido do Microsoft Entra. Também pode usá-lo para contas federadas sem acesso ao domínio quando, por exemplo, está a trabalhar remotamente.

Use este método para autenticar no Synapse SQL com utilizadores com identidades apenas na cloud do Microsoft Entra ou utilizadores que tenham identidades híbridas do Microsoft Entra. Este método suporta utilizadores que querem usar a sua credencial Windows quando a sua máquina local não está ligada ao domínio, como ao usar acesso remoto.

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

    1. Introduza o nome do servidor totalmente qualificado para o seu endpoint SQL. Para os formatos de endpoint, veja Ligar ao Synapse SQL.
    2. Em 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. Encriptação, selecione Estrito.
  2. Na guia Propriedades da conexão , no campo Conectar ao banco de dados , digite o nome do banco de dados do usuário ao qual você deseja se conectar.

Microsoft Entra MFA

Use este método para autenticação interativa com autenticação multifator (MFA), com a palavra-passe solicitada de forma interativa. Este método pode ser usado para autenticar no Synapse SQL utilizadores com identidade apenas na cloud do Microsoft Entra ou utilizadores que tenham identidades híbridas do Microsoft Entra.

Os passos seguintes mostram como se ligar usando autenticação multifator na versão mais recente do SSMS.

  1. Para ligar com MFA, na caixa de diálogo Ligar 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 aparece a caixa de diálogo Iniciar sessão na sua conta , está pré-preenchida com o nome de utilizador que forneceu no passo 2. Nenhuma senha é 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 de MFA.

  6. Quando a verificação é concluída, o SSMS se conecta normalmente, presumindo credenciais válidas e acesso ao firewall.

Microsoft Entra Service Principal

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

Identidade gerenciada do Microsoft Entra

Use este método para autenticar no Synapse SQL com identidades geridas pela Microsoft Entra. Para mais informações, consulte Identidades Geridas no Microsoft Entra para Azure Synapse Analytics.

Microsoft Entra Padrão

A opção de autenticação por defeito com o Microsoft Entra ID permite a autenticação através de mecanismos sem palavra-passe e não interativos, incluindo identidades geridas.

Conectar-se a partir de um aplicativo cliente

Os procedimentos seguintes mostram-lhe como se ligar ao Synapse SQL com uma identidade Microsoft Entra a partir de uma aplicação cliente. Esta lista não inclui todos os métodos de autenticação. Para mais informações, consulte autenticação Microsoft Entra e SqlClient.

Configurar seus aplicativos cliente

Note

System.Data.SqlClient usa a Biblioteca de Autenticação do Ative Directory do Azure (ADAL), que foi preterida. Se você estiver usando o namespace System.Data.SqlClient para autenticação do Microsoft Entra, migre aplicativos para Microsoft.Data.SqlClient e a Biblioteca de Autenticação da Microsoft (MSAL). Para compreender os métodos de ligação disponíveis em .NET, consulte autenticação Microsoft Entra e SqlClient.

Se tiver de continuar a usar ADAL.DLL nas suas aplicações, utilize os links nesta secçã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 a partir das quais as suas aplicações ou utilizadores se ligam ao Azure Synapse Analytics usando identidades Microsoft Entra, instale o seguinte software:

Você pode atender a esses requisitos:

  • Instalando a versão mais recente do SQL Server Management Studio ou do SQL Server Data Tools para atender ao requisito 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 mais recente Visual Studio dos Visual Studio Downloads 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 a autenticação integrada do Windows, o Active Directory do seu domínio deve estar federado com o Microsoft Entra ID, ou ser um domínio gerido configurado para início de sessão único contínuo para autenticação pass-through ou hash por palavra-passe. Para obter mais informações, consulte Microsoft Entra seamless single sign-on.

Para se ligar à base de dados, uma aplicação (ou serviço) deve ser executada numa máquina associada ao domínio sob as credenciais de domínio do utilizador.

Para se ligar a uma base de dados usando autenticação integrada e uma identidade Microsoft Entra, defina a Authentication palavra-chave na cadeia de ligação da base de dados para Active Directory Integrated. Substitua <server_name> pelo nome do servidor lógico. O exemplo de código C# a seguir usa o 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 ligação não é suportada para ligação ao Synapse SQL. Ao fazer uma ligação ODBC, remova espaços e defina a autenticação para ActiveDirectoryIntegrated.

Autenticação de senha do Microsoft Entra

Para se ligar a uma base de dados usando contas de utilizador com identidade cloud exclusiva da Microsoft Entra, ou utilizadores que utilizam identidades híbridas Microsoft Entra, defina a palavra-chave Autenticação para Active Directory Password. A cadeia de conexão deve conter as palavras-chave e valores ID de usuárioUID e senha/PWD. Substitua <server_name>, <email_address> e <password> pelos valores apropriados. O exemplo de código C# a seguir usa o 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 Microsoft Entra utilizando os exemplos de código de demonstração disponíveis no Microsoft Entra authentication GitHub Demo.

Token de acesso do Microsoft Entra ID

Este método de autenticação permite que serviços de nível intermédio obtenham JSON Web Tokens (JWT) do Microsoft Entra ID para se ligarem ao Synapse SQL através da obtenção de 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 autenticação baseada em certificado. Você deve concluir quatro etapas básicas para usar a autenticação de token do Microsoft Entra:

  1. Registe a sua aplicação com o Microsoft Entra ID e obtenha o ID de cliente para o seu código.
  2. Crie um usuário de banco de dados representando 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 executa a aplicação.
  4. Adicione o certificado como uma chave para o seu aplicativo.

Exemplo de cadeia de conexão. Substitua <server-name> pelo 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 suportado para todas as ferramentas SQL. Para obter informações sobre a autenticação programática com o Microsoft Entra ID, consulte a Visão geral da Biblioteca de Autenticação da Microsoft (MSAL).

sqlcmd

As seguintes declarações ligam-se usando a versão 13.1 do sqlcmd. Baixe o Microsoft Command Line Utilities 14.0 para SQL Server.

Note

sqlcmd com o comando não funciona com identidades do -G sistema e requer um login principal do 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