DEV Community

Cover image for Como listar Usuários e Permissões no MongoDB
Leandro Domingues
Leandro Domingues

Posted on

Como listar Usuários e Permissões no MongoDB

Listando usuários e privilégios no MongoDB

Fala pessoALL, já precisaram listar os usuários e seus privilégios em um ambiente MongoDB?

Em ambientes pequenos ou com poucos usuários isso pode parecer mais fácil, porque podemos ir diretamente em alguns usuários. Mas em ambientes maiores, com muitos usuários e também privilégios isso com certeza será uma tarefa difícil.

Para facilitar a vida vamos a um pequeno script para iterar sobre nossos usuários e privilégios.

Primeiramente, boas-práticas...

Ao utilizar o MongoDB, podemos criar usuários e privilégios em qualquer base de dados do cluster, mas por boa-prática (e acreditem, isso facilita muito), centralizamos as criações na base de dados admin.

Usuários e privilégios

Os usuários podem ter um ou mais privilégios (roles) e o script abaixo faz uma iteração para cada usuário e também dentro de cada role.

Dentro do mongosh

use admin;
db.getUsers().forEach(user => {
   print(user.user);
   user.roles.forEach(role => {
       var roleDetails = db.getRole(role.role, { showPrivileges: true });
       printjson(roleDetails);
   });
});
Enter fullscreen mode Exit fullscreen mode

E é isso...

Sim, rápido e simples... claro que o script pode ser totalmente aprimorado, incluir algumas condições e tudo mais!

Espero que ajude e não esqueça de adicionar ao cinturão de atividades e compartilhar!

Top comments (0)