Laravel 5.4护照密码授权令牌

问题描述:

我正在学习laravel 5.4 api授权章节。我有一个关于密码授权令牌的问题。该文件说这是为我的其他第一方客户。现在我构建一个api服务,它使用OAuth2。现在我想建立我的前端网站,我想使用密码授权令牌。所以在我的理解中,比如登录,我会发送一个包含用户名,密码,grant_type,client_id,client_secret,范围的ajax请求到/oauth/tokens来获取访问令牌。我应该直接将客户端密码放入我的js代码中吗?因为如果没有,我不知道在哪里存储我的客户机密,有人可以帮助我?谢谢。Laravel 5.4护照密码授权令牌

+0

我认为这个问题应该可以帮助您:http://*.com/questions/24724238/how-do-client-side-js-libraries-for-oauth2-maintain-secure-authentication – mimo

Laravel Passport需要了解OAuth,所以我认为在使用护照之前先理解它才更好。

在我的理解

所以,像登录,我会送一个Ajax请求 包括用户名,密码,grant_type,CLIENT_ID,client_secret,范围 到/ OAuth的/令牌来获得访问令牌

请看看这个。 enter image description here

如果我只是把客户端的秘密在我的js代码直接

是。简要解释一下,一旦你安装了laravel护照。它将在您的数据库中生成表格,您将使用oauth_clients表格来存储客户端的数据。

对于获取信息等简单认证,您只需要oauth_clients.id,oauth_clients.secretoauth_clients.redirect数据。您可以使用php artisan passport:client

创建新数据我建议尝试一下,您很快就会遇到问题并很容易修复。古德勒克

https://laravel.com/docs/5.4/passport

+0

请解释在前端JavaScript代码中包含客户端密码的原因,因为出于安全原因,我已阅读的每篇其他文章/书籍都强烈建议。 – commanderZiltoid

+0

一般而言,您不应将任何代码(或可反编译的二进制文件)中的客户端密码(甚至客户端ID)都包含在您的用户/客户/等中。 –