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");
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczX0xiRGZkRGZ0Xy9GbvNGL2EzXlpXazxSP9EkYzVzVa9mTXVmdK1mYx40MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLxATM2ITO1MTM3EDOwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
4.切換到lison資料庫(use lison),建立讀寫權限使用者:
db.createUser({'user':'lison','pwd':'lison','roles':[{'role':'readWrite','db':'lison'}]})
5.使用讀寫權限使用者lison登入,db.auth("lison","lison"),
登入後測試; ps:也可以以非auth模式啟動,然後建立使用者後,用auth模式啟動
沒有權限操作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>