2011-07-26 8 views
9

Estoy intentando desarrollar una aplicación de intranet/sitio web que usa la autenticación de Windows.Sitio de prueba de intranet que usa la autenticación de Windows

me gustaría probarlo con varios usuarios, para los papeles etc.

Por el momento sólo estoy usando mi propia cuenta de dominio. ¿Hay alguna manera de simular diferentes usuarios para el sitio?

Respuesta

0

¿Cómo instalar y ejecutar el Virtual PC con algunos sistemas instalados listos para descargar de MS?

Al ejecutar una PC virtual en su computadora, puede emular las conexiones a su PC y, al mismo tiempo, se ve como una computadora diferente, con diferentes IP.

2

Uso suplantación ...

De MSDN

suplantación

aplicación

Un ASP.NET puede utilizar suplantación para realizar operaciones y recursos de acceso con el contexto de seguridad del cliente autenticado o de una cuenta de Windows específica.

Y en su web.config

<identity impersonate="true" username="TestUser" password="[email protected]" /> 
+0

Supongo que quieren que los clientes suplanten los inicios de sesión, no la intranet en sí. –

+0

Creo que esta respuesta se pierde el objetivo de la pregunta. La suplantación le dice a la aplicación que responda a cualquier desafío de autorización con la identidad del usuario conectado, reemplazando de manera efectiva la identidad del grupo de aplicaciones. ** No le permite iniciar sesión en la aplicación como un usuario diferente. ** –

+1

tiene razón ... esta respuesta es incorrecta en este caso. pueden intentar cambiar el usuario de inicio de sesión en el navegador web. en IE vaya a Opciones de Internet -> Seguridad -> Intranet local -> Nivel personalizado y cambie la Autentificación del usuario a "Solicitar nombre de usuario y contraseña" ... – 2GDev

6

Cuando se utiliza la autenticación de Windows que puede cambiar su identidad mediante la ejecución del navegador como otro usuario.

En Windows, vaya al navegador exe (o un acceso directo), haga clic derecho en el icono y seleccione "Ejecutar como ..." en el menú. Esto le pedirá que especifique el nombre de usuario y la contraseña para ejecutar la cuenta.

Siempre que la identidad que especifique tenga acceso a la máquina en la que se está ejecutando, el navegador se ejecutará "como" la identidad especificada. Si navega a un sitio usando la Autenticación de Windows, se autenticará utilizando la identidad especificada, en lugar de la suya.

+0

No lo sabía, pero tiene sentido. –

10

Como una imagen vale más que mil palabras, aquí va a hacerlo en IE basado en 2GDev's comment copiado aquí para mayor claridad:

Ir a Opciones de Internet => Seguridad => Intranet local => Nivel personalizado y cambiar la autenticación de usuario a "Preguntar por el nombre de usuario y contraseña "

enter image description here

Haga clic en Aceptar entonces a pply. Cierra el navegador Vuelva a abrirlo y apúntelo a la URL del sitio web que desea depurar. Debería ver felizmente el indicador de entrada donde se puede iniciar sesión con una cuenta de usuario diferente para simular concurrencia por ejemplo (esto es lo que estoy haciendo ahora aquí):

enter image description here

+2

Esto tiene la ventaja sobre mi respuesta en que la cuenta de usuario no necesita tener permiso para ejecutarse en la máquina; las credenciales solo deberían ser para la autenticación remota y el navegador aún se está ejecutando como el usuario local original. –

0

En mi caso, hay db tablas con usuarios y sus propiedades. En la tabla de usuarios tiene el campo de inicio de sesión (Dominio/Nombre de usuario). También obtuve Identity y Principal personalizados, que usan esta tabla para autenticar al usuario en el método global.asax autherticate_request.

Para simular diferentes usuarios en modo de depuración, hay control especial representado en la página maestra (o página de diseño para mvc). Contiene un cuadro de selección con todos los usuarios y botón de aplicar.

En el lado del servidor después del botón Aplicar haga clic en la sesión empujó el inicio de sesión de usuario emulado y enviando actualización a la respuesta.

Por lo tanto, en el siguiente evento de autentificación se produjo la comprobación del inicio de sesión de usuario emulado en la sesión y, si existe, la autenticación continúa en función del inicio de sesión emulado.

Lado malo: necesita el servicio de sincronización para tener siempre una tabla de usuario real basada en la AD actual.

Cuestiones relacionadas