Ошибка: не удалось добавить пользователя: нет роли с именем root@test

Я пытаюсь создать пользователя для моей базы данных Монго.

Использование MongoDB Query: db.createUser({пользователь: 'администратор', pwd: '1234567890', роли: ['корень']})

2019-01-29T11:31:32.521+0530 E QUERY    [js] Error: couldn't add user: No role named root@test :

mongod.config

в /etc/mongod.config нет файла

3 ответа

Попробуйте следующее:

db.createUser({ user:"userName", 
                pwd:"passWord", 
                roles:[ { role:"readWrite", 
                          db:"dataBaseName" 
                        } ], 
                mechanisms:[ "SCRAM-SHA-1"] 
              })

Узнать больше о mechanisms:[ "SCRAM-SHA-1"] на https://docs.mongodb.com/manual/core/security-scram/

Я была такая же проблема. Вам нужно переключиться на базу данных на вашем сервере mongo, которая на самом деле играет роль, потому что она говорит, что база данных test, который выбирается при открытии оболочки MongoDB, не имеет роли root. просто попробуй use admin чтобы переключиться на базу данных администратора, а затем попробуйте db.createUser({ user: "mongoadmin" , pwd: "mongoadmin", roles: ["root"]}), как вы писали в вопросе. Это решило мою проблему.

Вместо «root» предоставьте пользователю права на чтение и запись:

      db.createUser({user: 'userName',pwd: 'somePassword',roles: [{  role: 'readWrite',  db: 'databaseName'}]})
Другие вопросы по тегам