如何在SAML断言(OpenAM)中获取用户名

时间:2012-10-27 12:31:56

标签: openam

这是我在OpenAM IDP中的SAML断言

<saml:Subject>
<saml:NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient" NameQualifier="http://idp.ntech.com:9090/openam">/81OhgvXhHdM/+STdnPlhgkVJzDo</saml:NameID>     <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectConfirmationData InResponseTo="FEDE98AB33A4049999504522AB01C664219893A2"  NotOnOrAfter="2012-10-27T10:56:22Z"  Recipient="http://sp.ntech.com/SampleApp/fedletapplication.aspx" /></saml:SubjectConfirmation>
</saml:Subject>   

但我需要用户名而不是NameId,我正在使用OpenAM.Please帮助

1 个答案:

答案 0 :(得分:0)

由于您使用的是瞬态NameID格式,因此来自OpenAM的NameID将只包含一个随机字符串。如果您确实需要有关用户的任何信息,那么您需要将NameID-Format从transient更改为其他内容(可能还使用OpenAM中的NameID值映射功能),或者您需要将这些额外属性作为断言(attributestatement)。为此,您需要在IdP上配置属性映射。