关于Passport认证时出现问题

1. 运行环境

1). 当前使用的 Laravel 版本?

Laravel v10.15.0 (PHP v8.2.4)

2). 当前使用的 php/php-fpm 版本?

PHP 版本:
Laravel v10.15.0 (PHP v8.2.4)

php-fpm 版本:

3). 当前系统

CentOS 7

4). 业务环境

开发环境

5). 相关软件版本

Nginx 1.2.2
MySQL 7

2. 问题描述?

在使用最新版本的Passport做Oauth认证时,做

api.1000mi.top/oauth/authorize?cli...
在oauth_clients表中的client_id:3,redirect为:与前端提交的地址想同。
服务端一直报错
{
“error”: “invalid_client”,
“error_description”: “Client authentication failed”,
“message”: “Client authentication failed”
}

3. 您期望得到的结果?

4. 您实际得到的结果?

[2023-07-19 13:56:15] local.ERROR: Client authentication failed {“exception”:”[object] (Laravel\Passport\Exceptions\OAuthServerException(code: 4): Client authentication failed at /www/wwwroot/webapp/vendor/laravel/passport/src/Http/Controllers/HandlesOAuthErrors.php:26)
[stacktrace]

#0 /www/wwwroot/webapp/vendor/laravel/passport/src/Http/Controllers/AuthorizationController.php(75): Laravel\Passport\Http\Controllers\AuthorizationController->withErrorHandling()

#1 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): Laravel\Passport\Http\Controllers\AuthorizationController->authorize()

#2 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Route.php(259): Illuminate\Routing\ControllerDispatcher->dispatch()

#3 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Route.php(205): Illuminate\Routing\Route->runController()

#4 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(799): Illuminate\Routing\Route->run()

#5 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}()

#6 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#7 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle()

#8 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#9 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()

#10 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#11 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\View\Middleware\ShareErrorsFromSession->handle()

#12 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#13 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()

#14 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Session\Middleware\StartSession->handle()

#15 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#16 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()

#17 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#18 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\EncryptCookies->handle()

#19 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#20 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(798): Illuminate\Pipeline\Pipeline->then()

#21 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(777): Illuminate\Routing\Router->runRouteWithinStack()

#22 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(741): Illuminate\Routing\Router->runRoute()

#23 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(730): Illuminate\Routing\Router->dispatchToRoute()

#24 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\Routing\Router->dispatch()

#25 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()

#26 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#27 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()

#28 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle()

#29 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#30 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()

#31 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\TrimStrings->handle()

#32 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#33 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()

#34 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#35 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()

#36 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#37 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\HandleCors->handle()

#38 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#39 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\TrustProxies->handle()

#40 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#41 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\Pipeline\Pipeline->then()

#42 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()

#43 /www/wwwroot/webapp/public/index.php(51): Illuminate\Foundation\Http\Kernel->handle()

#44 {main}

[previous exception] [object] (League\OAuth2\Server\Exception\OAuthServerException(code: 4): Client authentication failed at /www/wwwroot/webapp/vendor/league/oauth2-server/src/Exception/OAuthServerException.php:154)
[stacktrace]

#0 /www/wwwroot/webapp/vendor/league/oauth2-server/src/Grant/AbstractGrant.php(290): League\OAuth2\Server\Exception\OAuthServerException::invalidClient()

#1 /www/wwwroot/webapp/vendor/league/oauth2-server/src/Grant/AuthCodeGrant.php(281): League\OAuth2\Server\Grant\AbstractGrant->validateRedirectUri()

#2 /www/wwwroot/webapp/vendor/league/oauth2-server/src/AuthorizationServer.php(163): League\OAuth2\Server\Grant\AuthCodeGrant->validateAuthorizationRequest()

#3 /www/wwwroot/webapp/vendor/laravel/passport/src/Http/Controllers/AuthorizationController.php(76): League\OAuth2\Server\AuthorizationServer->validateAuthorizationRequest()

#4 /www/wwwroot/webapp/vendor/laravel/passport/src/Http/Controllers/HandlesOAuthErrors.php(24): Laravel\Passport\Http\Controllers\AuthorizationController->Laravel\Passport\Http\Controllers\{closure}()

#5 /www/wwwroot/webapp/vendor/laravel/passport/src/Http/Controllers/AuthorizationController.php(75): Laravel\Passport\Http\Controllers\AuthorizationController->withErrorHandling()

#6 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): Laravel\Passport\Http\Controllers\AuthorizationController->authorize()

#7 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Route.php(259): Illuminate\Routing\ControllerDispatcher->dispatch()

#8 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Route.php(205): Illuminate\Routing\Route->runController()

#9 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(799): Illuminate\Routing\Route->run()

#10 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}()

#11 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#12 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle()

#13 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#14 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()

#15 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#16 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\View\Middleware\ShareErrorsFromSession->handle()

#17 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#18 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()

#19 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Session\Middleware\StartSession->handle()

#20 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#21 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()

#22 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#23 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\EncryptCookies->handle()

#24 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#25 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(798): Illuminate\Pipeline\Pipeline->then()

#26 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(777): Illuminate\Routing\Router->runRouteWithinStack()

#27 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(741): Illuminate\Routing\Router->runRoute()

#28 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Routing/Router.php(730): Illuminate\Routing\Router->dispatchToRoute()

#29 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\Routing\Router->dispatch()

#30 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()

#31 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#32 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()

#33 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle()

#34 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#35 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()

#36 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\TrimStrings->handle()

#37 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#38 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()

#39 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#40 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()

#41 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#42 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\HandleCors->handle()

#43 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#44 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\TrustProxies->handle()

#45 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()

#46 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\Pipeline\Pipeline->then()

#47 /www/wwwroot/webapp/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()

#48 /www/wwwroot/webapp/public/index.php(51): Illuminate\Foundation\Http\Kernel->handle()

#49 {main}
“}

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 6

提交了什么参数

9个月前 评论
蒙挚 (楼主) 9个月前
zerocoder (作者) 9个月前
蒙挚 (楼主) 9个月前

这个问题我也有遇到, 查了比较多的相关资料, StatefulToken和Passport token这两个token类在laravel里面实现有问题 暂时没有解决方案

8个月前 评论
蒙挚 (楼主) 8个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!