天天看點

MongoDB權限初始化過程

db.createUser({'user':'boss', 'pwd':'boss', 'roles':[{'role':'userAdminAnyDatabase', 'db':'admin'}]}) db.createUser({'user':'lison','pwd':'lison','roles':[{'role':'readWrite','db':lison'}]})

Tips: 伺服器啟動需要加上auth參數連接配接伺服器才需要驗證      

如:./mongod -f /soft/mongodb/conf/mgdb.conf --auth 切換到資料庫上,才能給目前資料庫建立使用者;

-------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------

1.通過start-mongodb-auth.sh啟動mongodb

2.資料庫增加安全模式後,初始化一個“userAdminAnyDatabase”非常重要    

通過用戶端連接配接,使用admin資料庫, 執行如下腳本:  

 db.createUser({'user':'boss', 'pwd':'boss', 'roles':[{'role':'userAdminAnyDatabase', 'db':'admin'}]})

3.使用剛建立成功的使用者登入:注:進去之後使用auth登入

db.auth("boss","boss");

MongoDB權限初始化過程

4.切換到lison資料庫(use lison),建立讀寫權限使用者:

   db.createUser({'user':'lison','pwd':'lison','roles':[{'role':'readWrite','db':'lison'}]})

5.使用讀寫權限使用者lison登入,db.auth("lison","lison"),

登入後測試; ps:也可以以非auth模式啟動,然後建立使用者後,用auth模式啟動

MongoDB權限初始化過程

沒有權限操作admin的庫

用戶端連結方法:

用戶端授權

Java用戶端安全認證     MongoCredential類包括每個受支援的身份驗證機制的靜态工廠方法。

public static MongoCredential createCredential(final String userName,   final String database, final char[] password)

spring用戶端安全認證     MongoCredential類包括每個受支援的身份驗證機制的靜态工廠方法。

<mongo:mongo-client host="192.168.1.142" port="27022" credentials="cll:[email protected]"> </mongo:mongo-client>