Trabalhe com perfis de usuário no SharePoint

Saiba mais sobre as tarefas de programação comuns para trabalhar com perfis de usuário no SharePoint.

APIs para trabalhar com perfis de usuário no SharePoint

Perfis de usuário e as propriedades de perfil de usuário fornecem informações sobre os usuários do SharePoint. SharePoint fornece as seguintes APIs que você pode usar para trabalhar programaticamente com perfis de usuário:

  • Modelos de objeto do cliente para código gerenciado

    • Modelo de objeto do cliente .NET
  • Modelo de objeto do JavaScript

  • Serviço de Representational State Transfer (REST)

  • Modelo de objeto de servidor

Como prática recomendada no desenvolvimento do SharePoint, use APIs do cliente, sempre que possível. APIs de cliente incluem o modelo de objeto do .NET cliente e o modelo de objeto do JavaScript e o serviço REST. Para obter mais informações sobre as APIs no SharePoint e quando usá-las, consulte Escolher o conjunto de API certo no SharePoint.

Observação

[!OBSERVAçãO] Nem todas as funcionalidades que você pode encontrar no assembly Microsoft.Office.Server.UserProfiles estão disponível de APIs do cliente. Por exemplo, você precisa usar o modelo de objeto de servidor para criar ou alterar os perfis de usuário porque eles são somente leitura de APIs do cliente (exceto a imagem de perfil do usuário). Além disso, não há nenhum acesso de cliente para alguns namespaces, como Microsoft.Office.Server.Audience , Microsoft.Office.Server.ReputationModel ou Microsoft.Office.Server.SocialData . Para ver o que tem funcionalidade com suporte para os APIs do cliente, consulte Microsoft.SharePoint.Client.Social e Microsoft.SharePoint.Client.UserProfiles .

Cada API inclui um objeto que você usa para executar tarefas relacionadas ao perfil do núcleo do Gerenciador. A tabela 1 mostra o gerente e outros objetos de chave (ou recursos REST) nas APIs e a biblioteca de classes (ou ponto de acesso) onde você pode encontrá-los.

Tabela 1. APIs do SharePoint usadas para trabalhar com perfis de usuário programaticamente

API Objeto chave
Modelo de objeto do cliente .NET
Confira : Como recuperar propriedades de perfil de usuário usando o modelo de objeto cliente .NET no SharePoint
Objeto Manager: PeopleManager
Namespace primário: Microsoft.SharePoint.Client.UserProfiles
Outros objetos chave: PersonProperties , ProfileLoader , UserProfile
Biblioteca de classes: Microsoft.SharePoint.Client.UserProfiles.dll
Modelo de objeto do JavaScript
Confira : Como recuperar propriedades de perfil de usuário usando o modelo de objeto JavaScript no SharePoint
Objeto Manager: PeopleManager
Namespace principal: SP. Perfis de usuário
Outros objetos principais: PersonProperties, ProfileLoader, UserProfile
Biblioteca de classes: SP.UserProfiles.js
Serviço REST
Consulte: Referência da API REST de perfis de usuário
Recurso do gerente: PeopleManager
URI do ponto de extremidade: http://<siteUri>/_api/SP.UserProfiles.PeopleManager
Namespace principal: SP. Perfis de usuário
Outros recursos importantes: PersonProperties, ProfileLoader, UserProfile
Modelo de objeto do servidor
Confira : Como trabalhar com perfis de usuário e perfis de organização usando o modelo de objeto servidor no SharePoint
Objetos Gerente: UserProfileManager , PeopleManager
Namespace primário: Microsoft.Office.Server.UserProfiles
Outros objetos-chave: UserProfile , CorePropertyManager , ProfilePropertyManager , ProfileSubtypeManager , ProfileSubtypePropertyManager , ProfileTypePropertyManager
Biblioteca de classes: Microsoft.Office.Server.UserProfiles.dll

Tarefas de programação comuns para trabalhar com perfis de usuário no SharePoint

Tabela 2 mostra as tarefas de programação comuns para trabalhar com perfis de usuário e os membros que você usa para executá-las. Membros são provenientes do modelo de objeto do cliente .NET (CSOM), o modelo de objeto de JavaScript (JSOM), serviço REST e modelo de objeto do servidor (SSOM).

Tabela 2. API para tarefas comuns de programação para trabalhar com perfis de usuário

Tarefa Membros
Criar uma instância de um objeto do Gerenciador no contexto do usuário atual CSOM: PeopleManager
JSOM: PeopleManager
REST: OBTERhttp://<siteUri>/_api/SP.UserProfiles.PeopleManager
SSOM: UserProfileManager (sobrecarregado) ou PeopleManager
Alterar a imagem do perfil do usuário atual CSOM: SetMyProfilePicture
JSOM: setMyProfilePicture
REST: POSTAGEMhttp://<siteUri>/_api/SP.UserProfiles.PeopleManager/SetMyProfilePicture e passará o parâmetroimagem no corpo da solicitação
SSOM: UserProfile [PropertyConstants.PictureUrl]. Value ou SetMyProfilePicture
Obtenha as propriedades do usuário atual CSOM: GetMyProperties
JSOM: getMyProperties
REST: GEThttp://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetMyProperties (ou obtenha algumas propriedades básicas do usuário de /_api/social.feed/my ou /_api/social.following/my)
SSOM: GetUserProfile
Obter as propriedades de um usuário específico CSOM: GetPropertiesFor
JSOM: getPropertiesFor
REST: OBTERhttp://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor(accountName=@v)?@v='domain\\user'
SSOM: GetUserProfile (sobrecarregado) ou GetPropertiesFor
Obter propriedades de perfil de usuário para um usuário específico CSOM: GetUserProfilePropertiesFor
JSOM: getUserProfilePropertiesFor
REST: não implementado. Chamada GetPropertiesFor e em seguida, obtenha as propriedades de perfil do usuário da propriedade UserProfileProperties do objeto retornado PersonProperties.
SSOM: GetEnumerator
Obtenha uma propriedade de perfil de usuário específico para um usuário CSOM: GetUserProfilePropertyFor
JSOM: getUserProfilePropertyFor
REST: OBTERhttp://<siteUri>/_api/SP.UserProfiles.PeopleManager/GetUserProfilePropertyFor(accountName=@v,propertyName='PreferredName')?@v='domain\\user'
SSOM: UserProfile (sobrecarregado) e especifique o nome da propriedade no indexador
Obtenha um perfil de usuário CSOM: GetUserProfile (retorna o perfil de usuário do lado do cliente somente para o usuário atual)
JSOM: getUserProfile (retorna o perfil de usuário do lado do cliente apenas para o usuário atual)
REST: POSThttp://<siteUri>/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/GetUserProfile (retorna o perfil de usuário do lado do cliente para o usuário atual somente)
SSOM: GetUserProfile (sobrecarregado)
Descubra se uma conta de usuário existe CSOM: não implementado
JSOM: não foi implementado
REST: não implementado
SSOM: UserExists
Criar ou alterar os atributos e as propriedades de perfil de usuário e perfis de usuário
(As APIs do cliente pode alterar a imagem de perfil. Consulte a tarefa "Alterar a imagem do perfil do usuário" nesta tabela).
CSOM: não implementado
JSOM: não foi implementado
REST: não implementado
SSOM: múltiplo – consulte Como trabalhar com perfis de usuário e perfis de organização usando o modelo de objeto servidor no SharePoint
Excluir um perfil de usuário CSOM: não foi implementado
JSOM: não foi implementado
REST: não implementado
SSOM: RemoveProfile ou RemoveUserProfile (sobrecarregado)
Provisionar o site pessoal de um usuário CSOM: CreatePersonalSiteEnque (sobrecarregado)
JSOM: createPersonalSiteEnque (sobrecarregado)
REST: POSTAGEMhttp://<siteUri>/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/GetUserProfile/CreatePersonalSiteEnqueue
SSOM: CreatePersonalSite() (sobrecarregado)
Provisionar sites pessoais de um ou mais usuários
Disponíveis para administradores de Host de My Site em SharePoint Online apenas
CSOM: CreatePersonalSiteEnqueueBulk
JSOM: createPersonalSiteEnqueueBulk
REST: POSTAGEMhttps://<domain>-admin.sharepoint.com/_api/SP.UserProfiles.ProfileLoader.GetProfileLoader/CreatePersonalSiteEnqueueBulk e endereços de uma matriz de cadeia de caracteres de email para o parâmetro emailIDs (máximo de 200 caracteres) no corpo da solicitação de passagem (examplo: {'emailIDs':['usera@contoso.onmicrosoft.com','userb@contoso.onmicrosoft.com']}).
SSOM: CreatePersonalSiteEnqueueBulk

Novos objetos para usuários e propriedades de usuário SharePoint

SharePoint Server inclui os seguintes novos objetos que representam os usuários e as propriedades de usuário:

  • Os objetos SocialActor e SocialActorInfo representam usuários (e documentos, sites e tarefas) para feed e atividades a seguir.

  • Um novo objeto UserProfile do lado do cliente que fornece métodos que você pode usar para criar um site pessoal para o usuário atual. No entanto, ele não contém todas as propriedades de usuário que contém o objeto do servidor UserProfile .

  • O objeto PersonProperties contém propriedades gerais de usuário e sua propriedade UserProfileProperties contém propriedades de perfil de usuário. PersonProperties é a API principal para acessar as propriedades de usuário do código do lado do cliente.

Observação

As versões do modelo de objeto do servidor são o objeto SPSocialActor e o objeto PersonProperties .

Confira também