当前位置: 首页 > 知识库问答 >
问题:

Laravel Passport密码授权类型上的授权无效

陆洛城
2023-03-14

登录时我总是得到无效的授权类型。我使用的是Laravel 7和passport 8.4。

我可以确认,我创建的client_secret没有错误运行php artisan护照:安装,但我找不到任何可能性,为什么获取访问令牌和刷新令牌不工作。

 $credentials = [
            'grant_type' => 'password',
            'client_id' => '2',
            'client_secret' => 'zcdHbITBhD5PPgGZ4n8qpIgYmmK83hcdYTbvLmja',
            'username' => $email,
            'password' => $password,
            'scope' => '*',
        ];
        $request = Request::create('oauth/token', 'POST', $credentials, [], [], [
            'HTTP_Accept' => 'application/json',
            'Content-type' => 'application/x-www-form-urlencoded'
        ]);
        $response = app()->handle($request);
        //$response = app('router')->prepareResponse($request, app()->handle($request));
        $decodedResponse = json_decode($response->getContent(), true);
        // if ($response->getStatusCode() != 200) {

我使用自定义用户提供商,正确地设置在配置,我注意到如果我改变grant_typeclient_credentials它将只是工作,但没有刷新令牌,我想要什么。

有什么想法吗?

共有1个答案

欧阳楚
2023-03-14

通过升级到最新的Passport版本解决,然后运行

php artisan passport:client --password --provider mycustomprovider
 类似资料:
  • 我想更好地理解隐式授权流和授权代码授权流之间的区别,因为我不确定我目前的理解是否正确。 隐式授权流主要由前端应用程序用于验证用户身份吗? 隐式授权流是否只需要一个client_id、用户名和密码来进行身份验证,换句话说,永远不会发送client_secret? 授权码只是一个短期令牌吗? 将授权码交换为访问令牌后,客户端可以访问用户帐户多长时间?具体地说,如果客户端是一个长时间运行的脚本,那么用户

  • Using a delegation key The collaborator can now push to the repository using Docker Content Trust. Docker will automatically choose and pick the right key for the targets/release role. Edit the file o

  • 产品-服务:具有受保护路由的简单下游服务 jwt-resoure-server:当包含在下游服务中时,使其成为提取jwt令牌并将其设置在安全contex中的资源服务器的jar。 尤里卡-服务:发现服务 zuul-server:边缘服务器 Okta是我的auth服务器 我已经将oauth grant类型设置为be-Authorization code(我知道对于spa来说,建议使用隐式grant类型

  • 本文向大家介绍oauth 授权码授予,包括了oauth 授权码授予的使用技巧和注意事项,需要的朋友参考一下 示例 第1步 第2步 资源

  • 我对以下涉及oauth2的流程有一些问题: webapp1.xyz.com是具有授权代码授予类型的注册客户端,以下是当前流程: 用户登录并使用授权码重定向到webapp1.xyz.com webapp1.xyz.com交换访问令牌的授权代码并将其存储到会话 webapp1.xyz.com服务器端需要通过传递访问令牌调用webapp2.xyz.com api webapp1.xyz.com具有SPA

  • 授权码的传输应该建立在安全通道上,客户端应该要求在它的重定向URI上使用TLS,若该URI指示了一个网络资源。 由于授权码由用户代理重定向传输,它们可能潜在地通过用户代理历史记录和HTTP参照标头被泄露。 授权码明以纯文本承载凭据使用,用于验证在授权服务器许可权限的资源所有者就是返回到客户端完成此过程的相同的资源所有者。因此,如果客户端依赖于授权码作为它自己的资源所有者身份验证,客户端重定向端点必