domingo, 5 de abril de 2015

Client Object Sharepoint Online - The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel

Les voy a comentar un problema que tuve configurando una consola que utiliza Client Object para conectarse a Sharepoint Online en un servidor Windows Server 2008 R2. La consola se ejecutaba en una tarea planificada de windows (Task Scheduler), el cual se ejecutaba con un usuario de servicio que tenía acceso a internet

En el app.config tenía configurado que utilice el proxy configurado por default. Tenía configurado en el IE el proxy, el cual no era necesario autenticarse, ya que usaba autenticación anónima.

<system.net>  
      <defaultProxy useDefaultCredentials="true">
        <proxy bypassonlocal="True" usesystemdefault="True"/>
      </defaultProxy> 
  </system.net>

Cuando ejecutaba la consola desde mi Windows, se ejecutaba sin problemas. Por lo cual excluí algún problema de autenticación o de acceso vía el proxy.

Lo que hice es poner la url del sitio de Sharepoint Online en el IE del Windows Server, y me generaba un error de certificado. Me decía “Untrusted Certificate”

image

Lo que hice es agregar la siguiente línea al inicio de la consola, antes de hacer cual llamada a Sharepoint Online.

ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => { return true; };

Lo que hace esta línea de código, es ignorar cual error de certificados de SSL.

Otra posibilidad es agregar la entidad que genera los certificados para Sharepoint Online en el store “Trusted Root Certification Authorities”: https://technet.microsoft.com/en-us/library/cc754841.aspx

image

No hay comentarios:

Publicar un comentario