Я не могу настроить MelonUser
в моей конфигурации Apache. В NAME_ID
мой IdP действительно предоставляет идентификатор сеанса, который меняется каждый раз, и это единственные данные, доступные в Subject
ответа.
Необходимые мне данные (настоящее имя пользователя) содержатся в одном из атрибутов, но я не знаю, как сделать его значением MellonUser
Это тема моего ответа SAML:
<Subject>
<NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">zxdRaLL4wCpt5ad1wecb2VEyDyPVI+nZWnQDex1qeBE=</NameID>
<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<SubjectConfirmationData InResponseTo="_3CA900360D4B24CC52F2D126E0A998CA"
NotOnOrAfter="2019-04-24T15:55:49.758Z"
Recipient="- REDACTED :) -"/>
</SubjectConfirmation>
</Subject>
И необходимые мне атрибуты:
<AttributeStatement>
...
<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">
<AttributeValue>THE_USERNAME_I_WANT</AttributeValue>
</Attribute>
...
</AttributeStatement>
Не могли бы вы помочь, как использовать этот атрибут в качестве значения MellonUser
?
Я не мог найти, как манипулировать полями, как хотел, но обнаружил, что как SP я могу контролировать то, что возвращается как NAME_ID.
Добавление <NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</NameIDFormat>
на моих метаданных SP дал мне то, что я хотел.