来源:我的博客站 OceanicKang |《MongoDB 数据操作(十)用户管理》
上一篇:《MongoDB 数据操作(九)深入操作(2)GridFS》
在 MongoDB 里面默认情况下只要是进行连接都可以不使用用户名与密码
因为要想让其起作用,则必须具备以下两个条件,缺一不可:
- 条件一:服务启动的时候打开授权认证
- 条件二:需要配置用户名和密码
但是需要明确的是,如果要想配置用户名和密码一定是针对于一个数据库的,例如现在要创建的是 oceanickang
数据库的用户
那么就必须首先切换到 oceanickang
数据库上
执行用户的创建(用户名:hello,密码:php)
任何用户都必须具备一个自己的操作角色
最基础的角色:read
、readWrite
> use oceanickang
> db.createUser({
"user": "hello",
"pwd": "php",
"roles": [
{"role": "readWrite", "db": "oceanickang"}
]
});
现在就表示已经成功创建了 hello
用户
如果要想让此用户名起作用,则必须以授权的方式打开 MongoDB 的服务
修改 MongoDB 的启动文件,将 noauth = true
修改为 auth = true
之后重启服务器再执行操作,显示未授权
登录数据库的时候进行授权
> mongo localhost:27017/oceanickang -u hello -p php
此时成功实现了用户的登录操作
修改密码
> db.changeUserPassword("hello", "happy");
如果要修改密码,则需要先关闭授权登录,不然会报错
【完结】