校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > MongoDB快速入門筆記(七)MongoDB的用戶管理操作

MongoDB快速入門筆記(七)MongoDB的用戶管理操作

熱門標簽:機器人外呼系統軟件存在問題 沈陽營銷電銷機器人招商 福州電銷機器人源代碼 徐州ai電銷機器人原理 兗州電話外呼營銷系統 南京400電話怎樣辦理 高德地圖標注商戶位置 智能電銷機器人銷售話術 企業智能外呼系統價格多少

MongoDB 簡介

MongoDB 是一個基于分布式文件存儲的數據庫。由 C++ 語言編寫。旨在為 WEB 應用提供可擴展的高性能數據存儲解決方案。

MongoDB 是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。

1、修改啟動MongoDB時要求用戶驗證

加參數 --auth 即可。

現在我們把MongoDB服務刪除,再重新添加服務

復制代碼 代碼如下:

mongod --dbpath "D:\work\MongoDB\data" --logpath "D:\work\MongoDB\log\mongodb.log" --install --serviceName "MongoDB" --auth

2、創建用戶,并使用創建的用戶登錄

打開shell操作界面,默認test數據,再查看所有數據庫,發現報錯,因為沒有用戶驗證。

使用db.auth("user","pwd")進行用戶驗證。

user:用戶名

pwd:密碼

因為數據庫中沒有用戶,所以需要先使用無用戶驗證的方式啟動數據,在admin數據庫下新建用戶。

復制代碼 代碼如下:

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

在當前數據庫下創建一個用戶

user:用戶名

pwd:密碼

roles:角色信息

[role:角色名, db:對指定數據庫的操作]

> db.createUser({user:"admin", pwd:"admin", roles:[{role:"userAdminAnyDatabase", db:"admin"}]})
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
} 

在使用用戶驗證的方式啟動數據庫,在數據庫admin中,使用admin登錄

> db.auth("admin","admin")

1

狀態1表示驗證成功,0表示驗證失敗

創建用戶默認給當前使用的數據下創建用戶,

例如:當前使用的數據是admin,在admin數據下新建用戶

復制代碼 代碼如下:

db.createUser({user:"zyh", pwd:"zyh", roles:[{role:"readWrite", db:"zyhdb"}]})

在admin數據庫下使用zyh登錄,可讀寫zyhdb的collection。

當在zyhdb下,無法使用zyh登錄,因為用戶zyh是在admin數據庫下。

3、查看當前數據下的用戶

show users 顯示當前數據庫下所有的用戶

使用有用戶管理權限的用戶登錄才能看見,例如使用zyh登錄后,執行會報錯;使用admin登錄后,顯示用戶

復制代碼 代碼如下:

> db.auth("zyh","zyh")
1
> show users
2016-06-01T20:32:30.639+0800 E QUERY [thread1] Error: not authorized on admin to execute command { usersInfo: 1.0 } :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.getUsers@src/mongo/shell/db.js:1523:1
shellHelper.show@src/mongo/shell/utils.js:743:9
shellHelper@src/mongo/shell/utils.js:650:15
@(shellhelp2):1:1
> db.auth("admin","admin")
1
> show users
{
"_id" : "admin.admin",
"user" : "admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
{
"_id" : "admin.zyh",
"user" : "zyh",
"db" : "admin",
"roles" : [
{
"role" : "readWrite",
"db" : "zyhdb"
}
]
}

還可以使用db.getUsers()查看所有的用戶

使用db.getUser("user")查詢指定用戶的具體信息

4、修改用戶信息

復制代碼 代碼如下:

db.changeUserPassword("user", "newpwd"),修改密碼

user:用戶名

newpwd:新的密碼

db.updateUser("user", {roles:[{role:"", db:""}]})

修改用戶信息

復制代碼 代碼如下:

db.grantRolesToUser("user", [{role:"", db:""}])

追加角色

復制代碼 代碼如下:

db.revokeRolesFromUser("user", [{role:"", db:""}])

取消角色

5、刪除用戶

db.dropUser("user") 刪除指定用戶
db.dropAllUsers() 刪除當前數據下所有用戶

附:常用內置角色說明

數據庫用戶角色(每個數據庫都有的角色)

read 對non-system集合的讀取權限,以及以下system集合的讀取權限:system.indexes,system.js,system.namespaces
readWrite 對non-system集合的讀寫權限,以及system.js上的讀寫權限

數據庫管理角色(每個數據庫都包含的數據管理角色)
dbAdmin 完成管理性任務的權限,比如schema相關任務、索引、統計信息收集。不能用于管理用戶和角色
dbOwner 管理數據庫需要的所有權限。包含(readWrite、dbAdmin、userAdmin角色的權限)
userAdmin 在當前數據庫創建和修改角色和用戶的權限

集群管理角色

admin數據庫包含以下角色用于管理整個系統,而不是只針對單個數據庫
clusterAmin 提供集群管理的最大權限。包含了clusterManager、clusterMonitor、hostManager角色的權限
clusterManager 管理和監控集群,可以訪問local和config數據庫。
clusterMonitor 對集群的讀權限
hostManager 管理和健康servers

備份和還原角色

admin數據庫包含以下角色用于備份和還原數據
backup 備份權限
restore 還原權限

all-database roles
admin數據提供以下角色,對所有數據庫都有效。
readAnyDatabase 提供對所有數據庫的讀權限
readWriteAnyDatabase 提供對所有數據庫的寫權限
userAdminAnyDatabase 提供對所有數據庫用戶的管理權限
dbAdminAnyDatabase 對所有數據庫的dbAdmin權限

超級角色

角色 說明
root 擁有最高權限
另外角色也可以自定義設置

以上內容是小編給大家介紹的MongoDB快速入門筆記(七)MongoDB的用戶管理操作的相關知識,希望對大家有所幫助!

您可能感興趣的文章:
  • MongoDB 簡單入門教程(安裝、基本概念、創建用戶)
  • MongoDB數據庫用戶角色和權限管理詳解
  • MongoDB 用戶管理
  • MongoDB在系統數據庫local中無法創建用戶的解決辦法
  • mongodb基礎之用戶權限管理實例教程
  • Mac下安裝配置mongodb并創建用戶的方法
  • Mongodb 3.2.9開啟用戶權限認證問題的步驟詳解
  • MongoDB系列教程(四):設置用戶訪問權限
  • Windows下MongoDB配置用戶權限實例
  • mongodb 添加用戶及權限設置詳解
  • MongoDB為用戶設置訪問權限
  • MongoDB 用戶相關操作

標簽:邯鄲 景德鎮 丹東 大理 鶴崗 吉安 本溪 昭通

巨人網絡通訊聲明:本文標題《MongoDB快速入門筆記(七)MongoDB的用戶管理操作》,本文關鍵詞  MongoDB,快速,入門,筆記,七,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MongoDB快速入門筆記(七)MongoDB的用戶管理操作》相關的同類信息!
  • 本頁收集關于MongoDB快速入門筆記(七)MongoDB的用戶管理操作的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 吐鲁番市| 贵港市| 北川| 海口市| 渝中区| 海林市| 新和县| 安庆市| 中江县| 依安县| 开原市| 滨海县| 泰和县| 新泰市| 柳州市| 枝江市| 西乌珠穆沁旗| 泗洪县| 射洪县| 唐河县| 尉犁县| 稻城县| 县级市| 阿克| 襄樊市| 壤塘县| 江西省| 乐陵市| 元谋县| 福泉市| 沁水县| 宝应县| 牙克石市| 卫辉市| 泾阳县| 商南县| 孙吴县| 盐山县| 延庆县| 广东省| 南康市|