我的只读用户可以写 [英] My read-only user is able to write
本文介绍了我的只读用户可以写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用的是 MongoDB 3.0.7.我有一个名为 bravegoat
的数据库和一个名为 bravegoat-r
的只读用户.
I'm using MongoDB 3.0.7. I have a database called bravegoat
and a read-only user called bravegoat-r
.
我通过 shell 连接:
I connect via shell:
mongo localhost:27017/bravegoat -u bravegoat-r -p mypassword
我切换到我的数据库:
use bravegoat;
然后我跑:
db.runCommand({connectionStatus : 1})
输出:
{
"authInfo" : {
"authenticatedUsers" : [
{
"user" : "bravegoat-r",
"db" : "bravegoat"
}
],
"authenticatedUserRoles" : [
{
"role" : "read",
"db" : "bravegoat"
}
]
},
"ok" : 1
}
只有read
角色,所以看起来不错,但是当我调用.save()
时,我的用户可以插入数据.我已经阅读了几页关于创建只读用户的页面,但我看不到我的问题.我开始认为这可能是我的版本中的一个错误.
Only read
role, so it looks fine, but when I invoke .save()
, my user can insert data. I've read few pages about creating read-only users and I'm not able to see my problem. I'm starting to think it might be a bug in my version.
推荐答案
您必须通过执行以下操作来启用客户端访问控制:
You have to enable client access control by doing the following:
- 编辑
/etc/mongod.conf
文件 - 添加以下几行
安全性:授权:启用
- 重启 MongoDB:
sudo service mongodb restart
这篇关于我的只读用户可以写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文