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

SAML响应xml无效

公良照
2023-03-14

我为我们的一个客户开发了一个定制的SAML IdP。但是,当试图将以下响应传递给SP时,它失败了。我尝试使用一些在线SAML在线工具来验证响应,我看到了一些错误,但我不知道哪里出了问题。有人能帮忙吗?

    <Response xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
      xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
      ID="_8ad9eb0c-c65c-4327-ae76-ae238ca17e96"
      Version="2.0"
      IssueInstant="2017-06-28T13:53:06.9612024Z"
      Destination="https://crnm.lessonly.com/auth/saml/callback"
      xmlns="urn:oasis:names:tc:SAML:2.0:protocol"
      >
<saml:Issuer>https://crnm.lessonly.com/auth/saml/metadata</saml:Issuer>
<Status>
    <StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" />
</Status>
<saml:Assertion Version="2.0"
                ID="_4761e320-64e8-4d8a-a443-2e4e2ccb3e98"
                IssueInstant="2017-06-28T13:53:06.9612024Z"
                >
    <saml:Issuer>https://crnm.lessonly.com/auth/saml/metadata</saml:Issuer>
    <saml:Subject>
        <saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">amilev1@visualantidote.com</saml:NameID>
        <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
            <saml:SubjectConfirmationData Recipient="https://crnm.lessonly.com/auth/saml/callback"
                                          NotOnOrAfter="2017-06-28T13:58:06.9768269Z"
                                          />
        </saml:SubjectConfirmation>
    </saml:Subject>
    <saml:Conditions NotBefore="2017-06-28T13:53:06.9768269Z"
                     NotOnOrAfter="2017-06-28T13:58:06.9768269Z"
                     >
        <saml:AudienceRestriction>
            <saml:Audience>https://crnm.lessonly.com/auth/saml/metadata</saml:Audience>
        </saml:AudienceRestriction>
    </saml:Conditions>
    <saml:AuthnStatement AuthnInstant="2017-06-28T13:53:06.9768269Z"
                         SessionIndex="_4761e320-64e8-4d8a-a443-2e4e2ccb3e98"
                         >
        <saml:AuthnContext>
            <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</saml:AuthnContextClassRef>
        </saml:AuthnContext>
    </saml:AuthnStatement>
    <saml:AttributeStatement>
        <saml:Attribute Name="UserID"
                        NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                        >
            <saml:AttributeValue xsi:type="xsd:string">125481</saml:AttributeValue>
        </saml:Attribute>
        <saml:Attribute Name="email"
                        NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                        >
            <saml:AttributeValue xsi:type="xsd:string">amilev1@visualantidote.com</saml:AttributeValue>
        </saml:Attribute>
        <saml:Attribute Name="first_name"
                        NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                        >
            <saml:AttributeValue xsi:type="xsd:string">Angel1</saml:AttributeValue>
        </saml:Attribute>
        <saml:Attribute Name="last_name"
                        NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                        >
            <saml:AttributeValue xsi:type="xsd:string">Milev1</saml:AttributeValue>
        </saml:Attribute>
        <saml:Attribute Name="name"
                        NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                        >
            <saml:AttributeValue xsi:type="xsd:string">Angel1 Milev1</saml:AttributeValue>
        </saml:Attribute>
    </saml:AttributeStatement>
    <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
        <SignedInfo>
            <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
            <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
            <Reference URI="#_4761e320-64e8-4d8a-a443-2e4e2ccb3e98">
                <Transforms>
                    <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                    <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
                </Transforms>
                <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
                <DigestValue>UB/5XN1dGa2/w0aKRmmq2oFvbOE=</DigestValue>
            </Reference>
        </SignedInfo>
        <SignatureValue>JTkUhfmk2ngPQnFtSC41WQodJj0MyCHw8oCJbEQE32vgViV4ucVvaim4jKMMD6B7JIkvCtuyu8II5h6oJOSsXQK0x03hlQFqpdgj/1Be53v9H90PWTgJ1mr41jF2AQTgAcdJmuV05oI23KxI+5jNFifri+POHSEfRU+k0Phyh+UTA2DlhFnbn5DAjzhnIu4e+L35QJBCSwZy7zT+NDr7dzL/JLAQOC79PlaM4cbjn9ri2bUwS3T1QFMQqsxGOl+ggaAwGWWNQlCV2Se2tZ1rLVUpZ5lB611GIbysBmghy5gtDe3htDHsp8IkuJnRf4lndjral7FVmZ1pdPhdK7HTgTA=</SignatureValue>
        <KeyInfo>
            <X509Data>
                <X509Certificate>MIIDUTCCAjigAwIBAgIBADANBgkqhkiG9w0BAQ0FADBCMQswCQYDVQQGEwJjYTERMA8GA1UECAwITWFuaXRvYmExDTALBgNVBAoMBENSTk0xETAPBgNVBAMMCENSTk0uQ09NMB4XDTE3MDYyMTE5MzEzNloXDTI3MDYxOTE5MzEzNlowQjELMAkGA1UEBhMCY2ExETAPBgNVBAgMCE1hbml0b2JhMQ0wCwYDVQQKDARDUk5NMREwDwYDVQQDDAhDUk5NLkNPTTCCASMwDQYJKoZIhvcNAQEBBQADggEQADCCAQsCggECAPbVJtzJTRQvSkAOl8sGUymWy0K1yNKI11Vf8eDnHiH/awkgSu9JORwochJdHPnTA8qA1KaH7IxIIZX8wYkXsE9OxRkUAv+xWHemVBRrUc64wlotfghCCziaPuhinPKxQ63BlIkj0u/KOmdXcGvOfYasBK0Gr4IVpL7X4CdXTDKQPF5Y6zV7Ed5lgjDcO3wG1klHGVSStOwIFptWzyArDMNCrOWqSbojzczjxcrESy8agTR1Z/U+YVhcwHub2ch0w/RkxepvtLQMHiTK3YtFrp5of29pCGHLv0dWgCoR+S7+VcSbQrQdAv1kb13EC64F55GwvJnPEcQGTous2DZrbsOnAgMBAAGjUDBOMB0GA1UdDgQWBBToNe5/YV0PcEjQJlvv/yJ7FhfvQjAfBgNVHSMEGDAWgBToNe5/YV0PcEjQJlvv/yJ7FhfvQjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBDQUAA4IBAgCPzeVaQNP3Bm796QT5R2r0Ur537xkN9f6W69paWfh2Ti7FzVyBCUMUMHL55dR24m45Xl7X2rurwZnr3oyibcCUENk2nYQ3uadoXTj3q5jfW2KxTx0DQH2F4D3TqxUpsTcJpt5eG+2mFheAyG6A+k719ShVgV6BtW1A1U9KJMD7UeWbejBGKrAC3AkCQyIaBjw+64sed8NN+jRPaEJxJ/APpHEBRiXQQOtnTKoRoz9ZvRvJTZ0N65/s+Cs7c2Y56PonWjlY2Kt4W5tp4VZTCmwnGmvMApyrWr/IZ9GgJsSz1EmbfVGKjKLHM29xXxnBLmkfGdc1yU4HXZYVFh00Ds6cgA==</X509Certificate>
            </X509Data>
        </KeyInfo>
    </Signature>
</saml:Assertion>
</Response>

在samltool.com上使用验证器,我得到以下错误:

XML无效。

行:69列:0-->元素‘{http://www.w3.org/2000/09/xmldsig#}signature':不需要此元素。

共有1个答案

申颖逸
2023-03-14

SAML XSD要求Signature元素紧随发行人元素之后

 类似资料:
  • 我正在尝试将Google设置为SP,将我自己的数据库设置为IDP。我已经用我的登录和注销URL配置了我的GSuite帐户,google正在完美地重定向到它们。但在收到谷歌的SAML请求后,我尝试生成SAML响应,我得到了G套件-无法访问此帐户,因为无法验证登录凭据。 下面是我的SAML响应XML: 我使用python saml python包对saml响应进行签名:- 任何帮助都会apprecia

  • 在使用OpenAM和Spring security saml2示例时,我遇到了一个问题。 我按照本教程配置了Spring saml2示例以及OpenAM。现在,我在选择 http://localhost:8080/OpenAM-12.0.0 并单击登录后遇到错误,但浏览器返回“HTTP状态500 - SAML请求无效”。 示例项目和OpenAM都部署在同一个tomcat服务器上,但是我没有在任何日

  • 尝试为使用Spring MVC构建的JavaWeb应用程序设置SSO。我已经将我的应用程序注册到一个OKTA服务器,得到了一个元数据URL和一个SignOn URL。我正在使用我的应用程序中的SignOn URL,验证成功,然后使用一些包含SAML响应对象的表单数据发出POST请求。 从这里开始下一步应该做什么?我已经解码了SAML响应,现在根据我的理解,我需要获得一个令牌或一个会话ID,我需要使

  • 我已经开发了一个Java web应用程序,我想实现SAML。我认为这些是实现SAML的正确步骤。 服务提供商(SP,在本例中是我的应用程序)向IdP发送SAML身份验证请求 然后,IdP对其进行验证,创建SAML响应断言,并将其与证书一起签名,然后发送回SP。 然后,SP使用密钥库中证书的公钥对其进行验证,并在此基础上进一步进行 我有一个示例代码,可以创建SAML请求 我可以对其进行编码并发送给I

  • 我正在使用SAML和外部IdP实现SSO选项。如果我在单击浏览器中的SSO按钮后检查收到的SAML响应,我可以看到所需的身份验证数据(如用户名和电子邮件),因此与IdP的通信工作正常。 然而,Keycloak并不执行登录,并显示给我一个页面,上面写着:“我们很抱歉...登录超时,请重新登录。”,并且没有新用户注册。我的领域中令牌的登录超时设置为30分钟。 查看日志时,我发现了以下错误: 我发现这可

  • 我们正在使用Spring Security性将SAML SSO集成到Spring应用程序中。我们的应用程序托管在Google App Engine中。我们面临一个问题,以下是步骤, 第1步:请求我们应用程序的URL将重定向到idp登录页面第2步:在验证凭据后,idp向我们的应用程序发送响应 问题:步骤3:我们的应用程序再次向idp发送请求,并且它无限地继续。 在我们的应用程序中,我们无法捕捉到id