Authentication 环回身份验证错误

Authentication 环回身份验证错误,authentication,loopbackjs,Authentication,Loopbackjs,在过去的几个小时里,我一直在试图理解为什么在身份验证后我无法访问我的任何模型 假设我有一个模型my_模型,它的json文件中包含以下内容 "acls": [ { "accessType": "*", "property" : "*", "principalType": "ROLE", "principalId": "$authenticated", "permission": "ALLOW" }, {

在过去的几个小时里,我一直在试图理解为什么在身份验证后我无法访问我的任何模型

假设我有一个模型my_模型,它的json文件中包含以下内容

"acls": [
    {
      "accessType": "*",
      "property" : "*",
      "principalType": "ROLE",
      "principalId": "$authenticated",
      "permission": "ALLOW"
    },
    {
      "accessType": "*",
      "property" : "*",
      "principalType": "ROLE",
      "principalId": "$unauthenticated",
      "permission": "DENY"
    }
  ],
我有一个模型用户,它扩展了用户

我去做POST/users/login,收到一些id我的令牌。 但是,在请求时

我得到以下回应:

{
  "error": {
    "name": "Error",
    "status": 401,
    "message": "Authorization Required",
    "statusCode": 401,
    "code": "AUTHORIZATION_REQUIRED",
    "stack": "Error: Authorization Required\n    at 
      bla
    }
 }
我尝试使用DEBUG=loopback:security:*但它并没有真正提供信息

loopback:security:access-context   ttl 1209600 +3ms
  loopback:security:access-context getUserId() null +2ms
  loopback:security:access-context isAuthenticated() false +1ms
  loopback:security:role Custom resolver found for role $authenticated +1ms
  loopback:security:role isInRole(): $unauthenticated +1ms
  loopback:security:access-context ---AccessContext--- +1ms
  loopback:security:access-context principals: [] +1ms
  loopback:security:access-context modelName my_model +1ms
  loopback:security:access-context modelId undefined +2ms
  loopback:security:access-context property find +1ms
  loopback:security:access-context method find +2ms
  loopback:security:access-context accessType READ +1ms
  loopback:security:access-context accessToken: +1ms
  loopback:security:access-context   id "eYKYFzfKLCF3Pq0QG8xcWjy4ZXR0fYHGLMvj6j5SbR9v30ctWaFAyXpTdFQvZ6FO" +1ms
  loopback:security:access-context   ttl 1209600 +1ms
  loopback:security:access-context getUserId() null +1ms
  loopback:security:access-context isAuthenticated() false +1ms
  loopback:security:role Custom resolver found for role $unauthenticated +1ms
  loopback:security:acl The following ACLs were searched:  +2ms
  loopback:security:acl ---ACL--- +1ms
  loopback:security:acl model my_model +2ms
  loopback:security:acl property * +2ms
  loopback:security:acl principalType ROLE +2ms
  loopback:security:acl principalId $unauthenticated +2ms
  loopback:security:acl accessType * +1ms
  loopback:security:acl permission DENY +1ms
  loopback:security:acl with score: +1ms 7499
  loopback:security:acl ---Resolved--- +1ms
  loopback:security:access-context ---AccessRequest--- +0ms
  loopback:security:access-context  model mo_model +1ms
  loopback:security:access-context  property find +1ms
  loopback:security:access-context  accessType READ +1ms
  loopback:security:access-context  permission DENY +2ms
  loopback:security:access-context  isWildcard() false +1ms
  loopback:security:access-context  isAllowed() false +1ms
我的身份验证不起作用有什么原因吗


非常感谢

我也有同样的问题。来了解一下,您不能拥有id==0的用户

因此,我删除了我试图使用的第一个用户,并将id更改为1,它按预期工作


希望这能为其他人省去麻烦。

我也有同样的问题。来了解一下,您不能拥有id==0的用户

因此,我删除了我试图使用的第一个用户,并将id更改为1,它按预期工作


希望这能为其他人省去麻烦。

如果您通过/explorer登录并在那里设置令牌,这些东西有用吗?不。这两种方法都没有奏效。我在想,可能是因为用户和我的_模型之间没有定义关系@雷蒙德·卡姆德纳不需要两者之间的关系。事实上,你说$authenticated已经足够了,或者应该足够了。但getUserId返回null的事实令人担忧。你的数据源是什么?你所说的数据源是什么意思?我使用strongloop创建我的appDatasource,它指的是数据的持久化方式。如何持久化它?如果您通过/explorer登录并在那里设置令牌,那么这些东西是否有效?不。这两种方法都没有奏效。我在想,可能是因为用户和我的_模型之间没有定义关系@雷蒙德·卡姆德纳不需要两者之间的关系。事实上,你说$authenticated已经足够了,或者应该足够了。但getUserId返回null的事实令人担忧。你的数据源是什么?你所说的数据源是什么意思?我使用strongloop创建我的appDatasource,它指的是数据的持久化方式。你是怎么坚持的?