麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > MongoDB > 正文

mongodb基礎之用戶權限管理實例教程

2020-10-29 18:43:51
字體:
來源:轉載
供稿:網友

前言

本文主要介紹了mongodb用戶權限管理的相關內容,關于接著上次實踐的部分,下面話不多說了,來一起看看詳細的介紹吧

啟動mongodb并連接

./bin/mongod -f conf/mongod.conf./bin/mongo 127.0.0.1:12345

查看默認的數據庫情況

> show dbsadmin 0.000GBlocal 0.000GB> use adminswitched to db admin> show tablessystem.version

可以看到,目前數據庫里除了一些基本信息,什么都沒有

在創建設置用戶權限之前,先了解一下文檔知識

創建用戶

# demodb.createUser( { user: "reportsUser", pwd: "12345678", roles: [  { role: "read", db: "reporting" },  { role: "read", db: "products" },  { role: "read", db: "sales" },  { role: "readWrite", db: "accounts" } ] })

數據庫內建角色

數據庫用戶角色

  • read (讀取指定數據庫)
  • readWrite (讀寫指定數據庫)

數據庫管理角色

  • dbAdmin (數據庫管理員)
  • dbOwner (數據庫所有者,合并了 readWrite, dbAdmin and userAdmin roles.)
  • userAdmin (用戶管理員,可以找指定數據庫里創建、刪除和管理用戶)

集群管理角色

  • clusterAdmin (集群管理員)
  • clusterManager (集群管理者)
  • clusterMonitor (集合監視者)
  • hostManager (主機管理者)

備份恢復角色

  • backup (備份)
  • restore (還原)

所有數據庫角色

  • readAnyDatabase (讀任何數據庫)
  • readWriteAnyDatabase (讀寫任何數據庫)
  • userAdminAnyDatabase (用戶管理任何數據庫)
  • dbAdminAnyDatabase (任意數據庫管理員)

超級用戶角色

  • root

內部角色

  • __system

有了創建語法,和參數說明,接下來開始實踐.

注意,還有一點,賬號是跟著數據庫綁定的,在那個庫里授權,就在那個庫里驗證(auth)
否則會失敗

創建 賬號管理授權權限 的賬號

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

然后退出數據庫

> use adminswitched to db admin> db.shutdownServer()

重新啟動mongodb,記得在配置文件mongod.conf里加上 auth = true

./bin/mongod -f conf/mongod.conf./bin/mongo 127.0.0.1:12345> show dbs # 沒有驗證,沒有權限,會出錯"errmsg" : "not authorized on admin to execute command> use admin> db.auth('admin', '123456')1# 返回 1 表示授權成功,0表示失敗> show dbs #已經授權,可以查看了

創建 讀、讀寫權限的賬戶

> use bookswitched to db book> db.createUser(... {... user: 'zhangsan',... pwd: 'zhangsan',... roles: [{role: 'read', db: 'book'}]... }... )Successfully added user: {  "user" : "zhangsan",  "roles" : [    {      "role" : "read",      "db" : "book"    }  ]}> db.createUser(... {... user: 'lisi',... pwd: 'lisi',... roles: [{role: 'readWrite', db: 'book'}]... }... )Successfully added user: {  "user" : "lisi",  "roles" : [    {      "role" : "readWrite",      "db" : "book"    }  ]}> show users{  "_id" : "book.lisi",  "user" : "lisi",  "db" : "book",  "roles" : [    {      "role" : "readWrite",      "db" : "book"    }  ]}{  "_id" : "book.zhangsan",  "user" : "zhangsan",  "db" : "book",  "roles" : [    {      "role" : "read",      "db" : "book"    }  ]}

然后驗證用戶權限是否正確

> db.book.insert({book: '小人書'}) # 沒驗證,會出錯WriteResult({  "writeError" : {    "code" : 13,    "errmsg" : "not authorized on book to execute command { insert: /"book/", documents: [ { _id: ObjectId('5959b56edcc047dfe5c9b336'), book: /"小人書/" } ], ordered: true }"  }})> db.auth('lisi', 'lisi')1> db.book.insert({book: '小人書'})WriteResult({ "nInserted" : 1 })> db.auth('zhangsan', 'zhangsan') # 用戶切到 zhangsan1> db.book.find() # 可以查看{ "_id" : ObjectId("5959b59fdcc047dfe5c9b337"), "book" : "小人書" }> db.book.insert({book: '擇天記'}) # 沒有write權限,會失敗WriteResult({  "writeError" : {    "code" : 13,    "errmsg" : "not authorized on book to execute command { insert: /"book/", documents: [ { _id: ObjectId('5959b650dcc047dfe5c9b338'), book: /"擇天記/" } ], ordered: true }"  }})

創建 root 超級權限賬號

這個超級權限包括 授權 和 操控數據庫集合數據,比較簡單,只需要把role設置成 root

> use adminswitched to db admin> db.auth('admin', '123456')1> db.createUser(... {... user: 'dongsheng',... pwd: '123456',... roles: [{role: 'root', db: 'admin'}]... }... )Successfully added user: {  "user" : "dongsheng",  "roles" : [    {      "role" : "root",      "db" : "admin"    }  ]}> db.auth('dongsheng', '123456')1> use bookswitched to db book> db.book.insert({book: '笑傲江湖'})WriteResult({ "nInserted" : 1 })> db.book.find(){ "_id" : ObjectId("5959b59fdcc047dfe5c9b337"), "book" : "小人書" }{ "_id" : ObjectId("5959b7abdcc047dfe5c9b339"), "book" : "笑傲江湖" }

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产免费一区二区三区在线能观看 | 精品一区久久久 | 国产在线精品91 | 国产精品久久久久久久久粉嫩 | 日韩黄色在线播放 | 12av毛片| 视频一区二区三区在线播放 | 美女视频网站黄色 | 69性欧美高清影院 | 久久毛片免费观看 | 国产日韩欧美一区 | 久久久激情网 | 一区二区三区无码高清视频 | 午夜精品一区二区三区免费 | 日本xxxx色视频在线观看免费, | av影院在线播放 | 国产午夜精品久久久久久免费视 | 成人福利电影在线观看 | 毛片在哪看 | 精品亚洲成a人在线观看 | 日本黄色a视频 | 国产精品久久在线观看 | 毛片在线免费观看完整版 | 成人在线视频一区 | 国产一区二区在线观看视频 | 日本欧美一区二区三区在线播 | 亚洲天堂成人在线 | a集毛片| 日韩一级免费毛片 | 国产成人在线一区二区 | 欧美性生活视频免费看 | 久久靖品 | 成人三级电影在线 | 黄色片视频观看 | 毛片大全在线观看 | 欧美成人精品一区二区三区 | 国产精品wwww| 日韩毛片一区二区三区 | 天天看天天摸天天操 | 黄色大片免费网站 | 欧美成人午夜一区二区三区 |