Recherche
bon je viens de tester le fait d'utiliser uid pour mon IdP --> Ca ne semble pas marcher car :
L'idée était donc bonne mais soit j'ai mal compris soit ils n'ont pas poussé à terme leur réflexion sur le sujet.
Je vais faire une fiche...
A+
Le 01/12/2010 12:13, Raymond Bourges a écrit :
> Bonjour,
>
> Je n'ai pas fait de page web car je n'ai pas testé mais en faisant du debug je crois comprendre à quoi sert l'entrée
>
> <uidHeader idpUrl="url2">uid2</uidHeader>
>
> Que l'on trouve dans <uidHeaders> de la config shib de nuxeo.
>
> Perso je n'utilise que <default>eppn</default>
>
> Donc <uidHeader idpUrl="url2">uid2</uidHeader> permet de dire que pour idpUrl valant par exemple https://ident-shib-test.univ-rennes1.fr/shibboleth (en fait d'URL je pense que c'est ID de l'Idp) on peut dire à nuxeo d'utiliser l'attribut uid2 envoyé par cet IdP et pas <default>.
>
> Donc on peut imaginer 2 cas :
> 1) un IdP externe nous enverrais ses uid@domain.fr avec un autre attribut que <default>eppn</default> alors on pourrait le préciser via <uidHeader>
> 2) pour un IdP local on peut décider de ne pas utiliser eppn mais uid par exemple --> Ceci évite au niveau de la conf LDAP de nuxeo de dire que l'ID utilisé est eppn et de garder uid --> Ceci a comme impact de continuer à faire des requête LDAP sur uid ce qui est plus naturel que sur l'eppn
>
> Je crois que le point 2 est à tester et à préconiser si ça marche bien...
>
> A+
forcer l'attribut "surname" dans la map :
--- a/nuxeo-platform-login-shibboleth/src/main/java/org/nuxeo/ecm/platform/shibboleth/auth/ShibbolethAuthenticationPlugin.java Tue Nov 09 00:10:12 2010 +0100 +++ b/nuxeo-platform-login-shibboleth/src/main/java/org/nuxeo/ecm/platform/shibboleth/auth/ShibbolethAuthenticationPlugin.java Wed Dec 01 12:44:26 2010 +0100 @@ -116,6 +116,7 @@ Map<String, Object> fieldMap = getService().getUserMetadata(httpRequest); DocumentModel entry = userDir.getEntry(userId); if (entry == null) { + // patch RB : fieldMap.put("surname", userId); userDir.createEntry(fieldMap); } else { entry.getDataModel(userManager.getUserSchemaName()).setMap(