17. Gerenciamento de usuários e papéis no MongoDB

Página 71

Gerenciar usuários e papéis é uma parte crucial da administração de qualquer banco de dados, e o MongoDB não é exceção. Este capítulo do nosso curso abordará como criar, gerenciar e atribuir papéis aos usuários no MongoDB.

No MongoDB, a autenticação e a autorização são as duas principais maneiras de gerenciar a segurança. A autenticação verifica a identidade de um usuário, enquanto a autorização determina quais ações um usuário pode realizar. Em outras palavras, a autenticação é o processo de verificar quem você é, enquanto a autorização é o processo de verificar o que você tem permissão para fazer.

Para gerenciar usuários e papéis no MongoDB, você precisa entender como o MongoDB lida com a segurança. O MongoDB usa um modelo de segurança baseado em função, o que significa que você pode atribuir funções específicas a usuários específicos. Cada função tem um conjunto específico de privilégios que determinam o que o usuário pode fazer.

Para criar um novo usuário no MongoDB, você pode usar o comando db.createUser(). Este comando cria um novo usuário e atribui um papel a ele. Por exemplo, o seguinte comando cria um novo usuário chamado "myUser" com a senha "myPassword" e a função "readWrite":

db.createUser(
   {
     user: "myUser",
     pwd: "myPassword",
     roles: [ "readWrite" ]
   }
)

Este comando cria um novo usuário que tem permissão para ler e escrever dados. No entanto, este usuário não tem permissão para executar tarefas administrativas, como criar novos bancos de dados ou gerenciar usuários.

Se você quiser alterar a função de um usuário, você pode usar o comando db.updateUser(). Este comando atualiza a função de um usuário existente. Por exemplo, o seguinte comando atualiza a função do usuário "myUser" para "dbAdmin":

db.updateUser(
   "myUser",
   {
     roles : [ "dbAdmin" ]
   }
)

Este comando atualiza a função do usuário "myUser" para "dbAdmin", o que significa que este usuário agora tem permissão para executar tarefas administrativas.

Além disso, o MongoDB também permite que você crie suas próprias funções personalizadas. Para criar uma nova função, você pode usar o comando db.createRole(). Por exemplo, o seguinte comando cria uma nova função chamada "readWriteAndAdmin":

db.createRole(
   {
     role: "readWriteAndAdmin",
     privileges: [
       {
         resource: { db: "mydb", collection: "" },
         actions: [ "find", "update", "insert", "remove", "createCollection", "dropCollection", "createIndex", "dropIndex", "viewOn", "collStats", "dbStats", "dbHash", "dbAdmin" ]
       }
     ],
     roles: []
   }
)

Este comando cria uma nova função que tem permissões para ler, escrever e administrar o banco de dados "mydb".

Em resumo, o gerenciamento de usuários e papéis no MongoDB é uma tarefa importante que ajuda a garantir a segurança do seu banco de dados. Ao entender como criar, gerenciar e atribuir papéis aos usuários, você pode garantir que cada usuário tenha os privilégios adequados para realizar suas tarefa.

No próximo capítulo, abordaremos como monitorar o desempenho do seu banco de dados MongoDB e como otimizá-lo para obter o melhor desempenho possível. Fique atento!

Now answer the exercise about the content:

Qual comando é usado para criar um novo usuário no MongoDB e como ele funciona?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

7218. Implementação de segurança no MongoDB

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text