当前位置: 首页 > 知识库问答 >
问题:

无法验证SAML断言签名

窦志新
2023-03-14

我是从IDP接收SAML断言签名的服务提供商。我在Tomcat上使用JOSSO来使用断言。这里的问题是我无法验证断言签名。

IDP证书使用别名“IDP”上传到我的密钥库。

在验证sig时,我得到以下错误:

2012-12-19 14:09:38,697 | ERROR | P/SAML2/ACS/POST | AbstractCamelProducer            | tion.camel.AbstractCamelProducer  146 | 170 - org.atricore.idbus.kernel.main - 1.3.0 | urn:oasis:names:tc:SAML:2.0:status:Requester:urn:oasis:names:tc:SAML:2.0:status:RequestDenied:urn:org:atricore:idbus:samlr2:status:**InvalidResponseSignature:null**:
org.atricore.idbus.capabilities.sso.support.core.SSOResponseException: urn:oasis:names:tc:SAML:2.0:status:Requester:urn:oasis:names:tc:SAML:2.0:status:RequestDenied:urn:org:atricore:idbus:samlr2:status:InvalidResponseSignature:null:

at org.atricore.idbus.capabilities.sso.main.sp.producers.AssertionConsumerProducer.validateResponse(AssertionConsumerProducer.java:943)

at org.atricore.idbus.capabilities.sso.main.sp.producers.AssertionConsumerProducer.doProcess(AssertionConsumerProducer.java:139)

at org.atricore.idbus.capabilities.sso.main.sp.producers.AssertionConsumerProducer.doProcess(AssertionConsumerProducer.java:85)

at org.atricore.idbus.kernel.main.mediation.camel.AbstractCamelProducer.process(AbstractCamelProducer.java:133)[170:org.atricore.idbus.kernel.main:1.3.0]

at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:43)[148:org.apache.camel.camel-core:1.6.1]

为什么JOSSO无法检测密钥库中的证书并验证签名?我需要以不同的方式定义别名吗?

共有1个答案

狄宇
2023-03-14

这是JOSSO的一个已知错误。等待支持部门的解决方案

 类似资料:
  • 作为服务提供商,我试图通过从身份提供商(IdP)获取SAML断言(SAML 1.0)来验证我页面上的用户。执行以下步骤(非常抽象): 用户访问我的页面 我将用户重定向到用户进行身份验证的IdP。 我得到了一个SAML工件,通过它我向IdP请求SAML断言。 IdP将SAML断言直接发送回我的页面。 ? 此过程是否足以确保用户身份验证是合法的?我是否只是在步骤 5 中授予用户对我服务的访问权限,还是

  • 我正在研究SAML2 SSO的Idp端,作为Idp,我们应该向SP发布一个断言,它将由Idp发起。断言中有一个名为x509certificate的字段。我的第一个问题是,该字段是公钥本身还是由CA(证书颁发机构)签名的公钥?我的第二个问题是,如果它是一个由CA签名的公钥,那么自签名是安全的还是由真正的CA签名更好?我的第三个问题是,我们向SP提供Idp元数据更好,还是在任何断言请求中都有证书更安全

  • 我需要你的帮助,找出我在验证哈希方面做错了什么。我将代码放在摘要中,这样就可以查看它,而无需进行大量滚动。 此处发送了一个类似的令牌示例: https://gist.github.com/NoMan2000/3d3044e8d653a1d580ac#file-saml xml 我试图检查两个字段,DigestValue和SignatureValue。据我所知,DigestValue是通过查看应用的

  • 我试图遵循以下规范来验证SAML响应的签名:https://www.w3.org/tr/xmldsig-core/#sec-pkcs1 下面是我的工作流程:我得到SAML响应。我去掉签名信封,我把它规范化,我检查摘要,然后我检查签名。我能够成功地计算转换的SAML响应的SHA1摘要,并对其进行验证。然而,RSA-SHA1签名检查仍然无法实现。 SAML响应包含签名方法算法:http://www.w

  • 我可以通过HTTP-Redirect绑定登录和接收SAMLResponse,也可以使用privatekey解密和检索声明。 我的问题仍然是,我们需要验证saml响应(ADFS)吗?如果是如何做到这一点 我需要使用IP(身份提供商)公钥吗?它将在IP(元数据)中可用吗? 我在下面的请求参数中有SAML响应 SAMLACK=签名=hashvalue sigAlg=sha256 如何验证?

  • 我在Tomcat 7上使用Spring Security SAML 2.0示例webapp,并对其进行了修改,以尝试让其通过Ping身份验证服务。webapp正在与服务对话,并返回一个断言,但在尝试验证签名时失败,如下调试输出所示: 我知道它无法验证签名,并且我已经获得了ping身份管理员要使用的证书,但我不确定如何将其包含在应用程序中。我尝试过使用JDK的keytools程序将其添加到示例应用程