저는 SP로 일하고 있으며 최근에는 IDP와 통합해야합니다. IDP의 문서에서, 그것은 나에게 http 포스트 응답을 보낼 것이다. 응답에는 ds : SignatureValue 및 ds : X509Certificate가 있습니다. 이 SAML: Why is the certificate within the Signature?과 같은 스레드가 있습니다. 스레드는 메시지가 누구인지 확인하는 방법 만 응답합니다.SAML 신뢰 확인
1) ds : SignatureValue 및 ds : X509Certificate의 의미는 무엇입니까?
2) 내 IDP의 응답을 보장하는 방법은 무엇입니까? 내 말은 해커가 내 http 게시물 주소를 알고 있다면 내 응용 프로그램에 비슷한 http 게시물 요청을 쉽게 보낼 수 있다는 뜻입니다. http 요청 헤더에 리퍼러가 있다는 것을 발견했습니다. IDP의 요청을 확인하는 것이 안전합니까?
3) IDP가 SP 공용 서명 인증서를 보내달라고 요청한 경우이 형식은 DER로 인코딩 된 이진 X.509 (* .CER)로 인코딩되어야합니다. 공개 공개 서명 인증을 만드는 방법은 무엇입니까?
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
<ds:Reference URI="#_2152811999472b94a0e9644dbc932cc3" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:Transforms xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ec:InclusiveNamespaces PrefixList="ds saml samlp xs" xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
<ds:DigestValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#">bW1Os7+WykqRt5h0mdv9o3ZF0JI=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
SignatureValue </ds:SignatureValue>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>X509 certification</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
@ Study Hard : 답변을 주셔서 감사합니다. 이것이 올바른 것으로 보이는 경우 사람들이 질문과 답변을 읽기 쉽도록 최선의 답변으로 받아들입니다. – Zeigeist
IdP 인증서를 사용하여 들어오는 SAML 응답에 서명하고받은 ds와 비교하는 방법을 궁금합니다. IdP의 SignatureValue. 나는 OpenSAML을 사용하고 있으며 응답으로부터 서명을 얻을 수있다. –
포인트 2에 코드 참조를 추가했습니다. 확인하십시오. – Zeigeist