最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于Docker的MongoDB實(shí)現(xiàn)授權(quán)訪問(wèn)的方法

 更新時(shí)間:2017年03月30日 15:45:41   投稿:mrr  
這篇文章主要介紹了基于Docker的MongoDB實(shí)現(xiàn)授權(quán)訪問(wèn)的方法,需要的朋友可以參考下

基于Docker部署一個(gè)數(shù)據(jù)庫(kù)實(shí)例通常比直接在服務(wù)器上安裝數(shù)據(jù)庫(kù)還要簡(jiǎn)單,Gevin在開(kāi)發(fā)環(huán)境中經(jīng)常使用基于docker的數(shù)據(jù)庫(kù)服務(wù),docker也漸漸成為Gevin在Linux上安裝MongoDB的首選方式,由于MongoDB默認(rèn)是不用通過(guò)認(rèn)證就能直接連接的,出于安全考慮,在公網(wǎng)上部署MongoDB時(shí),務(wù)必設(shè)置authentication機(jī)制,以避免類(lèi)似 "黑客贖金" 問(wèn)題的發(fā)生。

那么,基于Docker拉起的MongoDB,如何實(shí)現(xiàn)通過(guò)用戶(hù)名密碼訪問(wèn)指定數(shù)據(jù)庫(kù)呢?方法很簡(jiǎn)單,但前提是要了解MongoDB授權(quán)訪問(wèn)的機(jī)制,參考資料如下:

Enable Auth
Authentication
Role-Based Access Control

只要了解MongoDB授權(quán)訪問(wèn)機(jī)制,直接按下面步驟一步步執(zhí)行就可以了。

1、創(chuàng)建MongoDB實(shí)例

為了少寫(xiě)幾個(gè)命令,Gevin使用Docker Compose來(lái)創(chuàng)建MongoDB實(shí)例:

version: '2'
services:
 mongo:
  # restart: always
  image: mongo:3.2
  command: [--auth]
  ports:
   - "37017:27017"
  volumes:
   - /data/db

運(yùn)行如下命令:

docker-compose up -d
#----------
# Result:
#----------
# Creating mongodb_mongo_1
docker-compose ps
#----------
# Result:
#----------
#   Name        Command     State      Ports
# --------------------------------------------------------------------------
# mongodb_mongo_1  /entrypoint.sh --auth  Up   0.0.0.0:37017->27017/tcp

2、創(chuàng)建用戶(hù)管理員

首先要進(jìn)入MongoDB容器內(nèi)部,連上MongoDB,并切換到 admin 數(shù)據(jù)庫(kù),這步可以通過(guò)下面命令完成:

docker exec -it mongodb_mongo_1 mongo admin
#----------
# Result:
#----------
# MongoDB shell version: 3.2.12
# connecting to: admin
# Welcome to the MongoDB shell.
# For interactive help, type "help".
# For more comprehensive documentation, see
#  http://docs.mongodb.org/
# Questions? Try the support group
#  http://groups.google.com/group/mongodb-user

然后創(chuàng)建一個(gè)user administrator:

db.createUser({ 
  user: 'mongo-admin', 
  pwd: 'admin-initial-password', 
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
#----------
# Result:
#----------
Successfully added user: {
  "user" : "mongo-admin",
  "roles" : [
    {
      "role" : "userAdminAnyDatabase",
      "db" : "admin"
    }
  ]
}

3、創(chuàng)建訪問(wèn)指定數(shù)據(jù)庫(kù)的用戶(hù)

創(chuàng)建了user administrator后,需要退出mongodb,并重新連接,然后用user administrator 訪問(wèn)admin數(shù)據(jù)庫(kù),并為目標(biāo)數(shù)據(jù)庫(kù)創(chuàng)建目標(biāo)用戶(hù),其具體步驟如下:

(1)重新連接MongoDB數(shù)據(jù)庫(kù)

退出容器,重新用下面命令進(jìn)入容器即可:

docker exec -it mongodb_mongo_1 mongo admin
#----------
# Result:
#----------
MongoDB shell version: 3.2.12
connecting to: admin

(2)授權(quán)登錄admin

db.auth("mongo-admin","admin-initial-password")

(3)創(chuàng)建訪問(wèn)指定數(shù)據(jù)庫(kù)的用戶(hù)

# Step1: switch to the specified database:
use octblog
# Step2: create a user
db.createUser(
 {
  user: "gevin",
  pwd: "gevin",
  roles: [ { role: "readWrite", db: "octblog" },
       { role: "readWrite", db: "octblog-log" } ]
 }
)
#----------
# Result:
#----------
#Successfully added user: {
#  "user" : "gevin",
#  "roles" : [
#    {
#      "role" : "readWrite",
#      "db" : "octblog"
#    },
#    {
#      "role" : "readWrite",
#      "db" : "octblog-log"
#    }
#  ]
#}

這一步的目標(biāo)是為 octblog 這個(gè)數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)授權(quán)訪問(wèn)用戶(hù),首先要從 admin 數(shù)據(jù)庫(kù)切換到 octblog 數(shù)據(jù)庫(kù),然后才能為 octblog 添加授權(quán)訪問(wèn)用戶(hù)

注:

上面所以操作均為user administrator執(zhí)行的,即第二步創(chuàng)建的 mongo-admin user administrator的作用是管理用戶(hù),MongoDB下的每個(gè)數(shù)據(jù)庫(kù),用戶(hù)都被它管理,除此外,它基本沒(méi)什么更多權(quán)限做其他事情MongoDB沒(méi)有通常意義的超級(jí)用戶(hù)的概念,octblog的授權(quán)用戶(hù)只能被user administrator創(chuàng)建,而user administrator只能登陸admin數(shù)據(jù)庫(kù),所以才會(huì)有上面(2)、(3)兩步的麻煩。

以上所述是小編給大家介紹的基于Docker的MongoDB實(shí)現(xiàn)授權(quán)訪問(wèn)的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • docker安裝單點(diǎn)elasticsearch過(guò)程

    docker安裝單點(diǎn)elasticsearch過(guò)程

    這篇文章主要介紹了docker安裝單點(diǎn)elasticsearch過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Docker容器搭建并運(yùn)行實(shí)現(xiàn)過(guò)程詳解

    Docker容器搭建并運(yùn)行實(shí)現(xiàn)過(guò)程詳解

    這篇文章主要介紹了Docker容器搭建并運(yùn)行實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • .Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟

    .Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟

    本文主要介紹了.Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04
  • docker國(guó)內(nèi)鏡像源配置及走代理設(shè)置小結(jié)

    docker國(guó)內(nèi)鏡像源配置及走代理設(shè)置小結(jié)

    本文主要介紹了配置Docker國(guó)內(nèi)鏡像源及代理設(shè)置,以加快鏡像拉取速度,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • 詳解docker容器分配靜態(tài)IP

    詳解docker容器分配靜態(tài)IP

    這篇文章主要介紹了詳解docker容器分配靜態(tài)IP,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-01-01
  • 使用Docker容器部署rocketmq單機(jī)的全過(guò)程

    使用Docker容器部署rocketmq單機(jī)的全過(guò)程

    這篇文章主要介紹了使用Docker容器部署rocketmq單機(jī),詳細(xì)介紹了查詢(xún)鏡像拉取鏡像的命令,對(duì)Docker部署rocketmq相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-04-04
  • Docker實(shí)現(xiàn)導(dǎo)入導(dǎo)出鏡像(Image)文件的代碼示例

    Docker實(shí)現(xiàn)導(dǎo)入導(dǎo)出鏡像(Image)文件的代碼示例

    在 Docker 中,鏡像(Image)是容器的基礎(chǔ),包含了應(yīng)用程序運(yùn)行所需的所有文件系統(tǒng)和配置,有時(shí),我們需要將 Docker 鏡像導(dǎo)出到文件中,以便在其他地方使用,以下將詳細(xì)介紹如何使用 Docker 導(dǎo)入導(dǎo)出鏡像文件,需要的朋友可以參考下
    2024-08-08
  • docker鏡像訪問(wèn)本地elasticsearch端口操作

    docker鏡像訪問(wèn)本地elasticsearch端口操作

    這篇文章主要介紹了docker鏡像訪問(wèn)本地elasticsearch端口操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • Docker和Kubernetes中使用代理IP的操作方法

    Docker和Kubernetes中使用代理IP的操作方法

    在Docker和Kubernetes中使用代理IP很容易,只需要在Docker守護(hù)進(jìn)程和容器運(yùn)行時(shí)添加相應(yīng)的配置即可,這篇文章主要介紹了如何在Docker和Kubernetes中使用代理IP,需要的朋友可以參考下
    2023-07-07
  • docker-desktop啟動(dòng)k8s的詳細(xì)方法

    docker-desktop啟動(dòng)k8s的詳細(xì)方法

    這篇文章主要介紹了docker-desktop啟動(dòng)k8s,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08

最新評(píng)論

读书| 临夏市| 安新县| 白玉县| 全椒县| 山丹县| 丘北县| 通化县| 侯马市| 延庆县| 佛学| 阳高县| 辰溪县| 安庆市| 洪雅县| 乐陵市| 开原市| 蓝田县| 资中县| 那坡县| 绥德县| 秭归县| 贵溪市| 隆尧县| 贵德县| 江津市| 苍山县| 饶平县| 平顶山市| 临武县| 东丰县| 庆城县| 太湖县| 兴和县| 旬阳县| 沙雅县| 扎鲁特旗| 崇礼县| 嵊州市| 宁海县| 图片|