mongodbユーザ認証有効化
メモなのでツッコミ待ち。ここ違うとか教えてほしい。
ユーザ作成
全体の管理ユーザをadminDBに作成
$ mongodb > use admin > db.addUser("【ユーザ名】","【パスワード】");
データベースごとのユーザ
adminと同じ。useするデータベースが違うだけ。
$ mongodb > use 【データベース】 > db.addUser("【ユーザ名】","【パスワード】");
ケツにtrueを追加すればReadonlyなユーザになる
$ mongodb > use 【データベース】 > db.addUser("【ユーザ名】","【パスワード】",true);
ユーザ認証を有効化
「auth〜」のコメントを外して、再起動
$ sudo vim /etc/mongodb.conf 〜 # Turn on/off security. Off is currently the default #noauth = true auth = true 〜 $ sudo /etc/init.d/mongodb restart 〜 mongodb stop/waiting mongodb start/running, process 17196
認証確認
show collectionsして怒られればおk
$ mongo > use admin > show collections Tue Jun 5 11:41:24 uncaught exception: error: { "$err" : "unauthorized db:admin lock type:-1 client:127.0.0.1", "code" : 10057 } >
認証してからのshow collections
> db.auth('【ユーザ名】','【パスワード】') 1 > show collections system.indexes system.users >