流明护照密码授予返回未经身份验证

时间:2019-11-20 06:02:38

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

正如标题所述,当“客户端证书授予”正常工作时,我无法验证“密码授予”返回的访问令牌。我已经尝试过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()部分。现在我也想知道为什么将其视为firstParty令牌?我希望你能帮助我。谢谢!

编辑:

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

1 个答案:

答案 0 :(得分:0)

在搜索该查询的答案时,我发现最新版本的Laravel Passport v 8.x更改了 CheckClientCredentials 类的条件。

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

据报告,与此查询类似的issue和建议的solution也可以缓解,我认为这是可以接受的。