Autenticação do Microsoft Entra para Banco de Dados do Azure para MySQL - Servidor Flexível

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor flexível

A autenticação do Microsoft Entra é um mecanismo de conexão com o servidor flexível do Banco de Dados do Azure para MySQL usando identidades definidas na ID do Microsoft Entra. Com a autenticação do Microsoft Entra, você pode gerenciar identidades de usuário de banco de dados e outros serviços da Microsoft em um local central, simplificando o gerenciamento de permissões.

Benefícios

  • Autenticação de usuários em Serviços do Azure de forma uniforme
  • Gerenciamento de políticas de senha e rotação de senhas em um único local
  • Várias formas de autenticação com suporte do Microsoft Entra ID, o que pode eliminar a necessidade de armazenar senhas
  • Os clientes podem gerenciar permissões de banco de dados usando grupos externos (Microsoft Entra ID).
  • A autenticação do Microsoft Entra usa usuários de banco de dados MySQL para autenticar identidades no nível de banco de dados
  • Suporte de autenticação baseada em token em aplicativos que se conectam ao servidor flexível do Banco de Dados do Azure para MySQL

Use as etapas abaixo para configurar e usar a autenticação do Microsoft Entra

  1. Escolha seu método de autenticação preferido para acessar o servidor flexível. Por padrão, a autenticação selecionada é definida somente para a autenticação MySQL. Selecione Somente autenticação do Microsoft Entra ou Autenticação do MySQL e do Microsoft Entra para habilitar a autenticação do Microsoft Entra.

  2. Selecione a identidade gerenciada pelo usuário (UMI) com os seguintes privilégios para configurar a autenticação do Microsoft Entra:

    • User.Read.All: permite acesso às informações de usuário do Microsoft Entra.
    • GroupMember.Read.All: permite acesso às informações de grupo do Microsoft Entra.
    • Application.Read.ALL: permite o acesso às informações da entidade de serviço do Microsoft Entra (aplicativos).
  3. Adicione o Microsoft Entra Admin. Pode ser usuários do Microsoft Entra ou Grupos, que tem acesso a um servidor flexível.

  4. Crie usuários de banco de dados no seu banco de dados mapeados para as identidades do Microsoft Entra.

  5. Conecte-se ao seu banco de dados recuperando um token para uma identidade do Microsoft Entra e fazendo login.

Observação

Para obter instruções detalhadas e passo a passo sobre como configurar a autenticação do Microsoft Entra com o Banco de Dados do Azure para servidor flexível MySQL, consulte Saiba como configurar a autenticação do Microsoft Entra para o Banco de Dados do Azure para o servidor flexível MySQL

Arquitetura

As identidades gerenciadas pelo usuário são necessárias para a autenticação do Microsoft Entra. Quando uma identidade atribuída pelo usuário é vinculada ao servidor flexível, o MSRP (provedor de recursos de identidade gerenciada) emite um certificado internamente para ela. Quando a identidade gerenciada é excluída, a entidade de serviço correspondente é removida automaticamente.

Em seguida, o serviço usa a identidade gerenciada para solicitar tokens de acesso para serviços que oferecem suporte à autenticação do Microsoft Entra. Atualmente, o Banco de Dados do Azure oferece suporte apenas a uma UMI (Identidade Gerenciada) atribuída pelo Usuário para o servidor flexível do Banco de Dados do Azure para MySQL. Para saber mais, confira Tipos de identidade gerenciada.

O diagrama de alto nível a seguir resume como a autenticação funciona usando a autenticação do Microsoft Entra com o Banco de Dados do Azure para o servidor flexível MySQL. As setas indicam caminhos para comunicação.

Diagram of how Microsoft Entra authentication works.

  1. Seu aplicativo pode solicitar um token do ponto de extremidade de identidade do Serviço de Metadados de Instância do Azure.
  2. Quando você usa a ID do cliente e o certificado, uma chamada é feita para a ID do Microsoft Entra para solicitar um token de acesso.
  3. Um token de acesso JSON Web Token (JWT) é retornado pelo Microsoft Entra ID. Seu aplicativo envia o token de acesso em uma chamada para seu servidor flexível.
  4. O servidor flexível valida o token com o Microsoft Entra ID.

Estrutura do administrador

Há duas contas de administrador para o servidor flexível do Banco de Dados do Azure para MySQL ao usar a autenticação do Microsoft Entra: o administrador original do MySQL e o administrador do Microsoft Entra.

Somente o administrador com base em uma conta do Microsoft Entra ID pode criar o primeiro usuário de banco de dados independente do Microsoft Entra ID em um banco de dados de usuário. A entrada do 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, ele pode ser usado por qualquer membro do grupo, habilitando vários administradores do Microsoft Entra para o servidor flexível. Usar uma conta de grupo como administrador melhora a capacidade de gerenciamento, permitindo que você adicione e remova centralmente membros do grupo na ID do Microsoft Entra sem alterar os usuários ou permissões no servidor flexível. Apenas um administrador do Microsoft Entra (um usuário ou grupo) pode ser configurado por vez.

Diagram of Microsoft Entra admin structure.

Os métodos de autenticação para acessar o servidor flexível incluem:

  • Somente autenticação MySQL – essa é a opção padrão. Somente a autenticação nativa do MySQL com um logon e uma senha do MySQL pode ser usada para acessar o servidor flexível.

  • Somente autenticação do Microsoft Entra - a autenticação nativa do MySQL está desabilitada e os usuários podem autenticar usando apenas o usuário e o token do Microsoft Entra. Para habilitar esse modo, o parâmetro de servidor aad_auth_only é configurado como Habilitado.

  • Autenticação com MySQL e Microsoft Entra ID - Há suporte para autenticação nativa do MySQL e autenticação do Microsoft Entra. Para habilitar esse modo, o parâmetro de servidor aad_auth_only é configurado como Habilitado.

Permissões

As permissões a seguir são necessárias para permitir que a UMI faça leituras no Microsoft Graph como a identidade do servidor. Como alternativa, dê à UMI a função de Leitores de Diretório.

Importante

Somente um Administrador global ou Administrador com função com privilégios pode conceder essas permissões.

  • User.Read.All: permite acesso às informações de usuário do Microsoft Entra.
  • GroupMember.Read.All: permite acesso às informações de grupo do Microsoft Entra.
  • Application.Read.ALL: permite o acesso às informações da entidade de serviço do Microsoft Entra (aplicativos).

Para saber como conceder e usar as permissões, confira Visão geral das permissões do Microsoft Graph

Depois de conceder as permissões à UMI, elas são habilitadas para todos os servidores criados com a UMI designada como uma identidade de servidor.

Validação de token

A autenticação do Microsoft Entra no Banco de Dados do Azure para o servidor flexível MySQL garante que o usuário exista no servidor MySQL e verifica a validade do token validando o conteúdo do token. As seguintes etapas de validação de token são executadas:

  • O token é assinado pelo Microsoft Entra ID e não foi adulterado.
  • O token foi emitido pela ID do Microsoft Entra para o locatário associado ao servidor.
  • O token não expirou.
  • O token é necessário para o recurso do servidor flexível (não para outro recurso do Azure).

Conectar usando as identidades do Microsoft Entra ID

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

  • Senha do Microsoft Entra
  • Microsoft Entra integrado
  • Microsoft Entra Universal com MFA
  • Usar certificados de aplicativos do Active Directory ou segredos de cliente
  • Identidade Gerenciada

Depois de autenticar-se no Active Directory, você recupera um token. Esse token é sua senha para entrar.

Observação

Essa operação de gerenciamento, como a adição de novos usuários, só tem suporte para funções de usuário do Microsoft Entra.

Observação

Para obter mais informações sobre como se conectar com um token do Active Directory, consulte Configurar e entrar com a ID do Microsoft Entra para o Banco de Dados do Azure para MySQL - Servidor Flexível.

Outras considerações

  • Você só pode configurar um administrador do Microsoft Entra por servidor flexível a qualquer momento.

  • Somente um administrador do Microsoft Entra para MySQL pode inicialmente se conectar ao servidor flexível usando uma conta do Microsoft Entra. O administrador do Active Directory pode configurar usuários subsequentes do banco de dados do Microsoft Entra ou um grupo do Microsoft Entra. Quando o administrador é uma conta de grupo, ele pode ser usado por qualquer membro do grupo, habilitando vários administradores do Microsoft Entra para o servidor flexível. Usar uma conta de grupo como administrador melhora a capacidade de gerenciamento, permitindo que você adicione e remova centralmente membros do grupo na ID do Microsoft Entra sem alterar os usuários ou permissões no servidor flexível.

  • Se um usuário for excluído da ID do Microsoft Entra, esse usuário não poderá mais se autenticar com a ID do Microsoft Entra. Portanto, esse usuário não pode mais adquirir um token de acesso. Embora o usuário correspondente ainda esteja no banco de dados, não é possível conectar-se ao servidor com ele.

Observação

O login com o usuário excluído do Microsoft Entra ainda pode ser feito até que o token expire (até 60 minutos da emissão do token). Se você remover o usuário do Banco de Dados do Azure para o servidor flexível MySQL, esse acesso será revogado imediatamente.

  • Se o administrador do Microsoft Entra for removido do servidor, o servidor não estará mais associado a um locatário do Microsoft Entra e, portanto, todos os logons do Microsoft Entra serão desabilitados para o servidor. Adicionar um novo administrador do Microsoft Entra do mesmo locatário reativa os logons do Microsoft Entra.

  • Um servidor flexível corresponde tokens de acesso ao Banco de Dados do Azure para usuários de servidor flexível MySQL usando a ID de usuário exclusiva do Microsoft Entra do usuário em vez do nome de usuário. Isso significa que, se um usuário do Microsoft Entra for excluído no Microsoft Entra ID e um novo usuário for criado com o mesmo nome, o servidor flexível considerará que um usuário diferente. Portanto, se um usuário for excluído da ID do Microsoft Entra e, em seguida, um novo usuário com o mesmo nome for adicionado, o novo usuário não poderá se conectar com o usuário existente.

Observação

As assinaturas de um servidor flexível com a autenticação do Microsoft Entra habilitada não podem ser transferidas para outro locatário ou diretório.

Próximas etapas