在使用 AngularJS 构建 SPA 时,我想在 AngularJS 网站中实现用户身份验证。但是,我不知道从哪里开始以及最佳实践是什么。
基本上我有一个确定可以担任一个或多个角色。我寻找了一些例子,这样我就可以对如何正确处理这个问题有一个基本的了解,但到目前为止,我只遇到过非常简单或不太安全的例子(比如this http://justinvoelkel.me/laravel-angularjs-part-two-login-and-authentication/).
所以我的问题是,如何使用 REST(或自定义 API url)实现身份验证服务来对用户进行身份验证,然后使用 angularJS 在页面上显示用户信息,同时还通过使用(例如)确保最佳安全覆盖Laravel 的 csrf 令牌?
提前致谢,
尼克·范德梅杰
我正在制作一个 AngularJS 应用程序和一个使用 Laravel 5 制作的 RESTful API 作为后端,我的身份验证方法是:
- 已安装jwt-auth https://github.com/tymondesigns/jwt-auth。基本上扩展了 Laravel 的 Auth 模型,添加了带有令牌的授权。
- 为 laravel 添加了简单的角色包。我用了permiso http://packalyst.com/packages/package/ricardoriogo/permiso。具有多个角色/用户和权限/角色。很简单。
- 将 jStorage 添加到前端。 (你可以使用 AngularJS 模块代替)。
所以步骤是:
- 前端发送用户凭据(电子邮件和通行证)。
- 服务器检查,jwt-auth 向该用户创建令牌并将其发回。
- 前端将令牌保存在浏览器存储中(此方法不需要 csrf)。
- 接下来对 API 的所有调用都是通过
Authorization: Bearer
标题(或与?token=...
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)