Personalizando las aplicaciones Web (III)

En los anteriores posts (I y II) os conté la teoría de los proveedores de autenticación, autorización y personalización, como personalizar los proveedores, usar los controles y la API que ASP.NET nos provee. En este tercer post hablaré de como configurar y autorizar el acceso a los directorios de nuestra aplicación.

Configuración de ASP.NET, la utilidad

Para la autorización de las páginas usaremos la aplicación que ASP.NET que genera los Web.Config para cada directorio de nuestra aplicación.

Si quiere conocer el funcionamiento interno de esta aplicación solo tenéis que ver el código fuente en el siguiente directorio:

C:WINDOWSMicrosoft.NETFrameworkv2.x.xxxxASP.NETWebAdminFiles

Con esta aplicación puede administrar desde los usuarios hasta si la aplicación está en línea o no.

Lo primero debe hacer es abrir la aplicación, para ello tiene diversas maneras, las más comunes son desde el explorador de soluciones:

O desde el menú Sitio Web (como se muestra en la figura 9).

La aplicación una vez cargada es la siguiente:

La aplicación está dividida en tres zonas de configuración o administración:

  • Seguridad: En esta sección puede administrar a los usuarios, sus funciones o roles y los permisos de acceso a la aplicación.
  • Aplicación: En esta segunda sección hay varias configuraciones, establecer configuraciones de aplicación (como por ejemplo una contraseña que no queremos que este en nuestro código), la configuración SMTP de la aplicación, podemos configurar la depuración y seguimiento de la aplicación, poner dentro o fuera de conexión e incluso definir páginas de error personalizadas.
  • Proveedor: Esta sección solo la debemos usar en dos ocasiones, en la que hayamos creado o tengamos un proveedor propio para el Membership o para las funciones, o en caso de que en vez de usar el AspNetSqlRoleProvider (que viene por defecto) queramos usar el AspNetWindowsTokenRoleProvider (que también viene incluido con .NET) para las funciones.

Para más información consulte la ayuda que incluye.

Permitiendo el acceso a los recursos

Para autorizar el acceso a las páginas acceda a la sección seguridad de la aplicación de configuración de ASP.NET:

Navegue hasta crear reglas de acceso (como se muestra en la siguiente figura).

Una vez en esa página seleccione un directorio de nuestra aplicación, una función, usuario, o grupo de usuarios al que le puede permitir o denegar el acceso. Por ejemplo con la combinación de permisos de las siguiente figuras denegamos a todo usuario que no sea administrador a la página de administración:

El Web.Config generado por la aplicación en la carpeta Admin es el que se muestra en el siguiente fuente.

<?xml version="1.0" encoding="utf-8"?> <configuration> <system.web> <authorization> <deny users="*" /> <allow roles="Admin"/> </authorization> </system.web> </configuration>

Debe usar * para referirse a todos los usuarios (ya sean anónimos o identificados) y ? para referirse a todos los usuarios anónimos.

Con el siguiente ejemplo comprobaremos si el usuario actual es un administrador para poder eliminar un usuario (el nombre de usuario lo obtiene de un textbox):

If User.IsInRole("Admin") Then Membership.DeleteUser(UsuarioTextbox.Text) End If

Conclusión

Ya casi hemos acabado con esta serie de posts, solo nos queda como aplicar esto que hemos aprendido al uso de temas, eso lo publicaré en el próximo post.

2 thoughts on “Personalizando las aplicaciones Web (III)

Responder a anonymous Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *