Pregunta

Tengo un servicio de WCF alojado en IIS 5.1 en mi máquina de desarrollo de XP. El servicio no puede conectarse al servidor de base de datos SQL con seguridad integrada = true. El mismo servicio bien funciona cuando alojada en una aplicación de consola. Tengo acceso anónimo sin control y comprobado la autenticación de Windows integrada en IIS

Estos son mi configuración en web.config

 <connectionStrings>
 <add name="CADISEntities"  connectionString="metadata=res://*/UDI.CADISEntities.csdl|res://*/UDI.CADISEntities.ssdl|res://*/UDI.CADISEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=DBSQLP404;Initial Catalog=CadisCustom;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
 </connectionStrings>

He intentado cambiar a la seguridad integrada a SSPI y de confianza de conexión = Sí, pero no hubo suerte. A continuación se muestra la configuración de configuración.

  <service behaviorConfiguration="CADISBehaviour" name="GlobalInvestors.FIPA.BLL.UDI.CADISSecurities">
    <endpoint binding="basicHttpBinding" bindingConfiguration="CADISBinding"
      contract="GlobalInvestors.FIPA.BLL.UDI.ICADISSecurities" />
  </service>

  <basicHttpBinding>
    <binding name="CADISBinding" closeTimeout="01:30:00" openTimeout="01:30:00"
      receiveTimeout="01:30:00" sendTimeout="01:30:00" maxBufferSize="65536000"
      maxBufferPoolSize="52428800" maxReceivedMessageSize="65536000">
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Ntlm" proxyCredentialType="Ntlm" />
      </security>
    </binding>
 </basicHttpBinding>

y en el cliente

  <endpoint address="http://ainaost4.amerus.corp.tld/FIPA/BLLHost/CADIS.svc"
    behaviorConfiguration="Behavior" binding="basicHttpBinding"
    bindingConfiguration="BasicHttpBinding_ICADISSecurities" contract="CADISEntities.ICADISSecurities"
    name="BasicHttpBinding_ICADISSecurities">
    <!--<identity>
      <userPrincipalName value="AINAOST4\ASPNET" />
    </identity>-->
  </endpoint>

    <binding name="BasicHttpBinding_ICADISSecurities" closeTimeout="01:30:00"
      openTimeout="01:30:00" receiveTimeout="01:30:00" sendTimeout="01:30:00"
      allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
      maxBufferSize="655360000" maxBufferPoolSize="655360000" maxReceivedMessageSize="655360000"
      messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
      useDefaultWebProxy="true">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Ntlm" proxyCredentialType="Ntlm"
          realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
      </security>
    </binding>

Sin establecer suplantación en el código me sale " El proveedor subyacente fallado en Abrir " Configuración de suplantación en el código y me sale " No se puede Inicializar SSPI "

 [OperationBehavior(Impersonation = ImpersonationOption.Required)]

googlear juzgado y declarado ese grupo de aplicaciones no se puede configurar en IIS 5.1.

Cualquier sugerencia para solucionar el problema sería muy apreciada.

¿Fue útil?

Solución

ha solucionado el problema al dar el nombre del servidor de SQL completo en la cadena de conexión

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top