mongodbでデータベースのユーザ認証を設定する
テクノロジー
mongodbのデータベースにユーザを追加し、認証情報や権限を設定します
use mydb
db.createUser({
user: "username",
pwd: "password",
roles: [
{
role: "readWrite",
db: "mydb"
}
]
})
設定ファイルを変更して、認証モードを有効にします
vim /etc/mongod.conf
# Turn on/off security. Off is currently the default
auth=true
サービスを再起動して、設定を反映します
sudo service mongod restart
認証せずにコマンドを実行すると失敗してしまいます
> use mydb
switched to db mydb
> show collections
2015-02-19T19:45:43.505+0900 error: {
"$err" : "not authorized for query on mydb.system.namespaces",
"code" : 13
} at src/mongo/shell/query.js:131
認証すればOKですね!
> db.auth("username", "password")
1
> show collections
system.indexes
testData