5 septembre 2014

InfoPath : Connexion au profil utilisateur en mode claims

Une des nouveautés de SharePoint 2013 a été l'introduction du mode d'authentification claims par défaut. Ce changement d'authentification entraine de nombreux impacts sur les applications et notamment "InfoPath Forms Services" (à noter que par conception, InfoPath en mode client lourd n'est pas concerné).
 
Dans les versions précédentes de SharePoint, de nombreuses sociétés utilisaient les formulaires IPFS en récupérant des informations de l'utilisateur connecté via le service de profil utilisateur (département, adresse mail, téléphone, numéro d'employé,...).

Si vous migrez et travaillez sur une application utilisant le mode claims, vous rencontrerez des erreurs de type "5566" lors de l'utilisation des connexions de données.
 
Il existe malgré tout un moyen de contournement qui consiste à utiliser le "Secure Store Service" de SharePoint:
 
  • Se connecter à l'administration centrale de SharePoint,
  • Créer une clé de type "Ticket du groupe" dans le Secure Store de votre ferme SharePoint :
 
 
  • Configurer le compte Windows à utiliser pour votre connexion à l'UPS :


 
  • Concevoir le formulaire en InfoPath en se connectant au service SOAP "userprofileservice.asmx" et convertir cette connexion en fichier UDCX via l'interface "Convertir" des connexions de données InfoPath :
 
 
 
  • Modifier le fichier déposé dans la bibliothèque de connexion de données comme ci-dessous (il sera nécessaire de l'enregistrer localement et de le redéposer) en précisant la clé renseignée dans le secure store :
 
 
Attention : Ne pas oublier de dé-commenter la ligne "Authentication" et d'approuver le fichier UDCX après l'avoir téléchargé.
 
 
A présent, votre formulaire récupérera correctement les valeurs dans la base de profil SharePoint. Voici l'exemple d'un formulaire de liste SharePoint customisé avec InfoPath:



 

Aucun commentaire:

Enregistrer un commentaire