Recherche

Sommaire

Pages enfant
  • 6) Utilisation de uidHeader

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Balise Wiki
h1. Échanges

bon je viens de tester le fait d'utiliser uid pour mon IdP \--> Ca ne semble pas marcher car :

...



* ShibbolethAuthenticationPlugin.handleRetrieveIdentity() fait un userDir.getEntry(userId) avec userId=bourges et ne trouve pas l'entrée dans nuxeo \--> Normal

...


* Il essaie alors de la créer dans SQLSession.createEntry() mais  j'ai une erreur \--> "Entry with id bourges@univ-rennes1.fr already exists" \--> en effet il reprend l'info de <fieldMapping header="eppn">username</fieldMapping> et travaille donc maintenant avec le eppn

...



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\+

h1. Patch possible

forcer l'attribut "surname" dans la map :


\--\- a/nuxeo-platform-login-shibboleth/src/main/java/org/nuxeo/ecm/platform/shibboleth/auth/ShibbolethAuthenticationPlugin.java&nbsp;&nbsp; &nbsp;Tue Nov 09 00:10:12 2010 \+0100
\++\+ b/nuxeo-platform-login-shibboleth/src/main/java/org/nuxeo/ecm/platform/shibboleth/auth/ShibbolethAuthenticationPlugin.java&nbsp;&nbsp; &nbsp;Wed Dec 01 12:44:26 2010 \+0100
@@ \-116,6 \+116,7 @@
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Map<String, Object> fieldMap = getService().getUserMetadata(httpRequest);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DocumentModel entry = userDir.getEntry(userId);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (entry == null) {
\+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;// patch RB : fieldMap.put("surname", userId);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; userDir.createEntry(fieldMap);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; entry.getDataModel(userManager.getUserSchemaName()).setMap(