SPContext.Actuel.Web.CurrentUser retourne trompeuse de la valeur
J'essaie de trouver le nom de l'utilisateur actuel pour mon application sharepoint. Il y a plus qu'une façon de le faire. Cependant sharepoint façon retourne trompeuse de la valeur.
System.Security.Principal.WindowsIdentity.GetCurrent().Name //returns MY_COMPUTER\\my_user
HttpContext.Current.User.Identity.Name //returns MY_COMPUTER\\my_user
HttpContext.Current.Request.ServerVariables["AUTH_USER"] //returns MY_COMPUTER\\my_user
Microsoft.SharePoint.SPContext.Current.Web.CurrentUser.LoginName //returns SHAREPOINT\\system
Quelle est la cause de ce comportement? Vais-je rencontrer des problèmes si je vais l'utiliser non sharepoint façon?
- Cela pourrait être un problème d'installation comme une fouille superficielle de l'internet semble montrer qu'il renvoie correctement et de ne pas le SHAREPOINT\System vous voyez.
Vous devez vous connecter pour publier un commentaire.
Cela est prévu, si l'utilisateur est le compte du pool d'applications de l'exécution de l'application web actuelle.
BTW, c'est censé être le même nom que celui affiché dans la boîte de contrôle (en haut à gauche de contrôle)
Naviguez-vous sur le compte administrateur que vous avez utilisé pour installer le système? SharePoint "utilement" renommer SHAREPOINT\System. Utiliser un autre compte et de toutes les méthodes renvoient la même valeur.
Le problème, c'est parce que vous êtes probablement au courant de l'utilisateur à partir d'un taux élevé de SPWeb à l'intérieur d'un RunWithElevatedPrivileges code. Vous pouvez utiliser l'extrait de code ci-dessous pour obtenir le réel de l'utilisateur
Cela permettra de montrer le vrai nom d'utilisateur au lieu de l'SHAREPOINT\System utilisateur.
Je pense que vous pourriez avoir ce code sous SPSecurity.RunWithElevatedPriviliges. Vérifier la fois. Je ne suis pas sûr que
L'autre sens SPWeb.CurrentUser pourrait revenir SHAREPOINT\system est si le web est élevée, même si je ne suis pas sûr pourquoi SPContext.De courant élevée. Sur ce genre de page, voyez-vous ce comportement?