发行注记


Red Hat Single Sign-On 7.3

用于 Red Hat Single Sign-On 7.3

Red Hat Customer Content Services

摘要

本指南包含 Red Hat Single Sign-On 发行注记

第 1 章 Red Hat Single Sign-On 7.3

1.1. 概述

红帽很自信地宣布 Red Hat Single Sign-On (RH-SSO)版本 7.3 发布。RH-SSO 基于 Keycloak 项目,您可以通过根据常见标准(如 OpenID Connect、OAuth 2.0 和 SAML 2.0)提供 Web SSO 功能来保护 Web 应用。RH-SSO 服务器充当 OpenID Connect 或基于 SAML 的用户身份供应商(IdP),允许您的企业用户目录或第三方 IdP 通过基于标准的安全令牌来保护您的应用。

以下备注适用于 RH-SSO 7.3 版本。

1.2. 新的或改进的功能

这个版本中的一些新功能是技术预览功能,这意味着它们可用,但不被支持。您可以使用它们进行测试,但在生产环境中不支持标记为技术预览的功能。在此列表中,这些内容在我们的文档中被标记为技术预览。由于它们没有完全支持在生产环境中使用,因此技术预览功能默认是禁用的,但如果您想要尝试它们,则可以启用该功能。我们正在寻求对技术预览功能的反馈,因此如果您对技术预览功能有评论,请记录支持问题单。当某个功能从技术预览过渡到生产环境后,API 和功能会在主版本的生命周期内得到修复,因此技术预览期间的注释对于以您需要的方式影响功能至关重要。

这个版本中仍处于技术预览的现有功能包括:

  • 令牌交换
  • 细粒度授权权限
  • 授权服务中的基于规则(Drools)的策略

1.2.1. 授权服务

授权服务在 RH-SSO 7.1 版本中作为技术预览功能引进。在 7.3 中,它现已被完全支持,但与使用 Drools 实施的自定义规则相关的小子组件除外,它仍为技术预览。

授权服务已根据新的用户管理访问 2.0 (UMA 2.0)规格进行升级。之前的版本依赖于 UMA 1.0 版本。升级 引入了用户管理其资源、关联的权限、批准访问请求并通过帐户管理控制台与其他用户共享请求的功能。

另外还进行了很多较小的改进和增加:

  • 资源属性 - 现在可以对资源定义属性,以便在评估权限时让策略使用它们。
  • 适配器改进 - 添加了对授权服务的 NodeJS 适配器支持。
  • 改进评估 API - 访问当前域中的信息,如检查用户角色、组和属性。将任意声明推送到资源服务器,以提供有关如何强制执行特定权限的额外信息。
  • 异步授权流 - 客户端应用程序现在可以选择授权请求是否应启动授权流来请求资源所有者批准。此功能允许应用程序在尝试代表其他用户访问其资源之一时要求资源所有者批准。
  • 用户管理的 Permission API - 资源记录现在可以将额外策略关联到特定用户所拥有的资源。新 API 提供了使用不同策略类型(如角色、组、用户、客户端或使用 JavaScript )管理这些权限的操作。
  • 推送声明 - 客户端应用程序现在可以向 Keycloak 发送任意声明以及授权请求,以便根据这些声明评估权限。当访问应在特定事务范围内授予(或拒绝)或基于运行时信息时,这是非常方便的补充。
  • 策略实施器 - 策略实施器现在接受常规访问令牌,不再需要通过 RPT 交换访问令牌,以便访问由资源服务器保护的资源(如果没有使用 UMA)。根据在资源服务器端配置策略 enforcer 的方式,可以利用常规访问令牌作为 bearer 令牌。
  • 其他更改 - 带有其他配置选项的性能改进和优化,以便根据特定应用程序需求进一步性能分析。

仍然与使用技术预览的 Drools 功能实施的自定义规则相关的授权服务子组件。

在生产环境中不支持使用标记为技术预览的功能。

1.2.2. OpenShift Integration

现在,可以使用红帽单点登录完全保护 OpenShift 3.11,包括将服务帐户自动公开为 OAuth 客户端作为客户端到 Red Hat Single Sign-On 的能力。这个功能当前处于技术预览阶段。

在生产环境中不支持使用标记为技术预览的功能。

1.2.3. 客户端适配器中的新功能

  • Fuse 7 - Fuse 适配器与最新的 Fuse 7 版本一致
  • print Boot 2 支持
  • JavaScript -

    • 原生 Promise 支持 - JavaScript 适配器现在支持原生承诺。它还保留了对旧风格承诺的支持。两者都可以互换使用。
    • JavaScript - Cordova 模式现在允许传递 Cordova 特定选项在 JavaScript 适配器中登录和其他方法。我们还添加了对在 Cordova 的 JavaScript 适配器中使用浏览器标签页和通用链接的支持。这可在多个应用之间启用 SSO,并提高安全性。
  • SAML 适配器多租户支持 - 允许在 OpenID Connect 适配器中与多个 Keycloak 域集成。

1.2.4. 新的签名算法

RH-SSO 服务器现在支持 RS256、RS384、RS512、ES256、ES384、ES512、HS256、HS384 和 HS512。

现在支持 Elliptic Curve Digital Signature Algorithm (ES256/384/512),并提供类似安全属性作为 RSA 签名,但使用显著低于 CPU。

现在支持 HMAC (HS256/384/512),并允许应用程序尝试验证签名本身。由于这些是对称签名,因此仅 Keycloak 能够验证签名,这需要应用使用令牌内省端点来验证令牌。

RH-SSO 适配器尚不支持额外的签名算法,目前仅支持 RS256。

1.2.5. 主机名处理

我们引进了一个更灵活的方法来为 RH-SSO 配置主机名,这在与云相关的环境中部署时具有更大的灵活性。它可以根据请求标头或配置为固定主机名来确定。后者可确保只使用有效的主机名,并允许内部应用通过替代 URL 调用 RH-SSO。

1.2.6. X509 Client Authenticator

新添加的客户端身份验证器使用 X509 客户端证书和 Mutual TLS 来保护来自客户端的连接。另外,RH-SSO 服务器验证客户端证书的主题 DN 字段。

1.2.7. 客户端范围

我们添加了对客户端范围的支持,这将替换客户端模板。客户端范围是一种更灵活的方法,还可更好地支持 OAuth scope 参数。

与客户端范围相关的更改与同意的屏幕相关。现在,同意屏幕上的列表链接到客户端范围,而不是协议映射器和角色。

如需了解更多详细信息,请参阅文档和迁移指南。

1.2.7.1. 改进了 OpenID Connect 客户端的受众支持

现在,可以在为 OpenID Connect 客户端发布的令牌中指定受众。另外,还支持在适配器端验证受众。

1.2.8. OAuth 2 证书绑定访问令牌

现在,我们对规格 OAuth 2.0 通用 TLS 客户端身份验证和证书绑定访问令牌有部分实现。特别是,我们现在支持 Certificate Bound 访问令牌。如果您的机密客户端能够使用双向 SSL,RH-SSO 将能够将客户端证书的哈希值添加到为客户端发布的令牌中。目前,它只是 RH-SSO 本身,用于验证令牌哈希(例如在刷新令牌请求期间)。我们还计划为适配器添加支持。我们还计划添加对 Mutual TLS 客户端身份验证的支持。主题和主题资源

现在,可以通过常规提供程序部署将主题热部署到 RH-SSO。我们还添加了对主题资源的支持,允许在不创建主题的情况下添加额外的模板和资源。这可用于需要将额外页面添加到身份验证流的自定义验证器。

我们还添加了对覆盖特定客户端的主题的支持。如果这不适合您的需要,则还有一个新的 Theme Selector SPI,供您实施自定义逻辑来选择主题。

1.2.9. UI 的改进

7.3 发行版本中更新了以下页面的设计:

  • 欢迎页面
  • 登录页面

1.2.10. 增强的 Remember Me

引入了为记住我会话指定不同的会话闲置和最大超时功能。这可让记住我会话比常规会话更长。

1.2.11. 对组的分页支持

之前,大量组在管理控制台中造成问题。现在,这可以通过引入组的分页来解决。

1.2.12. 改进有大量离线会话的启动时间

在过去,如果有很多离线会话,则启动 RH-SSO 可能需要很长时间。现在,这个启动时间已被显著降低。

1.2.13. 删除了对 DB2 的支持

DB2 支持已被弃用。在这个版本中,我们删除了对 DB2 的所有支持。

1.2.14. 小改进

  • 在第一个 Idp 身份验证后,验证器自动将身份提供程序身份链接到现有帐户。
  • 允许将当前区域设置传递给 OAuth2 IdP
  • 支持 Content-Security-Policy-Report-Only 安全标头
  • SAML 基于脚本的 ProtocolMapper
  • 我们添加了对使用 Instagram 登录的支持
  • 在管理控制台中按用户 ID 搜索
  • 使用 hd 参数支持 Google Login 的托管域
  • 添加了选项来创建带有句点(.)的声明

1.3. 修复的问题

本发行版本中解决了超过 1,200 个问题。

1.4. 已知问题

这个版本有以下已知的问题。

  • KEYCLOAK-6127 - Role manage-users 仍需要一些操作,而不考虑授予的权限
  • KEYCLOAK-8043 - prompt=none 不用于默认身份提供程序
  • 当为 root 节点创建组策略时,KEYCLOAK-8049 - Nullpointer
  • KEYCLOAK-8766 - 使用 elytron 适配器时带有 OIDC 请求的 CORS 会失败
  • KEYCLOAK-8821 - 当 KeycloakApplication 没有成功部署 server.log 的内容被清除
  • KEYCLOAK-8867 - 当通过 uma-policy 查询时,返回与策略关联的资源
  • KEYCLOAK-8957 - Federated ID Login 会导致用户帐户中断
  • KEYCLOAK-9093 - False-Positive UMA 策略评估
  • KEYCLOAK-9095 - Web Origins 为 null 时 AuthenticatedActionsHandler 中的 NullpointerException
  • KEYCLOAK-9183 - 当通过 LDAPStorageProvider 验证密码时,不再存在 LDAP 条目时,NullPointerException
  • KEYCLOAK-9272 - 如果缺少信任存储密码,NullPointer
  • KEYCLOAK-9310 - 删除自定义所需操作提供程序会破坏 Realm 模型
  • KEYCLOAK-10211 - SSSD 集成在 RHEL8 上无法正常工作,因为 libunix-dbus-java 缺少
  • KEYCLOAK-10238 - RHEL 8 上适配器安装缺少安全应用程序和服务指南。安装过程与之前的版本相同,但需要 RHEL 8 软件仓库名称。务必首先从同一存储库安装 EAP。
  • KEYCLOAK-10239 - 安全应用程序和服务指南在 RPM 安装部分中具有过时的软件包名称。
  • KEYCLOAK-10260 - 在 .installation 目录上无效权限可防止安装补丁。要临时解决这个问题,请导航到 rhsso-7.3 目录并发出此命令: chmod 775 .installation

1.5. 支持的配置

客户门户网站 上提供了 RH-SSO 服务器 7.3 支持的功能和配置集合。

1.6. 组件版本

客户门户网站 上提供了 RH-SSO 7.3 支持的组件版本列表。

法律通告

Copyright © 2019 Red Hat, Inc.
根据 Apache 许可证(版本 2.0)授权(License");除非遵守许可证,您可能不能使用此文件。您可以在以下位置获取许可证副本
除非适用法律或同意编写,许可证下的软件将由"AS IS"BASIS 分发,WITHOUT WARRANTIES 或 CONDITIONS OF ANY KIND,可以是表达或表示的。有关许可证下的权限和限制的具体语言,请参阅许可证。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部