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);
});
});
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)