18 de febrero de 2011

SiteMapPath en ASP

El SiteMapPath en ASP
 
El control de navegación SiteMapPath indica de manera práctica la página en la que se encuentra el usuario en el mapa del sitio, a la vez que nos muestra la jerarquía de páginas, esto permite a los usuarios volver a otras páginas de la jerarquía utilizando directamente el control sin necesidad de usar las herramientas del navegador. SiteMapPath trabaja de forma exclusiva con el SiteMapProvides que se puede establecer mediante la propiedad SiteMapProvider del control, para hacerlo bonito, este control puede configurarse mediante estilos, templates y otros controles de ASP.NET.

Al estar basado en el modelo de proveedores no posee un mecanismo de DataBind (enlace de datos), asi que para darle las instrucciones en cuanto a la jerarquia de páginas de nuestro sitio, ASP.NET nos ayuda con un proveedor llamado XmlSiteMapProvider. Este proveedor consume datos de un archivo XML (web.sitemap) y devuelve instancias SiteMapNode basadas en sus datos, es por esto que al usar un SiteMapPath debemos hacer referencia a un archivo XML como DataSource, este XML va contener un listado de todas las URLs de tu sitio web que quieres que se indexen, lo que le va permitir a los buscadores recorrer todas tus páginas sin que se les pase una, por lo anterior será necesario tratar fundamentalmente con dos arhivos: el web.config y el web.sitemap: debemos configurar este archivo XML y especificar en el web.config que el web.sitemap será nuestro proveedor de informacion para el control SiteMapPath, esto lo veremos mas adelante, pero como ejemplo de lo que hablamos, tendremos algo así:
                                                          
siteMapFile="web.sitemap"

Restringiendo Accesos

Vamos a crear una carpeta dentro de nuestro sitio web y la llamaremos probando, ahi colocaremos todas nuestras paginas con acceso restringido, luego vamos a configurar nuestro sitio, asi que vamos a la pestaña sitio web y entramos  a configuracion de ASP.NET

ahora nos aparecerá esta pantalla


y seleccionamos seguridad, luego funciones, las habilitamos y creamos una nueva, nos aparecera la siguiente pantalla, tu ponle el nombre que quieras, en mi caso le pusé members
Luego clik de nuevo en seguridad y nos vamos a reglas de acceso y luego a crear reglas de acceso, asi:

y te aparece la siguiente ventana, seleccionamos la carpeta probando, la opcion usuarios anonimos y denegar, dejala tal como aparece en la figura:


listo, de esta manera hemos restringido el acceso de la carpeta probando y todo su contenido solamente a aquellos usuarios que se registren, continuaré con este tema pronto.
viernes, febrero 18, 2011