Utilize a autenticação do Microsoft Entra

Aplica-se a:Banco de Dados SQL do Azure Azure SQLManaged InstanceAzure Synapse Analytics

Este artigo fornece uma visão geral do uso do Microsoft Entra ID (anteriormente Azure Ative Directory) para autenticar no Banco de Dados SQL do Azure, Instância Gerenciada SQL do Azure, SQL Server em VMs do Windows Azure, Synapse SQL no Azure Synapse Analytics e SQL Server para Windows e Linux.

Para saber como criar e preencher a ID do Microsoft Entra e, em seguida, configurar a ID do Microsoft Entra com o Banco de Dados SQL do Azure, a Instância Gerenciada SQL do Azure e o Synapse SQL no Azure Synapse Analytics, revise Configurar a ID do Microsoft Entra e a ID do Microsoft Entra com o SQL Server em VMs do Azure.

Nota

Microsoft Entra ID é o novo nome para o Azure Ative Directory (Azure AD). Estamos atualizando a documentação neste momento.

Descrição geral

Com a autenticação do Microsoft Entra, pode gerir de forma centralizada as identidades dos utilizadores da base de dados e outros serviços Microsoft numa única localização central. A gestão de IDs centralizada disponibiliza um único local para gerir utilizadores da base de dados e simplifica a gestão de permissões. Os benefícios incluem o seguinte:

  • Ele fornece uma alternativa à autenticação do SQL Server.

  • Ele ajuda a impedir a proliferação de identidades de usuários entre servidores.

  • Ele permite a rotação de senha em um único lugar.

  • Os clientes podem gerenciar permissões de banco de dados usando grupos do Microsoft Entra.

  • Ele pode eliminar o armazenamento de senhas habilitando a autenticação integrada do Windows e outras formas de autenticação suportadas pelo Microsoft Entra ID.

  • A autenticação do Microsoft Entra usa usuários de banco de dados contidos para autenticar identidades no nível do banco de dados.

  • O Microsoft Entra ID oferece suporte à autenticação baseada em token para aplicativos que se conectam ao Banco de Dados SQL e à Instância Gerenciada do SQL.

  • A autenticação do Microsoft Entra suporta:

    • Identidades somente na nuvem do Microsoft Entra.
    • Identidades híbridas do Microsoft Entra que suportam:
      • Autenticação na nuvem com duas opções combinadas com autenticação de passagem de logon único (SSO) contínua e autenticação de hash de senha.
      • Autenticação federada.
    • Para obter mais informações sobre os métodos de autenticação do Microsoft Entra e qual escolher, consulte o seguinte artigo:
  • O SQL Server Management Studio dá suporte a conexões que usam o Microsoft Entra com autenticação multifator. A autenticação multifator fornece autenticação forte com uma variedade de opções de verificação fáceis — chamada telefônica, mensagem de texto, cartões inteligentes com PIN ou notificação de aplicativo móvel. Para obter mais informações, consulte Suporte do SSMS para autenticação multifator do Microsoft Entra com o Banco de Dados SQL do Azure, a Instância Gerenciada do SQL e o Azure Synapse

  • O SSDT (SQL Server Data Tools) também oferece suporte a uma ampla gama de opções de autenticação com o Microsoft Entra ID. Para obter mais informações, consulte Suporte ao Microsoft Entra ID no SSDT (SQL Server Data Tools).

As etapas de configuração incluem os seguintes procedimentos para configurar e usar a autenticação do Microsoft Entra.

  1. Crie e preencha um locatário do Microsoft Entra.
  2. Opcional: associe ou altere o diretório atual associado à sua Assinatura do Azure.
  3. Crie um administrador do Microsoft Entra.
  4. Configure os computadores clientes.
  5. Crie usuários de banco de dados contidos em seu banco de dados mapeado para identidades do Microsoft Entra.
  6. Conecte-se ao seu banco de dados com identidades do Microsoft Entra.

Nota

Para SQL do Azure, VMs do Azure e SQL Server 2022, a autenticação do Microsoft Entra dá suporte apenas a tokens de acesso originários da ID do Microsoft Entra e não oferece suporte a tokens de acesso de terceiros. O Microsoft Entra ID também não oferece suporte ao redirecionamento de consultas do Microsoft Entra ID para pontos de extremidade de terceiros. Isso se aplica a todas as plataformas SQL e todos os sistemas operacionais que oferecem suporte à autenticação Microsoft Entra.

Arquitetura de confiança

  • Apenas a parte da nuvem do Microsoft Entra ID, Banco de Dados SQL, Instância Gerenciada SQL, SQL Server em VMs do Windows Azure e Azure Synapse é considerada compatível com senhas de usuário nativas do Microsoft Entra.
  • Para oferecer suporte a credenciais de logon único do Windows (ou usuário/senha para credenciais do Windows), use as credenciais do Microsoft Entra de um domínio federado ou gerenciado configurado para logon único contínuo para autenticação de hash de passagem e senha. Para mais informações, consulte Início de sessão único totalmente integrado no Microsoft Entra.
  • Para dar suporte à autenticação federada (ou usuário/senha para credenciais do Windows), a comunicação com o bloco ADFS é necessária.

Para obter mais informações sobre identidades híbridas do Microsoft Entra, a instalação e sincronização, consulte os seguintes artigos:

Para obter um exemplo de autenticação federada com infraestrutura ADFS (ou usuário/senha para credenciais do Windows), consulte o diagrama abaixo. As setas indicam vias de comunicação.

Diagram of Microsoft Entra authentication for Azure SQL.

O diagrama a seguir indica as relações de federação, confiança e hospedagem que permitem que um cliente se conecte a um banco de dados enviando um token. O token é autenticado pelo ID do Microsoft Entra e é confiável pelo banco de dados. O Cliente 1 pode representar o Microsoft Entra ID com usuários nativos ou o Microsoft Entra ID com usuários federados. O Cliente 2 representa uma possível solução incluindo usuários importados, neste exemplo proveniente de uma ID federada do Microsoft Entra com ADFS sendo sincronizado com a ID do Microsoft Entra. É importante entender que o acesso a um banco de dados usando a autenticação do Microsoft Entra requer que a assinatura de hospedagem esteja associada à ID do Microsoft Entra. A mesma assinatura deve ser usada para criar o Banco de Dados SQL do Azure, a Instância Gerenciada do SQL ou os recursos do Azure Synapse.

Diagram shows the relationship between subscriptions in the Microsoft Entra configuration.

Estrutura do administrador

Ao usar a autenticação do Microsoft Entra, há duas contas de Administrador: o administrador original do Banco de Dados SQL do Azure e o administrador do Microsoft Entra. Os mesmos conceitos se aplicam ao Azure Synapse. Somente o administrador baseado em uma conta do Microsoft Entra pode criar o primeiro usuário do banco de dados contido do Microsoft Entra ID em um banco de dados de usuário. O login de administrador do Microsoft Entra pode ser um usuário do Microsoft Entra ou um grupo do Microsoft Entra. Quando o administrador é uma conta de grupo, ela pode ser usada por qualquer membro do grupo, habilitando vários administradores do Microsoft Entra para o servidor. Usar uma conta de grupo como administrador melhora a capacidade de gerenciamento, permitindo que você adicione e remova membros do grupo centralmente na ID do Microsoft Entra sem alterar os usuários ou permissões no Banco de Dados SQL ou na Sinapse do Azure. Apenas um administrador do Microsoft Entra (um usuário ou grupo) pode ser configurado a qualquer momento.

Diagram shows the administrator structure for Microsoft Entra ID used with SQL Server.

Nota

A autenticação do Microsoft Entra com o SQL do Azure dá suporte apenas ao único locatário do Microsoft Entra onde o recurso SQL do Azure reside atualmente. Todos os objetos do Microsoft Entra deste locatário podem ser configurados como usuários que permitem acesso ao SQL do Azure neste locatário. O administrador do Microsoft Entra também deve ser do locatário do recurso SQL do Azure. Não há suporte para autenticação multilocatária do Microsoft Entra acessando o Azure SQL de locatários diferentes.

Permissões

Para criar novos usuários, você deve ter a ALTER ANY USER permissão no banco de dados. A ALTER ANY USER permissão pode ser concedida a qualquer usuário do banco de dados. A ALTER ANY USER permissão também é mantida pelas contas de administrador do servidor e pelos usuários do banco de dados com a CONTROL ON DATABASE permissão ou ALTER ON DATABASE para esse banco de dados e pelos membros da db_owner função de banco de dados.

Para criar um usuário de banco de dados contido no Banco de Dados SQL do Azure, na Instância Gerenciada SQL do Azure ou no Azure Synapse, você deve se conectar ao banco de dados ou instância usando uma identidade do Microsoft Entra. Para criar o primeiro usuário de banco de dados contido, você deve se conectar ao banco de dados usando um administrador do Microsoft Entra (que é o proprietário do banco de dados). Isso é demonstrado em Configurar e gerenciar a autenticação do Microsoft Entra com o Banco de Dados SQL ou o Azure Synapse. A autenticação do Microsoft Entra só é possível se o administrador do Microsoft Entra tiver sido criado para o Banco de Dados SQL do Azure, a Instância Gerenciada SQL do Azure ou o Azure Synapse. Se o administrador do Microsoft Entra foi removido do servidor, os usuários existentes do Microsoft Entra criados anteriormente dentro do servidor não poderão mais se conectar ao banco de dados usando suas credenciais do Microsoft Entra.

Recursos e limitações do Microsoft Entra

  • Os seguintes membros do Microsoft Entra ID podem ser provisionados para o Banco de Dados SQL do Azure:

    • Membros nativos: um membro criado no Microsoft Entra ID no domínio gerenciado ou em um domínio do cliente. Para obter mais informações, consulte Adicionar seu próprio nome de domínio ao Microsoft Entra ID.
    • Membros de um domínio do Ative Directory federado com o Microsoft Entra ID em um domínio gerenciado configurado para logon único contínuo com autenticação de hash de passagem ou senha. Para obter mais informações, consulte Federação com ID do Microsoft Entra e logon único contínuo do Microsoft Entra.
    • Usuários convidados, um recurso da ID Externa do Microsoft Entra que permite convidar usuários para seu locatário do Microsoft Entra a partir de contas de fora do locatário do Microsoft Entra.
    • Grupos do Ative Directory criados como grupos de segurança.
  • Os usuários do Microsoft Entra que fazem parte de um grupo que é membro da função de banco de dados não podem usar a sintaxe CREATE DATABASE SCOPED CREDENTIAL no Banco de db_owner Dados SQL do Azure e na Sinapse do Azure. Você verá o seguinte erro:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either doesn't exist or you do not have permission to use it.

    Para atenuar o problema CREATE DATABASE SCOPED CREDENTIAL , adicione o usuário individual do Microsoft Entra à db_owner função diretamente.

  • Essas funções do sistema não são suportadas e retornam valores NULL quando executadas em entidades do Microsoft Entra:

    • SUSER_ID()
    • SUSER_NAME(<ID>)
    • SUSER_SNAME(<SID>)
    • SUSER_ID(<name>)
    • SUSER_SID(<name>)
  • O Banco de Dados SQL do Azure não cria usuários implícitos para usuários conectados como parte de uma associação de grupo do Microsoft Entra. Por isso, várias operações que exigem a atribuição de propriedade falharão, mesmo se o grupo Microsoft Entra for adicionado como membro a uma função com essas permissões.

    Por exemplo, um usuário conectado a um banco de dados por meio de um grupo do Microsoft Entra com a função db_ddladmin não poderá executar CREATE SCHEMA, ALTER SCHEMA e outras instruções de criação de objeto sem um esquema explicitamente definido (como tabela, exibição ou tipo, por exemplo). Para resolver isso, um usuário do Microsoft Entra deve ser criado para esse usuário ou o grupo Microsoft Entra deve ser alterado para atribuir o DEFAULT_SCHEMA ao dbo.

Instância Gerida do SQL

  • As entidades de servidor (logons) e os usuários do Microsoft Entra têm suporte para a Instância Gerenciada SQL.

  • A configuração de logins do Microsoft Entra mapeados para um grupo do Microsoft Entra como proprietário do banco de dados não é suportada na Instância Gerenciada do SQL.

    • Uma extensão disso é que, quando um grupo é adicionado como parte da função de servidor, os dbcreator usuários desse grupo podem se conectar à Instância Gerenciada SQL e criar novos bancos de dados, mas não poderão acessar o banco de dados. Isso ocorre porque o novo proprietário do banco de dados é SA e não o usuário do Microsoft Entra. Esse problema não se manifesta se o usuário individual for adicionado à dbcreator função de servidor.
  • O gerenciamento do SQL Agent e a execução de trabalhos são suportados para logons do Microsoft Entra.

  • As operações de backup e restauração do banco de dados podem ser executadas por entidades de servidor Microsoft Entra (logons).

  • Há suporte para a auditoria de todas as instruções relacionadas a entidades de servidor (logons) e eventos de autenticação do Microsoft Entra.

  • Há suporte para conexão de administrador dedicado para entidades de servidor Microsoft Entra (logons) que são membros da função de servidor sysadmin.

    • Suporte através do utilitário SQLCMD e do SQL Server Management Studio.
  • Os gatilhos de logon são suportados para eventos de logon provenientes de entidades de servidor (logons) do Microsoft Entra.

  • O Service Broker e o correio de banco de dados podem ser configurados usando uma entidade de servidor Microsoft Entra (login).

Ligar utilizando identidades do Microsoft Entra

A autenticação do Microsoft Entra oferece suporte aos seguintes métodos de conexão a um banco de dados usando identidades do Microsoft Entra:

  • Senha do Microsoft Entra
  • Microsoft Entra integrado
  • Microsoft Entra Universal com autenticação multifator
  • Usando a autenticação de token de aplicativo

Os seguintes métodos de autenticação são suportados para entidades de servidor do Microsoft Entra (logons):

  • Senha do Microsoft Entra
  • Microsoft Entra integrado
  • Microsoft Entra Universal com autenticação multifator

Considerações adicionais

  • Para melhorar a capacidade de gerenciamento, recomendamos que você provisione um grupo dedicado do Microsoft Entra como administrador.
  • Apenas um administrador do Microsoft Entra (um usuário ou grupo) pode ser configurado para um servidor no Banco de Dados SQL ou no Azure Synapse a qualquer momento.
    • A adição de entidades de servidor Microsoft Entra (logons) para Instância Gerenciada SQL permite a possibilidade de criar várias entidades de servidor Microsoft Entra (logons) que podem ser adicionadas à sysadmin função.
  • Somente um administrador do Microsoft Entra para o servidor pode se conectar inicialmente ao servidor ou à instância gerenciada usando uma conta do Microsoft Entra. O administrador do Microsoft Entra pode configurar usuários subsequentes do banco de dados do Microsoft Entra.
  • Os usuários e entidades de serviço do Microsoft Entra (aplicativos Microsoft Entra) que são membros de mais de 2048 grupos de segurança do Microsoft Entra não têm suporte para fazer logon no banco de dados no Banco de Dados SQL, na Instância Gerenciada do SQL ou na Sinapse do Azure.
  • Recomendamos definir o tempo limite de conexão para 30 segundos.
  • O SQL Server 2016 Management Studio e o SQL Server Data Tools para Visual Studio 2015 (versão 14.0.60311.1abril de 2016 ou posterior) oferecem suporte à autenticação do Microsoft Entra. (A autenticação do Microsoft Entra é suportada pelo Provedor de Dados do .NET Framework para SqlServer; pelo menos a versão do .NET Framework 4.6). Portanto, as versões mais recentes dessas ferramentas e aplicativos da camada de dados (DAC e BACPAC) podem usar a autenticação do Microsoft Entra.
  • A partir da versão 15.0.1, o utilitário sqlcmd e o utilitário bcp suportam a autenticação interativa do Ative Directory com autenticação multifator.
  • O SQL Server Data Tools para Visual Studio 2015 requer pelo menos a versão de abril de 2016 do Data Tools (versão 14.0.60311.1). Atualmente, os usuários do Microsoft Entra não são mostrados no Pesquisador de Objetos SSDT. Como solução alternativa, exiba os usuários no sys.database_principals.
  • O Microsoft JDBC Driver 6.0 para SQL Server oferece suporte à autenticação Microsoft Entra. Além disso, consulte Definindo as propriedades da conexão.
  • O PolyBase não pode autenticar usando a autenticação do Microsoft Entra.
  • A autenticação do Microsoft Entra tem suporte para o Banco de Dados SQL do Azure e o Azure Synapse usando as folhas Importar Banco de Dados e Exportar Banco de Dados do portal do Azure. A importação e exportação usando a autenticação do Microsoft Entra também é suportada a partir de um comando do PowerShell.
  • A autenticação do Microsoft Entra tem suporte para Banco de Dados SQL, Instância Gerenciada SQL e Sinapse do Azure com o uso da CLI. Para obter mais informações, consulte Configurar e gerenciar a autenticação do Microsoft Entra com o Banco de Dados SQL ou Azure Synapse e SQL Server - az sql server.

Próximos passos