MongoDB的使用者 認證和許可權

2021-07-07 04:47:53 字數 1239 閱讀 6680

開啟mongodb服務時不新增任何引數時,預設是沒有許可權驗證的,登入的使用者可以對資料庫任意操作而且可以遠端訪問資料庫!

在剛安裝完畢的時候mongodb都預設有乙個admin資料庫,此時admin資料庫是空的,沒有記錄許可權相關的資訊!當admin.system.users乙個使用者都沒有時,即使mongod啟動時新增了--auth引數,如果沒有在admin資料庫中新增使用者,此時不進行任何認證還是可以做任何操作(不管是否是以--auth 引數啟動),直到在admin.system.users中新增了乙個使用者。

需要注意的是:admin.system.users中將會儲存比在其它資料庫中設定的使用者許可權更大的使用者資訊,擁有超級許可權,也就是說在admin中建立的使用者可以對mongodb中的其他資料庫資料進行操作。

1、mongodb系統中,資料庫是由超級使用者來建立的,乙個資料庫可以包含多個使用者,乙個使用者只能在乙個資料庫下,不同資料庫中的使用者可以同名

2、當admin.system.users乙個使用者都沒有時,即使mongod啟動時新增了--auth引數,如果沒有在admin資料庫中新增使用者,此時不進行任何認證還是可以做任何操作(不管是否是以--auth 引數啟動),直到在admin.system.users中新增了乙個使用者

3、特定資料庫比如db1下的使用者user1,不能夠訪問其他資料庫db2,但是可以訪問本資料庫下其他使用者建立的資料

4、不同資料庫中同名的使用者不能夠登入其他資料庫!比如db1,db2都有user1,以user1登入db1後,不能夠登入到db2進行資料庫操作

5、在admin資料庫建立的使用者具有超級許可權,可以對mongodb系統內的任何資料庫的資料物件進行操作

./mongod  --dbpath=/opt/mongodb/data  --logpath /opt/mongodb/ali_mongo.log --port=27000

./mongod --dbpath=/opt/mongodb/data --logpath /opt/mongodb/ali_mongo.log --port=27000 --auth

./mongo 127.0.0.1:27000

./mongo 127.0.0.1:27000 -ust59 -pst59

./mongo 127.0.0.1:27000 -ust59 -pst59 --authenticationdatabase admin

db.createuser(

)

MongoDB許可權認證

在開啟mongodb 服務時不新增任何引數時,可以對資料庫任意操作,而且可以遠端訪問資料庫。如果啟動的時候指定 auth引數,可以對資料庫進行使用者驗證 在freebsd 系統中 mongodb 增加認證的選項有兩種辦法 方法一直接修改啟動指令碼在 usr local etc rc.d mongod...

mongodb許可權認證

1.拉取mongo映象 docker pull mongo 2.執行mongo容器 docker run privileged true p 27017 27017 v home mongo 27017 db data db v home mongo conf data configdb name ...

mongodb之使用者 認證 角色 許可權管理

前言 使用者許可權管理很重要,只給需要的許可權,防止應用系統漏洞導致脫庫 authentication 認證識別,解決我是誰 authorization 操作授權,我能做什麼 mongodb cr 官方自定義實現認證機制,通過使用者名稱和密碼,通過challenge response方式,來識別和驗...