2017-09-11 3 views
0

openSAML v3.2.0을 사용하여 org.opensaml.saml.saml2.core.Response를 구축하고 있습니다. 나는 응답에 서명했고 그것을 제출하고 싶다.OpenSaml 응답을 제출하는 방법?

OpenSAML 책 (A 안내서 - OpenSAML v3)을 따르려고했으나 시나리오에 도움이되지 않습니다. 나는 기본적으로 HTTPPost에 의한 응답을 제출하는 C# 데모 프로젝트를 가지고있다. 나는 opensaml과 자바에서 같은 것을 쓰고있다. 이 책에서 제안한대로 유물을 만들어야합니까? 이 책의 예는 응답을 작성하고 있지만 SOAP를 사용하여 ArtifactResolve를 보냅니다.

위의 응답 개체를 사용하여 응답 개체를 idp에 게시하고 싶습니다.

이것을 달성하는 가장 좋은 방법은 무엇입니까? - 봉투 개체를 만드는 것이 좋은 생각입니까? saml2 패키지의 응답 객체를 사용하여 org.opensaml.soap.soap11.Envelope를 어떻게 만들 수 있습니까?

도움을 주시면 감사하겠습니다. 감사!

+0

SAML API에는 WSDL이 있습니다. SAML이 어떻게 보이는지, 어디에서 POST 할지를 문서화해야합니다. –

+0

제 질문은 SOAP 클라이언트를 구성하는 방법에 관한 것입니다. "SAML api에 WSDL_이 있습니까?"에 대해 자세히 설명해 주시겠습니까? – veggirice

+0

SAML 요청을 SAML 서버에 POST해야합니다. SAML 서버 웹 서비스에는 XML 메시지의 모양과 서버 끝점을 정의하는 WSDL이 있습니다. SAML 작동 방식을 읽어 보시기 바랍니다. 그런 다음 샘플 SAML 요청 및 응답을 얻습니다. SAML 서버와 통신하려면 공용 SSL 키가 필요합니다. 내가 무슨 말하는지 모르겠다면 서버를 관리하는 사람에게 물어보십시오. –

답변

1

책에서 제안한대로 이슈를 작성할 필요가 없습니다. 아티팩트 사용에는 보안, 개인 정보 보호 및 기타 이점이 있습니다. 또한 POST 바인딩을 사용하여 SP에 대한 응답을 전달할 수 있습니다 귀하의 질문에 당 https://stackoverflow.com/a/13618537/1163424

, - 봐 스콧 T. 바인딩 아티팩트를 사용의 이점을 이해하고 대답합니다. 이를 수행하는 방법은 응답 XML (서명 된 어설 션을 사용하여)을 Base64 문자열로 인코딩하고 클라이언트 웹 앱이이를 SP ACS (어설 션 소비자 서비스)에 POST하도록 만드는 것입니다. SAML 2 Bindings specification 페이지 또한 21

에 기록 된대로

당신은, Base64로 값으로 문자열과 SP의 웹 응용 프로그램의 상태를 설정하는 데 사용됩니다 RelayState 매개 변수 SAMLResponse 매개 변수를 전달, 내가 사용하는 것이 좋습니다 SAML tool을 입력하여 응답 메시지의 유효성을 검사하십시오.

+0

org.opensaml.saml.saml2.binding.encoding.impl.HTTPPostEncoder에서 HTTPPostEncoder를 사용하여 종료되었습니다. 감사. – veggirice

관련 문제