Compartir a través de


Procedimiento para evitar errores de validación de páginas mediante las API de SharePoint en aplicaciones web

Última modificación: jueves, 01 de octubre de 2009

Hace referencia a: SharePoint Foundation 2010

Las aplicaciones web de SharePoint Foundation se ejecutan bajo la identidad del grupo de aplicaciones. Por motivos de seguridad, la mayor parte de las API de SharePoint Foundation tienen restricciones cuando se tiene acceso a ellas desde una aplicación web. Por lo tanto, estas API pueden producir una gran variedad de errores de validación de página. Para evitar este problema, actualice la aplicación web tal y como se describe a continuación.

Actualización de la aplicación

Para actualizar la aplicación web y evitar los errores de validación de página, siga estos pasos:

1. Ejecute la aplicación web en el contexto de SharePoint

Para ello, cree un directorio virtual en el directorio _layouts de cualquier sitio de SharePoint y hospede la aplicación web en él.

2. Garantice la consolidación del grupo de aplicaciones

Asegúrese de que la aplicación web se está ejecutando en el mismo grupo de aplicaciones que la Administración central de SharePoint. De esta forma se garantiza que se tienen acceso a las funcionalidades de administración de SharePoint Foundation, como la distribución de contenido, la administración de perfiles de usuario y otras a través de la identidad del grupo de aplicaciones de Administración central.

3. Agregue un control de síntesis de formulario a la página ASPX

Se puede tener acceso a la mayoría de las API a través de la aplicación web después de completar los pasos uno y dos anteriores. Sin embargo, puede que sea necesaria una mayor validación de seguridad para algunas API y funcionalidades de SharePoint Foundation. Si aún recibe un error de validación de seguridad tras implementar los pasos anteriores, debe agregar un control web de síntesis de formulario de SharePoint Foundation a la página ASPX. El control de síntesis de formulario valida la aplicación web cuando intenta obtener acceso a las API de SharePoint Foundation. Por lo tanto, la aplicación web se considera una aplicación segura y puede tener acceso a SharePoint Foundation. Para usar el control web de síntesis de formulario debe registrar un prefijo de etiqueta para SharePoint Foundation y, a continuación, agregar el control de síntesis de formulario a la página ASPX.

El siguiente ejemplo de código muestra cómo registrar el prefijo de etiqueta:.

<%@ Register Tagprefix="SharePoint" 
   Namespace="Microsoft.SharePoint.WebControls" 
   Assembly="Microsoft.SharePoint 
   Version=14.0.0.0
   Culture=neutral, 
   PublicKeyToken=71e9bce111e9429c" %>

A continuación, agregue el control de síntesis de formulario de SharePoint Foundation a la página:

<SharePoint:FormDigest ID="fd" runat="server" PageUri=""/>

Debe establecer la propiedad PageURI en el control de síntesis de formulario en la página donde se encuentra. Si no hace esto, recibirá un error de referencia a objeto null.