证书如何从SP keystore spring saml中使用

Vaw*_*ani 4 spring-saml

我目前正在实施Spring SAMl来配置我的SP.我收到了IDP的元数据XML,我把它放在元数据文件夹中.1.现在,在启动时我得到了Exception是没有配置IDP,所以发现它是由于证书无效.现在,我只是将证书导入到samlKeystore.jks,并把metadataTrustCheck = falseExtendedMetadataDelegate豆帮我启动SP没有任何错误,我getiing重定向形式IDP向SP,我可以实现我需要什么.
2.现在我刚刚删除了我在samlKeystore.jks中保存的IDP提供的证书, 然后重启应用程序,IDP和SP之间的通信也没有问题.

我现在有一些查询需要帮助才能理解.提供给我的证书从我导入到我的samlKeystore.jks的 IDP,这些都有用,因为响应带有来自IDP的签名和证书.为了验证响应,我们应该在响应中使用证书和签名.

metadataTrustCheck = true如果是,我希望如何更正IDP元数据,因为我有证书链.

Vla*_*fer 7

您从IDP收到的元数据文档包含将由IDP用于对将向您的SP发送的SAML消息进行数字签名的证书.无需将这些导入到samlKeystore.jks,因为它们已存在于元数据中.

元数据文档本身也可以进行数字签名(以确保没有人在它到达之前对其进行了修改).现在,当metadataTrustCheck = trueSpring SAML将尝试验证此签名是否有效时,为了做到这一点,它需要知道是否信任用于创建签名的证书.

因此,您需要与Spring SAML进行通信,您信任哪些证书用于签署元数据文档 - 您可以通过将它们导入samlKeystore.jks来实现.

如果您相信您拥有的元数据文档是正确的,只需禁用metadataTrustCheck并且不要将任何公共证书导入samlKeystore - 只需依赖元数据文档本身的内容即可.