5.8. 迁移 SAML 应用程序
从 Red Hat build of Keycloak 26.0 开始,红帽构建的 Keycloak 不再提供 SAML 的 JBoss EAP 适配器。如果您使用那个适配器的版本 6.x 或 7.x 部署应用程序,红帽构建的 Keycloak 不支持该适配器。这些适配器只支持与 Red Hat Single Sign-On 7.6 结合使用。
SAML 的完全支持适配器是 JBoss EAP 8.0 的 Keycloak SAML Adapter 功能软件包或 RPM。
- Red Hat JBoss Enterprise Application Platform 8.0
红帽构建的 Keycloak 26.4 包括 Red Hat JBoss Enterprise Application Platform 8.x 的客户端适配器,包括支持 Jakarta EE。
要安装适配器的新版本,请参阅使用 RPM 安装方法安装 JBoss EAP。
- Red Hat JBoss Enterprise Application Platform 7.x
因为 Red Hat JBoss Enterprise Application Platform 7.x 接近完全支持,因此红帽构建的 Keycloak 不会为其提供支持。对于部署到带有维护支持的 Red Hat JBoss Enterprise Application Platform 7.x 适配器的现有应用程序,可通过 Red Hat Single Sign-On 7.6 获得。
Red Hat Single Sign-On 7.6 适配器支持与 Red Hat build of Keycloak 26.4 服务器结合使用。
- Red Hat JBoss Enterprise Application Platform 6.x
- 因为 Red Hat JBoss Enterprise Application PlatformJBoss EAP 6.x 已结束维护支持,所以 Red Hat Single Sign-On 7.6 或 Red Hat build of Keycloak 将为其提供支持。
5.8.2. SAML 协议和客户端设置中的主要变化 复制链接链接已复制到粘贴板!
- SAML SP 元数据更改
在此版本之前,SAML SP 元数据包含用于签名和加密使用的相同密钥。从 Keycloak 的这个版本开始,我们仅包含在 SP 元数据中使用的加密目标域密钥。对于每个加密密钥描述符,我们还指定应与之使用的算法。下表显示了带有红帽构建的 Keycloak 域键的受支持的 XML-Enc 算法。
Expand xml-Enc 算法 realm 键算法 rsa-oaep-mgf1p
RSA-OAEP
rsa-1_5
RSA1_5
- 弃用了 SAML 的 RSA_SHA1 和 DSA_SHA1 算法
算法
RSA_SHA1和DSA_SHA1,它可以配置为 SAML 适配器、客户端和身份提供程序上的签名算法。我们建议使用基于SHA256或SHA512的安全替代方案。另外,使用这些算法在已签名的 SAML 文档或断言上验证签名无法在 Java 17 或更高版本上工作。如果您使用此算法,并且消耗 SAML 文档的其他方在 Java 17 或更高版本上运行,请验证签名将无法正常工作。可能的解决方法是删除算法,如下所示:
-
列表中的
http://www.w3.org/2000/09/xmldsig#rsa-sha1或http://www.w3.org/2000/09/xmldsig#dsa-sha1 -
"disallowed 算法"在文件
$JAVA_HOME/conf/security/java.security中配置了jdk.xml.dsig.secureValidationPolicy
-
列表中的