sql >> Base de Datos >  >> NoSQL >> MongoDB

MongoError:no autorizado para ejecutar el comando { find:app_updates, filter:{ key:0.0.1-admins }, limit:1, batchSize:1, singleBatch:true }

En su configuración, está utilizando la autorización para acceder a Mongo

# Security settings.
security:
  authorization: enabled 

Al principio, debe crear un usuario:abra la consola mongo (mongo) Inicie mongod sin configuración

mongod --port 27017 --dbpath /data/db1

conéctese a la instancia usando la consola

mongo --port 27017

en la consola mongo ingrese los siguientes comandos

use admin
db.createUser(
  {
    user: "superAdmin",
    pwd: "admin123",
    roles: [ { role: "root", db: "admin" } ]
  })

Ahora puede acceder a mongo usando como servicio con su configuración

mongo --port 27017 -u "superAdmin" -p "admin123" --authenticationDatabase "admin"

Por lo tanto, debe otorgar acceso a mongo creando un nuevo usuario con permiso de lectura y escritura

use myAppDb #its name of your Database
db.createUser(
  {
   user: "myAppDbUser", #desired username
   pwd: "myApp123", #desired password
   roles: [ "readWrite"]
  })

E intente conectarse usando estas credencialesmongo --port 27017 -u "myAppDbUser" -p "myApp123" --authenticationDatabase "myAppDb"

y use este usuario para la configuración trapezoidal para conectarse a mongo, por ejemplo

mongodb://myAppDbUser:[email protected]:27017/myAppDb

(a través de https://medium.com/@raj_adroit /mongodb-habilitar-autenticación-habilitar-control-de-acceso-e8a75a26d332 )