Mongodb賬號密碼模式的基本認證

    背景: 原先使用的MongoDB並沒有使用賬號密碼的認證方式去登陸,使用的是非認證方式;現需要將其配置爲以賬號密碼的方式去登陸和使用,配置步驟如下:

一、配置普通權限用戶

1.使用MongoBooster連接上MongoDB的Server

2.執行以下腳本,創建管理用戶的賬戶aa

use admin
db.createUser({ 
user:"aa", 
pwd:"aa",
roles:[{role:"userAdminAnyDatabase",db:"admin"}]
})


3. 開始服務器認證模式,登陸至MongoDb服務器,在mongodb.config文件中添加auth=true,然後重啓MongoDB服務

4.在MongoBooster中使用賬號aa連接上MongoDb的Server

5.執行以下腳本,爲test創建具有讀寫權限的用戶dfy

use test
db.createUser({
  user:"dfy",
  pwd:"dfy",
  roles:[{role:"readWrite",db:"sc"}]
})


user:用戶名,pwd:密碼,roles:指定用戶角色,可以用一個空數組給新用戶設定空角色;在roles字段,可以指定內置角色和用戶定義的角色。role裏的角色可以選:

Built-In Roles(內置角色):
1. 數據庫用戶角色:read、readWrite;
2. 數據庫管理角色:dbAdmin、dbOwner、userAdmin;
3. 集羣管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 備份恢復角色:backup、restore;
5. 所有數據庫角色:readAnyDatabase、readWriteAnyDatabase,userAdminAnyDatabase、dbAdminAnyDatabase
6. 超級用戶角色:root  
7. 內部角色:__system

二、創建超級用戶(不建議使用)

1.使用MongoBooster連接上MongoDB的Server,執行下以腳本,創建超級用戶CC

use admin
db.createUser({
user:"CC",
pwd:"CC",
roles:[{role:"root",db:"admin"}]
})


2.按配置普通權限用戶中的步驟3開始服務器的認證模式即可,賬號CC具有超級管理員的權限


三、如何在Web中使用新配置的MongoDB的賬號密碼?

  1. 在MongoBooster的連接配置頁面,點擊To URI按鈕,可以看到獲得當前的連接串,新的連接串中包含賬號密碼信息

  2. 在Web.config中,將原先的MongoDB的連接串替換爲當前新的連接串即可


       



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章