Oauth2 服务器重定向 URI

Oauth2 server redirect URI

我的问题可能看起来很愚蠢,但我真的不明白 - 从请求中捕获 redirect_uri 并将其与客户端 table 中指定的 URI 进行比较的目的是什么?是因为安全问题吗?

预注册重定向 URI 本身就是一项安全措施,因为 OAuth 2.0 中的授权请求未签名。攻击者可以通过单击 link 来钓鱼用户,这将导致 redirect_uri 指向他们控制的站点的授权请求。

在请求中发送 redirect_uri 本身并不能达到安全目的,只是让授权服务器知道在注册了多个重定向 URI 的情况下,客户端希望在哪里接收授权响应对于这个特定的客户。

无论如何,redirect_uri 参数在规范中是可选的。如果只有一个注册,则请求中可以省略 redirect_uri 参数。如果注册了多个重定向 URI,但请求中未提供重定向 URI,则结果未指定:AS 可能会选择第一个,任何人或其中 none 个。