Dentro de SharePointDescentralización de la administración de sitios

Pav Cherny

Descargar el código de este artículo: SharePoint2008_06.exe (1160KB)

Microsoft Windows SharePoint Services (WS) 3.0 y Servidor de Microsoft Office SharePoint Server (MOSS) 2007 admiten un modelo flexible de administración y seguridad que permite a las organizaciones de TI centralizar el control sobre componentes de infraestructura, tales como servidores web y de base de datos, y descentralizar el control sobre colecciones

de sitios y sitios hospedados. La centralización de la infraestructura de SharePoint® ayuda a reducir el costo general de mantenimiento, consolidar la lógica empresarial, ofrecer un único punto de acceso a los recursos de SharePoint y evitar inversiones innecesarias en tecnología.

Al mismo tiempo, la descentralización de la administración de sitios permite asegurarse de que los departamentos individuales mantienen el control autónomo de sus colecciones de sitios departamentales, sitios, bibliotecas de documentos, listas, soluciones de flujo de trabajo y otros recursos de SharePoint. Sin embargo, un efecto secundario de delegar la administración de sitios a departamentos individuales es una mayor complejidad del mantenimiento para el departamento de TI. Por ejemplo, ¿cómo se realiza el seguimiento del uso de los recursos, los sitios de SharePoint caducados y el contenido obsoleto en una infraestructura centralizada si no se dispone de acceso a las colecciones de sitios y sitios dentro del entorno?

En este artículo, describo el modelo de seguridad de WS 3.0, incluidas las ventajas y las implicaciones de la delegación del control administrativo sobre sitios de SharePoint a departamentos individuales a la vez que se mantiene el control administrativo centralizado sobre la infraestructura de SharePoint. Muestro cómo funciona la administración de sitios delegada, cómo los permisos de acceso y restricción de seguridad en el sitio, la lista y el nivel de elemento ayudan a mantener un ámbito laboral seguro y amigable, y cómo los administradores de granjas de servidores web pueden obtener acceso a las estadísticas necesarias del sitio sin permisos elevados de SharePoint.

Si desea seguir mis explicaciones en un laboratorio de pruebas, descargue el material que acompaña a este artículo en technetmagazine.com. El material incluye instrucciones detalladas acerca de la implementación para una granja de servidores web basados en Windows Server® 2008 que refleja razonablemente bien un entorno de producción para una empresa con varios departamentos.

Administración de la infraestructura y la colección de sitios de SharePoint

Puede generar una infraestructura SharePoint según una implementación de un único servidor o una implementación de granja de servidores web. De hecho, las empresas a menudo tienen las dos. La implementación en un único servidor es adecuada para los departamentos individuales que necesitan una solución de colaboración rápida y sencilla. Los requisitos de rendimiento y confiabilidad son mínimos. Los usuarios suelen comprender si el servidor de SharePoint de un departamento, que, con frecuencia, se implementa en hardware de estación de trabajo, no está disponible ya que el mantenimiento del sistema es la responsabilidad propia del departamento y los usuarios que pertenecen a él, después de todo, no son administradores de TI.

Todo cambia completamente para los recursos de servidor del que el departamento de TI realiza el mantenimiento. El rendimiento y la confiabilidad pasan a ser factores esenciales y, con frecuencia, requieren la implementación de soluciones de alta disponibilidad para garantizar la conformidad del contrato de nivel de servicio (SLA). Las implementaciones de granja de servidores web con carga equilibrada, los clústeres de conmutación por error de SQL Server® y las bases de datos almacenadas en redes de área de almacenamiento (SAN) pueden ayudar a satisfacer las necesidades de rendimiento y alta disponibilidad de la empresa. Consulte la figura 1 para ver una ilustración de esta arquitectura.

Figura 1 Una infraestructura de SharePoint con clúster de conmutación por error de SQL Server y SAN

Figura 1** Una infraestructura de SharePoint con clúster de conmutación por error de SQL Server y SAN **(Hacer clic en la imagen para ampliarla)

Como se puede observar en la figura 1, varios tipos de administradores deben trabajar conjuntamente para realizar el mantenimiento de los recursos en una infraestructura centralizada de SharePoint. Sin embargo, cada uno de estos administradores ve el entorno desde una perspectiva diferente. Por ejemplo, los servidores de la infraestructura son transparentes para los administradores de la colección de sitios. Los administradores de la colección de sitios trabajan con la interfaz de usuario estándar de SharePoint. Esta interfaz no cambia, independientemente de si hospeda los sitios en un equipo de estación de trabajo que ejecuta WS 3.0 en la oficina o en una granja de servidores web en un centro de datos.

La infraestructura de SharePoint también es transparente para los administradores de bases de datos e ingenieros de almacenamiento SAN. Para estos administradores, las bases de datos de SharePoint no difieren de las demás bases de datos de SQL Server, y los números lógicos de la unidad (LUN) para el clúster de conmutación por error de SQL Server no difieren de ningún otro LUN. El administrador más afectado por la infraestructura de SharePoint es el administrador de la granja de servidores web. Sin embargo, esta persona no ejerce ningún control sobre las colecciones de sitios, las bases de datos ni los LUN.

Se puede decir que, generalmente, los administradores departamentales de colección de sitios desconocen los detalles de infraestructura. Después de todo, no es necesario conocer estos detalles para el suministro a los sitios y la delegación de permisos de acceso a equipos y grupos dentro de un departamento. Es fácil crear un sitio y comenzar a colaborar, y rara vez se piensan temas tales como los costos elevados de almacenamiento asociados con la tecnología SAN.

Con cada proyecto e iniciativa, aparecen nuevos sitios de equipo, caducan sitios, no se elimina el contenido obsoleto y el entorno de SharePoint crece a un ritmo impresionante hasta que alcance una escala de la que los administradores de sistema ya no pueden hacer caso omiso. Por ejemplo, el entorno interno de SharePoint de Microsoft llegó a incluir más de 180.000 sitios antes de que la división de TI de Microsoft iniciara una iniciativa de simplificación en 2006.

Educar a los administradores de la colección de sitios puede ayudar a controlar las cosas en una infraestructura de SharePoint centralizada. La aplicación de cuotas y bloqueos de colección de sitios también resulta de utilidad. Sin embargo, estos métodos no son muy eficaces cuando se trata de sitios de equipo y contenido obsoletos que malgastan los importantes recursos de almacenamiento y de copia de seguridad.

El contenido obsoleto no necesariamente empuja a una colección de sitios más allá de su cuota. Por supuesto, puede configurar SharePoint para enviar notificaciones por correo electrónico a los propietarios de colección de sitios y eliminar automáticamente colecciones de sitios sin usar después de un período especificado. Para ello, usa la característica de confirmación del uso de sitio y eliminación disponible en el sitio de Administración central de SharePoint 3.0, pero esta característica no funciona en el nivel de sitio individual. Una colección de sitios puede incluir sitios actuales y obsoletos, pero la característica de confirmación del uso de sitio y eliminación no funciona en este nivel de granularidad.

Más adelante, mostraré cómo identificar sitios sin usar y contenido obsoleto al comprobar la fecha de última modificación de documentos y elementos de lista, incluso cuando no se dispone de permisos de acceso a la colección de sitios. Esta característica de creación de informes no está disponible con la instalación inicial, pero afortunadamente no es difícil de implementar.

Administración descentralizada de sitios de SharePoint

La delegación de privilegios de administración de sitios de SharePoint es muy sencilla. Mediante el sitio de Administración central de SharePoint 3.0, la herramienta de línea de comandos Stsadm.exe, o una herramienta de aprovisionamiento personalizada, puede crear aplicaciones web, rutas de acceso administradas y colecciones de sitios en la infraestructura. Como administrador de la granja de servidores web, puede especificar administradores principales y secundarios de colección de sitios al crear una colección de sitios. Estos administradores de la colección de sitios pueden ser usuarios de dominio normales. No necesitan permisos administrativos en la granja de servidores web ni en otros servidores de infraestructura. Usan sus exploradores web para realizar las tareas de administración de sitios directamente en la interfaz de usuario de SharePoint.

La figura 2 muestra la administración de sitios delegada según las instrucciones paso a paso disponibles en las hojas de cálculo del material adjunto. En este ejemplo, el administrador de la granja de servidores web aprovisionó colecciones de sitios individuales para el departamento de recursos humanos (https://sharepoint/hr) y el de TI (https://sharepoint/it).

Figura 2 Administración delegada de sitios de SharePoint

Figura 2** Administración delegada de sitios de SharePoint **(Hacer clic en la imagen para ampliarla)

A continuación, los administradores de RR. HH. y TI pueden usar la característica de sitios y áreas de trabajo del menú Acciones del sitio de la interfaz de usuario de SharePoint para crear sitios de subnivel y pueden aplicar los permisos del sitio principal o definir nuevos permisos administrativos y de usuario para los sitios de subnivel. Tenga en cuenta que a menos que se configure explícitamente lo contrario, el administrador de la granja de servidores web no puede tener acceso a ningún sitio de nivel superior o de subnivel, el administrador de RR. HH. no puede tener acceso a los sitios de TI y el administrador de TI no puede tener acceso a los sitios de RR. HH., aunque todos sitios se hospeden en el mismo entorno de SharePoint.

El diseño de las colecciones de sitios y jerarquías de sitios depende de los requisitos de la organización. En el ejemplo de la figura 2, no creé un sitio maestro encima de https://sharepoint/hr y https://sharepoint/it. Es decir, no hay colección de sitios en la ruta de acceso https://sharepoint. Sin embargo, puede crear fácilmente una colección de sitios en esta ruta de acceso o usar otras rutas de acceso administradas, como, por ejemplo, https://sharepoint/sites/hr y https://sharepoint/sites/it.

También puede crear aplicaciones web individuales para RR. HH. y TI con el fin de establecer direcciones URL base más intuitivas, como, por ejemplo, http://hr y http://it, aprovisionar sitios de portal generales para los departamentos y, a continuación, usar elementos web acumulados para enumerar información de sitios de subnivel en dichos sitios maestros. Las colecciones de sitios individuales facilitan la administración autónoma, ayudan a limitar el acceso a la información departamental y proporcionan capacidades individuales para la personalización de páginas maestras, diseños de página, plantillas, elementos web y controles de navegación. También se pueden usar para colocar datos confidenciales en bases de datos de contenido dedicadas, separadas de otras colecciones de sitios y bases de datos de contenido.

Funciones, permisos de sitio y restricción de seguridad

Una vez creadas las colecciones de sitios y delegados los permisos administrativos, un administrador de la colección de sitios puede abrir un sitio de nivel superior y usar la característica de configuración del sitio disponible en el menú Acciones del sitio para administrar la colección de sitios. Esto incluye la adición o eliminación de otros administradores de la colección de sitios con permisos completos a todos sitios de la colección de sitios, la creación de grupos, la asociación de dichos grupos a funciones y la adición de usuarios a dichos grupos para conceder permisos de lectura y colaboración. También incluye el aprovisionamiento de sitios de grupos de subnivel y sitios de equipo.

Aunque se puede conceder permisos de SharePoint a usuarios individualmente, es preferible crear grupos de SharePoint según funciones específicas. Por ejemplo, SharePoint incluye tres grupos predeterminados para las funciones de visitante, contribuidor y propietario. Los visitantes tienen acceso de sólo lectura, los colaboradores pueden agregar elementos a listas y bibliotecas de documentos y personalizar páginas web y los propietarios tienen control total.

Una característica que vale la pena tener en cuenta es que SharePoint realiza la restricción de seguridad según la función de usuario, lo que significa que los usuarios sólo verán los vínculos y elementos de la interfaz de usuario a los que realmente pueden tener acceso. Si anula el acceso de un usuario a un recurso, como por ejemplo, una lista (mediante la configuración de permisos explícitos en la configuración de la lista) o un elemento de lista seleccionado (mediante el comando de administración de permisos del menú contextual del elemento), la lista o el elemento desaparecerán para este usuario. Si el usuario especifica la dirección URL del elemento directamente en el explorador, obtendrá la página Error: acceso denegado.

La figura 3 muestra la restricción de seguridad en acción. El administrador de RR. HH. dispone de permisos completos y puede alcanzar el menú Acciones del sitio para realizar tareas administrativas. Por otro lado, el visitante de RR. HH. sólo dispone de permisos de sólo lectura a la colección de sitios y no ve este menú.

Figura 3 Restricción de seguridad según las funciones de usuario en la interfaz de SharePoint

Figura 3** Restricción de seguridad según las funciones de usuario en la interfaz de SharePoint **(Hacer clic en la imagen para ampliarla)

La restricción de seguridad es de gran utilidad, ya que no solamente oculta las características, los vínculos y los elementos inaccesibles, sino que también implica que los administradores de la granja de servidores web no pueden usar la interfaz de usuario de SharePoint para enumerar sitios y recursos de sitios sin tener permisos de acceso. No podrá ver estos recursos en páginas web ni elementos web. Asimismo, los recursos inaccesibles no parecen en los resultados de búsqueda ya que la búsqueda empresarial de SharePoint realiza una restricción de seguridad en el momento de la consulta según la identidad del usuario que envía la consulta.

¿Qué hay de la línea de comandos?

Si la interfaz gráfica de usuario no proporciona una vía a la información deseada sin permisos elevados en el nivel de la colección de sitios, quizás la herramienta de línea de comandos Stsadm.exe ofrece la solución. Por ejemplo, podría usar el comando

Stsadm -o enumsites -url https://sharepoint

para enumerar todas las colecciones de sitios y los propietarios dentro de la aplicación web https://sharepoint. A continuación, podría enumerar todos los subsitios mediante el comando siguiente:

Stsadm -o enumsubwebs -url <colección de sitios>

Sin embargo, en un entorno de granjas de servidores web, Stsadm.exe suele devolver un mensaje de error que indica que faltan los permisos de acceso a la base de datos. Stsadm.exe no puede enumerar las colecciones de sitios aunque sea administrador de la granja de servidores web y pueda administrar las colecciones de sitios en la Administración central de SharePoint 3.0. A continuación, se muestra el mensaje de error que se recibe si se usa Stsadm.exe en una granja de servidores web sin permisos de acceso a SQL Server:

C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\BIN>stsadm -o enumsites -url https://sharepoint

<Sites Count="2">

<Site Error="Cannot open database &quot;WSS_Content&quot; requested by the login. The login failed.&#xD;&#xA;Login failed for user 'CONTOSO\SPAdmin'.">

<Site Error="Cannot open database &quot;WSS_Content&quot; requested by the login. The login failed.&#xD;&#xA;Login failed for user 'CONTOSO\SPAdmin'." />

El administrador de la granja de servidores web recibe este mensaje de error porque Stsadm.exe se ejecuta en el contexto del usuario que ha iniciado la sesión, como por ejemplo, CONTOSO\SPAdmin; mientras que el sitio Administración central de SharePoint 3.0 obtiene acceso a las bases de datos de SharePoint en el contexto de la cuenta de sistema asociada con el grupo de aplicaciones de Administración central de SharePoint v3, como por ejemplo, CONTOSO\WssConfigAdmin. Aunque la concesión de permisos de cuenta db_owner para el contenido de la base de datos de SQL Server permite ejecutar el comando Stsadm -o enumsites -url https://sharepoint, aún no podrá enumerar los sitios de subnivel dentro de las colecciones de sitios. El comando Stsadm -o enumsubwebs -url <site collection> de dirección URL devuelve el error de acceso denegado. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) y nada habrá cambiado. Sin embargo, hay una manera mejor y más satisfactoria que no requiere permisos elevados para SQL Server.

Información del sitio en bases de datos de contenido

Si no puede obtener la información necesaria a través de las interfaces y herramientas estándar de SharePoint, debe ir directamente a las bases de datos de contenido de SharePoint. Pero cuidado, ya que este método debe ser el último recurso. Las bases de datos de contenido dependen de esquemas de propietario y estructuras de base de datos que Microsoft sólo documentó parcialmente en el WS 3.0 SDK para intentar que los clientes desistan de trabajar directamente con las bases de datos. Siempre que se pueda, debe usar la interfaz de usuario de SharePoint, herramientas de línea de comandos, el modelo de objetos o servicios web para obtener acceso a la información deseada.

Si no tiene otra alternativa y debe ir directamente a las bases de datos, al menos limite la solución de modo que tenga acceso de sólo lectura. No se admite la modificación del esquema o las estructuras de base de datos y puede producir problemas graves que quizás requieran la restauración de las colecciones de sitios de la copia de seguridad o la reinstalación de la granja de servidores web de SharePoint.

Una alternativa a la implementación de una solución de generación de informes que tiene acceso directo a las bases de datos de contenido es especificar la cuenta de administrador de la granja de servidores web como propietario secundario en la configuración de colección de sitios. Los administradores de la granja de servidores web pueden realizar este paso en el sitio de Administración central de SharePoint 3.0. El vínculo correspondiente para los administradores de la colección de sitios se encuentra en la sección de administración de sitios de SharePoint en la página Administración de la aplicación.

Como administrador secundario de la colección de sitios, puede abrir la colección de sitios en el explorador web, mostrar la configuración del sitio y, a continuación, hacer clic en el vínculo Informe de uso del sitio en Administración de sitios, siempre y cuando haya habilitado Procesamiento del análisis de uso en la Administración central de SharePoint 3.0. Mire en Crear registros e informes en la página Operaciones si desea realizar un seguimiento de los datos de uso de en archivos de registro de los servidores de SharePoint. La característica Informe de uso del sitio está deshabilitada de forma predeterminada.

Sin embargo, la creación manual de informes de uso del sitio para colecciones de sitios individuales no es práctica en entornos con un gran número de colecciones de sitios o con requisitos estrictos que impidan la concesión de los permisos necesarios a los administradores de la granja de servidores web. Un método más práctico es implementar una aplicación de creación de informes ASP.NET que enumera todas las colecciones de sitios y los sitios de la base de datos de contenido junto con las estadísticas importantes, como, por ejemplo, el número de elementos, el tamaño total combinado de todos los elementos y de fecha de última modificación de los elementos, tal como se muestra en la figura 4.

Figura 4 Obtener las estadísticas del sitio directamente desde una base de datos de contenido

Figura 4** Obtener las estadísticas del sitio directamente desde una base de datos de contenido **(Hacer clic en la imagen para ampliarla)

Si se ejecuta esta aplicación bajo la identidad de la aplicación de Administración central de SharePoint v3, se puede obtener acceso a las bases de datos de contenido sin necesidad de permisos elevados para SQL Server. Como mencioné anteriormente, la cuenta de administración central ya dispone de los permisos necesarios para SQL Server.

El material acompañante incluye una solución sencilla de creación de informes que usa consultas SELECT a la base de datos de contenido en SQL Server, así como instrucciones detalladas para implementar esta solución en un servidor web. Es importante tener en cuenta que yo no implementé ninguna comprobación de seguridad. La solución se ejecuta con la autenticación anónima.

No es necesario autenticar el usuario porque la cuenta Administración central ofrece el contexto de seguridad necesario para obtener acceso a las bases de datos de contenido. Usé un puerto personalizado para el sitio web de la solución, bloqueado a través de Firewall de Windows® en Windows Server 2008, por lo que sólo un usuario local puede abrir la aplicación web. Esto satisfizo los requisitos de seguridad en mi entorno de pruebas, pero en un entorno de producción, debe aumentar la seguridad; por ejemplo, al habilitar la autenticación de Windows y configurar permisos de acceso restrictivos al directorio virtual de la aplicación de ASP.NET.

Conclusión

SharePoint ofrece capacidades flexibles de colección y administración de sitios que permiten centralizar la administración de la infraestructura de SharePoint, a la vez que descentraliza la administración de sitios según las necesidades específicas de la compañía. Una infraestructura centralizada puede ser una ventaja para las empresas de cualquier tamaño ya que un entorno consolidado ayuda a reducir los costos, facilita el uso compartido de la información entre departamentos, ofrece una base para la aplicación de conocimientos expertos de manera dirigida con el fin de mantener la seguridad, confiabilidad y escalabilidad del entorno y ofrece a los usuarios un único punto de acceso a los sitios y los recursos de SharePoint en la red de la empresa.

Al mismo tiempo, los departamentos y las unidades de negocio individuales pueden conservar el control de sus recursos de SharePoint. Los administradores de la granja de servidores web pueden designar administradores de la colección de sitios que, a su vez, realizan tareas de administración de sitios dentro de sus áreas de responsabilidad sin participación adicional del departamento de TI.

Sin embargo, al pasar el control a los departamentos, los administradores de la granja de servidores web también pierden la capacidad de supervisar el uso de los recursos en la infraestructura mediante las características y herramientas estándar de SharePoint. La aplicación de cuotas a las bases de datos de contenido, el envío de recordatorios por correo electrónico a los administradores de la colección de sitios y el seguimiento de los datos de uso para fines informativos pueden ayudar a mitigar el problema. Sin embargo, para administrar la infraestructura de SharePoint de manera eficaz, los administradores de la granja de servidores web necesitan herramientas adicionales que extraigan los metadatos de sitio necesarios directamente de las bases de datos de contenido con acceso de sólo lectura.

Entre las opciones disponibles se incluye el uso de SQL Server 2005 Reporting Services o una solución similar de creación de informes de nivel empresarial. Tal como demuestra el ejemplo del material acompañante, también puede usar consultas SELECT de SQL Server para obtener la información necesaria.

Pav Cherny es experto en TI y autor especializado en tecnologías de Microsoft para la colaboración y las comunicaciones unificadas. Sus publicaciones incluyen notas del producto, manuales de productos y libros centrados en operaciones de TI y administración de sistemas. Pav es Presidente de Biblioso Corporation, una empresa especializada en servicios de documentación y localización administrados.

© 2008 Microsoft Corporation and CMP Media, LLC. Reservados todos los derechos. Queda prohibida la reproducción parcial o total sin previa autorización.