ASP.NET - Obtener usuario Windows ASP.Net

 
Vista:

Obtener usuario Windows ASP.Net

Publicado por Jesus (1 intervención) el 23/01/2013 00:32:35
Tengo una aplicación web que obtiene el usuario de windows para validar ciertas cosas, localmente funciona correctamente pero cuando la monte en mi servidor IIS me esta obteniendo el usuario de windows pero del SERVIDOR, necesito alguna función para obtener el usuario de la persona que entra en otra pc al sitio, sin que tenga que loguearse ya que el usuario por default ya tuvo que haber ingresado su usuario y pass para entrar a windows, esta es la recopilación de funciones que ya he utilizado y ninguna me sirve


WindowsIdentity user = WindowsIdentity.GetCurrent();
Label55.Text = user.Name;
WindowsPrincipal wp = new WindowsPrincipal(WindowsIdentity.GetCurrent());
Label56.Text = wp.Identity.Name;
Label57.Text = User.Identity.Name;
Label58.Text = Page.User.Identity.Name;
Label59.Text= HttpContext.Current.User.Identity.Name.ToString();
Label60.Text = System.Environment.UserName;
Label61.Text = Thread.CurrentPrincipal.Identity.Name;
Label62.Text = (System.Web.HttpContext.Current).Request.ServerVariables["LOGON_USER"];
Label63.Text = Context.User.Identity.Name;
Label64.Text = (System.Web.HttpContext.Current).Request.ServerVariables["AUTH_USER"];
Label65.Text = (System.Web.HttpContext.Current).Request.ServerVariables["REMOTE_ADDR"];
Label66.Text = (System.Web.HttpContext.Current).Request.ServerVariables["LOGON USER"];
Label67.Text = HttpContext.Current.Request.LogonUserIdentity.Name;
Label68.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
Label69.Text = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
IIdentity WinId = HttpContext.Current.User.Identity;
WindowsIdentity wi = (WindowsIdentity)WinId;
Label70.Text = wi.ToString();
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Obtener usuario Windows ASP.Net

Publicado por Charlos (25 intervenciones) el 30/01/2013 17:52:26
Olvídate de lo que pretendes hacer. ASP.NET ejecuta código del lado del servidor nunca del cliente. El parámetro ServerVariables te lo deja muy claro, Variables del Servidor. Si lo que tu pretendes fuera posible sería una violación de la privacidad de la máquina cliente. La única forma que de me ocurre para que puedas hacer algo parecido a lo que pretendes es el uso de cookies que para eso están. Deja una variable cookie permanente una vez se haya validado el usuario y así controlarás su acceso cada vez que navegue por tu web.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Obtener usuario Windows ASP.Net

Publicado por Khristian (335 intervenciones) el 04/03/2013 19:56:29
Tendrias que revisar los diferentes tipos de autenticaciones y autorizaciones disponibles.

Una de ellas esta basada en credenciales de windows.
Esto indica que igual debes hacer un login de usuario en la aplicacion asp.net, y esta debe ser verificada con los usuarios windows del pc servidor.

En resumen, debes tener a todos los usuarios como "usuarios windows" en el pc servidor. (Como si le dieras acceso a carpetas compartidas.
Luego en el login de la aplicacion, no validas al usuario con la base de datos ni esas cosas, lo haras contra las credenciales de windows.

Ahora, este metodo no toma al usuario del pc cliente, sino a la credencial usuada. Ejemplo: Usuario B inicia sesion en el PC cliente, pero el usuario A, usa el PC del usuario B para logearse en la aplicacion web. Según tu principio, deberia inicar sesion en la aplicacion web como usuario B, pero en el caso que te propongo, será indistinto, se tendra que logear cada usuario.

Espero hayas entendido.

Saludos

Te dejo unos enlaces.


http://jorgepedraza.wordpress.com/2011/04/11/autenticacin-y-autorizacin-de-asp-net/
http://www.dotnetpuebla.com/portal/Publicaciones/Articulos/245.aspx
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Obtener usuario Windows ASP.Net

Publicado por fructas (1 intervención) el 15/08/2013 19:29:47
revisa que en tu IIS el tipo de autentificacion se windows asi al entrar en la web el usuario carga las credenciales automaticamente y entonces la funcion del request del usuario si funciona


aqui est ala forma

colaborador.Usuario = HttpContext.Current.User.Identity.Name.ToString().ToUpper(); ;

string[] computer_name = System.Net.Dns.GetHostEntry(Request.ServerVariables["remote_host"]).HostName.Split(new Char[] { '.' });
colaborador.PC = computer_name[0].ToString();
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar