sails-permissions获取所有权限

时间:2015-10-21 21:26:48

标签: sails.js sails-permissions

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

1 个答案:

答案 0 :(得分:4)

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

    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