Я добавил аутентификацию, выполнив следующие действия:
Создан администратором пользователя.
использовать админа
db.createUser (
{
пользователь: "superAdmin",
pwd: "admin123",
role: [{role: "root", db: "admin"}]
})
Перезапустить экземпляр MongoDB с контролем доступа
Проверьте следующие строки в файле mongodb.conf
безопасность:
авторизация: включена
Перезапущен mongodb
Подключено к экземпляру базы данных с доступом superAdmin
mongo --port 27017 -u "superAdmin" -p "admin123" --authenticationDatabase
"Админ"
Создан пользовательский доступ (readWrite) для конкретной базы данных
$ mongo --port 27017 -u "superAdmin" -p "admin123" --authenticationDatabase
«Админы»
$ use myAppDb
$ db.createUser (
{
пользователь: "myAppDbUser",
pwd: "myApp123",
Роли: ["readWrite"]
})
Затем я снова открыл оболочку mongo и попытался получить доступ к БД, выполнив следующие шаги:
- использовать myAppDb
- показ коллекций
Я могу видеть все свои коллекции без аутентификации.
Я хочу, чтобы без аутентификации никто не мог видеть мою БД.
Я использую версию 3.6 mongoDB.
Заранее спасибо:)