quinta-feira, 22 de outubro de 2015

SharePoint: "Sorry, something went wrong" ao adicionar usuários no grupo Farm Administrators

O evento "Sorry, something went wrong" (Desculpe, algo deu errado) na interface, ocorre se o administrador do SharePoint que executa a operação não é administrador local no(s) servidor(es) do SharePoint OU se o navegador utilizado para acessar a página da administração central não foi aberto como administrador.

Em ambos os casos temos o seguinte evento no log do SharePoint:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
1.
Application error when access /_layouts/15/aclinv.aspx, Error=Local administrator privilege is required to update the Farm Administrators' group.
 at Microsoft.SharePoint.SPUserCollection.AddCollection(SPUserInfo[] addUsersInfo, IEnumerable`1 addUsers)  
 at Microsoft.SharePoint.ApplicationPages.AclInv.<>c__DisplayClass12.<PrepareStrategyForGroupSharing>b__11()  
 at Microsoft.SharePoint.ApplicationPages.SharingStrategy.Share()  
 [...]
2.
Local administrator privilege is required to update the Farm Administrators' group.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
O motivo do erro é simples: SharePoint adiciona o usuário no grupo local "WSS_Admin_WPG" para isso precisamos elevar as permissões.

[]

SharePoint 2013 - Workflow suspenso: HTTP 401 You do not have permission to perform this action or access this resource.


O fluxo de trabalho no SharePoint 2013 fica normalmente no estado suspenso com a mensagem de erro "
You do not have permission to perform this action or access this resource." se o fluxo está configurado para enviar e-mail(s) e para iniciar automaticamente.

Mensagem de erro no interface:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
RequestorId: <GUID>. Details: An unhandled exception occurred during the execution of the workflow instance. Exception details: System.ApplicationException: HTTP 401 {"error":{"code":"-2147024891, System.UnauthorizedAccessException","message":{"lang":"en-US","value":"Access denied. You do not have permission to perform this action or access this resource."}}} {"Transfer-Encoding":["chunked"],"X-SharePointHealthScore":["0"],"SPRequestGuid":["<GUID>"],"request-id":["<GUID>"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"MicrosoftSharePointTeamServices":["15.0.0.4675"],"X-Content-Type-Options":["nosniff"],"X-MS-InvokeApp":["1; RequireReadOnly"],"Cache-Control":["max-age=0, private"],"Date":["<DATE>"],"Set-Cookie":["WSS_KeepSessionAuthenticated={<GUID>}; path=\/"],"Server":["Microsoft-IIS\/7.5"],"WWW-Authenticate":["NTLM"],"X-AspNet-Version":["4.0.30319"],"X-Powered-By":["ASP.NET"]} at Microsoft.Activities.Hosting.Runtime.Subroutine.SubroutineChild.Execute(CodeActivityContext context) at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Mensagem de error no log do SharePoint:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
It’s app only request, but the app <identity> is not allowed to use app only policy.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


Solução: Ativar o feature “Workflows can use app permissions” na página OU desativar e ativar o feature novamente.

[]