通过模型值环回公共访问

时间:2019-02-13 13:09:58

标签: node.js rest loopbackjs

有什么办法可以使钩子成为具有模型属性 public 的签入对象,这是真的吗?如果是真的,则不需要访问令牌吗?目前,我已经实现了自定义端点。但是还有其他方法吗?

我有一个模型,其中哪里有公共属性,像这样:

{
"name": "Model",
"plural": "model",
"base": "PersistedModel",
"idInjection": false,
"options": {
    "validateUpsert": true
},
"properties": {
    "uuid": {
        "type": "string",
        "defaultFn": "uuid",
        "id": true
    },
    "orderNumber":{
        "type":"number"
    },
    "public":{
        "type":"boolean",

    },
    "roles": {
        "type": "object",
        "dataType":"longtext"
    },
    "groupId": {
        "type": "string"
    },
    "created": {
        "type": "date",
        "required": true,
        "defaultFn": "now"
    },
    "updated": {
        "type": "date",
        "required": true,
        "defaultFn": "now"
    }
},
"validations": [],
"relations": {

},
"acls": [{
    "accessType": "*",
    "principalType": "ROLE",
    "principalId": "$unauthenticated",
    "permission": "DENY"
}],
"methods": {},
"scope": {

},
"mixins": {
}

}

1 个答案:

答案 0 :(得分:0)

例如,可以通过创建一个名为accessiblePublic的动态角色来实现这一目标。

接下来,在ACL中,我将定义此角色有权访问端点。

然后,我将根据上下文中的模型来解决该角色。

我建议在Docs: Dynamic Roles

中阅读动态角色(及其中的示例)