如何在过期后刷新JWT令牌(Angular 1.5 + Laravel 5.2)

时间:2016-06-10 04:51:59

标签: angularjs laravel-5 jwt satellizer

使用Angular前端和Laravel后端(RESTful api)进行基于JWT令牌的身份验证的最佳和最安全的方法是什么?

它类似于:http://johnsonsu.com/jwt-tokens-issues-in-angularjs-satellizer/

提前致谢。

3 个答案:

答案 0 :(得分:1)

对于JWT authenticationangularjs之间的Laravel,您可以使用Satellizer。对于后端,即Laravel实现,您可以找到示例代码here您可以使用卫星进行社交登录或仅用于正常登录。

您必须为laravel后端JWT支持安装jwt-auth。您可以将一些博客推荐给getting started

答案 1 :(得分:1)

您的问题是“如何在过期后刷新JWT身份验证”,过去几周我一直在研究JWT身份验证,以及如何使用Angularjs和Phalconphp在到期时刷新JWT访问令牌,已经有了库我可以使用,但我更喜欢通过基于我研究的方法来理解它,所以我使用angular-jwt和firebase / php-jwt,这是我到目前为止所得到的:

  1. 登录后,客户端将获得访问令牌和刷新令牌
  2. 访问令牌应在刷新令牌
  3. 之前到期
  4. 访问令牌过期后,将从刷新令牌中获取新的访问令牌(创建API条目以验证刷新令牌,然后提供新的访问令牌)
  5. 检查刷新令牌是否被撤销(需要发布刷新令牌的数据库,或者我使用Redis来存储用户刷新令牌)。
  6. 回顾“使用基于JWT令牌的身份验证的最佳和最安全的方式”,一些人建议我不要使用授权标头而是使用cookie以及启用SSL。

    致记: https://stormpath.com/blog/jwt-authentication-angularjs

    我希望这会有所帮助。

答案 2 :(得分:0)

您可以使用satellizer和您自己的拦截器实现在您的fronend中使用请求/响应拦截器。

有关详细信息,请参阅Github上的Satellizer discussion

我今天遇到同样的问题,但我现在解决了!

参考文献: