1,启动没有访问控制的MongoDB服务
<代码> sudo服务mongod开始代码>
2,连接到实例
<代码> mongo——端口27017 代码>
指定额外的命令行选项来连接Mongo shell到部署Mongodb服务器,如——主机
3,创建的用户管理员
使用管理
引用>
db。createUser (
{
用户:“myUserAdmin”,
pwd:“abc123”,
角色:[{角色:“userAdminAnyDatabase”, db:“admin”}]
}
)4,重新启动MongoDB实例,并启用访问控制
1,重新启动mongod实例,如果使用配置文件的设置,安全。授权:
<代码> vi/etc/mongod.参看代码>
修改内容:
,,,安全:
引用>
,,,,授权:启用
2,注意:键和值之间一定要加空格,否则解析会报错
,,,重启服务:
<代码>,,,sudo服务mongod开始代码>
5,用户管理员身份验证
1,创建连接mongo shell时进行授权,指定- u & lt; username> - p & lt; password>,和——authenticationDatabase & lt; database>
<代码> mongo——端口27017 - u - p“abc123”——authenticationDatabase“myUserAdmin”“admin”代码>
2, mongo shell连接时不认证,使用db.auth()授权
,,,使用管理
引用>
,,db。身份验证(“myUserAdmin”、“abc123”)
- - - - - - - - - - - - - - - - - - - - - -服务器以开启认证后,如何添加用户- - - - - - - - - - - - - - - - - - - - - -
1,启动MongoDB实例的访问控制
启动mongod实例AUTH命令行选项,如果使用配置文件的设置,安全。授权。
<代码> sudo服务mongod开始代码>
2,通过本地主机异常连接MongoDB实例
添加第一个用户,使用本地主机异常,连接一个mongod实例。运行Mongo shell和mongod实例必须来自同一主机
3,同上创建用户方式相同
- - - - - - - - - - - - - - - - - - - - - -普通用户安全访问权限- - - - - - - - - - - - - - - - - - - - - -
1,启动MongoDB
<代码>服务mongod开始代码>
2,再次打开MongoDB shell
1,蒙戈——端口27017 - u - p“abc123”——authenticationDatabase“myUserAdmin”“admin”2,蒙戈
,,,使用管理
引用>
,,db.auth (“myUserAdmin”、“abc123”)3,显示集合:报错
,,因为用户myUserAdmin只用用户的管理权限
3,创建用户,用户都跟着数据库走
为myuseradmin创建用户myuseradmin在管理数据库
使用管理
引用>
db。createUser (
{
用户:“myUserAdmin”,
pwd:“abc123”,
角色:[{角色:“userAdminAnyDatabase”, db:“admin”}]
}
)4,查看刚刚创建的用户
<代码> 代码>
显示用户5,查看整个MongoDB全部的用户
使用管理
引用>
db.system.users.find ()
.pretty db.system.users.find () ()
6,创建完毕,进行验证
使用测试
引用>
db.auth (test1, test1)
1
显示集合
ypmlist
- - - - - - - - - - - - - - - - - - - - - -修改权限- - - - - - - - - - - - - - - - - - - - - -
1, updateuser()方法:
1、实例
db。updateUser (
引用>
“& lt; username>”,
{
customData: {& lt;任何information>},
角色:[
{角色:“& lt; role>”db:“& lt; database>“}| & lt; role>“,
…
),
pwd:“& lt;明文password>”
},
writeConcern: {& lt;写concern>}
)2,参数介绍:,,
,,1、用户名:要更新的用户名。,,,2、更新:替换用户数据的文档,此数据完全取代了用户的相应数据。
,,,3,writeConcern:可选,写操作级别。
MongoDB 3.0 +安全权限访问控制详解