我已经基于内置的用户模型创建了一个模型Webuser。
这是“webuser.json”中此模型的ACL条目:
"acls": [
{
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
}
]
令我惊讶的是,我可以通过POST / api / webusers / login登录,没有任何问题。我希望所有访问都被拒绝。
我做错了什么?
答案 0 :(得分:0)
我相信default user acls仍然有效,而且他们没有被超越。环回决定哪个ACL条目对请求有效的方式是选择稍后出现的最具体的条目。所以loopback定义了这个条目:
{
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW",
"property": "login"
}
因为它具有特定性,所以要打败你必须在模型中添加它:
{
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY",
"property": "login"
}
还有另一种通过代码删除默认用户acls的方法,但没有记录。