2015-10-08 2 views
1

J'ai essayé de lire le nom d'utilisateur de l'utilisateur parcourant mon application MVC. L'application ne possède aucune authentification et est hébergée dans IIS avec l'authentification Windows désactivée et l'authentification anonyme activée.Obtenir le nom d'utilisateur dans une application mvc sans authentification et authentification anonyme activées dans IIS

Maintenant, je veux m'assurer que lorsqu'un utilisateur navigue dans l'application, il ne voit aucun popup pour les informations d'identification de l'utilisateur. J'ai donc désactivé l'authentification Windows et activé l'authentification anonyme.

Mais je ne suis pas capable de lire le nom d'utilisateur. J'ai essayé toutes les approches suivantes:

User.Identity.Name 
System.Security.Principal.WindowsIdentity.GetCurrent().Name 
System.Environment.UserName 

Mais depuis mon utilisateur n'est pas authentifié, je ne suis pas obtenir les résultats corrects.

Ce que j'ai accompli jusqu'à maintenant est que je suis capable de lire le nom de la machine de l'utilisateur à l'aide du code ci-dessous:

Je lis l'adresse IP avec les éléments suivants:

Request.UserHostName 

et puis, obtenir le nom de la machine en utilisant les éléments suivants:

IPAddress myIP = IPAddress.Parse(IP); 
IPHostEntry GetIPHost = Dns.GetHostEntry(myIP); 
List<string> compName = GetIPHost.HostName.ToString().Split('.').ToList(); 
return compName.First(); 

J'ai essayé la recherche de réponses et a obtenu les éléments suivants:

https://stackoverflow.com/a/1688220/2429125

Mais même cela ne m'a pas aidé. Quelqu'un peut-il me diriger vers la lecture du nom d'utilisateur d'une application MVC sans authentification avec accès anonyme?

Merci,

Sudip Arora

+0

Quel nom d'utilisateur attendez-vous ici? Identifiant utilisateur du login Windows de l'utilisateur actuel? – Shetty

+0

@Shetty: Oui, absolument oui. –

+1

Cochez cette case http://stackoverflow.com/questions/22984995/get-windows-login-name-without-windows-authentication – Shetty

Répondre

0

Il est impossible de le faire, que votre configuration actuelle ne demande pas les informations d'identification de l'utilisateur final.

Vous devez au moins passer à l'authentification par formulaire ou à l'authentification Windows.

0

Peut-il être atteint sans aucune sorte d'authentification

Non. Pourquoi un navigateur envoie le nom d'utilisateur du visiteur à chaque site Web qu'ils visitent?