- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Facebook Spring Social 库。
连接时 Spring Social 库和 Facebook 之间的 OAuth 舞蹈是否安全(防止中间人攻击等)?如果不是,我需要做什么来确保其安全?
我有点担心的原因是 Spring docs提到 Facebook 使用 OAuth 2,我相信 OAuth 2 已经被简化,它依赖 HTTPS 来保护 OAuth 舞蹈。
附注我的网络应用程序在 HTTP 上运行
最佳答案
是的,Spring Social 在与 Facebook 合作时确实支持基于 HTTPS 的 OAuth2,无论是在其 API 绑定(bind)中还是在 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 的证据。
如果不这样做,那么这不仅在安全方面是一个坏主意,而且根本行不通。当涉及访问 token 时,Facebook 不允许您使用其 API,除非通过 HTTPS。如果您尝试通过 HTTP 将访问 token 传递到任何 API 端点(即使不安全且访问 token 是伪造的),您将收到错误。例如,将浏览器指向 http://graph.facebook.com/gopivotal?access_token=fasddasf然后你会得到一个错误。
所以,Spring Social 在与 Facebook 合作时支持 HTTPS。如果没有,它根本就不起作用。
关于java - Spring Social OAuth 与 Facebook 共舞安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17153211/
我是一名优秀的程序员,十分优秀!