15.12. 被破坏的访问和刷新令牌
红帽构建的 Keycloak 包括一些操作,以防止恶意参与者窃取访问令牌并刷新令牌。关键操作是在红帽构建的 Keycloak 及其客户端和应用程序之间强制实施 SSL/HTTPS 通信。红帽构建的 Keycloak 默认不启用 SSL。
缓解泄漏访问令牌损坏的另一个操作是缩短令牌的生命周期。您可以在 超时页面中 指定令牌生命周期。访问令牌的短寿命强制客户端和应用程序在短时间内刷新其访问令牌。如果管理员检测到泄漏,管理员可以注销所有用户会话使这些刷新令牌无效或设置撤销策略。
确保刷新令牌始终保持对客户端私有且永远不会被传输。
您可以通过将令牌作为密钥令牌发布,从而缓解泄漏访问令牌和刷新令牌的问题。如需更多信息,请参阅 OAuth 2.0 通用 TLS 客户端证书 绑定访问令牌。
如果访问令牌或刷新令牌被破坏,访问管理控制台,并将 not-before revocation 策略推送到所有应用程序。推送一个 not-before 策略可确保该时间无效之前发出的任何令牌。推送新的 not-before 策略可确保应用程序必须从红帽构建的 Keycloak 下载新的公钥,并从受入侵的域签名密钥缓解损坏。如需更多信息,请参阅 密钥章节。
如果特定应用程序、客户端或用户被破坏,您可以禁用它们。