Схемы аутентификации, сконфигурированные на хосте ( "Анонимный" ), не позволяют настройкам привязки "BasicHttpBinding" ( "Переговоры" ).
Схемы аутентификации, настроенные на хосте ( "Анонимный" ), не позволяют настраивать привязку "BasicHttpBinding" ( "Переговоры" ). Убедитесь, что для параметра SecurityMode установлено значение Transport или TransportCredentialOnly. Кроме того, это может быть разрешено путем изменения схем аутентификации для этого приложения с помощью инструмента управления IIS через свойство ServiceHost.Authentication.AuthenticationSchemes в файле конфигурации приложения в элементе путем обновления свойства ClientCredentialType на привязке или путем настройки свойство AuthenticationScheme в HttpTransportBindingElement.
Ответы
Ответ 1
Эта ошибка может быть показана, если на вашем локальном веб-сервере IIS не установлены режимы проверки подлинности. Перейдите в Панель управления → Программы → Включите или выключите функции Windows
Проверьте службы информации в Интернете → Широкие веб-службы Wold → Безопасность → и активировать режимы Basic, Windows, Digest Authentication. Откройте IIS и перейдите к своему приложению и перейдите в раздел проверки подлинности и включите требуемые режимы аутентификации.
Для меня режимы аутентификации не отображались сразу после установки или после перезапуска веб-сервера. Выполнение перезагрузки машины показало их в веб-приложении.
Ответ 2
При необходимости - установите функции как описанные выше, откройте диспетчер IIS, откройте функции сервера:
![введите описание изображения здесь]()
откройте функцию "Аутентификация":
![введите описание изображения здесь]()
включить/отключить необходимые:
![введите описание изображения здесь]()
Ответ 3
Если вы столкнулись с этой проблемой во время отладки в Visual Studio, выберите свой проект и измените аутентификацию в свойствах.
![VS win auth]()
Ответ 4
Когда это случилось со мной, я обнаружил, что Visual Studio использует "Default Web Site" для размещения моей службы при добавлении ссылки на службу с помощью кнопки "Discover". Поэтому, чтобы исправить это, мне пришлось включить проверку подлинности, которую моя служба использовала на веб-сайте по умолчанию в IIS. Поскольку я использовал проверку подлинности Windows, включив ее для "Default Website" в IIS, и это, похоже, устранило мою проблему. Конечно, если ваша служба использует другой тип auth, вам нужно будет включить правильную аутентификацию.
Чтобы настроить аутентификацию, откройте IIS. В разделе "Сайты" выберите "Веб-сайт по умолчанию", а затем "Аутентификация".