Estoy tratando de agregar autorización a mi MongoDB.
Estoy haciendo todo esto en Linux con MongoDB 2.6.1.
Mi archivo mongod.conf tiene el formato de compatibilidad anterior
(así es como vino con la instalación).
1) Creé un usuario administrador como se describe aquí en (3)
http://docs.mongodb.org/manual/tutorial/add-user-administrator/
2) Luego edité mongod.conf al descomentar esta línea
auth = true
3) Finalmente reinicié el servicio mongod e intenté iniciar sesión con:
/usr/bin/mongo localhost:27017/admin -u sa -p pwd
4) Puedo conectarme pero dice esto al conectar.
MongoDB shell version: 2.6.1
connecting to: localhost:27017/admin
Welcome to the MongoDB shell!
The current date/time is: Thu May 29 2014 17:47:16 GMT-0400 (EDT)
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }
5) Ahora parece que este sa
usuario que creé no tiene permisos en absoluto.
root@test02:~# mc
MongoDB shell version: 2.6.1
connecting to: localhost:27017/admin
Welcome to the MongoDB shell!
The current date/time is: Thu May 29 2014 17:57:03 GMT-0400 (EDT)
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }
[admin] 2014-05-29 17:57:03.011 >>> use admin
switched to db admin
[admin] 2014-05-29 17:57:07.889 >>> show collections
2014-05-29T17:57:10.377-0400 error: {
"$err" : "not authorized for query on admin.system.namespaces",
"code" : 13
} at src/mongo/shell/query.js:131
[admin] 2014-05-29 17:57:10.378 >>> use test
switched to db test
[test] 2014-05-29 17:57:13.466 >>> show collections
2014-05-29T17:57:15.930-0400 error: {
"$err" : "not authorized for query on test.system.namespaces",
"code" : 13
} at src/mongo/shell/query.js:131
[test] 2014-05-29 17:57:15.931 >>>
¿Cuál es el problema? Repetí todo este procedimiento 3 veces y
creo que lo hice todo como se especifica en los documentos de MongoDB. Pero no funciona.
Esperaba que este sa
usuario estuviera autorizado a hacer cualquier cosa para
poder crear otros usuarios y otorgarles permisos más específicos.