我使用 Loopback Framework 创建多个服务,并使用 api 网关 (tyk) 来管理它们。
不幸的是,我看不到如何为每个人设置访问控制。
我不希望用户访问不属于他的数据。
非常感谢,
我使用 Loopback Framework 创建多个服务,并使用 api 网关 (tyk) 来管理它们。
不幸的是,我看不到如何为每个人设置访问控制。
我不希望用户访问不属于他的数据。
非常感谢,
您可以轻松地使用两种方法来保护您的模型。
1.来自model.json文件
在您的模型 model.json 中,您可以包含 ACL 对象。
"acls": [{
"accessType": "EXECUTE",
"principalType": "ROLE",
"principalId": "$authenticated",
"permission": "ALLOW"
}, {
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
}]
2.在model.js文件中使用操作钩子可以使用操作钩子来操作安全性。
例子
Template.observe('access', function (ctx, next) {
if(ctx.options.team){
var teamId = ctx.options.team.teamId;
ctx.query.where= ctx.query.where || {or :[ {user_created : 0},{teamId : teamId}]} ;
next();
}
});
希望这会有所帮助。