天天看點

MongoDB 3.0 使用者建立

摘要:

      MongoDB 3.0 安全權限通路控制,在添加使用者上面3.0版本和之前的版本有很大的差別,這裡就說明下3.0的添加使用者的方法。

環境、測試:

      在安裝MongoDB之後,先關閉auth認證,進入檢視資料庫,隻有一個local庫,admin庫是不存在的:

現在需要建立一個帳号,該賬号需要有grant權限,即:賬号管理的授權權限。注意一點,帳号是跟着庫走的,是以在指定庫裡授權,必須也在指定庫裡驗證(auth)。

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

上面加粗的就是執行的指令:

user:使用者名

pwd:密碼

roles:指定使用者的角色,可以用一個空數組給新使用者設定空角色;在roles字段,可以指定内置角色和使用者定義的角色。role裡的角色可以選:

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

具體角色: 

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

剛建立了 userAdminAnyDatabase 角色,用來管理使用者,可以通過這個角色來建立、删除使用者。驗證:需要開啟auth參數。

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

上面建立了2個帳号,現在驗證下:驗證前提需要一個集合

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

有沒有一個超級權限?不僅可以授權,而且也可以對集合進行任意操作?答案是肯定的,隻是不建議使用。那就是role角色設定成root。

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

因為帳号都是在目前需要授權的資料庫下授權的,那要是不在目前資料庫下會怎麼樣?

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

上面更加進一步說明資料庫帳号是跟着資料庫來走的,哪裡建立哪裡認證。

建立了這麼多帳号,怎麼檢視所有帳号?

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立

備份還原使用那個角色的帳号?之前建立的帳号zjy:test庫讀寫權限;zjyr:test庫讀權限

MongoDB 3.0 使用者建立
MongoDB 3.0 使用者建立