Sto cercando di aggiungere l'autorizzazione al mio MongoDB.
Sto facendo tutto questo su Linux con MongoDB 2.6.1.
Il mio file mongod.conf è nel vecchio formato di compatibilità
(ecco come è arrivato con l'installazione).
1) Ho creato un utente amministratore come descritto qui in (3)
http://docs.mongodb.org/manual/tutorial/add-user-administrator/
2) Ho quindi modificato mongod.conf decommentando questa riga
auth = true
3) Alla fine ho riavviato il servizio mongod e ho provato ad accedere con:
/usr/bin/mongo localhost:27017/admin -u sa -p pwd
4) Sono in grado di connettermi ma lo dice su Connetti.
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) Ora sembra che questo sa
utente che ho creato non abbia alcuna autorizzazione.
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 >>>
Qual è il problema? Ho ripetuto l'intera procedura 3 volte e
penso di aver fatto tutto come specificato nei documenti MongoDB. Ma non funziona
Mi aspettavo che questo sa
utente fosse autorizzato a fare qualsiasi cosa in modo che
potesse quindi creare altri utenti e dare loro autorizzazioni più specifiche.