kob*_*490 5 javascript security password-encryption angularjs
我最近阅读了以下关于AngularJS应用程序中的身份验证技术的文章.他的概念与我通常接近这个过程的方式非常相似,但密码以明文方式绑定到控制器的方式对我来说似乎是一个安全漏洞,我想知道有什么更好的方法来解决这个问题?
<input type="password" id="password" ng-model="credentials.password">
Run Code Online (Sandbox Code Playgroud)
我认为,一种方法是加密控制器上的绑定密码?有没有办法做到这一点?
我对讨论的5美分:
1) 仅当您的登录视图存在时控制器才存在。一旦您提交了登录信息,您通常会更改视图,从而破坏控制器。
2) 即使它在整个会话期间都存在,也需要相当复杂的 xss 方案才能获取数据。
3) 此外,您还可以采取一些措施来进一步降低风险:
使用 https
在服务器端使用签名的服务器证书
(如果您使用 https,则浏览器不应允许您向 http 资源发出 ajax 调用,并且如果证书未签名并且未为站点添加异常,则 https 请求将失败)
4)最后,如果服务器支持,您可以考虑使用oAuth进行身份验证。
5) 办公室。这完全取决于您的应用程序所需的安全级别。如果您确实担心有人在远离计算机时获取密码,则应考虑使用不同的身份验证方法,例如:客户端证书(在智能卡上)或额外的一次性代码或其他方法相似的。
| 归档时间: |
|
| 查看次数: |
2235 次 |
| 最近记录: |