MongoDB ユーザー認証を設定する
- 2019.11.28
- mongoDB
- mongodb, ubuntu19.10

MongoDbは、デフォルトだとパスワードもなしでアクセスできるため、ユーザー認証を設定する。
※ubuntu19.10にMongoDBのインストール手順はこちら
環境
- OS Ubuntu19.10
- mongoDB 4.2.1
ユーザー作成
ユーザーとパスワードを設定する
1 2 3 4 5 6 7 8 9 10 11 |
## mongoコマンド実行 mongo ## adminDBを利用 > use admin ## ユーザーとパスワードとロール(root スーパーユーザー)を追加 db.createUser({user:"mongo", pwd:"password", roles:["root"]}) ## 退出 > quit() or exit |
mongod.confファイル変更
1 2 |
## ファイルの編集 vi /etc/mongod.conf |
#security:のコメントアウトを外し、 authorization: enabled を追加する
1 2 3 4 5 6 |
#security: ↓ security: authorization: enabled |
※自分は#security:のコメントアウトを外し忘れててmongod再起動時にエラーが発生しました
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
参考エラー内容 sudo systemctl status mongod ● mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Wed 2019-11-06 09:55:53 JST; 16s ago Docs: https://docs.mongodb.org/manual Process: 20504 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=2) Main PID: 20504 (code=exited, status=2) 11月 06 09:55:53 testuser-Virtual-Machine systemd[1]: Started MongoDB Database Server. 11月 06 09:55:53 testuser-Virtual-Machine mongod[20504]: Unrecognized option: authorization 11月 06 09:55:53 testuser-Virtual-Machine mongod[20504]: try '/usr/bin/mongod --help' for more information 11月 06 09:55:53 testuser-Virtual-Machine systemd[1]: mongod.service: Main process exited, code=exited, status=2/INVALIDARGUMENT 11月 06 09:55:53 testuser-Virtual-Machine systemd[1]: mongod.service: Failed with result 'exit-code'. |
mongoDB再起動
設定を反映させるために再起動する
1 2 |
## 再起動する sudo systemctl restart mongod |
ユーザーとパスワードを指定してmongoDBに接続
作成ユーザーとパスワードで接続してみる
1 2 3 4 5 6 7 8 9 10 |
## ユーザーを指定してログイン mongo -u mongo 作成したpasswordを入力する MongoDB shell version v4.2.1 Enter password: <出力結果> connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("372e4405-2055-47bf-8f44-91ad5d634594") } |
外部接続確認
外部からユーザーとパスワードを指定して接続してみる
まずは、指定せずにログインしてみる

エラーとなり接続できない

ユーザーとパスワードを指定する

ログインできるようになります。

-
前の記事
windows10にmongoDBをインストールする 2019.11.27
-
次の記事
Ubuntu19.10 最新Redisをインストールする 2019.11.29
コメントを書く