Mongodb v3.4
安全なデータベースを作成するには、次のことを行う必要があります。
プロセスを開始するユーザーに権限があり、ディレクトリが存在することを確認してください(/data/db
この場合)。
1)アクセス制御なしでMongoDBを起動します。
mongod --port 27017 --dbpath /data/db
2)インスタンスに接続します。
mongo --port 27017
3)ユーザー管理者を作成します(管理者認証データベース内) 。
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
4)アクセス制御を使用してMongoDBインスタンスを再起動します。
mongod --auth --port 27017 --dbpath /data/db
5)接続してユーザー管理者として認証します。
mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"
6)展開に必要な追加のユーザーを作成します(例:テスト認証データベース) 。
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
7)myTesterとして接続して認証します。
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
基本的に、公式ドキュメントの短いバージョンについては、https://docs.mongodb.com/master/tutorial/enable-authentication/
で説明しました。