#mongodb #createuser
#mongodb #создать пользователя
Вопрос:
Я новичок в и . MongoDB
.js
У меня есть простой add_app_user.js
скрипт со следующим содержанием:
# MongoDB shell version v4.2.17 # Set the database to 'testdb'. db = db.getSiblingDB('testdb'); # Create new user. db.createUser( { user: "testuser", pwd: "testpass", roles: [ "readWrite" ] } );
Это прекрасно работает в первый раз (когда такого пользователя не существует).
Мне нужно сделать его идемпотентным.
Я не смог найти простой для понимания скрипт, который будет проверять "testuser"
доступность в блоке "testdb"
и запускать мой скрипт только в том случае, если проверка завершится неудачно.
Ответ №1:
Попробуйте это:
if (db.getUser("testuser") == null) { db.createUser( { user: "testuser", pwd: "testpass", roles: [ "readWrite" ] } ); }
NB, обычно пользователи создаются в admin
базе данных. На самом деле я не знаю никакой причины, по которой они должны быть созданы в другом месте.