【问题标题】:Lumen Passport Password Grant Returns UnauthenticatedLumen Passport 密码授权返回未经身份验证
【发布时间】:2020-03-15 18:43:25
【问题描述】:

正如标题所说,我无法验证密码授予返回的访问令牌,而客户端凭据授予工作正常。我已经尝试了htaccess 解决方案,但没有成功。

在我的日志文件中,它说我有一个 AuthenticationException 用于密码授予令牌,如下所述。

#12 {main} {"exception":"[object] (Illuminate\\Auth\\AuthenticationException(code: 0): Unauthenticated. at /opt/lampp/htdocs/LumenApiGateway/vendor/laravel/passport/src/Http/Middleware/CheckClientCredentials.php:88)

从这个错误中,我查看了类 CheckClientCredentials 并在上述行 (88) 上,导致 AuthenticationException 的条件是 $token- >client->firstParty() 部分。现在我也想知道为什么它被认为是第一方令牌?我希望你能帮助我。谢谢!

编辑:

#1125 已在 github 上为此问题打开。

【问题讨论】:

  • 尝试清除缓存php artisan optimize
  • @EyadJaabo 它在 Lumen 上不可用,但它有 php artisan cache:clear but didn't work.

标签: php laravel oauth-2.0 lumen laravel-passport


【解决方案1】:

当我搜索此查询的答案时,我发现最近发布的 Laravel Passport v 8.x 更改了 CheckClientCredentials 类的条件。

正如 Laravel Passport 存储库本身合并的 PR 中所述,所提到的类将仅接受 客户端凭据授予。这也意味着您必须为机器对机器身份验证和实际用户(密码授予)身份验证创建单独的端点并应用不同的中间件。

还有一个与此查询类似的报告 issue 和一个建议的 solution 以减轻它,我认为这是可以接受的。

【讨论】:

    猜你喜欢
    • 2019-12-19
    • 1970-01-01
    • 1970-01-01
    • 2018-01-05
    • 2020-10-25
    • 2018-11-05
    • 2021-07-17
    • 1970-01-01
    • 2018-02-25
    相关资源
    最近更新 更多