miércoles, 24 de septiembre de 2008

Acceso anónimo en Sharepoint 2007

Cuando apareció la versión 2007 de Sharepoint, una de las novedades que más agradecimos las personas que habíamos trabajado con versiones anteriores era el uso de la arquitectura de autenticación de .NET 2.0. Esto permitía utilizar los proveedores estándar para autenticarse contra directorio activo o SQL Server mediante FBA, o incluso crear nuestros propios proveedores de autenticación. En relación a esto, sorprendía también lo relativamente fácil que era habilitar el acceso anónimo a los portales. Los pasos a seguir son los siguientes:
  • Acceder a la Administración Central de Sharepoint
  • En la pestaña Administración de Aplicaciones, acceder a Proveedores de autenticación dentro del grupo Seguridad de aplicación
  • Seleccionar la aplicación web donde queramos habilitar el acceso anónimo
  • En la zona Default o en cualquier zona que tengamos definida y en la cual queramos habilitar acceso anónimo, marcar la opción Acceso Anónimo y guardar los cambios

A continuación, en nuestro portal, y desde la página inicial, efectuamos las siguientes operaciones:

  • En el menú Acciones de sitio, seleccionar Personas y grupos
  • En el menú lateral izquierdo, seleccionar Permisos del sitio
  • Desplegar el menú Configuración de la lista que aparece, y acceder a la opción Acceso anónimo
  • Marcar la opción Todo el sitio y aceptar los cambios

Con esto ya deberíamos tener acceso anónimo al sitio. Es posible, sin embargo, que nos interese acceder de manera anónima a las listas (páginas /Forms/Allitems.aspx, /Forms/DispForm.aspx, por ejemplo). Si éste es el caso, deberemos hacer una cosa más. Resulta que por defecto, los sitios de Sharepoint se crean con una característica activada que bloquea este acceso. Para desbloquearlo, debemos utilizar el comando stsadm de la siguiente manera:

stsadm -o deactivatefeature -url http://url_del_sitio -filename ViewFormPagesLockDown\feature.xml

24 comentarios:

maria dijo...

hola,
tengo una pregunta para el caso de portales MOSS con acceso anónimo.
¿Pueden ellos escribir por ejemplo en un blog, en una lista?la pregunta es más si pueden interactuar de alguna forma con el portal y si es así, si hay que realizar alguna configuración adicional.
Muchísimas gracias

David Martos dijo...

María,

en lo que respecta a este post, todo hace referencia a acceso de lectura. Si necesitas que los usuarios modifiquen datos en el portal deberás desarrollar tus propios webparts y ejecutar código privilegiado. Te dejo un enlace con información pero podrás encontrar muchos ejemplos en internet: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsecurity.runwithelevatedprivileges.aspx

Saludos.

Anónimo dijo...

hola, tengo la misma duda, ya que quiero agregar un blog publico en mi sitio de publicación con acceso anónimo para que puedan postear y si bien ya está todo seteado para el acceso anónimo a todo el sitio web, al acceder a la pagina de entrada de blog (de la plantilla de sitios BLOG de sharepoint) me pide credenciales.

Anónimo dijo...

¿esto entonces no funciona para dejar escribir comentarios en los sitios blog de sharepoint? se puede aplicar el comando que mencionan a un subsitio?

David Martos dijo...

Hola,

para poder trabajar con el blog estándar de MOSS en un entorno de publicación vas a tener que desactivar la característica que comento en el post, lo cual se pega con las buenas prácticas de seguridad. Las otras opciones son: o bien poner el blog en una colección de sitios independiente en lugar de bajo un portal de publicación, o bien desarrollar tus propios webparts para emular el comportamiento de un blog, pero usando llamadas de código privilegiado.

Saludos,

Unknown dijo...

Hola,

Tengo un portal con dos variantes superiores públicas:

1) Castellano
2) Catalán

Que son de acceso anónimo.
pero a partir de estas dos quiero que los usuarios se logen.
Ahora mismo los sites que cuelgan por debajo de Castellano y Catalán son de acceso anónimo y no se como quitarles el anonimato.

Saludos

David Martos dijo...

Hola Juan, si sigues los pasos del segundo grupo de acciones pero partiendo de cada uno de los sitios que quieres convertir en privados pero seleccionando la opción "Nada" en la lista de tres opciones que te da lo conseguirás. Si quiere ir directamente, puedes hacerlo también de la siguiente manera:

Imagina que la url del sitio es: http://servidor/ingles

Accede a http://servidor/ingles/_layouts/setanon.aspx y selecciona la opción "Nada"

Saludos,

Unknown dijo...

Que tal David..

tenia tambien una pregunta.. ya tengo un sitio con acceso anónimo donde publico reportes de excel, quería saber si se puede permitir descargar los excels desde el comando "Abrir en excel" tambien de forma anónima que siempre me pide autenticarme y kiero que cualquier visitante baje los reportes.. ya llevo como 1 mes en esto y no me deja bajarlo de forma anónima..
agradeceria muchoo tu apoyo!!..

David Martos dijo...

Hola, ¿me estás hablando de una librería de documentos o de Excel Services?

Yo si tuviera que publicar un documento excel en un portal anónimo no utilizaría los comandos de la barra de herramientas de Excel Services o la página estandar de lista de SharePoint. En su lugar publicaría bien una lista de enlaces de resumen apuntando al documento, o bien un elemento web de consulta de contenidos atacando a la lista de documentos. De esta manera lo que acabaría escribiendo en la web es un enlace directo al documento que los visitantes podrían "guardar como..." o abrir directamente en su cliente de excel. ¿Has probado si esto te funciona?

Unknown dijo...

Gracias David, fijat que ya habia logrado bajar los excels desde un webpart que hice donde le pasaba las credenciales, con el webservices de excelservices, el problema es que si tengo q usar el commando "Abrir en excel" de la barra porque lo que necesito es bajar el excel ya filtrado y esos filtros estan ocultos en el libro de excel, entoncs si el usuario baja solo el excel como si fuera de una biblioteca no estaría filtrado y no sabría como hacerlo (es lo q me pasa con el webpart), necesito bajar exactamente lo que esta viendo que es lo q hace "Abrir en excel" pero no puedo configurar la autenticación para que cualquiera pueda usar este commando sin ingresar usuario ni nada.. mi sitio ya esta con acceso anonimo pero al usuar esta opción siempre pide autenticarse..

Saludos..

David Martos dijo...

Pues la verdad es que nunca me he tenido que pelear con ese aspecto. He encontrado esto por si te resulta de ayuda: http://msdn.microsoft.com/en-us/library/ms546696.aspx aunque seguramente ya lo hayas visitado. Según dice necesitas permisos de lectura para hacer lo que buscas, y parece evidente que eso lo tienes de sobra. También recomienda la opción de abrir un snapshot del documento en lugar de usar la opción "Abrir en Excel".

Unknown dijo...

Que tal David.. fijat q sigo con el mismo problemaaa de bajar los excels de forma anonimaa, y fijat que ni el snapshot me sirve, en teoria sin nada de permisos deberia dejar guardar un snapshot pro al darle a la opcion siempre me pide usuario de windows!.. con cualquiera de las 2 opciones "abrir en excel" o "abrir instantanea" me pide autenticación, ¿no sabes como hacer para guardar el snapshot sin estar logeadoo al sistema?? desde ya gracias!!

David Martos dijo...

Hola Marvinilt,

lo siento pero mis conocimientos de Excel Services no son muy bastos. Si yo quisiera atacar ese problema usaría una herramienta tipo fiddler para ver qué es lo que está siendo bloqueado. Igual ves que el problema es un aspx en la carpeta de layouts que no puede ser accedido de manera anónima a menos que hagas algún tipo de acción. Si encuentras cuál es el elemento te será más fácil buscar en internet la manera de solucionar el problema.

Anónimo dijo...

Hola que tal, leyendo tu post pense que podia solucionar mi problema o estar cerca de el. mi problema nace de esta forma. Tengo un portal de intranet en el cual por motivos de inexperiencias elimine la herencia de los administradores del portal y por el momento solo tienen permissos de lectura y ya no el control total, no se puede agregar ni modificar ningun webparts ni website en lo absoluto, alguna idea para poder resolver mi problema? te agradezco de antemano.

David Martos dijo...

Hola,

lo que puedes hacer es, en la Administración Central de SharePoint, establecer el administrador de la colección de sitios. Si aún así tienes problemas, puedes utilizar las extensiones de Gary Lapointe (http://stsadm.blogspot.com/2007/08/user-permissions-for-web-applications.html) para modificar los permisos a tu conveniencia usando el comando stsadm.

Anónimo dijo...

como instalo esas extensiones de Gary Lapointe porque ya lo tengo pero nose como instalarlo o donde pegarlo, dentro de la carpeta q contiene stsadm?? sacame de dudas por favor porque la primera opcion que me diste no me dio resultados y ver si puede repercutir con la configuracion actual de mi intranet. por favor si puedes escribeme a mi correo sarmientorcarlos@gmail.com
es importante, mi cabeza esta en juego xD

David Martos dijo...

Hola,

en la página de descargas (http://stsadm.blogspot.com/2009/02/downloads.html) tienes las instrucciones sobre cómo instalar y ejecutar las extensiones de Gary Lapointe.

Saludos,

Anónimo dijo...

Hola David,

He desactivado la característica que mencionas en el post y me sigue pidiendo las credenciales cuando intento añadir o ver los comentarios del blog con acceso anónimo.

David Martos dijo...

Cuando intentas añadir comentarios es normal que te pida credenciales. Tal y como comento más arriba, los blogs de SharePoint no están preparados para esta funcionalidad y, si lo quieres hacer, tendrás que desarrollar tus propios webparts. Que te pida autenticación a la hora de consultar la información ya es más raro. Tendrías que asegurarte de que realmente tienes habilitado el acceso anónimo en el sitio y en la aplicación web, y de que no tienes nada sin publicar (página maestra, por ejemplo)

Anónimo dijo...

Estimado David Martos:
Mi consulta es la siguiente, tengo la version de Windows SharePoint Services 3.0, y necesito que para los usuarios que estan logeados en la red no les solicite usuario y password. Pero que si los pida a los que acceden desde fuera.

Gracias, por tu ayuda.

David Martos dijo...

Hola,

una manera muy fácil de conseguir esto es pedir a los usuarios internos que añadan la url de tu aplicación web a la zona de intranet de Internet Explorer. De esa manera, las credenciales de windows se enviarán directamente. Los usuarios externos, al no estar dentro de un dominio no tendrán esa característica.

Anónimo dijo...

Estimado David Martos:
Mi consulta es la siguiente, tengo la version de Windows SharePoint Services 3.0, y necesito que para los usuarios que estan logeados en la red no les solicite usuario y password. Pero que si los pida a los que acceden desde fuera.

Gracias, por tu ayuda.

14 de junio de 2011 15:11

Gracias, por la respuesta

Anónimo dijo...

Carlos:

Que tal David, mi consulta es la siguiente: Utilizo actualmente como herramienta MOSS 2007 para un portal colaborativo y este a su vez por necesidad subi la pagina a la web, pero a la hora de ingresar los usuarios que estan fuera del dominio, tienen que autenticarse utilizando lo siguiente: dominio/usuario, lo que quisiera saber es si puedo hacer que el usuario no tenga que ingresar el dominio y suficiente con el nombre de usuario para que acceda desde cualquier lugar al intranet, espero con ansias tu respuesta del caso. Saludos desde Peru:D!

David Martos dijo...

Hola,

aquí puedes encontrar información sobre tu pregunta: http://social.technet.microsoft.com/Forums/en-CA/sharepoint2010setup/thread/ed1e03d5-8e0d-45b8-96e9-ec97c845db9d

De todas maneras, te recomiendo autenticación basada en formularios para el escenario que planteas