Compartilhar via


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

A autenticação do Microsoft Entra é um mecanismo de conexão com o Banco de Dados do Azure para MySQL com Servidor Flexível usando identidades definidas no Microsoft Entra ID. Com a autenticação do Microsoft Entra, você pode gerenciar as identidades de usuários do banco de dados e outros serviços da Microsoft em uma localização 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 a 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 UMI (identidade gerenciada pelo usuário) 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 Administrador do Microsoft Entra. Pode ser usuário ou grupo do Microsoft Entra, 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 passo a passo sobre como configurar a autenticação do Microsoft Entra com o Servidor Flexível do Banco de Dados do Azure para MySQL, consulte Configurar a autenticação do Microsoft Entra para o Banco de Dados do Azure para MySQL - Servidor Flexível

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 dão suporte à autenticação do Microsoft Entra. Atualmente, o Banco de Dados do Azure dá suporte somente 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 Servidor Flexível do Banco de Dados do Azure para MySQL. As setas indicam caminhos para comunicação.

Diagrama de como funciona a autenticação do Microsoft Entra.

  1. Seu aplicativo pode solicitar um token do ponto de extremidade de identidade do Serviço de Metadados de Instância do Azure.
  2. Ao usar a ID do cliente e o certificado, uma chamada é feita ao Microsoft Entra ID solicitando um token de acesso.
  3. Um token de acesso JWT (Token Web JSON) é 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 no 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. O logon 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, permitindo diversos administradores do Microsoft Entra para o Servidor Flexível. Usar uma conta de grupo como um administrador aumenta a capacidade de gerenciamento ao permitir que você adicione e remova membros do grupo no Microsoft Entra ID centralmente, sem alterar os usuários ou permissões no servidor flexível. Somente um administrador do Microsoft Entra (um usuário ou grupo) pode ser configurado por vez.

Diagrama da estrutura de administração do Microsoft Entra.

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 é desabilitada e os usuários podem se 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 – a autenticação nativa do MySQL e a autenticação do Microsoft Entra têm suporte. 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ê à identidade gerenciada atribuída pelo usuário a função Leitores de diretório.

Importante

Somente um usuário com pelo menos a função Administrador de funções 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 Servidor Flexível do Banco de Dados do Azure para MySQL garante que o usuário exista no servidor MySQL e verifica a validade do token por meio do seu conteúdo. 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 pelo Microsoft Entra ID 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 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 a um token do Active Directory, consulte Configurar a autenticação 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 por vez.

  • 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 os próximos usuários 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, permitindo diversos administradores do Microsoft Entra para o Servidor Flexível. Usar uma conta de grupo como um administrador aumenta a capacidade de gerenciamento ao permitir que você adicione e remova membros do grupo no Microsoft Entra ID centralmente, sem alterar os usuários ou permissões no Servidor Flexível.

  • Se um usuário for excluído do Microsoft Entra ID, esse usuário não poderá mais se autenticar no Microsoft Entra ID. 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

Ainda será possível fazer login com o usuário do Microsoft Entra excluído até a expiração do token (até 60 minutos após a emissão do token). Se você remover o usuário do Servidor Flexível do Banco de Dados do Azure para 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 logins do Microsoft Entra serão desabilitados para o servidor. O acréscimo de um novo administrador do Microsoft Entra do mesmo locatário habilitará novamente os logons do Microsoft Entra.

  • Um Servidor Flexível corresponde os tokens de acesso aos usuários do Servidor Flexível do Banco de Dados do Azure para MySQL usando a ID exclusiva do usuário do Microsoft Entra, em vez do nome dele. 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 irá considerá-lo como um usuário diferente. Portanto, se um usuário for excluído do Microsoft Entra ID e um novo usuário com o mesmo nome for adicionado, o novo usuário não conseguirá 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óxima etapa