首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MongoDB中定义用户和角色

在MongoDB中定义用户和角色
EN

Stack Overflow用户
提问于 2015-01-15 09:07:30
回答 1查看 707关注 0票数 0

我试图在MongoDB中定义一个用户,它能够读取DB中的all集合,但能够将数据插入到两个集合:日志和度量。

我使用下面的命令来设置它:创建一个角色:

代码语言:javascript
复制
use Emerald
db.runCommand({ createRole: "ApiReaderRole",
  privileges: [
    { resource: { db: "Emerald", collection: "Metrics" }, actions:  [ "insert" ] },
    { resource: { db: "Emerald", collection: "Logs" }, actions:  [ "insert" ] }
  ],
  roles: [
    { role: "read", db:"Emerald" }
  ],
  writeConcern: { w: "majority" , wtimeout: 5000 }
})

创建一个用户:

代码语言:javascript
复制
use Emerald

db.createUser({
    "user": "EmeraldAPIreader",
    "pwd": "emrldApi+",
    "roles": [
        {
            role: "ApiReaderRole",
            db: "Emerald"
        },
        {
            role: "read",
            db: "Emerald"
        }
    ]
},
{
    w: "majority",
    wtimeout: 5000
})

我将所需的凭据添加到连接字符串中,当我试图(通过C#代码)将一个数据插入到我定义为只读的集合中时,它会成功(我希望得到一个未经授权的异常)。我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-18 12:49:36

解决了,我没有在MongoDB模式下运行客户端访问控制服务。现在,使用Auth标志,一切都很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27959932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档