春季社交OAuth与Facebook的舞蹈安全吗?

时间:2013-06-17 17:20:13

标签: java spring security oauth spring-social

我正在使用Facebook Spring社交库。

当连接安全(对抗中间人攻击等)时,OAuth在Spring社交库和Facebook之间跳舞吗?如果没有,我需要做些什么才能确保安全?

我有点担心的原因是Spring docs提到Facebook使用OAuth 2并且我认为OAuth 2已经简化,它依靠HTTPS来保护OAuth舞蹈。

P.S。我的网络应用程序在HTTP上运行

2 个答案:

答案 0 :(得分:3)

是的,在使用Facebook时,Spring Social确实通过HTTPS支持OAuth2,包括API绑定和OAuth2“舞蹈”。在执行OAuth2“舞蹈”时,请注意https://github.com/SpringSource/spring-social-facebook/blob/master/spring-social-facebook/src/main/java/org/springframework/social/facebook/connect/FacebookOAuth2Template.java中的网址作为Spring Social使用HTTPS的证据。

如果没有,那么不仅仅是安全方面的坏主意,它根本不会起作用。除非是通过HTTPS,否则Facebook不允许您在涉及访问令牌时使用它的API。如果您尝试通过HTTP将访问令牌传递到任何API端点(即使其他方式不安全,即使访问令牌是虚假的),也会收到错误。例如,将浏览器指向http://graph.facebook.com/gopivotal?access_token=fasddasf,您将收到错误消息。

所以是的,Spring Social在使用Facebook时支持HTTPS。如果没有,它根本就不起作用。

答案 1 :(得分:0)

我们广泛使用它(一个大项目)。我们考虑了几种处理这个功能的方法,最后得出的结论是,春天可以安全使用。

实际上,我们系统的那部分是用JavaScript编写的,在NodeJS上运行,我们将它转​​换为Java,因为我们对Spring的实现更有信心。

另外,我认为他们在比较OAuth 1/2时所谈论的部分简化就是舞蹈。少往返。