Pregunta

Me disponemos de la siguiente WCF unión. El servicio web se está llamando desde una página de SharePoint Aplicación que utiliza AJAX.Net. El acceso anónimo está desactivada desde el interior de la Administración central.

  <configuration>
  <system.serviceModel>
    <bindings>
      <webHttpBinding>
        <binding
        name="webHttpBinding_BdcHelper"
        maxBufferSize="5242880"
        maxReceivedMessageSize="5242880" >
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Ntlm" />
          </security>
        </binding>
      </webHttpBinding>
    </bindings>

Funciona bien para HTTP pero está fallando con HTTPS. El problema que tengo es una excepción autorizada 401. He probado otras configuraciones tales como el sugerido aquí - WCF enlaces necesaria Para HTTPS pero no hubo suerte.

¿Qué necesito hacer para la configuración de conseguir que esto funcione? Gracias

¿Fue útil?

Solución

Phil,

TransportCredentialOnly no está usando SSL - esto es realmente una manera de contar WCF que la seguridad está en las credenciales de mensajes -. Y como sabemos credenciales de Windows no son realmente seguro, de forma si se utiliza es posible que desee utilizar IPSec

Si usted está buscando para la seguridad SSL con autenticación de Windows es necesario asegurarse de que los puntos finales está configurado para SSL y el uso

<Security mode="Transport">
   <transport clientCredentialType="Windows" />
</Security>

Nota: Windows intentará Kerberos y luego dejar caer a NTLM si es necesario.

Buen post sobre esto en MSDN que explica los ajustes, también mira el material P & P en CodePlex donde se puede descargar un guía completa .

Licenciado bajo: CC-BY-SA con atribución
scroll top