Otrzymuję następujący błąd, gdy ustawiłem Włącz uwierzytelnianie systemu Windows i anonimowe wyłączone w IIS.Uczyń Wcf Service IntegratedWindowsAuthentication
Systemy uwierzytelniania, skonfigurowane w gospodarzu ('IntegratedWindowsAuthentication') nie pozwalają skonfigurowanych na wiązanie 'BasicHttpBinding' ('Anonymous'). Należy upewnić się, żeSecurityMode jest ustawiony na Transport lub TransportCredentialOnly. Dodatkowo ten może zostać rozwiązany poprzez zmianę uwierzytelniania programów dla tej aplikacji za pośrednictwem narzędzia zarządzania IIS, dzięki właściwość ServiceHost.Authentication.AuthenticationSchemes, w pliku konfiguracyjnym aplikacji na elemencie , aktualizując właściwość ClientCredentialType na powiązanie lub dostosowanie właściwości AuthenticationScheme w obiekcie HttpTransportBindingElement w wersji . web.config
My usługi WCF jest następujący ...
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5"/>
</system.web>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpEndpointBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint binding="basicHttpBinding"
bindingConfiguration="BasicHttpEndpointBinding"
contract="Test.IService1" name="BasicHttpEndpoint" />
</client>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceAuthenticationManager
authenticationSchemes="IntegratedWindowsAuthentication"/>
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpBinding" scheme="http" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"
multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<directoryBrowse enabled="true"/>
</system.webServer>
</configuration>
rada proszę ..
Nie opublikowałeś swojego pliku web.config ... – Tim
Jest już gotowy. proszę o poradę. – user214471
Nie widzę definicji usługi w konfiguracji, tylko klienta. Jeśli jest to plik konfiguracyjny Twojej usługi i korzystasz z .NET 4.0+, istnieje szansa, że otrzymujesz domyślny punkt końcowy, który może nie mieć prawidłowo ustawionych zabezpieczeń. Musisz również przypisać powiązanie utworzone w pliku konfiguracyjnym do swojej usługi. – Tim