【发布时间】:2012-10-26 22:51:20
【问题描述】:
我有一个使用 Google API 的网络应用。身份验证过程对 google 进行了两次调用,第一次获取code,第二次将code 交换为token。两个调用都采用redirect_uri 参数。第一次调用按我的预期使用这个参数,重定向回redirect_uri,但是,第二次调用,获取令牌,没有重定向,验证它似乎忽略了这个参数,那么它的意义何在?
【问题讨论】:
我有一个使用 Google API 的网络应用。身份验证过程对 google 进行了两次调用,第一次获取code,第二次将code 交换为token。两个调用都采用redirect_uri 参数。第一次调用按我的预期使用这个参数,重定向回redirect_uri,但是,第二次调用,获取令牌,没有重定向,验证它似乎忽略了这个参数,那么它的意义何在?
【问题讨论】:
访问令牌请求中的redirect_uri 参数在OAuth 2.0 specification 中描述为REQUIRED。
其背后的原因在同一文档的10.6部分有详细描述。简而言之:
request_uri获取授权码。唯一能注意到这个技巧的两方是受害者(合法用户)和服务器。客户仍然不知道这些操纵。redirect_uri 与服务器看到的不匹配,请求将被拒绝。【讨论】:
client_secret。