Configurar o MongoDB Agent para LDAP
- A autenticação OAuth 2.0 para acesso programático ao Cloud Manager está disponível como um recurso de visualização.
- O recurso e a documentação correspondente podem mudar a qualquer momento durante o período de Pré-visualização. Para usar a 2.0 autenticação OAuth, crie uma conta de serviço para usar em suas solicitações para a API pública do Cloud Manager .
Observação
A partir do MongoDB 8.0, A autenticação e autorizaçãoLDAP estão obsoletas. O recurso está disponível e continuará a operar sem alterações durante a vida útil do MongoDB 8. O LDAP será removido em uma futura versão principal.
Para obter detalhes, consulte Descontinuação do LDAP.
Se sua implementação do MongoDB forçar o controle de acesso, o MongoDB Agent deverá autenticar no MongoDB como um usuário com o acesso adequado. Se você usar a Automação, o Cloud Manager tratará disso para você.
O MongoDB Enterprise oferece suporte à conexão simples e SASL com servidores LDAP por meio saslauthd
e bibliotecas do sistema operacional:
O MongoDB Enterprise para Linux pode se vincular a um servidor LDAP via
saslauthd
ou por meio de bibliotecas de sistemas operacionais.O MongoDB Enterprise para Windows pode se vincular a um servidor LDAP por meio das bibliotecas do sistema operacional.
O MongoDB Agent suporta autenticação em instâncias MongoDB usando LDAP.
Observação
Com a automação, o Cloud Manager managed a autenticação do MongoDB Agent para você. Para saber mais sobre autenticação, consulte Habilitar autenticação LDAP para seu projeto do Cloud Manager.
Pré-requisitos
Configurar sistemas para usar autenticação
O MongoDB Agent interage com os reconhecimento de data center MongoDB em seu sistema da mesma forma que um usuário do MongoDB faria. Como resultado, você deve configurar sua implantação do MongoDB e o MongoDB Agent para suportar a autenticação.
Você pode especificar os mecanismos de autenticação do sistema ao adicionar o sistema ou pode editar as configurações de uma implantação existente. No mínimo, o sistema deve habilitar o mecanismo de autenticação que você deseja que o MongoDB Agent use. O MongoDB Agent pode usar qualquer mecanismo de autenticação suportado.
Definir variável de ambiente do certificado TLS obrigatório
Nos hosts do MongoDB Agent, você deve definir o TLS_REQCERT variável de ambiente para demand
.
Exemplo
Em um host Red Hat Enterprise Linux, abra o arquivo /etc/openldap/ldap.conf
e adicione a seguinte configuração e valor:
TLS_REQCERT demand
Você pode usar seu aplicativo para definir essa variável de ambiente.
Considerações
Se a automação não managed seu sistema, você deverá configurar a autenticação LDAP separadamente para cada função.
Para configurar a autenticação LDAP, adicione um host ou edite a configuração de um host existente.
Criar e configurar usuário no MongoDB
Para automatizar instâncias do MongoDB que usam autenticação LDAP , adicione um usuário do MongoDB que tenha as funções e os privilégios necessários ao banco de banco de dados $external
no MongoDB. O banco de banco de dados do $external
permite ao mongod
consultar uma origem externa, como um servidor LDAP , para autenticar.
Use os seguintes comandos para criar os usuários a partir do mongosh
:
db.getSiblingDB("$external").createUser( { user : "<username>", roles : [ { role : "clusterAdmin", db : "admin" }, { role : "readWriteAnyDatabase", db : "admin" }, { role : "userAdminAnyDatabase", db : "admin" }, { role : "dbAdminAnyDatabase", db : "admin" }, { role : "backup", db : "admin" }, { role : "restore", db : "admin" } ] } )
Para saber mais sobre o acesso necessário, consulte Acesso necessário para o MongoDB agente.
Para fazer backup de instâncias do MongoDB 4.0 ou posterior que usam autenticação LDAP , adicione um usuário que tenha as funções necessárias ao banco de banco de dados $external
no MongoDB. O banco de banco de dados $external
armazena credenciais para autenticação externa e detalhes de autorização .
Utilize o seguinte comando mongosh
para criar o usuário:
db.getSiblingDB("$external").createUser( { user : "<username>", roles: [ { role: "clusterAdmin", db: "admin" } ] } )
db.getSiblingDB("$external").createUser( { user: "<username>", roles: [ { role: "backup", db: "admin" } ] } )
Para saber mais sobre o acesso necessário, consulte Acesso necessário para o backup do MongoDB Agent
Para monitorar o MongoDB 4.0 ou instâncias posteriores que usam autenticação LDAP , adicione um usuário ao banco de banco de dados $external
no MongoDB. O banco de banco de dados $external
armazena credenciais para autenticação externa e detalhes de autorização . Atribua a este usuário as funções fornecidas no exemplo a seguir .
Utilize o seguinte comando mongosh
para criar o usuário:
db.getSiblingDB("$external").createUser( { user : "<username>", roles: [ { role: "clusterMonitor", db: "admin" } ] } )
Para saber quais funções essa função exige, consulte Monitorando configurações.