JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Acceder a la herramienta de configuración de ASP.NET en Visual Studio 2013

Hasta la versión 2012 de Visual Studio disponíamos de un acceso directo muy cómodo desde el propio entorno que nos permitía lanzar la herramienta de configuración de ASP.NET:

ASPNET-Configuracion-VS2012

De esta manera abríamos la utilidad que nos permitía configurar la seguridad de la aplicación: usuarios, roles, proveedores para éstos, etc...

En Visual Studio 2013 y .NET 4.5 se ha dado preferencia a las bibliotecas de ASP.NET Identityen detrimento del clásico sistema de Membership. Por ello, aparte de basar las nuevas plantillas de proyecto en estas nuevas bibliotecas de autenticación y autorización, se ha retirado el acceso directo a la herramienta anterior (y no se proporciona tampoco una herramienta análoga para lo nuevo, debiendo recurrir a la implementación por defecto incluida en las plantillas).

Sin embargo, si necesitas (o prefieres) utilizar el antiguo sistema de autenticación y te interesa acceder a la herramienta, todavía puedes hacerlo, aunque no te resultará tan cómodo.

El acceso se basa en el mismo truco que ya expliqué hace unos cuantos años para poder usar la herramienta fuera de Visual Studio.

Básicamente debemos lanzar la aplicación de configuración en nuestro IIS, y luego acceder a ella indicando la ruta física de la aplicación a gestionar. Está explicado en el enlace anterior.

Lo lógico en nuestro equipo de desarrollo es que utilicemos IISExpress para lanzar la web de configuración, por lo que los pasos serían los siguientes:

1.- Vete a la carpeta en la que tengas instalado IISExpress (normalmente C:\Program Files (x86)\IIS Express\)

2.- La aplicación de configuración de ASP.NET está guardada en la carpeta "C:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles". Así que debes lanzar la web de configuración de la siguiente manera:

iisexpress.exe /path:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles" /vpath:"/ASPNETConfig" /port:8080 /clr:4.0 /ntlm

Puedes poner lo que quieras en la ruta relativa (/vpath) y en el puerto, pero luego tienes que ser congruente cuando accedas a la herramienta, usando los mismos parámetros (ahora lo veremos). Yo en este caso he usado el puerto 8080.

Además se especifica el parámetro /ntlm para indicar que se debe aceptar autenticación del usuario local de Windows, ya que a esta herramienta pueden acceder los administradores locales de la máquina.

3.- Una vez lanzado IISExpress (verás una ventana de línea de comandos a la espera de comandos), podrás abrir tu navegador y acceder a la siguiente URL:

http://localhost:8080/ASPNETConfig/default.aspx?applicationPhysicalPath=[Ruta de tu app]

De este modo accedemos a la herramienta y le indicamos qué aplicación es la que queremos gestionar, indicando para ello su ruta física en disco.

Si tenemos el web.config correctamente configurado podremos acceder a la herramienta y empezar a configurar la seguridad.

Automatizando el proceso

Lo anterior está bien pero es un poco tedioso tener que hacerlo cada vez que queramos lanzar la herramienta. Por ello he preparado un sencillo archivo .bat para automatizarlo. El archivo consta solamente de dos líneas:

start http://localhost:8080/ASPNETConfig/default.aspx?applicationPhysicalPath=%CD%
"C:\Program Files (x86)\IIS Express\iisexpress.exe" /path:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles" /vpath:"/ASPNETConfig" /port:8080 /clr:4.0 /ntlm

Lo que hace es lanzar la URL de la herramienta de administración pasándole como parámetro la ruta actual (donde esté copiado el .bat). Posteriormente lanza IISExpress con la herramienta de configuración en el puerto 8080.

Lo hago justo a la inversa porque sino no funcionaría. El motivo es que cuando lanzamos IISExpress este bloquea la ejecución del resto del .bat por lo que tiene que ir siempre al final. Como el navegador generalmente espera unos cuantos segundos por la respuesta del servidor, funcionará bien la mayor parte de las veces. si no lo único que hay que hacer es refrescar el navegador que se abre y listo.

Copia el archivo .bat (406 bytes) a la carpeta raíz de tu aplicación web y lo único que tendrás que hacer es doble-clic sobre éste para lanzar la herramienta de configuración.

OJO: Si usas una plantilla de las nuevas con VS2013 no te funcionará porque éstas usan ASP.NET Identity por defecto. Usa una plantilla antigua de VS2012 (hay un nodo para ello en Visual Studio) o úsalo con una aplicación hecha con una versión anterior. Si no para configurar la seguridad deberás usar las páginas que proporcionan las nuevas plantillas.

¡Espero que te sea útil!

José Manuel Alarcón José Manuel Alarcón
Fundador y director de campusMVP.es, el proyecto de referencia en formación on-line para programadores en lengua española. Autor de varios libros y cientos de artículos. Galardonado como MVP de Microsoft desde 2004. Gallego de Vigo, amante de la ciencia y la tecnología, la música y la lectura. Ayudando a la gente en Internet desde 1996.
Mi último libro (no técnico): "Tres Monos, Diez Minutos".
Banner

Comentarios (6) -

Bolivia limbert aguirre

hola... ayuda....
como es para recuperar la contraseña en visual 2013 utilizando membership..

Responder

Muchas gracias! Fue de mucha utilidad, ya esta partiéndome la cabeza.

Responder

Andres, te salio esto de los usuarios, yo estoy trabajando con el 2013 y no puedo conectarme con la bd aspnetdb.
Saludos

Responder

Gracias! muy útil.

Responder

Hola José Manuel Alarcón.
Estoy intentando configurar la herramienta y cuando ejecuto el .bat, el navegador me muestra esto en la barra de direcciones: http://localhost:8080/ASPNETConfig/error.aspx
y como error muestra esto: Error: Vuelva a la página anterior e inténtelo de nuevo.

Me puedes ayudar? desde ya gracias.

Responder

Hola, tengo VS2013 con Windows 10, quisiera saber si alguien lo ha hecho con esta configuración ya que a mi no me funciona... No quisiera tener que instalar nuevamente VS2012. si alguien me ayuda lo agradecería.. gracias a todos....

Responder

Agregar comentario