Utiliser des profils utilisateur dans SharePoint

Découvrez les tâches de programmation courantes pour l’utilisation de profils utilisateur dans SharePoint.

API pour l’utilisation de profils dans SharePoint

Les profils utilisateur et les propriétés de profil utilisateur fournissent des informations sur les utilisateurs SharePoint. SharePoint fournit les API suivantes que vous pouvez utiliser pour travailler par programmation avec des profils utilisateur :

  • Modèles objet client pour le code managé

    • Modèle objet client .NET

    • Modèle objet client Silverlight

    • Modèle objet client mobile

  • Modèle objet JavaScript

  • Service REST (Representational State Transfer)

  • Modèle objet serveur

Il est vivement recommandé d'utiliser des API client quand vous le pouvez pour le développement SharePoint. Les API client comprennent le modèle objet client .NET, le modèle objet JavaScript et le service REST. Pour plus d'informations sur les API proposées dans SharePoint et pour savoir quand les utiliser, voir Choisir l'ensemble d'API approprié dans SharePoint.

Notes

Toutes les fonctionnalités de l’assembly Microsoft.Office.Server.UserProfiles ne sont pas disponibles dans les API clientes. Par exemple, vous devez utiliser le modèle objet serveur pour créer ou modifier des profils utilisateur, car ils sont en lecture seule dans les API clientes (à l’exception de l’image du profil utilisateur). Il n’y a pas non plus d’accès côté client à certains espaces de noms, tels que Microsoft.Office.Server.Audience, Microsoft.Office.Server.ReputationModel ou Microsoft.Office.Server.SocialData. Pour consulter les fonctionnalités prises en charge pour les API clientes, consultez Microsoft.SharePoint.Client.Social et Microsoft.SharePoint.Client.UserProfiles.

Chaque API inclut un objet gestionnaire que vous utilisez pour effectuer les tâches principales liées au profil. Le tableau 1 répertorie les objets gestionnaire et autres objets clés (ou ressources REST) inclus dans les API, ainsi que la bibliothèque de classes (ou point d'accès) où vous pouvez les trouver.

Notes

Les modèles objet client Silverlight et mobile ne sont pas inclus dans les tableaux 1 et 2, car ils fournissent les mêmes fonctionnalités de base que le modèle objet client .NET et utilisent les mêmes signatures. Le modèle objet client Silverlight est défini dans Microsoft.SharePoint.Client.UserProfiles.Silverlight.dll et le modèle objet client mobile est défini dans Microsoft.SharePoint.Client.UserProfiles.Phone.dll.

Tableau 1. API SharePoint permettant d’utiliser les profils utilisateur par programmation

API Objet clé
Modèle objet client .NET
Voir : Procédure : Récupérer les propriétés de profil utilisateur à l'aide du modèle objet client .NET dans SharePoint
Objet gestionnaire : PeopleManager
Espace de noms principal : Microsoft.SharePoint.Client.UserProfiles
Autres objets clés : PersonProperties , ProfileLoader , UserProfile
Bibliothèque de classes : Microsoft.SharePoint.Client.UserProfiles.dll
Modèle objet JavaScript
Voir : Procédure : Récupérer les propriétés de profil utilisateur à l'aide du modèle objet JavaScript dans SharePoint
Objet gestionnaire : PeopleManager
Espace de noms principal : SP.UserProfiles
Autres objets clés : PersonProperties, ProfileLoader, UserProfile
Bibliothèque de classes : SP.UserProfiles.js
Service REST
Voir : Référence de l'API REST des profils utilisateur
Ressource de gestionnaire : PeopleManager
URI du point de terminaison : http://<siteUri>/_api/SP.UserProfiles.PeopleManager
Espace de noms principal : SP.UserProfiles
Autres ressources clés : PersonProperties, ProfileLoader, UserProfile
Modèle objet serveur
Voir : Comment travailler avec les profils utilisateur et les profils d'organisation en utilisant le modèle objet serveur dans SharePoint
Objets gestionnaire : UserProfileManager , PeopleManager
Espace de noms principal : Microsoft.Office.Server.UserProfiles
Autres objets clés : UserProfile , CorePropertyManager , ProfilePropertyManager , ProfileSubtypeManager , ProfileSubtypePropertyManager , ProfileTypePropertyManager
Bibliothèque de classes : Microsoft.Office.Server.UserProfiles.dll

Tâches de programmation courantes pour l'utilisation de profils utilisateur dans SharePoint

Le tableau 2 répertorie les tâches de programmation courantes pour l'utilisation de profils utilisateur et les membres que vous utilisez pour les effectuer. Les membres proviennent du modèle objet client .NET (CSOM), du modèle objet JavaScript (JSOM), du service REST et du modèle objet serveur (SSOM).

Tableau 2. API pour les tâches de programmation courantes pour l'utilisation de profils utilisateur

Tâche Membres
Créer une instance d’un objet gestionnaire dans le contexte de l’utilisateur actuel CSOM : PeopleManager
JSOM : PeopleManager
REST : GET http://<siteUri>/_api/SP.UserProfiles.PeopleManager
SSOM : UserProfileManager (surchargé) ou PeopleManager
Modifier l'image de profil de l'utilisateur actuel CSOM : SetMyProfilePicture
JSOM : setMyProfilePicture
REST : POST http://<siteUri>/_api/SP.UserProfiles.PeopleManager/SetMyProfilePicture et transmettre le paramètre picture dans le corps de la demande
SSOM : UserProfile [PropertyConstants.PictureUrl].Value ou SetMyProfilePicture
Obtenir les propriétés de l'utilisateur actuel CSOM : GetMyProperties
JSOM : getMyProperties
REST : GET http://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetMyProperties (ou obtenir des propriétés utilisateur de base à partir de /_api/social.feed/my ou /_api/social.following/my)
SSOM : GetUserProfile
Obtenir les propriétés d'un utilisateur spécifique CSOM : GetPropertiesFor
JSOM : getPropertiesFor
REST : GET http://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor(accountName=@v)?@v='domain\\user'
SSOM : GetUserProfile (surchargé) ou GetPropertiesFor
Obtenir les propriétés de profil d'un utilisateur spécifique CSOM : GetUserProfilePropertiesFor
JSOM : getUserProfilePropertiesFor
REST : non implémenté. Appelez GetPropertiesFor, puis obtenez les propriétés du profil utilisateur à partir de la propriété UserProfileProperties de l’objet la valeur retournée PersonProperties.
SSOM : GetEnumerator
Obtenir une propriété de profil utilisateur spécifique pour un utilisateur CSOM : GetUserProfilePropertyFor
JSOM : getUserProfilePropertyFor
REST : GET http://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetUserProfilePropertyFor(accountName=@v,propertyName='PreferredName')?@v='domain\\user'
SSOM : UserProfile (surchargé) et spécifier le nom de propriété dans l’indexeur
Obtenir un profil utilisateur CSOM : GetUserProfile (renvoie le profil utilisateur côté client de l'utilisateur actuel uniquement)
JSOM : getUserProfile (renvoie le profil utilisateur côté client de l’utilisateur actuel uniquement)
REST : POST http://<siteUri>/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/GetUserProfile (renvoie le profil utilisateur côté client de l’utilisateur actuel uniquement)
SSOM : GetUserProfile (surchargé)
Déterminer l'existence d'un compte d'utilisateur CSOM : non implémenté
JSOM : non implémenté
REST : non implémenté
SSOM : UserExists
Créer ou modifier les profils utilisateur ainsi que les attributs et les propriétés des profils utilisateur
(Les API client peuvent modifier l'image de profil. Voir la tâche « Modifier l'image de profil de l'utilisateur actuel » dans ce tableau.)
CSOM : non implémenté
JSOM : non implémenté
REST : non implémenté
SSOM : multiples. Consultez la rubrique Comment travailler avec les profils utilisateur et les profils d’organisation en utilisant le modèle objet serveur dans SharePoint
Supprimer un profil utilisateur CSOM : non implémenté
JSOM : non implémenté
REST : non implémenté
SSOM : RemoveProfile ou RemoveUserProfile (surchargé)
Configurer le site personnel d'un utilisateur CSOM : CreatePersonalSiteEnque (surchargé)
JSOM : createPersonalSiteEnque (surchargé)
REST : POST http://<siteUri>/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/GetUserProfile/CreatePersonalSiteEnqueue
SSOM : CreatePersonalSite() (surchargé)
Configurer les sites personnels d'un ou de plusieurs utilisateurs
Disponible pour les administrateurs de l'hôte Site Mon site sur SharePoint Online uniquement
CSOM : CreatePersonalSiteEnqueueBulk
JSOM : createPersonalSiteEnqueueBulk
REST : POST https://<domain>-admin.sharepoint.com/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/CreatePersonalSiteEnqueueBulk et transmettre un tableau de chaînes d’adresses de messagerie pour le paramètre emailIDs (200 caractères maximum) dans le corps de la demande (exemple : {'emailIDs':['usera@contoso.onmicrosoft.com','userb@contoso.onmicrosoft.com']}).
SSOM : CreatePersonalSiteEnqueueBulk

Nouveaux objets pour les utilisateurs et les propriétés utilisateur dans SharePoint

SharePoint inclut les nouveaux objets suivants, qui représentent des utilisateurs et des propriétés utilisateur :

  • L’objet SocialActor et l’objet SocialActorInfo représentent les utilisateurs (et les documents, sites et tâches) pour les activités de flux et de suivi.

  • L'objet UserProfile côté client fournit des méthodes que vous pouvez utiliser en vue de créer un site personnel pour l'utilisateur actuel. Cependant, il ne contient pas toutes les propriétés utilisateur que contient l'objet UserProfile côté serveur.

  • L'objet PersonProperties contient des propriétés utilisateur générales et sa propriété UserProfileProperties contient des propriétés de profil utilisateur. PersonProperties est l'API principale permettant d'accéder aux propriétés utilisateur à partir du code côté client.

Notes

Les versions du modèle objet serveur sont l’objet SPSocialActor et l’objet PersonProperties.

Voir aussi