WCF Удаленный сервер возвратил ошибку: (404) Not Found - PullRequest
0 голосов
/ 26 сентября 2010

У меня есть простой сервис WCF, размещенный на IIS6 на сервере в сети.

Когда я использую следующую привязку на сервере в моей сети, я получаю 404, если просто сделал clientCredentialType None, он работает, также он работает на моем компьютере, почему проверка подлинности Windows не выполняется на сервере, 404 фактически означает, что он даже не может видеть конечная точка, если это проблема с прокси, как это исправить.

<basicHttpBinding>
    <binding name="HttpWindowsAuthentication" 
             maxReceivedMessageSize="1048576" bypassProxyOnLocal="true" 
             useDefaultWebProxy="false">
        <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Windows" proxyCredentialType="None"/>
        </security>
     </binding>
</basicHttpBinding>

спасибо

Ответы [ 2 ]

2 голосов
/ 26 сентября 2010

Вероятно, это связано с безопасностью, поскольку работает при изменении clientCredentialType.

То, что вы получаете 404, это для повышения безопасности, система говорит: «Я не могу найти файл», вместо того, чтобы сказать «Да, есть файл с таким именем, но вам не разрешено просматривать его». *

Похоже, что пользователь, который выполняет вызов wcf, не имеет доступа к файлу svc, но пользователь, выполняющий процесс asp.net, имеет. Пользователь, который запускает процесс asp.net, используется для анонимных клиентов.

Выше приведены настройки по умолчанию.

0 голосов
/ 28 сентября 2010

Спасибо, Шираз

Это проблема безопасности, я просто не указал аутентификацию Windows в файле конфигурации WCF, также mexHttpBinding не работал с аутентификацией Windows !!.

Некоторые клиенты в сети по ошибке использовали олицетворение, они получили 401, поэтому я отменяю опцию в IIS, см. http://msdn.microsoft.com/en-us/library/aa292118%28VS.71%29.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...