登录认证:db.auth( <username>, <password> )
查看账号:db.system.users.find();
修改密码:db.changeUserPassword("reporting", "123456")
1:添加一个products的readWrite和dbAdmin账号
use products
db.createUser(
{
user: "accountUser",
pwd: "password",
roles:
[ "readWrite", "dbAdmin" ]
}
)
登录:db.auth('accountUser','password')
2:添加一个maxiangqian的只读账号
db.createUser(
{
user: "maxiangqian",
pwd: "maxiangqian",
roles:
[ { role: "Read", db: "maxiangqian" } ]
}
)
登录:db.auth('maxiangqian','maxiangqian')
3:添加一个空用户
use admin
db.createUser(
{
user: "reportsUser",
pwd: "password",
roles:
[ ]
}
)
4:添加一个超级管理员账号
use admin
db.createUser(
{
user: "maxiangqian",
pwd: "maxiangqian",
roles:
[ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
db.auth(
'maxiangqianadmin','maxiangqianadmin')
5:admin数据库添加读写权限和群集管理员权限
use admin
db.createUser(
{
user: "appAdmin",
pwd: "password",
roles:
[
{ role: "readWrite", db: "config" },
"clusterAdmin"
]
}
)
db.updateUser()
语法格式如下:
db.updateUser(
"
<username>",
{
customData : {
<any information> },
roles :
[
{ role: "<role>", db: "<database>" } | "<role>",
...
],
pwd: "
<cleartext password>"
},
writeConcern: {
<write concern> }
)
修改密码:db.changeUserPassword()
db.changeUserPassword("accountUser", "SOh3TbYhx8ypJPxmt1oOfL")
删除用户:db.removeUser(username)
db.dropAllUsers( {w: "majority", wtimeout: 5000} )
删除某个用户:
use products
db.dropUser("reportUser1", {w: "majority", wtimeout:
5000})
授予账号权限:
db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )
例子
use products
db.grantRolesToUser(
"accountUser01",
[ "readWrite" , { role: "read", db: "stock" } ],
{ w: "majority" , wtimeout:
4000 }
)
收回权限:
db.revokeRolesFromUser( "<username>", [ <roles> ], { <writeConcern> } )
例子:(The following db.revokeRolesFromUser() method removes the two of the user’s roles: the read role on the stock database and the readWrite role on the products database)
use products
db.revokeRolesFromUser( "accountUser01",
[ { role: "read", db: "stock" }, "readWrite" ],
{ w: "majority" }
)
获取当前用户权限:
use accounts
db.getUser("appClient")
账号角色以及权限:
1,内建的角色
2,数据库用户角色:read、readWrite;
3,数据库管理角色:dbAdmin、dbOwner、userAdmin;
4,集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
5,备份恢复角色:backup、restore;
6,所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
7,超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
8,内部角色:__system
角色说明:
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com
所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298
本贴地址:https://www.yunweiku.com/thread-424247-1-1.html
上篇帖子:
C# MongoDB 查询,分组,聚合,排序,条件,分页
下篇帖子:
Mongodb注入