當(dāng)前位置:首頁(yè) >  站長(zhǎng) >  數(shù)據(jù)庫(kù) >  正文

MongoDB 用戶(hù)管理

 2020-10-16 13:45  來(lái)源: 腳本之家   我來(lái)投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)

這篇文章主要介紹了MongoDB 如何對(duì)用戶(hù)管理,幫助大家更好的理解和使用MongoDB數(shù)據(jù)庫(kù),感興趣的朋友可以了解下。

小小最近接觸了MongoDB,所以這里開(kāi)始學(xué)習(xí)MongoDB,之用戶(hù)管理模塊的相關(guān)內(nèi)容。

進(jìn)入MongoDB的Shell

這里輸入如下的命令,進(jìn)入MongoDB的shell

mongo

切換數(shù)據(jù)庫(kù)

use admin

使用如上的命令,切換數(shù)據(jù)庫(kù)到admin數(shù)據(jù)庫(kù)。

創(chuàng)建超級(jí)管理員用戶(hù)

創(chuàng)建超級(jí)管理員權(quán)限的用戶(hù)

db.createUser(
 { user: "admin",
  customData:{description:"superuser"},
  pwd: "admin",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
)

其中各個(gè)字段解釋如下

user字段: 新用戶(hù)的名字。

pwd 字段 用戶(hù)的密碼

cusomData 字段,任意內(nèi)容,可以是用戶(hù)名的全民介紹。

roles 字段 指定用戶(hù)的角色,用于給一個(gè)空數(shù)組,給新用戶(hù)設(shè)定空的角色,在roles字段,可以指定設(shè)置相關(guān)的角色。

db 數(shù)據(jù)庫(kù)的名字,用于管理數(shù)據(jù)庫(kù)。

創(chuàng)建超級(jí)用戶(hù)

這里創(chuàng)建一個(gè)超級(jí)用戶(hù),用于管理全部用戶(hù)的權(quán)限

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

 

創(chuàng)建一個(gè)業(yè)務(wù)數(shù)據(jù)庫(kù)的管理員的用戶(hù)

這個(gè)用戶(hù)專(zhuān)門(mén)負(fù)責(zé)一個(gè)或者幾個(gè)數(shù)據(jù)庫(kù)的增刪查改。

> db.createUser({
  user:"user001",
  pwd:"123456",
  customData:{
    name:'jim',
    email:'jim@qq.com',
    age:18,
  },
  roles:[
    {role:"readWrite",db:"db001"},
    {role:"readWrite",db:"db002"},
    'read'// 對(duì)其他數(shù)據(jù)庫(kù)有只讀權(quán)限,對(duì)db001、db002是讀寫(xiě)權(quán)限
  ]
})

 

其中

數(shù)據(jù)庫(kù)用戶(hù)角色,read,readWrite。

數(shù)據(jù)庫(kù)管理角色: dbAdmin,dbOwner,userAdmin

集群管理角色: clusterAdmin,clusterManager,clusterMonitor,hostManage。

備份恢復(fù)角色: backup,restore。

所有數(shù)據(jù)庫(kù)角色: readAnyDatabase。readWriteAnyDatabase,userAdminAnyDatabase,dbAdminAnyDatabase。

超級(jí)用戶(hù)角色: root

內(nèi)部角色 _system

這樣就完成了一個(gè)最基本的數(shù)據(jù)庫(kù)管理角色的創(chuàng)建。

查看和創(chuàng)建用戶(hù)

使用如下的命令,進(jìn)行查看和創(chuàng)建用戶(hù)

show users

使用該命令可以實(shí)現(xiàn)對(duì)用戶(hù)的查看和創(chuàng)建用戶(hù)。

修改密碼

use admin

db.changeUserPassword("username", "xxx")

使用該命令,可以實(shí)現(xiàn)對(duì)密碼的修改。

修改密碼和用戶(hù)信息

db.runCommand(
  {
    updateUser:"username",
    pwd:"xxx",
    customData:{title:"xxx"}
  }
)

刪除數(shù)據(jù)庫(kù)用戶(hù)

use admin

db.dropUser('user001')

創(chuàng)建其他數(shù)據(jù)庫(kù)管理員

// 登錄管理員用戶(hù)
use admin
db.auth('admin','admin')
// 切換至db001數(shù)據(jù)庫(kù)
use db001
// ... 増查改刪該數(shù)據(jù)庫(kù)專(zhuān)有用戶(hù)

核心,啟用權(quán)限驗(yàn)證

權(quán)限設(shè)定完成以后,需要輸入如下的命令,用于啟用權(quán)限驗(yàn)證。

mongo --auth

所有的修改,都需要重寫(xiě)啟動(dòng)mongodb

所有的修改,都需要重寫(xiě)啟動(dòng)mongodb,才可以生效

net stop mongodb;

net start mongodb;

本文來(lái)自腳本之家,原文鏈接:https://www.jb51.net/article/194582.htm

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)文章

熱門(mén)排行

信息推薦