我使用WSO2(第5版)完成了第一步,我不理解声明映射。 目前,travelocity.com应用程序运行正常。我可以登录,然后我被重定向到travelocity应用程序的主页 - 一切都很好。
不,我希望发送不同的SAML断言作为对travelocity-appl的响应。 因此,我添加了#34;身份提供商声明URI"索赔配置(电子邮件和角色)。 对我来说不清楚的是,只有一个选择字段"主题声明URI"。 当我选择电子邮件URL时,而不是SAML-响应是以下行:
<saml2:Subject>
<saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:name">email@email.com</saml2:NameID>
<saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml2:SubjectConfirmationData InResponseTo="0"
NotOnOrAfter="2014-08-30T09:18:56.447Z"
Recipient="http://localhost:8080/travelocity.com/samlsso-home.jsp"
/>
</saml2:SubjectConfirmation>
</saml2:Subject>
当我选择角色URL作为主题声明URI时,我得到角色:
<saml2:Subject>
<saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:name">admin,xccx,asqs,Internal/identity,Internal/travelocity.com,Internal/everyone</saml2:NameID>
<saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml2:SubjectConfirmationData InResponseTo="0"
NotOnOrAfter="2014-08-30T09:18:56.447Z"
Recipient="http://localhost:8080/travelocity.com/samlsso-home.jsp"
/>
</saml2:SubjectConfirmation>
</saml2:Subject>
但我会在SAML响应中得到两个。
我做错了什么。 非常感谢任何帮助和所有最好的!!
答案 0 :(得分:0)
您必须使用请求的声明来获取SAMLAssertion中的声明。主题声明是您的应用程序所期望的用户名。