2.4.4. 重定向 URI
使用基于重定向的流时,务必要为您的客户端使用有效的重定向 uri。重定向 uri 应该尽可能具体。这特别适用于客户端(公共客户端)应用程序。否则可能会导致:
- Open redirects - 这允许攻击者创建类似您的域的欺骗链接
- 未经授权的条目 - 当用户已经通过 Red Hat Single Sign-On 进行身份验证时,攻击者可以使用一个公共客户端,在无需用户的情况下重定向用户来获得访问权限
在生产环境中,Web 应用始终为所有重定向 URI 使用 https。不允许重定向到 http。
还有一个特殊的重定向 URI:
http://localhost- 此重定向 URI 可用于原生应用,并允许原生应用在随机端口上创建可用于获取授权代码的 Web 服务器。此重定向 uri 允许任何端口。
urn:ietf:wg:oauth:2.0:oob-
如果无法在客户端(或浏览器不可用)中启动 Web 服务器,可以使用特殊的
urn:ietf:wg:oauth:2.0:oob重定向 uri。当使用这个重定向 uri 时,Red Hat Single Sign-On 在标题和页面的框中显示一个带有代码的页面。应用程序可以检测到浏览器标题是否已更改,或者用户可以手动将代码复制到应用程序。在这个重定向 uri 中,用户可以使用不同的设备获取代码来粘贴到应用程序。