Com o Workload Identity Federation, seus aplicativos podem acessar implantações do MongoDB Ops Manager usando identidades programáticas externas, como Azure Service Principals, Azure Managed Identities e Contas de serviço do Google.
Como funciona
O Workload Identity Federation permite que seus aplicativos acessem aos sistemas do MongoDB com tokens de acesso OAuth 2.0. Os tokens de acesso podem ser emitidos por qualquer fornecedor de identidade externo, incluindo o Azure Entra ID e o Google Cloud Platform (GCP). O Ops Manager armazena os identificadores e privilégios do usuário, mas não os segredos. Um conjunto limitado de drivers MongoDB oferece esse mecanismo de autenticação para seus aplicativos.
Os drivers do MongoDB oferecem suporte a dois tipos de fluxo de autenticação para o Workload Identity Federation: autenticação integrada e autenticação de retorno de chamada.
Autenticação integrada
Você pode usar a autenticação integrada se implantar seu aplicativo em uma infraestrutura compatível com um tipo de principal compatível. Seu aplicativo pode acessar os sistemas do Ops Manager sem fornecer uma senha ou solicitar manualmente um JWT do serviço de metadados do seu fornecedor de nuvem. Em vez disso, seu driver usa o identificador principal existente para solicitar um token de acesso JSON Web Token (JWT). O driver passa o token para o sistema do Ops Manager quando seu aplicativo se conecta.
Para obter mais detalhes de implementação, consulte a documentação do driver.
Infraestrutura suportada de autenticação integrada e tipos principais
Provedor de nuvem | Tipo de infraestrutura | Tipo principal |
|---|---|---|
GCP | Mecanismo de computação | Contas de serviço GCP |
Ambiente padrão do App Engine | ||
Ambiente flexível do App Engine | ||
Funções da nuvem | ||
Cloud Run | ||
Google Kubernetes Engine | ||
Cloud Build | ||
Azure | Azure VM | Azure Managed Identity (usuário e sistema atribuídos) |
Autenticação de chamada de resposta
Você pode usar a autenticação de chamada de resposta com qualquer serviço compatível com tokens de acesso OAuth 2.0. O Workload Identity Federation chama um método de chamada de resposta em que você solicita o JWT necessário do servidor de autorização ou do provedor de nuvem. Em seguida, você passa o token para o Ops Manager com o Workload Identity Federation quando seu aplicativo se conecta.
Para obter mais detalhes de implementação, consulte a documentação do driver.
Segurança com identidades gerenciadas pelo Azure
O Workload Identity Federation com o Azure Managed Identities fornece a maneira mais segura de autenticar nas implantações do MongoDB Ops Manager em execução no Azure. Essa abordagem oferece as seguintes vantagens de segurança:
Aproveite as identidades gerenciadas: isso permite que seus aplicativos em execução nos serviços do Azure (como Azure VMs, AKS e funções do Azure) se autentiquem no MongoDB Ops Manager usando suas identidades gerenciadas pelo Azure atribuídas sem a necessidade de gerenciar credenciais separadas do MongoDB .
Autenticação "sem senha" segura: seus aplicativos obtêm tokens de acesso OAuth 2.0 de curta duração do servidor de metadados do Azure, que o MongoDB Ops Manager verifica. Isso elimina a necessidade de armazenar e gerenciar nomes de usuário e senhas de banco de dados confidenciais gerenciados no código ou nas configurações do aplicativo.
Gerenciamento de identidade centralizado: você gerencia as identidades de suas cargas de trabalho do Azure dentro da estrutura do Azure Entra ID, fornecendo uma única fonte da verdade para o gerenciamento de identidades.
Auditoria aprimorada: o Azure fornece logs de auditoria para atividades de contas de serviço, aprimorando a rastreabilidade e as funcionalidades de monitoramento de segurança.
Acesso necessário
Para configurar o Workload Identity Federation, você deve ter acesso de ao Ops Project Owner Manager.
Pré-requisitos
Você deve atender a estes pré-requisitos:
MongoDB 7.0 ou posterior.
Pelo menos um outro mecanismo de autenticação com MongoDB Agent configurado.
Observação
O MongoDB Agent não pode se conectar à sua implantação por meio do OIDC. Você deve habilitar outro mecanismo de autenticação para o MongoDB Agent. Se o Ops Manager não gerenciar o Monitoring ou o Backup, você deverá configurá-los manualmente para usar o mecanismo de autenticação alternativo.
Procedimentos
Para configurar a Federação de Identidade do Volume de Trabalho, siga estas etapas:
Configure um fornecedor de identidade de volume de trabalho (configuração única).
Configurar um aplicativo de provedor de identidade externo
IMPORTANTE: Para redefinir as configurações de autenticação e TLS para seu projeto, primeiro deixe de gerenciar qualquer implantação MongoDB que o MongoDB Ops Manager gerencia em seu projeto.
Configurar autenticação da Federação de Identidade do Volume de Trabalho
Observação
O Workload Identity Federation suporta apenas JSON web JSON web token token para autenticação. Não suporta tokens de acesso opacos.
Configurar autorização OIDC
O MongoDB não cria explicitamente usuários do banco de dados para o OIDC. Ele mapeia os usuários do OIDC para as funções do MongoDB com base na configuração.
Conclua o procedimento para o tipo de autorização que você selecionou ao configurar a autenticação do OIDC.
ID do usuário
Se você selecionou o tipo de autorização User ID, crie um novo usuário para conceder uma autorização de usuário individual :
Adicione o usuário do OIDC.
Observação
Antes de adicionar usuários, certifique-se de ter criado todas as funções que deseja atribuir aos usuários.
Preencha os campos da conta de usuário:
CampoDescriçãoIdentifier
No primeiro campo, insira o banco de banco de dados
$external.No segundo campo, insira um nome de usuário usando seu nome de configuração do OIDC IdP e a reivindicação principal de usuário de sua configuração, separados por uma barra (
/):{configuration_name}/{user_principal_claim}
Roles
Authentication Restrictions
Clique em Add Entry.
Adicione um ou mais endereços IP e/ou blocos CIDR nas caixas Client Source ou Server Address. Separe vários endereços ou blocos com vírgulas.
Client Source restringe quais endereços esse usuário pode autenticar e usar as roles fornecidas.
Server Address restringe os endereços que esse usuário pode autenticar e tem os roles fornecidos.
Clique em Save.
Para adicionar outra entrada, clique em Add Entry.
Clique em Add User.
Associação de grupo
Se você selecionou o tipo de autorização Group Membership, complete as etapas a seguir para criar uma função personalizada que conceda autorização com base na associação ao grupo de usuários do IdP:
Crie o papel OIDC.
Insira os seguintes campos:
CamponecessidadeDescriçãoIdentifier
Obrigatório
Na caixa Database , digite
admin.Na caixa Name, insira seu nome de configuração OIDC IdP e o nome do grupo do seu provedor de identidade externo, separados por uma barra (
/):{configuration_name}/{group_name}Inherits From
Opcional
Uma lista de pares de nomes de roles e reconhecimento de data center. O formato para esses pares é
roleName@dbName.Authentication Restrictions
Opcional
Uma lista de endereços IP ou notações CIDR que você deseja restringir do seu IdP.
Privilege Actions by Resource
Opcional
ação permitidas no recurso.
Para saber mais,consulte Ações de privilégio.
Clique em Add Role.
Conectar um aplicativo ao MongoDB com o Workload Identity Federation
Use estes drivers do MongoDB para conectar uma aplicação ao MongoDB com a autenticação do Workload Identity Federation:
Nó / Typescript
Gerenciar uma configuração de federação de identidade de volume de trabalho existente
Para gerenciar sua configuração do Workload Identity Federation, você pode executar estas ações.
Revoke JWKS
Observação
Não use este recurso para girar suas chaves de assinatura. Quando você rotaciona as chaves de assinatura do OIDC IdP, o MongoDB obtém o JWKS automaticamente após a expiração dos tokens de acesso existentes.
Se sua chave privada estiver comprometida, você poderá revogar imediatamente seus Conjuntos de chaves da Web JSON (JWKS) armazenados em cache nos nós MongoDB:
Navegue até a caixa de diálogo Security Settings para sua implantação.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba Settings.
Editar uma configuração
Para editar sua configuração de Federação de Identidade do Workload:
Navegue até a caixa de diálogo Security Settings para sua implantação.
Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.
Selecione seu projeto no menu Projects na barra de navegação.
Clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba Settings.
Excluir uma configuração
Para excluir sua configuração do Workload Identity Federation:
Navegue até a caixa de diálogo Security Settings para sua implantação.
Selecione a organização que contém seu projeto Organizations no menu da barra de navegação.
Selecione seu projeto no menu Projects na barra de navegação.
Clique em Deployment na barra lateral.
Clique na aba Security.
Clique na aba Settings.