我只是想知道如何将属性访问限制为仅 $owner 角色。例如,在我的例子中,我有一个有作者的笑话。作者以用户为基础。我希望其他“作者”/用户看到谁创建了笑话,但他们不应该看到作者的电子邮件,只有当作者是笑话本身的 $owner 时,才可以显示他们的电子邮件,只是为了这个案子。
查看内置用户模型,您可以看到他们使用隐藏 功能来隐藏密码,但是将其用于他们的电子邮件也会隐藏他们的 $owner 电子邮件,即不是我想要的
如果有什么不清楚的地方,请告诉我。
提前致谢
最佳答案
注册beforeRemote hook并检查当前用户是否为 $owner .
Joke.boforeRemote('findById', function(context, joke, next) {
// 1. find current user by id, using context.req.accessToken.userId
// 2. check if he is owner or not, by Role.isOwner
// 3. remove email from returned joke instance if user is not $owner
})
注意:覆盖所有返回笑话的端点可能有点复杂。但是还有其他方法吗?
关于node.js - 如何使用环回保护不同角色的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28048045/