由於網路配置因人而異,需要根據自己實際環境進行配置,不作冗述。大致可以從以下方面禁止。
在外網機器命令列中執行
telnet your.machine.open.ip 27017
新建mongodb服務:
mongod --port 27017 --dbpath /data/db1
開啟mongodb客戶端shell:
mongo --port 27017
use admin
db.createuser(]})
管理員建立成功,現在擁有了使用者管理員
使用者名稱:adminuser
密碼:adminpass
然後,斷開 mongodb 連線, 關閉資料庫
啟動帶訪問控制的 mongodb
mongod --auth --port 27017 --dbpath /data/db1
現在有兩種方式進行使用者身份的驗證
mongo --port 27017 -u "adminuser" -p "adminpass" --authenticationdatabase "admin"
mongo --port 27017
use admin
db.auth("adminuser", "adminpass")
// 輸出 1 表示驗證成功
過程類似建立管理員賬戶,只是 role 有所不同
use foo
db.createuser(
, ]
})
現在我們有了乙個普通使用者
使用者名稱:******user
密碼:******pass
許可權:讀寫資料庫 foo, 唯讀資料庫 bar。
注意
use foo
表示使用者在 foo 庫中建立,就一定要 foo 庫驗證身份,即使用者的資訊跟隨隨資料庫。比如上述 ******user 雖然有 bar 庫的讀取許可權,但是一定要先在 foo 庫進行身份驗證,直接訪問會提示驗證失敗。
use foo
db.auth("******user", "******pass")
use bar
show collections
2.5 開啟強制驗證
建立完畢後,找到mongod.conf,開啟設定
儲存並重啟就行了。
mongodb設定使用者名稱密碼
參考docs.mongodb.com manual 開啟c盤的mongodb目錄,開啟cmd,執行 mongod dbpath e mongodb db logpath e mongodb log mongodb.log auth 開啟安全驗證 執行mongo use admin 建立使用者 db....
MongoDB 設定使用者名稱密碼登入
mongodb 預設直接連線,無須身份驗證,如果當前機器可以公網訪問,且不注意mongodb 埠 預設 27017 的開放狀態,那麼mongodb就會產生安全風險,被利用此配置漏洞,入侵資料庫。由於網路配置因人而異,需要根據自己實際環境進行配置,不作冗述。大致可以從以下方面禁止。在外網機器命令列中執...
mongodb 使用者名稱 密碼
1.不需要登入的方式啟動mongodb 2.檢視當前的庫 linux mongo show dbs 顯示admin 和 local兩個庫 3 建乙個新的庫 zcydb linux mongo use zcydb 建立了新的庫 db 顯示當前所在的庫 show dbs 顯示所有的庫,但是新建的沒有列出...