如何解决WSO2 IS 5.8.0签名验证的SAML身份验证失败

如何解决WSO2 IS 5.8.0签名验证的SAML身份验证失败,wso2,saml-2.0,wso2is,opensaml,multi-factor-authentication,Wso2,Saml 2.0,Wso2is,Opensaml,Multi Factor Authentication,在WSO2-IS-5.8.0中获取签名验证问题失败 我正在尝试WSO2在上提供的简单电子邮件OTP身份验证教程。我已完成所有步骤,但在登录到链接时:http://localhost:8080/travelocity.com我在Tomcat上遇到以下异常 [org.apache.xml.security.signature.XMLSignature] : Signature verification failed. [org.opensaml.xml.signature.SignatureVali

WSO2-IS-5.8.0
中获取签名验证问题失败

我正在尝试WSO2在上提供的简单电子邮件OTP身份验证教程。我已完成所有步骤,但在登录到链接时:
http://localhost:8080/travelocity.com
我在Tomcat上遇到以下异常

[org.apache.xml.security.signature.XMLSignature] : Signature verification failed.
[org.opensaml.xml.signature.SignatureValidator] : Signature did not validate against the credential's key
[org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager] : Validation exception :  Ignored FQCN: org.apache.commons.logging.impl.SLF4JLocationAwareLog
org.opensaml.xml.validation.ValidationException: Signature did not validate against the credential's key
        at org.opensaml.xml.signature.SignatureValidator.validate(SignatureValidator.java:79)
        at org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager.validateSignature(SAML2SSOManager.java:1041)
        at org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager.validateSignature(SAML2SSOManager.java:897)
        at org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager.processSSOResponse(SAML2SSOManager.java:581)
        at org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager.processSSOResponse(SAML2SSOManager.java:525)
        at org.wso2.carbon.identity.sso.agent.saml.SAML2SSOManager.processResponse(SAML2SSOManager.java:358)
        at org.wso2.carbon.identity.sso.agent.SAML2SSOAgentFilter.doFilter(SAML2SSOAgentFilter.java:98)
        at org.wso2.sample.is.sso.agent.SSOAgentSampleFilter.doFilter(SSOAgentSampleFilter.java:103)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:444)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1137)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
        at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2579)
        at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2568)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:748)
对于身份提供程序我已选择
上载IDP证书
对于
选择IDP证书类型
。我使用的证书位于
repository\resources\security\wso2.crt
<代码>令牌存储同一目录中的目录为空

对于服务提供商我已从
选择SP证书类型
中选择了
上载SP证书
选项。我在其中上载的pem是通过目录中的以下命令生成的:
samples\sso\sso agent sample\src\main\resources

  • 第一个命令:
    'C:\Program Files\Java\jdk1.8.0\u 221\bin\keytool.exe'-export-alias wso2carbon-file wso2.crt-keystore wso2carbon.jks-storepass wso2carbon
  • 第二个命令:
    'C:\Program Files\OpenSSL-Win64\bin\OpenSSL.exe'x509-通知der-in.\wso2carbon.crt-out wso2carbon.pem
  • 我还尝试了在
    服务提供商
    中选择
    使用SP JWKS端点
    身份提供商
    中选择
    使用IDP JWKS端点
    中选择IDP证书类型:
    仍然存在相同问题

    对此,可能的解决方案是什么?我错过了什么案子? 很可能我在SP中的
    .pem
    和IP中的
    .crt
    中理解的内容不匹配。我怎样才能解决这个问题。 若我错过了正确的crt/pem执行,那个么若您可以添加要为证书执行的确切命令,那个就太好了