服务器是否只能将临时凭证“升级”为令牌凭据并保留相同的密钥和密钥?
然后,客户端可以在收到来自服务器的回调后立即开始执行经过身份验证的呼叫,并说明临时凭证已“升级”。
如果临时凭证尚未升级(即客户端不等待回调),则认证呼叫失败。
所以问题是为什么在回拨“交换”令牌凭证的临时凭证后对服务器进行额外的调用?
答案 0 :(得分:10)
你可以以这种方式实现OAuth,但据我所知,将请求令牌与访问令牌分开确实提供了额外的安全层。
OAuth包含两种令牌: 请求令牌和访问令牌。每 令牌在其中具有非常特定的作用 OAuth委派工作流程。而 大多是OAuth的神器 规范演变,双令牌 设计提供了一些可用性和 制作它的安全功能 值得留在 规格。 OAuth运行两个 频道:前台频道 用于吸引用户和请求 授权和使用的反向通道 由消费者直接互动 与服务提供商。通过限制 访问令牌到后台频道, 令牌本身仍然隐藏 来自用户。这允许访问 令牌具有特殊意义和 比尺寸更大 前台请求令牌是 在请求时向用户公开 授权,在某些情况下需要 手动输入(移动设备 或机顶盒)。
因此,据我了解,通过将访问令牌直接限制在消费者(您的服务)和提供者(您正在获得访问的服务)之间的通道,您可以获得安全的访问令牌(即即使用户的计算机或用户与您的服务的网络连接受到威胁,攻击者也没有。如果只是升级请求令牌,那么任何嗅探用户网络连接的人都可以轻松获得请求/访问令牌,我们宁愿保密,因为它可以被使用(当然还有你的消费者令牌),可能是很长一段时间,访问用户的数据。服务器到服务器的连接通常更安全。
另外,正如上面所指出的,这可以让你在需要用户输入请求令牌的情况下拥有更长的密钥(因此可能非常短)。