Question

J'ai essayé d'ajouter l'application Documents partagés avec moi à mon site et chaque fois que je clique sur Ajouter une application, le message "Vous ne pouvez pas ajouter cette application ici" s'affiche.Je me suis donc tourné vers l'ULS et il semble qu'il y ait une erreur de sécurité.Tout d'abord, le serveur sort vers le serveur de bureau pour l'application :

Envoi de la demande à Office.com avec l'URL suivante : https://store.office.com/app/query?cmo=en%2DUS&pmo=US&type=4&assetid=WA103998117&build=15%2E0%2E4569%2E1000&av=OSU150&origin=EC101785291&corr=%7B8773cb9c%2D5933%2D10b3%2D55f1%2Dcd9727a39feb%7D

En revenant, je vois une erreur de sécurité :

SPSecurityContext : Impossible de récupérer une identité Windows valide pour le nom d'utilisateur 'domaine\\utilisateur' avec l'UPN 'utilisateur@domaine.com'.L'UPN est requis lorsque la délégation Kerberos contrainte est utilisée.Exception : System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail] : WTS0003 : l'appelant n'est pas autorisé à accéder au service.(Fault Detail est égal à An ExceptionDetail, probablement créé par IncludeExceptionDetailInFaults=true, dont la valeur est : System.UnauthorizedAccessException : WTS0003 : l'appelant n'est pas autorisé à accéder au service. at Microsoft.IdentityModel.WindowsTokenService.CallerSecurity.CheckCaller(WindowsIdentity callerIdentity)

Alors, où puis-je accorder des autorisations pour permettre aux utilisateurs d'utiliser ce service ?

Était-ce utile?

La solution

Fini par mettre le compte de domaine qui exécute le service c2WTS dans le groupe Administrateurs locaux.Service redémarré et pool d'applications qui hébergeaient le service de jeton de sécurité.Tout semble fonctionner maintenant.

Modifiez pour raconter toute l'histoire Il y avait en fait beaucoup plus de choses que ce seul correctif qui, je pense, pourrait être bénéfique pour la grande communauté Sharepoint.Je vais raconter toute l'histoire dans l'espoir que cela aide quelqu'un d'autre.

Pour commencer, nous nous occupons de quatre serveurs SP-Farm, Admin, Search, Workflow et Web (tous sur site).Ce que j'essayais de faire était de permettre aux utilisateurs finaux d'installer des applications sur leur page MySites.Plus précisément, j'essayais d'activer l'application gratuite Documents partagés avec moi.J'ai dû me connecter à Sharepoint en tant qu'administrateur de ferme afin d'installer l'application afin qu'elle apparaisse comme une application que je peux ajouter.C'était assez simple.Le problème est alors devenu que les utilisateurs accèdent à leur site Mon site et essaient d'ajouter l'application.

En tant que compte d'utilisateur, je recevrais le message Vous ne pouvez pas ajouter cette application ici.Message complètement inutile.Après avoir consulté les journaux ULS, il était évident qu'il y avait un problème de sécurité lors du rappel du bureau.Le service C2WTS n'a pu générer de jeton pour aucun des utilisateurs.Notre C2WTS utilise un compte de service géré selon le livre d'administration Wrox Sharepoint 2013.J'ai lu où cela doit être le compte système local et je comprends maintenant pourquoi.Si vous exécutez le service en tant que système local, il n'y aura pas de problèmes d'autorisation de sécurité car le service vérifie d'abord le groupe WSS_WPG sur l'ordinateur local pour savoir si l'utilisateur peut appeler ce service ou non.Ainsi, le premier obstacle à surmonter est d'obtenir tous vos utilisateurs de partage dans le cadre du WSS_WPG sur tous vos serveurs qui exécutent C2WTS.

Le deuxième obstacle était que le service sous lequel le compte s'exécute agit dans le cadre du système d'exploitation, usurpe l'identité d'un client après authentification et se connecte en tant que droit de service sur toutes les boîtes qui ont C2WTS.

Le troisième obstacle consistait à configurer le compte d'utilisateur sous lequel le service s'exécute avec un nom principal de service.Ceci est nécessaire.Ne sautez pas cela.Vous pouvez choisir d'utiliser n'importe quel point de terminaison (j'ai choisi WWW), cela ne semble pas avoir d'importance, tant que vous en choisissez un.L'Iran

setspn -S SP/C2TWS DOMAIN\SERVICEACCOUNT

Où DOMAIN est votre domaine, SERVICEACCOUNT est votre compte de service.Après avoir exécuté cela sur votre utilisateur, allez dans AD et cliquez sur l'onglet délégation.Si vous ne voyez pas l'onglet délégation, votre instruction setspn n'a pas fonctionné.Voici où vous pouvez Faire confiance à cet utilisateur pour la délégation aux services spécifiés uniquement / Utiliser n'importe quel protocole d'authentification.Maintenant, si vous utilisez un seul serveur, il vous suffit d'ajouter une entrée ici.Mais si vous êtes comme moi et que vous gérez une petite ferme, vous devez ajouter une entrée pour chaque machine de la ferme qui exécute C2WTS.Encore une fois, vous n'avez pas à être pointilleux sur le service que vous spécifiez.

Avec tout cela configuré, je recommanderais un redémarrage du serveur de chaque serveur de la batterie.J'ai rencontré un certain hasard en ce qui concerne la possibilité d'ajouter une application et j'imagine que cela a à voir avec les informations d'identification de mise en cache des services.Mais ce n'est pas la fin.

Mon compte a pu accéder à Mon site et ajouter une application.Mais un compte de base n'a pas pu le faire.Ils recevraient toujours le message "Vous ne pouvez pas ajouter cette application ici".La dernière pièce du puzzle consistait à modifier chaque fichier du répertoire C: \\ Program Files \\ Common Files \\ Microsoft Shared \\ Web Server Extensions \\ 15 \\ qui commence par AppPermissionProvider et contient la valeur TenantAdmin avec SiteCollectionAdmin.Faites-le dans tous les fichiers sur tous les serveurs qui fonctionnent comme un WFE.Si vous voyez cette valeur, remplacez-la.Je crois que parce que mon compte était un administrateur de ferme, je pouvais ajouter des applications.Mais lorsqu'un utilisateur de base essayait, il recevait le message d'erreur.Si vous inspectez le trafic réseau, vous verrez sur l'objet JSON renvoyé que les conditions préalables remplies sont fausses.Cela signifie donc que l'utilisateur ne peut pas dépasser les autorisations car il n'est pas un administrateur de locataire.Mais chaque utilisateur est un administrateur de collection de sites sur son propre site.Il semble donc acceptable de réduire les autorisations.

Et si vous le faites fonctionner mais que le lendemain cela ne fonctionne pas, vérifiez que votre politique AD n'a pas supprimé les autorisations que vous avez définies sur l'administrateur local.Après avoir réinitialisé les autorisations, redémarrez tous les serveurs.J'ai l'impression que la mise en cache sur les serveurs m'a empêché de m'arracher les cheveux pendant une bonne partie de la journée.

Sources à essayer : Droits de l'utilisateur Locataire de SiteCollectionAdmin Plus de locataire à SiteCollection Configuration des revendications App pour dépanner les autorisations sur C2WTS

Autres conseils

L'exécution en tant que LocalSystem a son propre ensemble de problèmes et n'est pas recommandée.Étant donné que je ne suis pas aussi qualifié que d'autres pour en parler et que je ne veux pas plagier le travail de quelqu'un d'autre, je vais simplement vous diriger vers la ressource définitive de facto à ce sujet sur le site Web de Spencer Harbar.http://www.harbar.net/archive/2015/06/02/Configuring-Kerberos-Constrained-Delegation-with-Protocol-Transition-and-the-Claims.aspx

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top