成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

mongoDB初階系列一:用戶和權(quán)限

CastlePeaK / 3509人閱讀

摘要:本文將重點(diǎn)介紹的用戶和權(quán)限這一部分。結(jié)果返回,表示管理員登錄成功。接下來,用這個管理員給數(shù)據(jù)庫創(chuàng)建一個普通用戶,并指定其權(quán)限為。

前言

對于數(shù)據(jù)庫而言,用戶和權(quán)限是非常重要的一部分,因?yàn)檫@涉及到安全,那么mongoDB的用戶和權(quán)限是怎么樣的呢?

說明 環(huán)境說明

本文所用的mongoDB版本是3.6,操作系統(tǒng)是windows。

其他說明

限于篇幅,本文不會介紹數(shù)據(jù)庫從下載到安裝的過程,關(guān)于安裝教程,網(wǎng)上有大量教程,你可以按照這些教程把它裝好跑起來。本文將重點(diǎn)介紹mongoDB的用戶和權(quán)限這一部分。

服務(wù)端和客戶端

對于mongoDB,分為服務(wù)端和客戶端。
在windows環(huán)境的安裝目錄下,直接雙擊打開mongod.exe,即可開啟mongoDB服務(wù)。
當(dāng)服務(wù)開啟后,便可以雙擊mongo.exe打開客戶端來連接到mongoDB服務(wù)。

開啟授權(quán)模式

mongoDB安裝后,如果直接用mongod.exe開啟服務(wù),默認(rèn)是沒有開啟授權(quán)模式的,如果你的mongoDB沒有開啟授權(quán)模式,那么任何人都不需要用戶名和密碼也可以登錄到mongoDB服務(wù)端,對你的數(shù)據(jù)庫為所欲為,甚至直接刪庫跑路。所以,在產(chǎn)品環(huán)境中,請確保一定記得開啟授權(quán)模式。

那么,怎么開啟授權(quán)模式呢?
打開cmd,進(jìn)入到安裝目錄的bin目錄下,執(zhí)行如下命令:

mongod --auth --port 27017 --dbpath /data/db

開啟了授權(quán)模式后,打開mongo.exe,在admin數(shù)據(jù)庫下,執(zhí)行show dbs,這時(shí),數(shù)據(jù)庫會報(bào)錯,提醒沒有授權(quán)。如下:

用戶類型

mongoDB數(shù)據(jù)庫,大致分為兩類用戶,一種是管理員用戶,一種是普通用戶。

管理員

我們在admin數(shù)據(jù)庫中創(chuàng)建一個管理員用戶(userAdmin or userAdminAnyDatabase role),管理員用戶可以管理普通用戶。
首先,以非授權(quán)模式開啟mongoDB服務(wù)。

mongod --port 27017 --dbpath /data/db

然后進(jìn)入admin數(shù)據(jù)庫,執(zhí)行如下命令:

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

當(dāng)提示Successfully added user,證明這個管理員用戶已經(jīng)添加成功。

普通用戶

當(dāng)管理員用戶創(chuàng)建成功后,我們便可以用這個管理員用戶來給每個數(shù)據(jù)庫來創(chuàng)建普通用戶。
首先,關(guān)閉上面所有的mongo shell窗口。
再以授權(quán)模式開啟mongoDB服務(wù)。

mongod --auth --port 27017 --dbpath /data/db

打開mongo.exe客戶端,進(jìn)入admin數(shù)據(jù)庫,用db.auth()登錄。

第一個參數(shù)是上面創(chuàng)建的管理員用戶名larry,第二個參數(shù)是管理員用戶larry的密碼。
結(jié)果返回1,表示管理員larry登錄成功。
接下來,用這個管理員給photo_app數(shù)據(jù)庫創(chuàng)建一個普通用戶moddx,并指定其權(quán)限為readWrite。

use photo_app
db.createUser(
{
  user: "moddx",
  pwd: "123456",
  roles: [{ role: "readWrite", db: "photo_app"}]
}
)
查看用戶 全局所有賬戶

首先,要以管理員賬戶登錄到admin數(shù)據(jù)庫,接著執(zhí)行如下命令:

db.system.users.find().pretty()

當(dāng)前庫下的賬戶

查看全局所有賬戶,只有管理員才可以查看,而查看當(dāng)前庫中的帳號,普通用戶和管理員用戶都可以查看,查看當(dāng)前庫下的帳號命令如下:

show users

刪除用戶

必須擁有dropUser權(quán)利的管理員帳號才能刪除用戶,所以,需要用管理員賬戶登錄進(jìn)行操作。
刪除myblog數(shù)據(jù)庫中普通用戶moddx的命令如下:

use myblog
db.dropUser("moddx", {w: "majority", wtimeout: 5000})
撤銷權(quán)限

撤銷一個用戶的權(quán)限,命令如下:

db.revokeRolesFromUser(
    "moddx",
    [
      { role: "readWrite", db: "photo_app" }
    ]
)

注意:上面命令雖然撤銷了moddx用戶在photo_app數(shù)據(jù)庫中的讀寫權(quán)限,但是,用戶并沒有刪除,依舊可以登錄。

授予權(quán)限

如下命令給了用戶moddx在photo_app中的讀寫權(quán)限,同時(shí),給予了他在demodb數(shù)據(jù)庫中的讀權(quán)限

use photo_app
db.grantRolesToUser(
   "moddx",
   [ "readWrite" , { role: "read", db: "demodb" } ],
   { w: "majority" , wtimeout: 4000 }
)
修改密碼

如下命令修改了photo_app中用戶moddx的密碼:

use photo_app
db.changeUserPassword("moddx", "newpwd")
小結(jié)

關(guān)于用戶和權(quán)限部分,常用shell操作命令就這些,希望能夠?qū)δ闶褂胢ongoDB帶來方便。如果你需要更詳細(xì)的的介紹,請參考官方文檔:mongo shell methods

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/19333.html

相關(guān)文章

  • mongoDB初階系列二:node中的增刪改查

    摘要:前言上一篇中初階系列一用戶和權(quán)限介紹了用戶和權(quán)限,這一篇將介紹如何在中進(jìn)行增刪改查。這是初階系列的第二篇,接下來還有第三篇,借助,更優(yōu)雅地操作數(shù)據(jù)。 前言 上一篇中(mongoDB初階系列一:用戶和權(quán)限)介紹了用戶和權(quán)限,這一篇將介紹如何在node中進(jìn)行增刪改查。 準(zhǔn)備 首先,要在node中使用mongoDB,需要安裝MongoDB Driver,命令如下:npm install mo...

    Barrior 評論0 收藏0
  • mongoDB初階系列二:node中的增刪改查

    摘要:前言上一篇中初階系列一用戶和權(quán)限介紹了用戶和權(quán)限,這一篇將介紹如何在中進(jìn)行增刪改查。這是初階系列的第二篇,接下來還有第三篇,借助,更優(yōu)雅地操作數(shù)據(jù)。 前言 上一篇中(mongoDB初階系列一:用戶和權(quán)限)介紹了用戶和權(quán)限,這一篇將介紹如何在node中進(jìn)行增刪改查。 準(zhǔn)備 首先,要在node中使用mongoDB,需要安裝MongoDB Driver,命令如下:npm install mo...

    kevin 評論0 收藏0
  • mongoDB初階系列三:mongoose

    摘要:前言上篇初階系列二中的增刪改查中講解了用驅(qū)動來對數(shù)據(jù)進(jìn)行增刪改查,本篇將繼續(xù)前進(jìn),依舊通過增刪改查來講解如何用更順暢的操控。查下面這段代碼對集合進(jìn)行搜索,并輸出每項(xiàng)任務(wù)的唯一和描述,等打印完成后,關(guān)閉數(shù)據(jù)庫連接。 前言 上篇 mongoDB初階系列二:node中的增刪改查 中講解了用node驅(qū)動來對數(shù)據(jù)進(jìn)行增刪改查,本篇將繼續(xù)前進(jìn),依舊通過增刪改查來講解如何用mongoose更順暢的操...

    Null 評論0 收藏0
  • mongoDB初階系列三:mongoose

    摘要:前言上篇初階系列二中的增刪改查中講解了用驅(qū)動來對數(shù)據(jù)進(jìn)行增刪改查,本篇將繼續(xù)前進(jìn),依舊通過增刪改查來講解如何用更順暢的操控。查下面這段代碼對集合進(jìn)行搜索,并輸出每項(xiàng)任務(wù)的唯一和描述,等打印完成后,關(guān)閉數(shù)據(jù)庫連接。 前言 上篇 mongoDB初階系列二:node中的增刪改查 中講解了用node驅(qū)動來對數(shù)據(jù)進(jìn)行增刪改查,本篇將繼續(xù)前進(jìn),依舊通過增刪改查來講解如何用mongoose更順暢的操...

    yzzz 評論0 收藏0
  • MongoDB用戶角色解釋系列(上)

    摘要:每個角色只應(yīng)該為該角色授予必要的權(quán)限,并且只應(yīng)該為用戶分配適合其需求的角色。注解如果您還在掌握查詢語言,像這樣的工具有一個直觀的用戶管理器特性,這使得用戶管理更加直觀和直觀。 本文來自MongoDB中文社區(qū):http://www.mongoing.com/ 1、介紹 本文討論保護(hù)MongoDB數(shù)據(jù)庫所需的訪問控制。具體來說,我們可以使用這些特性來確保只有經(jīng)過授權(quán)的用戶才能訪問數(shù)據(jù)庫。每...

    paney129 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<