Quelle est la différence entre System.Web.HttpContext.Current.User.Identity.Name
et System.Environment.UserName
dans le cadre d'un projet d'application Web ASP.Net?
Voici le code de ce que j'essaie de faire:
Database myDB = DatabaseFactory.CreateDatabase();
bool IsAuthUser = myDB.ExecuteScalar("procIsAuthorizedUser", System.Environment.UserName);
S'ils sont fonctionnellement identiques, lequel est meilleur en termes de performances?
Il s'agit d'une application Web C # 4.0/ASP.Net qui verra une utilisation modérée en interne dans l'organisation. Merci pour vos réponses.
System.Environment.UserName
renvoie l'identité sous laquelle le pool d'applications qui héberge votre application Web s'exécute. Si vous utilisez l'authentification et l'emprunt d'identité Windows, ce sera le nom réel de l'utilisateur, mais dans tous les cas, il vaut mieux utiliser les informations fournies par le contexte HTTP. Aucune performance n'est atteinte dans les deux cas.
System.Web.HttpContext.Current.User.Identity.Name
Obtient ou définit les informations de sécurité pour la demande HTTP actuelle. (Le nom de l'utilisateur connecté sur votre site Web)
System.Environment.UserName
Obtient le nom d'utilisateur de la personne actuellement connectée au système d'exploitation Windows.