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>

    本帖部分内容已隐藏,请登入并回覆,以查看隐藏内容!

  • Lv 1

    不知道是不是因為版本的關係 (3.4版本)

    添加管理員帳號 沒有這麼麻煩

    直接用權限認證的方式啟動

    當mongodb裡面還沒有用戶的時候,可以直接登入添加用戶 (可直接添加超級管理員帳號)

    一旦有用戶之後,才需要有管理員權限來添加用戶


  • 註冊用戶

    helloworld  mongodb


  • 註冊用戶

    想看~快給我看~芝麻開門


  • Lv 1

    我也想看~快給我看~芝麻開門


  • Lv 1

    @henryjia

    已登入 & 回覆


  • Lv 1

    open it soon!


登录后回复
 

与 萌阔论坛 的连接断开,我们正在尝试重连,请耐心等待