我尝试使用CouchDB进行用户/角色身份验证(基于会话),但是一旦我在数据库中输入角色,所有用户和角色都可以访问数据库->未授权。
获取会话:
它返回(userCtx对象):
{
"ok": true,
"name": "some_user_name",
"roles": [
"developers"
]
}
然后我将角色添加到数据库中:
{
"admins": {
"names": [],
"roles": []
},
"members": {
"names": [],
"roles": [
"developers"
]
}
}
它返回{"ok":true}
,我也可以在fauxton中看到权限。
当我现在尝试使用时访问数据库
它返回:
{
"error": "unauthorized",
"reason": "You are not authorized to access this db."
}
答案 0 :(得分:0)
啊啊,我发现了错误,我正在与邮递员进行测试,在那里我没有意识到凭据不是随请求一起发送的:-(
答案 1 :(得分:0)
如果您使用的是 Postman,请在 Headers 中添加以下键值
"Content-Type": "application/json",
Accept: "application/json",
Authorization: "Basic " + btoa("YOUR_ADMIN_USER:YOUR_PASSWORD")