通過命令創建數據庫賬戶
更新時間 2024-09-11 22:03:19
最近更新時間: 2024-09-11 22:03:19
分享文章
本章節會介紹如何通過命令創建數據庫帳戶。
創建文檔數據庫實例時,系統會同步創建默認賬戶rwuser。您可以根據業務需要,通過默認賬戶rwuser創建其他數據庫賬戶,之后您可以使用默認賬戶rwuser或已創建的其他賬戶對數據庫中的數據如庫、表、索引等進行操作。
使用須知
- 為目標實例創建數據庫帳戶時,建議您開啟SSL通道,提高數據的安全性。
- 對于已有的3.2版本的文檔數據庫實例,不支持創建數據庫帳戶,僅可更改管理員帳戶rwuser的密碼。
- 在創建數據庫帳戶時,要指定命令參數passwordDigestor:"server",具體操作請參見。
前提條件
成功連接文檔數據庫實例,請參見《文檔數據庫服務快速入門》各實例類型下,通過內網和公網連接實例的內容。
帳戶說明
- 為了給文檔數據庫實例提供管理服務,您在創建數據庫實例時,文檔數據庫服務會自動為實例創建根帳戶root(或admin)、監控帳戶monitor和備份帳戶backup,這些帳戶屬于天翼云實例管理平臺,您不能操作或者使用。如果試圖刪掉、重命名、修改這些帳戶的密碼和權限,會導致出錯。
- 對于數據庫管理員帳戶rwuser,以及您所創建的帳戶,允許修改帳戶的密碼。
- 默認賬戶rwuser以及通過rwuser創建的賬戶,對系統庫admin和config權限受限,無法進行正常操作。對自身創建的庫表,具有充分的操作權限。
- MongoDB的User一般是在某個固定的認證庫下創建的。連接數據庫時,需要通過參數--authenticationDatabase來明確指定對應的認證庫。
- DDS實例中,默認的rwuser用戶的認證庫,是admin。
帳戶密碼等級設置
- 文檔數據庫服務在控制臺側管理員密碼的安全策略:
密碼長度為8~32個字符。
密碼必須為英文大小寫字母、數字、特殊字符~!@#%^*-_=+?的組合。
- 文檔數據庫對在客戶端新創的數據庫用戶,設置了密碼安全策略:
密碼長度為8~32個字符。
密碼為英文大小寫字母、數字、特殊字符~@#%-_!*+=^?的組合。
創建實例數據庫以及設置密碼時,安全起見,為用戶提供了密碼復雜度校驗,如果不滿足要求,請根據提示信息調整密碼復雜度。
創建帳戶
步驟 1 選擇admin數據庫。
use admin
步驟 2 以user1帳戶為例,創建數據庫帳戶。
db.createUser({user: "user1", pwd: " ****** ", passwordDigestor:"server", roles:[{role: "root", db: "admin"}]})
- “ server ”是指在服務端加密密碼,為固定值,無需修改。
- “ ****** ”是新密碼,長度8~32位,且必須為英文大小寫字母、數字以及特殊字符~@#%-_!*+=^?的組合。
- “roles”限制了該帳戶所具有的權限。若指定一個空數組,表示該帳戶不具有任何權限。
步驟 3 查看創建結果。
顯示如下信息,說明創建成功。
Successfully added user: {
"user" : "user1",
"passwordDigestor" : "server",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
更改帳戶的密碼
步驟 1 選擇admin數據庫。
use admin
步驟 2 以user1帳戶為例,修改帳戶的密碼。
db.updateUser("user1", {passwordDigestor:"server",pwd:"newPasswd12#"})
- “ server ”是指在服務端加密密碼,為固定值,無需修改。
- “ newPasswd12# ”是新密碼,長度8~32位,且必須為英文大小寫字母、數字以及特殊字符~@#%-_!*+=^?的組合。
- 如果密碼用在mongodb url中且密碼包含@ / % ? # , 則需要進行URL特殊字符轉義,替換為對應的十六進制的URL編碼(ASCII碼)。
步驟 3 查看修改結果。顯示如下信息,說明修改成功。
- 集群
mongos>
- 副本集
replica:PRIMARY>
- 單節點
replica:PRIMARY>