我对oauth2.0进行了很好的研究。但是当涉及到客户端向授权服务器请求访问令牌的部分时,我完全迷失了
此通信如何通过tls保护?此通信不涉及用户代理(浏览器),因此我认为这是客户端与服务器之间的通信。因此,如何进行证书验证。 我不记得要为我的测试应用程序从Facebook服务器导入任何证书到密钥库了。
我无法找到与此相关的任何正确答案
致谢, 阿米特(Amit)
答案 0 :(得分:0)
从OAuth 2.0的角度来看,访问令牌是凭据。访问令牌可用于访问OAuth 2.0受保护的资源。
当数据通过网络传输时,攻击的目标可能是从有线网络中提取数据。如果传输的数据未加密,则此类攻击将揭示正在传输的纯数据。如果此类数据包含令牌请求和响应,则恶意方可以提取访问令牌。这在RFC6749中也突出显示了,
Since requests to the token endpoint result in the transmission of
clear-text credentials (in the HTTP request and response), the
authorization server MUST require the use of TLS as described in
Section 1.6 when sending requests to the token endpoint.
当客户端与授权服务器建立连接时,该连接也会在常见网络上打开。因此那里也存在攻击。这就是为什么必须对令牌请求使用TLS的原因。
现在TLS的功能是一个单独的主题。它使用由证书颁发机构(CA)颁发的数字证书。有默认情况下受操作系统信任的可信CA。因此,当您与Facebook建立联系时,如果Facebook使用由知名CA颁发的tls证书,那么您无需进行任何配置。