我正在尝试为OpenAM撰写SAML2 AuthnRequest。我有一个URL,我可以执行反对的工作,但在将此组成XHTML帖子表单时遇到问题。
带有查询字符串的工作URL是
我的html表单如下:
<form action="http://internal.authhost.com:8080/opensso/idpssoinit" method="post" target="new">
<input type="text" name="SAMLRequest" value="PHNhbWxwOkF1dGhuUmV..."></input>
<input type="text" name="RelayState" value="webj_captureCustomerDetails"></input>
<input type="submit"/>
</form>
,SAMLRequest的值是
的Base 64编码表示<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="_d7607d551380ac97853a6ff4907c4ef01219be97dd" Version="2.0"
IssueInstant="2008-05-27T07:46:06Z" ForceAuthn="true" IsPassive="false"
ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
AssertionConsumerServiceURL="https://cs4.salesforce.com/?saml=lkjhkljhkljhkjhlkjh"
ProviderName="https://saml.salesforce.com">
<saml:Issuer>https://saml.salesforce.com</saml:Issuer>
<samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"
AllowCreate="true"/>
</samlp:AuthnRequest>
发出此表单会导致OpenAM发出错误消息,指出“服务提供商ID为空”
我可以立即看到XML不包含metaAlias = / MYRealm / idp参数,但是该消息表明它无法找到spEntityID = https://saml.salesforce.com参数。
请告知需要在XML中指定这两个属性(metaAlias和spEntityID)的位置。
指向OpenAM COT / IdP配置如何映射SAML AuthnRequest消息的某个地方的链接也将受到赞赏。
答案 0 :(得分:2)
问题是我访问了错误的URL,本应该点击spssoinit,因为它是服务提供商的intitated SSO