Usando a autenticação multifator do Azure Active Directory

Aplica-se a: Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics

O Banco de Dados SQL do Azure, a Instância Gerenciada de SQL do Azure e o Azure Synapse Analytics dão suporte às conexões do SSMS (SQL Server Management Studio) usando a autenticação Azure Active Directory – Universal com MFA. Este artigo discute as diferenças entre as várias opções de autenticação e também as limitações associadas ao uso da Autenticação Universal no Azure AD (Azure Active Directory) para SQL do Azure.

Baixar a última versão do SSMS - No computador cliente, baixe a última versão do SSMS em Baixar o SQL Server Management Studio (SSMS).

Observação

Em dezembro de 2021, as versões do SSMS anteriores à 18.6 não serão mais autenticadas por meio do Azure Active Directory com MFA.

Para continuar utilizando a autenticação do Azure Active Directory com MFA, você precisa do SSMS 18.6 ou posterior.

Para todos os recursos neste artigo, use a versão 17.2 de julho de 2017 ou posterior. A caixa de diálogo de conexão mais recente deve ser semelhante à seguinte imagem:

Captura de tela da caixa de diálogo Conectar-se ao Servidor no SQL Server Management Studio, mostrando as configurações de Tipo de servidor, Nome do servidor e Autenticação.

Opções de autenticação

Há dois modelos de autenticação não interativos para Azure AD, que podem ser usados em vários aplicativos diferentes (ADO.NET, JDCB, ODC e assim por diante). Esses dois métodos nunca resultam em caixas de diálogo pop-up:

  • Azure Active Directory - Password
  • Azure Active Directory - Integrated

O método interativo que também é compatível com a autenticação multifator (MFA) do Azure Active Directory é:

  • Azure Active Directory - Universal with MFA

A MFA do Azure AD ajuda a proteger o acesso a dados e aplicativos, ao mesmo tempo em que atende à demanda dos usuários por um processo de entrada simples. Ele fornece autenticação eficiente com uma variedade de opções de verificação fáceis, como chamada telefônica, mensagem de texto, cartões inteligentes com PIN ou notificação por aplicativos móveis, os quais permitem que os usuários escolham seu método de preferência. O MFA interativo com o Azure AD pode resultar em uma caixa de diálogo pop-up para validação.

Para encontrar uma descrição da Autenticação Multifator do Azure Active Directory, confira autenticação multifator. Para etapas de configuração, consulte Configurar Autenticação Multifator do Banco de Dados SQL do Azure para o SQL Server Management Studio.

Parâmetro de ID do locatário ou nome de domínio do Azure AD

Começando com o SSMS versão 17, os usuários que são importados para o Azure AD atual de outros Azure Active Directories como usuários convidados, podem fornecer a ID de locatário ou o nome de domínio do Azure AD quando eles se conectam. Usuários convidados incluem usuários convidados de outros Azure ADs e contas Microsoft como outlook.com, hotmail.com, live.com ou outras contas como gmail.com. Essa informação permite que a autenticação Azure Active Directory - Universal with MFA identifique a autoridade de autenticação correta. Essa opção também é necessária para dar suporte a contas da Microsoft (MSA), como outlook.com, hotmail.com, live.com ou contas que não são MSA.

Todos os usuários convidados que desejam ser autenticados usando a autenticação Universal devem inserir sua ID de locatário ou nome de domínio do Azure AD. Esse parâmetro representa o nome de domínio ou ID de locatário do Azure AD atual ao qual o servidor lógico do SQL do Azure está associado. Por exemplo, se o servidor lógico do SQL está associado com o domínio do Azure AD contosotest.onmicrosoft.com, em que o usuário joe@contosodev.onmicrosoft.com está hospedado como um usuário importado do domínio do Azure AD contosodev.onmicrosoft.com, o nome de domínio necessário para autenticar esse usuário será contosotest.onmicrosoft.com. Quando o usuário é um usuário nativo do Azure AD associado ao servidor lógico do SQL e não é uma conta MSA, nenhuma ID de locatário nem nome de domínio é necessário. Para inserir o parâmetro (começando com o SSMS versão 17.2):

  1. Abra uma conexão no SSMS. Insira o nome do servidor e selecione a autenticação Azure Active Directory – Universal com MFA. Adicione o Nome de usuário com o qual você deseja entrar.

  2. Selecione a caixa Opções e vá para a guia Propriedades da Conexão. Na caixa de diálogo Conectar ao Banco de Dados, preencha a caixa de diálogo do seu banco de dados. Marque a caixa ID de locatário ou nome de domínio do AD e forneça a autoridade de autenticação, como o nome de domínio (contosotest.onmicrosoft.com) ou o GUID da ID do locatário.

    Captura de tela da guia Propriedades da Conexão realçando as configurações para Conectar ao banco de dados e ID de locatário ou nome de domínio do AD.

Se você estiver executando o SSMS 18.x ou posterior, o nome de domínio do AD ou a ID do locatário não será mais necessário para usuários convidados, pois a versão 18.x ou posterior o reconhecerá automaticamente.

Captura de tela da guia Propriedades da conexão na caixa de diálogo conectar ao servidor no SSMS.

Suporte entre empresas do Azure AD

Os usuários do Azure AD com suporte para cenários de B2B do Azure AD como usuários convidados (confira O que é a colaboração B2B do Azure) podem se conectar ao Banco de Dados SQL e ao Azure Synapse como usuários individuais ou membros de um grupo criado no Azure AD associado e são mapeados manualmente usando a instrução CREATE USER (Transact-SQL) em um determinado banco de dados.

Por exemplo, se steve@gmail.com for convidado para o Azure AD contosotest (com o domínio do Azure AD contosotest.onmicrosoft.com), um usuário steve@gmail.com deverá ser criado para um banco de dados específico (como MyDatabase) por um administrador de SQL do Azure AD ou um DBO do Azure AD executando a instrução Transact-SQL create user [steve@gmail.com] FROM EXTERNAL PROVIDER. Se steve@gmail.com fizer parte de um grupo do Azure AD, como usergroup, esse grupo deverá ser criado para um banco de dados específico (como MyDatabase) por um administrador de SQL do Azure AD ou um DBO do Azure AD executando a instrução Transact-SQL create user [usergroup] FROM EXTERNAL PROVIDER.

Depois que o usuário ou o grupo de usuários do banco de dados for criado, o usuário steve@gmail.com poderá entrar em MyDatabase usando a opção de autenticação de SSMS Azure Active Directory – Universal with MFA. Por padrão, o usuário ou grupo de usuários tem apenas permissão para conexão. Qualquer acesso a dados adicional precisará ser concedido no banco de dados por um usuário com privilégio suficiente.

Observação

Para o SSMS 17.x, usando steve@gmail.com como um usuário convidado, você deve selecionar a caixa ID de locatário ou nome de domínio do AD e adicionar o nome de domínio do AD contosotest.onmicrosoft.com na caixa de diálogo Propriedade da Conexão. A opção ID de locatário ou nome de domínio do AD tem suporte apenas para a autenticação Azure Active Directory – Universal com MFA. Caso contrário, a caixa de seleção ficará esmaecida.

Limitações da Autenticação Universal

  • O SSMS e o SqlPackage são as únicas ferramentas atualmente habilitadas para MFA por meio da Autenticação Universal do Active Directory.
  • O SSMS versão 17.2 dá suporte a acesso simultâneo de vários usuário usando a Autenticação Universal com MFA. Para o SSMS versões 17.0 e 17.1, a ferramenta restringe o logon para uma instância do SSMS usando Autenticação Universal a uma única conta do Azure Active Directory. Para entrar como outra conta do Azure AD, você deve usar outra instância do SSMS. Essa restrição é limitada à Autenticação Universal do Active Directory. Você pode entrar em um servidor diferente usando a autenticação Azure Active Directory - Password, a autenticação Azure Active Directory - Integrated ou SQL Server Authentication.
  • O SSMS dá suporte à Autenticação Universal do Active Directory para a visualização do Pesquisador de Objetos, do Editor de Consultas e do Repositório de Consultas.
  • O SSMS versão 17.2 fornece suporte ao Assistente de DacFx para Eportação/Extração/Implantação de Dados de banco de dados. Depois que um usuário específico é autenticado por meio da caixa de diálogo de autenticação inicial usando a Autenticação Universal, o Assistente de DacFx funciona da mesma maneira que faz para todos os outros métodos de autenticação.
  • O Designer de Tabela de SSMS não dá suporte à Autenticação Universal.
  • Não há nenhum requisito de software adicional para a Autenticação Universal do Active Directory, exceto que você deve usar uma versão do SSMS com suporte.
  • Consulte o link a seguir para a versão mais recente da Biblioteca de Autenticação da Microsoft (MSAL) para saber sobre a autenticação universal: Visão geral da Biblioteca de Autenticação da Microsoft (MSAL).

Próximas etapas