我正在尝试通过Sails的JSON为经过身份验证的用户发送所有权限。
我目前的代码,用于查找单个模型类型的权限:
hasPermission: function hasPermission(req, res) {
var permitted = PermissionService.isAllowedToPerformAction({
method: req.param('method'),
model: sails.models[req.param('model')],
user: req.user
});
return res.json(200, { permitted: permitted });
}
此代码不起作用,因为isAllowedToPerformAction
想要一个模型的单个实例。有没有办法返回一个占所有权限的单个JSON文件?
答案 0 :(得分:4)
实施例
PermissionService.createRole({
name: 'carsCategoryAdmin',
permissions: [
{ action: 'update', model: 'review', criteria: [{ where: { category: 'cars'}}]},
{ action: 'delete', model: 'review', criteria: [{ where: { category: 'cars'}}]}
],
users: ['venise']
})
您可以检查角色及相关权限和用户,
Role.find({name:'carsCategoryAdmin'})
.populate('users')
.populate('permissions')
.exec(console.log)
查看更多@ sails-permissions-by-example
在2014年5月10日 skrichten 中了解如何通过评论中的代码获取user permissions。