如何保护记录级别的数据?

How can I secure data on record level?

我对 Strongloop 的经验不多,但也许有人可以指导我正确的方向。

在我的模型中,我有客户的信息。客户必须有权访问自己的记录,但不能访问其他客户的记录。我怎样才能做到这一点?

Strongloop ACL 可以在模型中轻松定义 JSON 定义:

"acls": [
    {
      "accessType": "*",
      "principalType": "ROLE",
      "principalId": "$everyone",
      "permission": "DENY"
    },
    {
      "accessType": "EXECUTE",
      "permission": "ALLOW",
      "principalType": "ROLE",
      "principalId": "$owner",
      "property": "findById"
    }
]

ACL 定义拒绝任何人访问模型,并允许所有者读取它。

请注意,必须有模型列 userId 才能使用内置 $owner 主体 ID。

ACL 定义文档:https://docs.strongloop.com/display/public/LB/Model+definition+JSON+file#ModeldefinitionJSONfile-ACLs

高级ACL控制官方示例工程: https://github.com/strongloop/loopback-example-access-control