Conectar-se ao recurso do SQL do Azure com a autenticação do Microsoft Entra
Aplica-se a: Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics
Este artigo mostra como se conectar ao Banco de Dados SQL do Azure, à Instância Gerenciada de SQL do Azure e ao Azure Synapse Analytics usando a autenticação do Microsoft Entra.
Pré-requisitos
Para se conectar ao recurso SQL do Azure, você precisa ter configurado a autenticação do Microsoft Entra para o recurso.
Para confirmar que o administrador do Microsoft Entra está configurado corretamente, conecte-se ao banco de dados master
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 com uma identidade do Microsoft Entra que tenha 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 se conectar ao Banco de Dados SQL com uma identidade do Microsoft Entra usando o SQL Server Management Studio (SSMS) ou SQL Server Database Tools (SSDT).
Microsoft Entra Integrated
Use este método para entrar usando suas credenciais do Windows federadas no Microsoft Entra ID. Para obter mais informações, consulte Logon único sem problemas do Microsoft Entra.
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):
- Forneça o nome do servidor no formato
<server-name>.database.windows.net
. - Para Autenticação, selecione Microsoft Entra integrado. Não é necessário digitar uma senha porque suas credenciais existentes são apresentadas para a conexão.
- Para Criptografia, selecione Estrito (SQL Server 2022 e SQL do Azure), que deve ser usado para se conectar aos recursos do SQL do Azure.
- Forneça o nome do servidor no formato
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 esse método ao se conectar com um nome de 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, por exemplo, ao trabalhar remotamente.
Use esse método para fazer a autenticação no banco de dados do Banco de Dados SQL ou da Instância Gerenciada de SQL com usuários de identidade somente na nuvem do Microsoft Entra ou com aqueles que usam identidades híbridas do Microsoft Entra. Esse método dá suporte a usuários que desejam usar suas credenciais do Windows, mas o computador local não está conectado ao domínio (por exemplo, usando acesso remoto). Nesse caso, um usuário do Windows pode indicar sua conta de domínio e senha e fazer a autenticação no banco de dados do Banco de Dados SQL, da Instância Gerenciada de SQL ou do Azure Synapse.
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):
- Forneça o nome do servidor no formato
<server-name>.database.windows.net
. - Para Autenticação, selecione Senha do Microsoft Entra.
- 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. - Na caixa Senha, digite sua senha de usuário para a conta do Microsoft Entra ou conta de domínio gerenciado/federado.
- Para Criptografia, selecione Estrito (SQL Server 2022 e SQL do Azure), que deve ser usado para se conectar aos recursos do SQL do Azure.
- Forneça o nome do servidor no formato
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 esse método para autenticação interativa com a MFA (autenticação multifator), com a senha solicitada interativamente. Esse método pode ser usado para autenticar os bancos de dados do Banco de Dados SQL, da Instância Gerenciada de SQL ou do Azure Synapse Analytics para usuários de identidade somente na nuvem do Microsoft Entra ou para aqueles que usam identidades híbridas do Microsoft Entra.
As etapas a seguir mostram como se conectar usando autenticação multifator na última versão do SSMS.
Para se conectar usando MFA, na caixa de diálogo Conectar ao Servidor no SSMS, selecione Microsoft Entra MFA.
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
.Selecione Conectar.
Quando a caixa de diálogo Entrar na sua conta for exibida, ela deverá ser pré-preenchida com o nome de usuário fornecido na etapa 2. Nenhuma senha será necessária se um usuário fizer parte de um domínio federado com o Microsoft Entra ID.
Você será solicitado a autenticar usando um dos métodos configurados com base na configuração do administrador da MFA.
Quando a verificação for concluída, o SSMS se conectará normalmente considerando as credenciais válidas e o acesso ao firewall.
Entidade de Serviço do Microsoft Entra
Use esse método para se autenticar no no Banco de Dados SQL ou na Instância Gerenciada de SQL com entidades de serviço do Microsoft Entra (aplicativos Microsoft Entra). Para obter mais informações, consulte Entidade de serviço do Microsoft Entra com SQL do Azure.
Identidade gerenciada do Microsoft Entra
Use esse método para se autenticar no Banco de Dados SQL ou na Instância Gerenciada de SQL com identidades gerenciadas do Microsoft Entra. Para obter mais informações, confira Identidades gerenciadas no Microsoft Entra para o SQL do Azure.
Padrão do Microsoft Entra
A opção de autenticação Padrão com o Microsoft Entra ID permite a autenticação realizada 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 se conectar a um Banco de Dados SQL com uma identidade do Microsoft Entra de um aplicativo cliente. Esta não é uma lista abrangente de métodos de autenticação ao usar uma identidade do Microsoft Entra. Para obter mais informações, consulte Conectar-se ao Azure SQL com autenticação do Microsoft Entra e SqlClient.
Configurar aplicativos cliente
Observação
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, consulte Conectar-se ao SQL do Azure com a autenticação do Microsoft Entra e o SqlClient.
Se você precisar continuar usando ADAL.DLL em seus aplicativos, poderá usar 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 a máquinas cliente, a partir dos quais seus aplicativos ou usuários se conectam ao Banco de Dados SQL ou ao Azure Synapse Analytics usando identidades do Microsoft Entra, você deve instalar o software a seguir:
- .NET Framework 4.6 ou posterior.
- Biblioteca de Autenticação da Microsoft (MSAL) ou Biblioteca de Autenticação da Microsoft para SQL Server (ADAL.DLL). Veja abaixo os links de download para instalar o driver SSMS, ODBC e OLE DB mais recentes, contendo a biblioteca ADAL.DLL:
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 a autenticação integrada do Windows, o Active Directory do seu domínio deve ser federado com o Microsoft Entra ID, ou deve ser um domínio gerenciado, configurado para logon único contínuo para a autenticação de passagem ou de hash de senha. Para obter mais informações, consulte Logon único sem problemas do Microsoft Entra.
O aplicativo cliente (ou um serviço) que se conecta ao banco de dados deve estar em execução em um computador conectado ao domínio com as credenciais de domínio do usuário.
Para conectar-se a um banco de dados usando a autenticação integrada e uma identidade do Microsoft Entra, a palavra-chave Authentication
na cadeia de conexão de banco de dados deve ser definida como 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();
Para a conexão ao Banco de Dados SQL do Azure, não há suporte para a palavra-chave de cadeia de conexão Integrated Security=True
. Ao estabelecer uma conexão ODBC, você precisa remover espaços e definir a autenticação como ActiveDirectoryIntegrated
.
Autenticação por senha do Microsoft Entra
Para se conectar a um banco de dados usando contas de usuário de identidade somente na nuvem do Microsoft Entra, ou aqueles que usam identidades híbridas do Microsoft Entra, a palavra-chave de autenticação deve ser definida como Active Directory Password
. A cadeia de conexão deve conter valores e palavras-chave de ID/UID de Usuário 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 do Microsoft Entra usando os exemplos de código de demonstração disponíveis em Demonstração do GitHub de autenticação do Microsoft Entra.
Token de acesso do Microsoft Entra ID
Esse método de autenticação permite que os serviços de nível intermediário obtenham JWT (tokens Web JSON) para se conectar ao banco de dados do Banco de Dados SQL, da Instância Gerenciada de SQL ou do Azure Synapse, obtendo um token do Microsoft Entra. 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:
- Registre o aplicativo no Microsoft Entra ID e obtenha a ID do cliente para seu código.
- Crie um usuário de banco de dados que represente o aplicativo (conforme descrito na seção Criar usuários independentes mapeados para identidades do Microsoft Entra.)
- Crie um certificado no computador cliente que executa o aplicativo.
- 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 mais informações, confira Blog de segurança do SQL Server. 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 Microsoft Authentication Library (MSAL).
sqlcmd
As instruções a seguir estabelecem conexão usando a versão 13.1 do sqlcmd. Baixar Utilitários de Linha de Comando 14.0 da Microsoft para SQL Server.
Observação
sqlcmd
com o comando -G
não funciona com as identidades do sistema e requer um logon 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
Conectar editor de consultas do portal do Azure (Banco de Dados SQL do Azure)
Para obter mais informações sobre o editor de consultas do portal do Azure para Banco de Dados SQL do Azure, consulte Início Rápido: Usar o editor de consultas do portal do Azure para consultar o Banco de Dados SQL do Azure.
Navegue até o servidor do banco de dados SQL no portal do Azure. Por exemplo, visite seu painel do SQL do Azure.
Na página Visão geral do banco de dados SQL no portal do Azure, selecione Editor de consultas no menu à esquerda.
Na tela de início de sessão, em Bem-vindo ao Editor de Consultas do Banco de Dados SQL, selecione Continuar como <seu ID de usuário ou grupo>.
Conteúdo relacionado
- Autorizar acesso ao Banco de Dados SQL, à Instância Gerenciada de SQL e ao Azure Synapse Analytics
- Principals
- Funções de banco de dados
- Regra de firewall de IP do Banco de Dados SQL do Azure e do Azure Synapse
- Criar usuários convidados do Microsoft Entra e configurá-los como administradores do Microsoft Entra
- Tutorial: criar usuários do Microsoft Entra usando aplicativos do Microsoft Entra