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 ao Banco de Dados do Azure para o Servidor Flexível 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 nos Serviços do Azure de maneira uniforme
- Gerenciamento de políticas de senhas e rotação de senhas em um único lugar
- Várias formas de autenticação suportadas pelo Microsoft Entra ID, que podem 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 do banco de dados MySQL para autenticar identidades no nível do banco de dados
- Suporte de autenticação baseada em token para aplicativos que se conectam ao Banco de Dados do Azure para o Servidor Flexível MySQL
Use as etapas abaixo para configurar e usar a autenticação do Microsoft Entra
Selecione seu método de autenticação preferido para acessar o Servidor flexível. Por padrão, a autenticação selecionada é definida apenas como autenticação MySQL. Selecione Somente autenticação do Microsoft Entra ou autenticação MySQL e Microsoft Entra para habilitar a autenticação do Microsoft Entra.
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 o acesso às informações do usuário do Microsoft Entra.
- GroupMember.Read.All: Permite o acesso às informações do grupo Microsoft Entra.
- Application.Read.ALL: Permite o acesso às informações da entidade de serviço (aplicativo) do Microsoft Entra.
Adicione o Microsoft Entra Admin. Pode ser usuário ou Grupo Microsoft Entra, que tem acesso a um Servidor Flexível.
Crie usuários de banco de dados em seu banco de dados mapeado para identidades do Microsoft Entra.
Conecte-se ao seu banco de dados recuperando um token para uma identidade do Microsoft Entra e fazendo login.
Nota
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 o Servidor Flexível 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 (Managed Identity Resource Provider) emite um certificado internamente para essa identidade. 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 dá suporte apenas a uma UMI (Identidade Gerenciada Atribuída pelo Usuário) para o Banco de Dados do Azure para o Servidor Flexível MySQL. Para obter mais informações, consulte Tipos de identidade gerenciados no Azure.
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 vias de comunicação.
- Seu aplicativo pode solicitar um token do ponto de extremidade de identidade do Serviço de Metadados de Instância do Azure.
- Quando você usa a ID do cliente e o certificado, uma chamada é feita para o ID do Microsoft Entra para solicitar um token de acesso.
- 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.
- O Servidor Flexível valida o token com o ID do Microsoft Entra.
Estrutura do administrador
Há duas contas de administrador para o Banco de Dados do Azure para o Servidor Flexível MySQL ao usar a autenticação do Microsoft Entra: o administrador original do MySQL e o administrador do Microsoft Entra.
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 início de sessão do administrador do Microsoft Entra pode ser um utilizador 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 Flexível. Usar uma conta de grupo como administrador melhora a capacidade de gerenciamento, permitindo que você adicione e remova centralmente membros do grupo no 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 de cada vez.
Os métodos de autenticação para acessar o Servidor Flexível incluem:
Somente autenticação MySQL - Esta é a opção padrão. Somente a autenticação nativa do MySQL com um login e senha do MySQL pode ser usada para acessar o Servidor Flexível.
Somente a autenticação do Microsoft Entra - a autenticação nativa do MySQL está desabilitada e os usuários podem autenticar usando apenas seu usuário e token do Microsoft Entra. Para habilitar esse modo, o parâmetro do servidor aad_auth_only é definido como ON.
Autenticação com MySQL e Microsoft Entra ID - Tanto a autenticação nativa do MySQL quanto a autenticação do Microsoft Entra são suportadas. Para habilitar esse modo, a aad_auth_only do parâmetro do servidor é definida como OFF.
Permissões
As permissões a seguir são necessárias para permitir que o UMI leia do 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 de Administrador de Função Privilegiada pode conceder essas permissões.
- User.Read.All: Permite o acesso às informações do usuário do Microsoft Entra.
- GroupMember.Read.All: Permite o acesso às informações do grupo Microsoft Entra.
- Application.Read.ALL: Permite o acesso às informações da entidade de serviço (aplicativo) do Microsoft Entra.
Para obter orientação sobre como conceder e usar as permissões, consulte 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 atribuída 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 existe 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 pelo Microsoft Entra ID para o locatário associado ao servidor.
- O token não expirou.
- O token é para o recurso Servidor Flexível (e não para outro recurso do Azure).
Conectar-se usando 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 MFA
- Usando certificados de aplicativo do Ative Directory ou segredos de cliente
- Identidade Gerida
Depois de autenticar no Ative Directory, você recupera um token. Este token é a sua palavra-passe para iniciar sessão.
Nota
Essa operação de gerenciamento, como a adição de novos usuários, só é suportada para funções de usuário do Microsoft Entra.
Nota
Para obter mais informações sobre como se conectar a um token do Ative 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 a qualquer momento.
Apenas um administrador do Microsoft Entra para MySQL pode inicialmente se conectar ao Servidor Flexível usando uma conta Microsoft Entra. O administrador do Ative Directory pode configurar usuários subsequentes do banco de dados 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 Flexível. Usar uma conta de grupo como administrador melhora a capacidade de gerenciamento, permitindo que você adicione e remova centralmente membros do grupo no ID do Microsoft Entra 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 com o Microsoft Entra ID. Portanto, adquirir um token de acesso para esse usuário não é mais possível. Embora o usuário correspondente ainda esteja no banco de dados, não é possível conectar-se ao servidor com esse usuário.
Nota
O login com o usuário do Microsoft Entra excluído ainda pode ser feito até que o token expire (até 60 minutos a partir 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 logins do Microsoft Entra.
Um Servidor Flexível corresponde aos tokens de acesso ao Banco de Dados do Azure para usuários do 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 ID do Microsoft Entra 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 do Microsoft Entra ID 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.
Nota
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.