Возвращение имени пользователя как в утверждении SAML в Shibboleth IDPV3.3 - PullRequest
0 голосов
/ 14 декабря 2018

Я использую Shibboleth IDPv3.3 для интеграции с нашим SP, и мне удалось заставить SSO-аутентификацию работать с LDAP.

Однако я вижу сгенерированный NameID, а не тот, который я ввел во время аутентификации

 <saml2:NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"
                          NameQualifier="https://shib.nslab.com/idp/shibboleth"
                          SPNameQualifier="https://chandracppm.nslab.com/networkservices/saml2/sp"
                          >7DBQ2seeNYvP9l6RsCrJZRh8/kw=</saml2:NameID>

Для нашего SP нам нужно фактическое имя пользователя, которое пользователь ввел на странице входа в системудолжен быть возвращен как NameID.

Какую конфигурацию мне нужно сделать для достижения этой цели.

1 Ответ

0 голосов
/ 17 декабря 2018

Мне удалось получить Shibboleth IDP v3.3 для возврата имени пользователя, введенного в качестве NameID в ответе SAML, выполнив следующие действия:

В attribute-resolver.conf

<AttributeDefinition id="uid" xsi:type="PrincipalName">
    <AttributeEncoder xsi:type="SAML1String" name="urn:mace:dir:attribute-def:uid" encodeType="false" />
    <AttributeEncoder xsi:type="SAML2String" name="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent" friendlyName="uid" encodeType="false" />
</AttributeDefinition>

в метаданных SP, определяющих формат NameID

<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</NameIDFormat>

В saml-nameid.xml

Закомментирование всех других bean-компонентов, кроме

 <util:list id="shibboleth.SAML2NameIDGenerators">
<bean parent="shibboleth.SAML2AttributeSourcedGenerator"
        p:format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"
        p:attributeSourceIds="#{ {'uid'} }" />

С этими 3 частямиконфигурации и убедитесь, что атрибут-фильтр настроен на освобождение всех атрибутов, которые я смог заполнить UserID, введенный пользователем в Shibboleth IDP, как в утверждении ответа.

...