我在Tomcat上部署了一个Web应用程序。现在,我已经使用Spring Security集成了SAML身份验证。我正在使用SP启动的SAML身份验证。
为此,我创建了一个密钥库(JSK),其中保存了我的私钥并将IDP证书导入其中。按照this步骤生成密钥存储。
身份验证正常。在这些之前,我在应用程序要与之交互的系统的默认JRE密钥库(lib / security / cacerts)中拥有一些证书。现在,由于我使用了不同的SAML密钥库,因此我的应用程序无法获取导入到默认JRE密钥库的证书。看起来新的密钥库正在覆盖现有的默认证书。
因此,现在我也尝试对SAML使用相同的默认JRE证书。生成到同一密钥库的私钥,并将IDP证书导入其中。但这不起作用。给像这样的错误- java.io.IOException:DerInputStream.getLength():lengthTag = 109,太大
四处搜寻,我发现一些线程在谈论默认JRE密钥库的无知,例如-Why is cacerts ignored in Spring Saml?,但我无法得出结论。
我的SALM身份验证是否可以与默认JRE密钥库一起使用,以便仍可以使用现有证书?
我的两个密钥存储区都可能对我的应用程序有影响吗? 1)新的密钥库(为SALM创建)2)现有的默认JRE密钥库
我的是企业应用程序,已在许多客户上部署。因此,我不能要求他们重新导入他们在新密钥库中拥有的所有证书。