javascript - 登录单页 angularjs Web 应用程序

标签 javascript angularjs security authentication single-page-application

我有一个使用(html5、bootstrap 和)Angularjs 制作的单页 Web 应用程序。我希望能够安全注册并登录网页,然后我就可以访问与我在 MySQL 上的帐户相关的信息。有人可以给我一个好的起点吗?我觉得我可以自己做,但我会犯错误,从而造成安全漏洞。在我看来,这也已经在 angularjs 中完成了。

注意:我不需要任何具有不同权限级别的奇特东西。每个用户都可以完全控制他/她自己的数据。

最佳答案

不确定您将在服务器端使用的技术。了解这一点很重要,因为这是身份验证/授权“魔法”发生的地方。

一种可能是使用 Bearer Token 身份验证场景,其工作原理大致如下:

  • 客户端向服务器上的身份验证端点发送请求(例如发送用户名和密码)
  • 如果用户已成功通过身份验证,服务器将进行身份验证并向他发送回身份验证 token 。
  • 向服务器发出的任何后续请求都应在请求 header 中包含不记名 token ,服务器将在授予资源访问权限之前验证该 token 。

上面是一个过于简化的摘要,但应该为您提供一个按照您的要求进行阅读的起点。

请注意:

1- 不应在客户端进行身份验证,因为这很容易被黑客攻击。

2-资源授权可以在客户端进行,以提高用户体验,但也必须在服务器端进行,原因与1相同

3-确保所有交易均使用https协议(protocol)进行,否则任何努力都可能是徒劳的。

希望这有助于您入门

关于javascript - 登录单页 angularjs Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23594045/

相关文章:

javascript - Angular JS 中的 JWT token 存储

node.js - Socket.IO 客户端安全

javascript - 使用 Java 和 Selenium 库从网站中提取 Google 广告

javascript - jquery未知图片请求

javascript - 如何将 jquery.validate 与 requirejs 一起使用?

javascript - ng-view 的背景被重叠

javascript - Typeof 运算符问题

angularjs - 如何扩展或覆盖 AngularJS 中现有的过滤器?

security - OpenID 提供商 - 什么阻止恶意提供商?

windows - 站点到站点 VPN 与点到站点 VPN