在JavaScript应用上使用oAuth2身份验证

我打算通过将逻辑分解为RESTful API,并将视图分解为单独的Javascript客户端来重构遗留下来的Rails 2应用程序。 API本身将受oAuth2保护。 这基本上是解释这个问题的第二个选项:

单独的REST JSON API服务器和客户端?

关于在JS应用中使用oAuth的安全性存在很多问题,主要的担心似乎是,将访问令牌存储在客户端上是一个坏主意,因为它充当密码,并且有人可以物理访问电脑可以劫持用户的身份。 我读过的一个可能的解决方案是每隔1h左右过期访问令牌,并在必要时使用存储在雅虎YQL上的刷新令牌来请求新的令牌。 这在我看来并不是一个好的解决方案,因为最后你需要一个令牌来访问YQL服务。

但最终,我们不会遇到与使用持久会话时相同的问题吗? 我的意思是,AFAIK是在浏览器开启/关闭时(当您勾选“记住我”时保持会话生效的常用方法)是生成与用户关联的令牌并将其存储在数据库和长生存cookie上。 同样,有权访问此cookie的任何人都可以在会话中使用“密钥”。 AFAIK这是所有“大家伙”使用的方法。

我是对的? 如果我是,我们是不是太担心我们根本无法控制的事情? 当然,我正在谈论那些入侵对于像社交网络,博客,论坛等用户不太有害的应用程序。

链接地址: http://www.djcxy.com/p/45651.html

上一篇: oAuth2 authentication on a JavaScript app

下一篇: Which is the best approach for RESTful API requests?