#mongodb #mongodb-security
#mongodb #mongodb-безопасность
Вопрос:
Я создал пользователя с помощью оболочки:
use testDB
db.createUser({user: 'testUser', pwd: 'password', roles: ["readWrite"]})
Но пользователь также может просматривать и изменять другие базы данных (например, admin).
Я проверил, db.runCommand({connectionStatus : 1})
и ‘testUser’ зарегистрирован в сеансе.
Как создать пользователя с доступом на чтение и запись только для конкретной базы данных?
Комментарии:
1. В конфигурации, что такое security.authorization ?
2. Вам нужно получить представление о том, что такое аутентификация и авторизация в MongoDB. Авторизация позволяет пользователю иметь определенный доступ к ресурсу. Смотрите Это руководство Безопасность — Включить контроль доступа .
Ответ №1:
Вы можете выполнять все обслуживание пользователей в пространстве имен admin database. Итак, в вашем случае вы можете запускать следующие команды из своей оболочки mongo:
use admin
db.createUser({
user: "testUser",
pwd: "password",
roles: [
{ role: "readWrite", db: "<your_database>" }
]
})
Более подробную информацию можно найти в документации MongoDB:
https://docs.mongodb.com/manual/reference/method/db.createUser /