使用 JWT 进行 Laravel API 身份验证

Posted

技术标签:

【中文标题】使用 JWT 进行 Laravel API 身份验证【英文标题】:Laravel API Authentication with JWT 【发布时间】:2016-05-18 12:45:27 【问题描述】:

我正在看书:Build APIs You Won't Hate,它提出了几种身份验证方法:

    基本认证 摘要式身份验证 OAuth 1.0a OAuth 2.0 OpenID 鹰 奥兹

我有一个包含不同组件的应用程序

内部 API Laravel WebApp 与 FB / Google 通过 Socialite 登录 VueJs 移动应用

我不会有公共 API。

我正在考虑使用 JWT 来保护我的 API,但由于我在书中没有看到,我想知道我是否没有犯错。

我们将不胜感激任何建议!

【问题讨论】:

我已经在这里回答了***.com/questions/41376928/… 【参考方案1】:

使用 JWT 是保护 API 的一种好习惯,就我而言,这不是一个错误。

但随着 Laravel 5.3 现已发布,我们有一个用于 API 身份验证的 Laravel Passport(OAuth2 服务器),我认为这对您很有帮助。

您可以参考该文档的 Laravel 5.3 发行说明。 Laracast 还有一个免费的video tutorial 详细解释。

【讨论】:

使用 jwt 代替 laravel 内部 api 驱动的真正好处是什么? 我结束了使用 laravel pasaporte!【参考方案2】:

我已经使用 Sean Tymon 的 jwt-auth Laravel 包在 Laravel 5.2 上实现了 JWT 身份验证,https://github.com/tymondesigns/jwt-auth

如果您对使用 vue.js 作为 UI 的示例感兴趣,我已经写了一篇文章来记录我的发现,http://jimfrenette.com/2016/11/laravel-vuejs2-jwt-auth/ 并将源代码发布在 github 上,https://github.com/jimfrenette/laravel-vuejs-jwt-auth

【讨论】:

以上是关于使用 JWT 进行 Laravel API 身份验证的主要内容,如果未能解决你的问题,请参考以下文章

内部请求需要 Laravel Dingo 身份验证 JWT

通过 laravel API 使用 firebase 令牌身份验证

使用 Laravel 验证第三方 JWT

当 Laravel 用作客户端时,JWT 存储在哪里进行身份验证?

Laravel 通过生成的令牌进行身份验证,无需护照和 jwt

没有用户模型的 Laravel JWT 身份验证