0

我正在使用 Facebook Spring Social 库。

在连接安全时(针对中间人攻击等),Spring Social 库和 Facebook 之间的 OAuth 是否跳舞?如果没有,我需要做些什么来确保它的安全?

我有点担心的原因是Spring 文档提到 Facebook 使用 OAuth 2,我相信 OAuth 2 已经简化,它依赖 HTTPS 来保护 OAuth 舞蹈。

PS 我的网络应用在 HTTP 上运行

4

2 回答 2

3

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

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

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

于 2013-06-20T21:35:22.837 回答
0

我们正在广泛使用它(一个大项目)。我们考虑了几种处理此功能的方法,最后得出结论,使用 spring 是足够安全的。

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

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

于 2013-06-17T21:00:06.090 回答