我可能会混淆概念,但我一直在讨论web2py Google Group他们应该实施摘要式身份验证。
使用OAuth2,我认为auth-key应该进行哈希处理,并且只在身份验证领域内发送。
如果它有所不同,我正在使用JavaScript客户端,接口通过JSONRPC服务器端公开,OAuth2通过Facebook完成。
我应该在摘要领域内协商OAuth2吗?
答案 0 :(得分:3)
你很困惑 - OAuth中没有摘要领域的概念。也没有'auth-key'之类的东西。 您拥有的是一个身份验证令牌,代表您已由用户/实体发出的声明。
由于令牌代表[client_id,user,scope,expiration]元组,因此它不能用于生成散列,因为该散列将无用 - 资源服务器无法散列每个可能的组合以查找匹配。
如果您需要传输安全性,只需要SSL(不考虑具有有效证书的MiTM攻击等)。
也就是说,当攻击者已经能够拦截你的流量时,使用摘要保护凭证(令牌)是没有用的......
此外,为OAuth2背后的故事添加一些内容 - 它之所以如此简单(依赖于SSL来保护)的原因在于,这是几乎每个人都可以管理的。
事情越复杂,出错的可能性就越大。