1. 程式人生 > >為MongoDB新增身份驗證

為MongoDB新增身份驗證

MongoDB 預設沒有開戶身份驗證,除非不開放外網訪問,否則這種模式極不安全,現紀錄新增身份驗證步驟如下:

配置建立使用者的時候,需要關閉:

#security:
##副本集之間通訊用到的認證檔案
# keyFile: /home/soft/mongodb-linux-x86_64-rhel62-3.4.2-shard2/mongo-key
# clusterAuthMode: "keyFile"
##開啟身份驗證
# authorization: "enabled"

因為你要用use admin,如果你開啟授權的話,你又沒有密碼。故。。。增加使用者的時候,先把這些授權的給註釋掉。

1:在新增驗證之前,先執行mongo建立一個管理員使用者,否則開戶驗證後無法登入

use admin

db.createUser(

{

user: "root",

pwd: "abc123",

roles: [ { role: "root", db: "admin" } ]

}

)

2:匯出keyfile(用於叢集之間驗證身份),並拷貝到各個機器中

匯出認證key檔案

openssl rand -base64 741 > mongo-key

chmod 600 mongo-key  #這裡必須是600

3:停止mongod執行緒   ./mongod -f mongod.conf --shutdown

4:在mongod.conf檔案中新增如下配置:

新增mongodb使用者

security:

##副本集之間通訊用到的認證檔案

keyFile: /home/soft/mongodb-3.2.1/mongo-key

clusterAuthMode: "keyFile"

##開啟身份驗證

authorization: "enabled"

5:啟動mongod

6:啟動mongo

7:現在新增其他用途的使用者,但首先必須進行身份認證

認證並新增使用者

use admin;

db.auth("root",

"abc123");

建立使用者前,首先要切換到要建立使用者的資料庫,否則會建立到當前庫中

use candao_qc;

db.createUser({//建立一個可讀寫candao_qc庫的使用者

user: "candao_sys",

pwd: "candao2016",

roles: [{ role: "dbOwner", db: "candao_qc" }]

});

db.createUser({//建立一個只讀使用者

user: "candao_user",

pwd: "candao_2016",

roles: [{ role: "read", db: "candao_qc" }]

});

---用這個:datacenter_qc

use datacenter_qc;

db.createUser({//建立一個可讀寫datacenter_qc庫的使用者

user: "candao_sys",

pwd: "candao2016",

roles: [{ role: "dbOwner", db: "datacenter_qc" }]

});

db.createUser({//建立一個只讀使用者

user: "candao_user",

pwd: "candao_2016",

roles: [{ role: "read", db: "datacenter_qc" }]

});

這裡需要注意: db,qc環境為:datacenter_qc,正式環境就是:datacenter_release

8:現在在程式碼中連線資料庫時需要指定使用者和密碼了

修改前:mongodb://192.168.86.73:27017/datacenter_qc?replicaSet=candao_qc

修改後:mongodb://candao_sys:[email protected]:27017/datacenter_qc?replicaSet=candao_qc&authSource=datacenter_qc

相關推薦

MongoDB新增身份驗證

MongoDB 預設沒有開戶身份驗證,除非不開放外網訪問,否則這種模式極不安全,現紀錄新增身份驗證步驟如下: 配置建立使用者的時候,需要關閉: #security: ##副本集之間通訊用到的認證檔案 # keyFile: /home/soft/mongodb-linu

mongodb開啟身份驗證

前言 此處記錄一下mongodb開啟身份驗證的步驟 具體步驟 安裝mongodb mac下直接使用homebrew安裝即可:brew install mongodb,windows則下載對應的安裝包 建立使用者 # 超級管理員 use admin db.creat

大資料Hadoop系列之Hadoop Web控制檯新增身份驗證

1. 背景介紹 本文件介紹如何配置Hadoop HTTP Web控制檯以要求使用者身份驗證。 預設情況下,Hadoop HTTP Web控制檯(ResourceManager,NameNode,NodeManagers和DataNodes)允許訪問而無需任何形式的身份驗證

SQL Server 2008 Windows身份驗證混合模式身份驗證

由於需要,要把SQL2008單一的Windows身份驗證改為混合模式身份驗證。在此做一備忘。 步驟: 1、用Windows身份驗證方式進入SQL2008,如下圖:   點選連線,如果出現錯誤首先,我們應該想到的是,Sqlserver2008的服務沒有開啟,我們開啟服務後重新

SQL身份驗證混合模式身份驗證

由於需要,要把SQL2008單一的Windows身份驗證改為混合模式身份驗證。在此做一備忘。 步驟: 1、用Windows身份驗證方式進入SQL2008,在【物件資源管理器】右鍵擊【根目錄】: 選擇右鍵選單中的【屬性】: 選擇【安全性】,然後勾選【Sql Server和

wordpress後臺登陸新增算術驗證

對於新建站(個人部落格-檸檬https://ninmong.com)的站長來說提高後臺的安全性,是一件非常重要的事,新增驗證可以起到很好的效果,廢話少說,貼程式碼 //後臺登陸數學驗證碼 function rhymo_add_login_fields() { //獲取兩個隨機數, 範圍0~9 $nu

MongoDB使用者和身份驗證

MongoDB是一個介於關係資料庫和非關係資料庫之間的產品,是非關係資料庫當中功能最豐富,最像關係資料庫的。這裡推薦一個快速入門教程 - 8天學通 MongoDB,寫的很全面。這裡討論的是 MongoDB 的使用者和身份驗證。 在預設情況下,MongoDB 不會進行身份驗證,也沒有賬號

mongodb呼叫js檔案以及身份驗證

在呼叫js檔案時,一直找不到js檔案,只要配置環境變數就好了。 呼叫js檔案的三種方式 身份驗證(在admin資料庫中增加使用者後,需要在config.conf配置檔案中加 auth

MongoDB管理使用者並啟用身份驗證

MongoDB安裝完成後沒有預設的使用者,需要手動建立,在啟用身份驗證訪問控制之前,我們可以先建立管理員,給管理員賦予userAdmin 或 userAdminAnyDatabase 角色,這樣管理員就可以建立使用者,授予或撤銷使用者角色,以及建立或修改定義角色

mongodb 新增使用者名稱密碼驗證

mongo localhost -u username -p pwd --authenticationDatabase admin --authenticationMechanism SCRAM-SHA-1 db.createUser( { user:

新增 – Amazon WorkSpaces 託管裝置身份驗證

Amazon Workspaces 允許您通過 Web 和各種桌面和移動裝置訪問雲中的虛擬桌面。WorkSpaces 的這種靈活性使它非常適用於使用者能夠使用現有裝置 (即 BYOD,也稱為自帶裝置) 的環境。在這些環境中,組織有時需要對訪問 WorkSpaces 的裝置進行管理。例如,他們

MongoDB身份驗證--命令列模式

摘要 MongoDB3.x與之前的版本有很大區別,這裡簡單介紹一下使用者身份驗證相關內容。 1. 瞭解3.x版本新增使用者的函式 函式: db.createUser(user,writeConcern); 引數: user這個文件關於使用者身

使用POIExcel新增資料有效性驗證

根據客戶要求需要新增資料有效性驗證。但是在查詢多方資料後發現,POI無法讀取到檔案中的有效性驗證,只能新增。無奈之下只能通過配置檔案的方式去添加了。 給Excel新增資料有效性的驗證,xls格式和xlsx格式不同,通過閱讀官方文件,總結出了以下方法 /**

windows搭建MongoDB副本集及開啟身份驗證

MongoDB副本集搭建 我搭建的是一個主節點,兩個副節點 構建目錄結構如下圖所示 rs0是副本集名稱,每一份檔案都是一個埠服務,以27018為主節點。   每一份的目錄結構如下,conf存放的是配置檔案資訊,data27018是存放資料庫資料資訊,keyfile是存放key檔案的。用

Token:服務端身份驗證的流行方案

rst 服務 方案 app 過程 組件圖 wav hit margin 01- 身份認證 服務端提供資源給客戶端,但是某些資源是有條件的。所以服務端要能夠識別請求者的身份,然後再判斷所請求的資源是否可以給請求者。 token是一種身份驗證的機制,初始時用戶提交賬號數據

asp.net mvc 最簡單身份驗證 [Authorize]通過的標準

dmi api 什麽 rgs new auth 單身 mar name [Authorize] public ContentResult Index2() { return Content("驗證通過了");

spring boot 項目登錄模塊之身份驗證

ots security log space 求和 pri boot ace 數據 最近領導安排做一個微餐廳項目,需要做幾個網頁來管理數據,首先要寫一個登錄模塊,主要關註登錄成功後session中數據的存放與校驗,以及攔截器。 在網上找了挺多,找到了一篇比較簡單易懂的htt

上網行為管理AD域集成windos身份驗證SSO單點登錄

上網行為管理 一、背景需求 在大型公司項目上會使用到AD域集成windos身份驗證SS0單點登錄,而不同用戶有不同的環境,不同環境就會有不同的驗證需求,使用微軟AD域進行用戶身份驗證,會經常出現在客戶的需求中。 二、網域上網行為管理集成windos身份驗證功能。

asp.net core的身份驗證框架IdentityServer4特性一覽

google 工作流 定制 聯合 特性 tor 中控 www directory IdentityServer4是ASP.NET Core的一個包含OpenID和OAuth 2.0協議的框架。OpenID和OAuth 的區別請看 https://www.zhihu.com/

RDO遠程連接時提示“遠程計算機需要網絡級別身份驗證,而您的計算機不支持該驗證,請聯系您的系統管理員或者技術人員來獲得幫助”

tro 限制 edit 重啟 註冊 屏幕 重裝 controls border 當服務器重裝操作系統後使用RDO遠程連接時會出現錯誤提示“遠程計算機需要網絡級別身份驗證,而您的計算機不支持該驗證,請聯系您的系統管理員或者技術人員來獲得幫助” 如下圖所示