Я устанавливаю wso2 между office365 и приложением справочной службы, которое использует SAML 2 для аутентификации. приложение ожидает, что имя пользователя в провайдерах идентификации NameID.wso2is отправляет идентичный guid идентификатор в поле NameID вместо поля псевдонима, которое мне нужно в моем приложении.
Я уже выполнил все шаги из этого документа https://github.com/wso2-extensions/identity-outbound-auth-office365/blob/v1.0.4/docs/config.md в дополнение к определению утверждения Alias, а затем в сервис-провайдере добавил настраиваемое сопоставление для NameID с псевдонимом и указанным URI для утверждения NameID
<saml2:Subject>
<saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">0cccccc-444444-45553-1111-92387492387@23423423-sdfs-3333-5555-222222222</saml2:NameID>
<saml2:AttributeStatement>
<saml2:Attribute Name="Alias"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
>
<saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string"
>j.smith</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute Name="DisplayName"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
>
<saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string"
>John Smith</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute Name="Id"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
>
<saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string"
>0cccccc-444444-45553-1111-92387492387@23423423-sdfs-3333-5555-222222222</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute Name="@odata.context"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
>
<saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string"
>https://outlook.office365.com/api/v2.0/$metadata#Me</saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute Name="EmailAddress"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
>
<saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string"
>a@b.com</saml2:AttributeValue>
</saml2:Attribute>
</saml2:AttributeStatement>
</saml2:Assertion>
Мне нужно, чтобы NameID был NameID, чтобы быть j.smith из атрибута псевдонима
j.smith