Sistemas antivirus y SharePoint

En la línea de mis últimos artículos y ¡¡¡ para no variar!!! hoy vamos a ver otro PROBLEMA que se nos ha planteado en nuestra aplicación SharePoint.

De la noche a la mañana apareció un error que no sabíamos muy bien porqué. No era posible acceder a uno de nuestro sitios ni tampoco podíamos ver los elementos de una biblioteca de imágenes, dándonos como única explicación Excepción de HRESULT: 0x80041051. Lo que nos hizo plantearnos que era lo último que habíamos hecho en nuestro sitio SharePoint para que hubiera aparecido dicho problema. Y era un export de  la aplicación.

Tras buscar información al respecto he encontrado numerosas fuentes que apuntan a que este problema puede ser debido a la existencia o detección de virus en algún documento en MOSS, a través de ForeFront u otras soluciones de Antivirus. Debido a su nivel de seguridad, en algunas ocasiones, detectan virus en algunas páginas o elementos de nuestro sitio SharePoint (existan o no), como se puede ver en el siguiente link:

http://www.guillesql.es/Articulos/MOSS_Exception_from_HRESULT_0x80041050_SharePoint_STSADM_Export.aspx

Otra de las fuentes de las que he obtenido información es http://support.microsoft.com/kb/928169, donde se indican los síntomas de este problema, las posibles causas y soluciones. Con ayuda de estas páginas y otras que se indican al final del artículo, y siguiendo los pasos que se enumeran a continuación, hemos conseguido solucionar el problema.

Pasos a seguir:

1. Conectarnos a la base de datos de contenido de SharePoint

2. Ejecutar la siguiente consulta sobre la misma:

SELECT *
FROM AllDocs
WHERE (VirusStatus > 0) and (VirusStatus is not null)

3. Si obtenemos una serie de elementos “posiblemente infectados”, lo que debemos hacer es:

    1º Analizar manualmente dichos elementos para comprobar que se encuentran libres de virus, con un sistema antivirus. 

     2º En caso de que se encuentren correctamente, debemos cambiar el valor de la columna VirusStatus a NULL. Para ello implementamos la siguiente consulta:

UPDATE AllDocs
SET VirusStatus = null
WHERE (VirusStatus > 0) and (VirusStatus is not null)

4. Por último, aunque no es necesario, inicializaremos a nula también la información relacionada para no dar lugar a confusión (una vez limpiado el estado), para ello ejecutaremos la siguiente consulta:

    UPDATE AllDocs
    SET VirusInfo = null
    WHERE (VirusInfo is not null)

    De esta manera comprobamos de nuevo nuestra aplicación y vemos que todo funciona correctamente.

    Si no se visualizan los cambios deberemos reiniciar el IIS mediante el comando iisreset.

     

    Links de interés:

    http://gtechcentre.blogspot.com/2007/07/link-httpsupport.html

    http://imoss.blogspot.com/2008/09/com-exception-error-in-sharepoint-with.html?showComment=1223478240000

    http://rawatsumit.blogspot.com/2009/07/exception-from-hresult-0x80041051-on.html

    http://social.technet.microsoft.com/Forums/en-US/forefrontSharePoint/thread/3f20ae34-03ba-4da0-af20-2b6cfa61663b

    Deja un comentario

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