O MongoDB Atlas oferece suporte a uma variedade de métodos de autenticação para garantir uma segurança robusta. O Atlas exige que todos os usuários se autentiquem para acessar a IU do Atlas, os bancos de dados do Atlas e a Administration API do Atlas.
Observação
O Modelo de responsabilidade compartilhada do MongoDB Atlas define os direitos complementares do MongoDB e de seus clientes em manter um ambiente de dados seguro e resiliente. Nesse framework, o MongoDB gerencia a segurança e a integridade operacional da plataforma subjacente, enquanto os clientes são responsáveis pelas políticas de configuração, gerenciamento e dados de suas implantações específicas. Para obter um detalhamento detalhado da propriedade em segurança e segurança operacional, consulte Modelo de responsabilidade compartilhada.
Observação
Neste contexto, um "usuário" pode ser uma pessoa ou um aplicativo. Referimo-nos aos usuários humanos como "Identidade de força de trabalho" e aos aplicativos como "Identidade de carga de trabalho".
Dois fatores determinam quais tipos de autenticação utilizar:
O tipo de identidade (humana ou máquina)
O recurso ao qual a identidade precisa ter acesso. O recurso pode ser um dos seguintes: IU do Atlas, banco de dados do Atlas ou APIs do Atlas.
Autenticação UI do Atlas
Usuários da força de trabalho
Use restrições de acesso IP e, em seguida:
Use a autenticação federada com um provedor de identidade SAML 2.0, como Okta, Microsoft Entra ID ou Ping Identity, e
Use as credenciais do Atlas com a autenticação multifatorial (MFA). Você deve sempre usar a forma mais segura de MFA disponível, como uma chave de hardware ou biometria.
Usuários da carga de trabalho
Isso se aplica somente aos usuários do Workforce.
Autenticação do banco de dados Atlas
Usuários da força de trabalho
Use Federação de identidade da força de trabalho.
Para ambientes de desenvolvimento e teste, você também pode utilizar SCRAM. Considere criar usuários de banco de dados temporários com acesso just-in-time ao banco de dados.
Usuários da carga de trabalho
Use um dos seguintes:
Para ambientes de desenvolvimento e teste, você também pode usar certificados X.509 ou SCRAM.
Autenticação da API do Atlas
Observação
Isso se aplica tanto aos usuários da Força de trabalho quanto aos da Carga de trabalho.
Use Contas de serviço. Para ambientes de desenvolvimento e teste, você também pode usar Contas de serviço ou Chaves de API.
Tipos de autenticação
As seções a seguir fornecem detalhes sobre os métodos de autenticação usados ao acessar a IU do Atlas, o banco de dados do Atlas ou a Administration API do Atlas.
Autenticação federada
A autenticação federada permite que você gerencie todas as autenticações na IU do Atlas em múltiplos sistemas e aplicativos por meio de um provedor de identidade central, o que reduz a complexidade do gerenciamento de usuários. Com a autenticação federada, você pode aplicar políticas de segurança, como complexidade de senha, rotação de credenciais e MFA nas ferramentas do seu provedor de identidade.
Para a interface do usuário do Atlas, você pode usar qualquer provedor de identidade compatível com SAML, como Okta, Microsoft Entra ID ou Ping Identity.
Federação de Identidade da Força de Trabalho
O Workforce Identity Federation permite gerenciar toda a autenticação no banco de dados do Atlas por meio do seu provedor de identidade. Para saber mais, consulte oidc-authentication-workforce.
Workload Identity Federation
O Workload Identity Federation permite que aplicativos executados em ambientes de nuvem, como o Azure e o Google Cloud Platform, autentiquem-se com o Atlas sem a necessidade de gerenciar credenciais de usuário de banco de dados separadas. Com o Workload Identity Federation, você pode gerenciar usuários do banco de dados do Atlas usando o Azure Managed Identities, contas de serviço do Google ou qualquer serviço compatível com OAuth 2.0. Esses mecanismos de autenticação simplificam o gerenciamento e aumentam a segurança ao permitir o acesso sem senha ao banco de dados do Atlas .
Autenticação da função do AWS IAM
Você também pode autenticar por meio de funções da AWS IAM. Para saber mais, consulte set-up-pwdless-auth.
Para saber mais, consulte oidc-authentication-workload e atlas-federated-authentication.
Autenticação multifator
Para qualquer usuário humano que tenha acesso ao plano de controle do Atlas, exigimos MFA para maior segurança. O Atlas suporta os seguintes métodos MFA como identificação secundária:
Chaves de segurança
Biometria
Autenticadores OTP
Notificações por push com o Okta Verify
Email
Observação
Se você estiver usando a autenticação federada, configure e gerencie a MFA no IdP. Se você estiver usando credenciais do Atlas , a MFA será configurada e gerenciada no Atlas. A MFA é necessária ao usar as credenciais do Atlas .
Para saber mais, consulte atlas-enable-mfa.
Certificados de cliente X.509
Os certificados X.509 oferecem a segurança do TLS mútuo, tornando-os apropriados para ambientes de teste e produção, e é possível utilizar sua própria autoridade certificadora com o X.509. A desvantagem do X.509 é que você deve gerenciar os certificados e a segurança deles no lado do aplicativo, enquanto a Federação de identidade de carga de trabalho permite acesso sem senha e segurança mais fácil do aplicativo.
Para saber mais, consulte X.509.
Autenticação de senha SCRAM
Os clusters do Atlas oferecem suporte à autenticação por senha SCRAM para autenticação de usuário, mas recomendamos o uso de SCRAM apenas em ambientes de desenvolvimento e teste.
Se você aproveitar a autenticação X.509 ou SCRAM, recomendamos que você use um gerenciador de segredos de terceiros como HashiCorp Vault ou Amazon Web Services Secrets Manager para gerar e armazenar credenciais de banco de dados complexas.
Para saber mais, consulte SCRAM.
Contas de serviço
As contas de serviço utilizam o protocolo OAuth2.0 padrão do setor para autenticar de forma segura no Atlas através da API de administração do Atlas. Recomendamos que você utilize contas de serviço em vez de chaves de API sempre que possível, pois elas oferecem maior segurança por meio de tokens de acesso de curta duração e rotações de credenciais obrigatórias.
Você pode gerenciar o acesso programático para contas de serviço usando a IU do Atlas, a Atlas CLI, a Administration API do Atlas e o Terraform.
Chaves de API
As contas de serviço são o método preferido de autenticação. O Atlas oferece suporte legado para autenticação baseada em chave de API para gerenciar acesso programático. A autenticação baseada em chave de API usa a autenticação HTTP Digest para proteger as solicitações.
Para reforçar ainda mais a segurança e reduzir o risco de acesso não autorizado:
Siga as melhores práticas para girar as chaves de API regularmente. Para saber como girar essas chaves com o HashiCorp Vault, por exemplo, consulte a documentação do HashiCorp.
Utilize a lista de acesso IP para suas chaves de API. Para aprender mais, consulte Exigir uma lista de acesso IP para a API de administração do Atlas.
Para saber mais,consulte api-authentication.
Gerenciamento de segredos
Recomendamos usar um gerente de segredos de terceiros como HashiCorp Vault ou AWS gerente de segredos para gerar e armazenar credenciais complexas de banco de dados. Um gerente de segredos pode gerar credenciais de banco de dados dinamicamente com base em funções configuradas para bancos de dados Atlas.
Para aprender mais, veja o blog Gerenciar segredos do banco de dados MongoDB Atlas no HashiCorp Vault.
Implantações
Para aprender nossas recomendações para implantações que se relacionam à autenticação, consulte Orientação para organizações, projetos e clusters do Atlas.
Medidas de segurança adicionais
Para reforçar ainda mais a segurança e reduzir o risco de acesso não autorizado, considere estas medidas de segurança adicionais:
Altere os segredos da conta de serviço antes que expirem.
Use uma lista de acesso IP para suas contas de serviço.
Atribua a função do Atlas de privilégio mínimo necessária para o propósito pretendido da conta de serviço, a fim de aderir ao princípio do privilégio mínimo.
Para aprender mais, consulte Visão geral das contas de serviço.