Mongodb 用户权限配置
-
1、配置用户及权限
- 掌握权限,理解下面4条基本上就差不多
1)、mongodb是没有默认管理员账号,所以要先添加管理员账号,再开启权限认证。
2)、切换到admin数据库,添加的账号才是管理员账号。
3)、用户只能在用户所在数据库登录,包括管理员账号。
4)、管理员可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认证后才可以,这一点比较怪。
2、新建管理员帐号
<code>[root@ggnode2 ~]# mongo MongoDB shell version: 3.2.8 connecting to: test MongoDB Enterprise > use admin \\\切换数据库 switched to db admin MongoDB Enterprise > show collections; \\\还未添加用户时,admin为空库 MongoDB Enterprise > MongoDB Enterprise > db.createUser( \\\创建admin管理员用户 ... { ... user:"admin", ... pwd:"admin", ... roles:[{role:"userAdminAnyDatabase",db:"admin"}] ... } ... ) Successfully added user: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] } MongoDB Enterprise > MongoDB Enterprise > show collections system.users \\\用户表 system.version MongoDB Enterprise > db.system.users.find() { "_id" : "admin.admin", "user" : "admin", "db" : "admin", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "BEN7SONYkewFMx3f67FNQw==", "storedKey" : "HjlvcjSpXpSKetcUbJyj350Xgjk=", "serverKey" : "k2WEf2cHGgg9n3tyEMJyuKaRt3U=" } }, "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] } MongoDB Enterprise > MongoDB Enterprise > db.system.version.find() { "_id" : "authSchema", "currentVersion" : 5 } </code>
本帖部分内容已隐藏,请登入并回覆,以查看隐藏内容!
- 掌握权限,理解下面4条基本上就差不多
-
不知道是不是因為版本的關係 (3.4版本)
添加管理員帳號 沒有這麼麻煩
直接用權限認證的方式啟動
當mongodb裡面還沒有用戶的時候,可以直接登入添加用戶 (可直接添加超級管理員帳號)
一旦有用戶之後,才需要有管理員權限來添加用戶
-
helloworld mongodb
-
想看~快給我看~芝麻開門
-
我也想看~快給我看~芝麻開門
-
已登入 & 回覆
-
open it soon!