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

时间:2015-11-09 15:19:48

标签: php laravel oauth oauth-2.0 lumen

我正在使用OAuth-Server-Laravel repo docs而我正在使用流明。我已成功完成工作客户端凭据授予类型并尝试将其移至密码授予类型。

我添加了带有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,

当我在邮递员中尝试时,我会收到: "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."

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

但是,我无法弄清楚将它们放在哪里,存放它们并打电话给它们?我应该将它们存储在.env文件中吗?如果是这样,我该如何在验证函数中调用它?

1 个答案:

答案 0 :(得分:1)

该软件包应该创建一个oauth_clients表。这定义了客户端有权访问资源服务器的API调用。您的授权服务器会验证此表中是否存在这些客户端,并且只要从客户端发出请求,密钥就会匹配。

该表的结构如下:

id (primary)
secret
name
created_at
updated_at

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