Estoy tratando de llamar a un servicio web desde nuestro punto compartido de la oficina. Funciona cuando lo llamo desde nuestro proyecto de prueba y puedo acceder a la url y recuperar información a través del navegador, pero cuando lo llamo a través de un servicio web recibo el siguiente error:La solicitud HTTP no está autorizada con el esquema de autenticación de cliente 'Negociar'. el encabezado de autenticación
System.ServiceModel.Security.MessageSecurityException: The HTTP la solicitud no está autorizada con el esquema de autenticación del cliente ' Negociar '. El encabezado de autenticación recibido del servidor fue ' Reinos básicos =
Cuando iniciamos sesión en sharepoint usamos nuestras credenciales de Windows para iniciar sesión automáticamente.
Mi web.config se parece a esto dentro:
<binding name="ListsSoap" closetimeout="00:01:00" opentimeout="00:01:00" receivetimeout="00:10:00"
sendtimeout="00:01:00" allowcookies="false" bypassproxyonlocal="false" hostnamecomparisonmode="StrongWildcard"
maxbuffersize="65536" maxbufferpoolsize="524288" maxreceivedmessagesize="65536"
messageencoding="Text" textencoding="utf-8" transfermode="Buffered" usedefaultwebproxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
<security mode="Transport">
<transport clientCredentialType="Windows" proxyCredentialType="Basic" realm="" />
<message
clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
La url utiliza SSL (es decir https://blahblah.com.sharepoint.emea.microsoftonline.com/Lists/ ....)
He usado casi todas las combinaciones que existe: el transporte con NTLM, TransportWithMessageCredential con basic etc y o bien recibo el mensaje de error de que está esperando http y obtiene https.
Gracias por la ayuda
E
Supongo que Sharepoint está pasando las credenciales de la aplicación Sharepoint se está ejecutando como en el servidor Sharepoint y no el usuario que está conectado. ¿Se puede ver el error en el visor de eventos? Eso podría tener el error "usuario" no tiene permiso ... " – Brady