8

我正在尝试通过来自 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 文件?

4

1 回答 1

4
  1. 尝试创建角色并授予他们权限。
  2. 为用户分配角色

前任。

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

了解如何使用skrichten 在 2014 年 5 月 10 日给出的评论中的代码获取用户权限

于 2015-10-30T13:37:14.523 回答