-1
我使用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();
}
});
希望这会有所帮助。