验证X509证书有效性及解决私钥未加载问题求助
问题:验证SSO证书有效性及解决签名异常
已尝试的修复操作
- 将证书转换为PEM格式:
openssl x509 -inform der -in mycer.cer -out mycer.pem - 尝试修复异常格式的证书:
openssl x509 -inform DER -in ingagedcert.cer -out ingagedcert.crt - 手动补全证书起止行:客户提供的SSO证书格式为
<X509Certificate>MIIFxT....</X509Certificate>,推测是缺少起止行的PEM格式,修改为标准格式:
修改后解决了“无法找到对象”错误,但出现新问题。-----BEGIN CERTIFICATE----- MIT.... -----END CERTIFICATE-----
遇到的错误
运行时签名异常
ComponentSpace.SAML2.Exceptions.SAMLSignatureException: 'Failed to generate XML signature.' CryptographicException: Signing key is not loaded.
错误发生在SAMLMessageSignature.Generate调用处,原因是x509Certificate.PrivateKey为null,相关代码片段:
X509Certificate2 x509Certificate = LoadCertificate(certificatePath, password); SAMLMessageSignature.Generate(samlResponseXml, x509Certificate.PrivateKey, x509Certificate); IdentityProvider.SendSAMLResponseByHTTPPost(System.Web.HttpContext.Current.Response, relayState, samlResponseXml, relayState);
OpenSSL转换PFX时的私钥加载错误
执行以下转换命令:
openssl pkcs12 -inkey ingagedcert.pem -in ingagedcert.cer -export -out ingagedcert.pfx
出现报错:
unable to load private key 37072:error:0909006C:PEM routines:get_name:no start line:../openssl-1.1.1h/crypto/pem/pem_lib.c:745:Expecting: ANY PRIVATE KEY
求助问题
本人对SSO和证书知识较为陌生,请问如何验证客户提供的.cer文件是否有效?
内容的提问来源于stack exchange,提问作者SomeStudent
相关产品推荐
相关产品推荐

