繁体   English   中英

Oauth2 和 Laravel - `Client_id` 和 `Client_secret` - 在哪里放置、存储、调用?

[英]Oauth2 & Laravel - `Client_id` & `Client_secret` - where to place, store, call?

我正在使用OAuth-Server-Laravel 存储库文档,我正在使用 Lumen。 我已经成功地制作了客户端凭据授权类型并尝试将其移动到密码授权类型。

我添加了带有verify()函数的 PasswordVerifier 类,将我的数据库oauth_clients表更改为:

        $table->string('id', 40)->primary();
        $table->string('username');
        $table->string('password');
        $table->string('email');
        $table->timestamps();

        $table->unique(['id', 'username']); 

verify()函数为:

        'username' => $username,
        'password' => $password,

当我在 Postman 中尝试时,我收到: "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed. Check the \\"client_id\\" parameter."

然后我阅读了问题,发现我需要在usernamepassword凭据旁边导入client_idclient_secret 我明白这些是我应该定义的。

但是,我不知道将它们放置在哪里,存储它们并调用它们? 我应该将它们存储在.env文件中吗? 如果是这样,我应该如何在验证函数中调用它?

应该有一个由该包创建的oauth_clients表。 这定义了哪些客户端有权访问您的资源服务器进行 API 调用。 您的授权服务器会验证这些客户端是否存在于该表中,并且无论何时从客户端发出请求,秘钥都匹配。

该表的结构是这样的:

id (primary)
secret
name
created_at
updated_at

此表中的每个条目代表一个客户端应用程序,该应用程序对您的 API 具有某种访问权限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM