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

以Junos为IdP的“签名没有根据凭据的密钥进行验证”

柯昱
2023-03-14

我被重定向到我的IdP的登录页面,并可以成功地输入我的凭据。但是出现这样的错误“签名没有根据凭据的密钥进行验证”。

还有另一篇stackoverflow文章描述了类似的问题,请参见“HTTP Status 401-Authentication Failed:传入的SAML消息无效”,将Salesforce用作实现SSO的IdP

但是我在遵循解决方案时遇到了一些问题,因为Fiddler捕获的SAML响应不包含“x509certificate”这样的元素。

提前感谢,

安迪

共有1个答案

尚声
2023-03-14

似乎响应消息是使用与IdP元数据中包含的证书不同的证书签名的。您应该要求IdP告诉您他们使用什么证书进行签名,并将它们添加到元数据文件中。根据您所说的,也可能是元数据文件只是不完整或损坏。

另一个选择是将它们提供给您的证书添加到samlkeystore.jks(并记住别名)。然后在Spring配置中IDP元数据定义的extendedMetadata上将别名定义为signingkey。您可以在Spring SAML手册中找到关于使用ExtendedMetadata的详细信息。

响应消息中没有包含密钥这一事实并没有错,Spring SAML从metadata和ExtendedMetadata配置中知道要使用哪些密钥。

 类似资料:
  • 我有一个来自idp的saml响应,它在响应和断言中都有签名。我正在尝试使用X509证书公钥验证签名。这是我的代码 我尝试了多个saml响应,不仅仅是我的。但我得到一个错误说: 警告org.apache.xml.security.signature。XMLSignature-签名验证失败。org.opensaml.xml.validation。ValidationException:签名未根据凭据的

  • 我想在客户端设备上使用通过Ed25519生成的私钥对JWS(json web签名)进行签名。然后将这个签名发送到我的后端,并用公钥验证它。为了熟悉这个过程,我想尝试在node js中对JWS进行签名和验证 我的私钥和公钥都已生成,可以在base58中使用。这是我目前使用Ed25519私钥签署JWT的尝试: 密钥必须是KeyObject或CryptoKey类型之一。收到一个Uint8Array的实例

  • 我正在尝试测试这个示例应用程序(https://github.com/deeprot/spring-saml-adfs),这是一个简单的Spring SAML示例应用程序,在我的环境中,因此,我有以下错误: 严重:在具有路径 [/Spring安全性 -saml2-样本] 的上下文中,为 Servlet.service() 抛出异常 java.lang.运行时异常:别名为 XXXX 的密钥没有私钥

  • 我试图使用javascript创建ECDSA算法的密钥对,签名消息,然后在服务器端验证它(使用Java)。 示例javascript代码: 例如: 我做错了什么?

  • 我是一个新的整合贝宝快递结账。我只想验证API凭据,如用户名、密码和签名,如果这些存在与否。

  • HTTP/REST-需要对代码/token/etc进行身份验证,以便将数据传递到keyvault,以便keyvault将使用密钥库中的密钥对数据进行签名。 Azure有很多文档介绍如何注册我的应用程序,在密钥库中为它创建凭据,然后通过OATH2对它进行身份验证(第一步是通过REST获得代码(然后是令牌?)),我一直被重定向登录。 我是不是漏掉了什么?我希望我的python脚本在无人值守的情况下运行