用户及角色管理(下)

1.创建角色
use admin
db.createRole({ role: "myRole",
  privileges: [
    { resource: { cluster: true }, actions: [ "addShard" ] },
    { resource: { db: "local", collection: "" }, actions: [ "insert", "remove" ] }
  ],
  roles: [
    { role: "read", db: "admin" }
  ],
  writeConcern: { w: "majority" , wtimeout: 5000 }
})


2.删除角色
db.dropRole("myRole")
db.dropAllRoles();


3.获取角色详细信息
db.getRole("myRole")
db.getAllRoles()
db.runCommand({ rolesInfo: "myRole" })
db.runCommand( { rolesInfo: "myRole", showPrivileges: 1 } )


4.授予权限给角色
db.grantPrivilegesToRole(
  "myRole",
  [
    {
      resource: { db: "admin", collection: "" },
      actions: [ "find" ]
    }
  ],
  { w: "majority" }
)


5.将权限从角色收回
db.revokePrivilegesFromRole(
   "myRole",
   [
     {
       resource: { db: "admin", collection: "" },
       actions: [ "find" ]
     }
   ],
   { w: "majority" }
)


6.授予角色给角色
db.grantRolesToRole(
    "myRole",
    [ "userAdmin","dbAdmin" ],
    { w: "majority" , wtimeout: 5000 }
)


7.将角色从角色收回
db.revokeRolesFromRole( "myRole",
                        [
                          "userAdmin"
                        ],
                        { w: "majority" , wtimeout: 5000 }
                      )


8.更新角色(会覆盖)
db.updateRole(
    "myRole",
    {
      privileges: //如果省略掉这个字段 则保留以前的 如果没省略就用现在的权限替换以前的
          [
            {
              resource: { db:"admin", collection:"system.indexes" },
              actions: [ "update", "createCollection", "createIndex"]
            }
          ],
      roles://如果省略掉这个字段 则保留以前的 如果没省略 就用现在继承的权限值替换以前的
          [
            {
              role: "read",
              db: "admin"
            }
          ]
    },
    { w:"majority" }
)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值