noviembre 28, 2020, 08:44:30 am

Noticias:

Si tienes problemas para ingresar: puedes escribir a [email protected] para soporte técnico.


Error con User.Identity.Name y seguridad de internet explorer

Iniciado por Link, septiembre 19, 2011, 05:00:57 pm

Tema anterior - Siguiente tema

Link

 
Hola amigos
 
 Estoy desarollando una aplicación web en asp.net 3.5 en el VS 2008, la aplicación utiliza el esquema de seguridad . En cierto momento yo necesito saber el nombre del usuario que esta logeado actualmente en la aplicación, para eso utilizo la variable del sistema User.Identity.Name.
 
 El error es que en Internet Explorer 8 y en mi maquina de desarrollo, con las opciones de seguridad por defecto del IE todo funciona correctamente, pero cuando lo pruebo en el servidor de pruebas de la empresa en la que va a estar funcionando, me da problemas con el valor de esta variable ya que al comprobar el nombre del usuario no tiene el valor que debería. Por el momento me es imposible saber que valor tienen realmente la variable en la maquina de desarollo, que por cierto tiene el Windows server 2008 con el IIS7. El caso es que este servidor tienen mas restricciones en lo referente a la configuración de seguridad del internet explorer.
Al probarlo desde algunas maquinas de la misma red del servidor de pruebas hay una en la que si funciono y otras en las que dio problemas, por lo que parece un problema del IE y no de configuración del servidor.
 
 La pregunta sería, alguien visto este error antes y si conoce alguna manera de solucionarlo o cual sería la configuración para el IE que funciona correctamente.


Saludos y ayuda por favor  :-\

adebor

tenga en cuenta que si  tiene el sql configurado con autenticacion sql está var no le tirará  nada,  tiene que estar configurado con autenticacion de window

adebor

si lo que quieres es solamente obtener el nombre de tu usuario...
hazlo con la linea:

System.Environment.UserName:

en System.Environment.
con esto puedes encontrar propiedades que te permiten obtener el usuario, el nombre del equipo... en fin

comente cualquier cosa

Link

No es el nombre del usuario con el cual estoy en windows sino usando el componente Login de .net, cuando inicia sesión con cualquier usuario del sistema ya sea con autenticación por sql o activedirectory, la variable System.Environment.UserName: es actualizada con el nombre de usuario que inicio sesión en el sistema.

He estado investigando y creo que podria tener que ver con que .net utiliza cookies para guardar esos datos y posiblemente la configuración de seguridad del IE las este bloqueando.

adebor

si, todos los navegadores almacenan la info de usuairios, contraseñas y otros en cookies, activa las cookis de esta manera http://www.trucoswindows.net/conteni5id-9-SEGURIDAD-Configurar-cookies-en-IE.html

si esto no funka intenta con otro navegador, crome o mozilla  a ver si continua igual...

ahora bien si utilizas usuarios administrados desde la aplicacion lo que podrias hacer en ultimo caso es almacenar los datos de usuario en alguna variable de tipo global.... y la llenas cuando te logeas.... (ultimo caso)

otra seria crear una cokie al momento de logearse http://angelm.blogia.com/2008/022201-crear-cargar-cookies-en-asp.net.php la almacenas con la info del usuario y luego la cargas cuando la vas a utilizar,,,


me cuentas como te fue y cualquier otra solucion adoptada ... para retroalimentacion

Link

Hola Amigos
Ya encontré la solución, y la respuesta quizá tiene que ver con algo que no mencioné y es que el sistema son dos aplicaciones que se autentican con las mismas credenciales. Como ambas utilizan el mismo cookie para autenticarse dichas aplicaciones deben tener el mismo nombre así el navegado pensará que son la misma.

La razón por la cual a mi no me daba el error en mi maquina y en el servidor de pruebas si, es porque en mi maquina yo utilizaba una dirección ip para acceder a al sitio y en el servidor de pruebas se utilizaba un alias.

Al utilizar un alias la primera aplicación llamaba a la segunda con el nombre del alias pero la segunda no tenía el mismo nombre sino el nombre de la dirección ip por lo que las cookies eran diferentes.

 Para configurar el nombre de la aplicación esto se debe realizar en el archivo web.config, hay que tener una variable llamada http://192.168.2.143/" />. En este caso el nombre del servidor es una ip por lo tanto la aplicación va a funcionar correctamente si se accede a través de la ip, pero si utilizáramos un alias no funcionaria. Si cambiamos la variable por el nombre de nuestro servidor http://myServer/" />. Ya no va a dar problema con las cookies al usar un alias para ingresar a la aplicación.

JorgeAVM



Buscar en el Foro: