我正在用org.opensaml.saml.saml2.core.Response v3.2.0构建一个openSAML。我已经签署了回复,并想提交给你。
我试着看了openSAML的书(“OpenSAML v3指南”),但它似乎对我的场景没有帮助。我有一个c#演示项目,它基本上提交了HTTPPost的响应。我用java和opensaml写了同样的东西。我必须像书上所说的那样建造一件艺术品吗?书中的示例建议我使用SOAP发送ArtifactResolve,即使我正在构建响应。
使用上面的response对象,我想将响应对象发布到idp。
实现这一目标的最佳方法是什么?-创建一个信封对象是一个好主意吗?使用来自saml2包的response对象,我如何创建org.opensaml.soap.soap11。
任何帮助都是非常感谢的!谢谢!
发布于 2017-09-18 11:32:29
你不必像书上说的那样建造神器。使用工件有一些安全性、隐私和其他好处。请参阅Scott .答案,以了解使用Artifact https://stackoverflow.com/a/13618537/1163424的好处。
根据您的问题,您还可以使用POST绑定将响应传递给SP。这样做的方法是将您的响应XML (带有已签名的断言)编码为Base64字符串,并使客户端web-app将其发布到SP (断言消费者服务)。
您传递SAMLResponse参数,其中base64字符串作为值,RelayState参数将用于设置set应用程序中的状态,如在SAML 2绑定规范页面21中所写。
此外,我建议使用SAML工具验证您的响应消息。
https://stackoverflow.com/questions/46159880
复制相似问题