У меня есть приложение WCF, работающее под Windows. Когда мой клиент пытается подключиться к нему, я получаю эту ошибку ...
согласование безопасности SOAP с
'http://machinename:8000/WcfService/service' для цели
'http://machinename:8000/WcfService/service' не удалось. См внутренний
исключение для более подробной информации.
Внутреннее исключение: {"Интерфейс поставщика поддержки безопасности (SSPI)
аутентификация не удалась. Возможно, сервер не работает в учетной записи
с идентификатором 'user @ domain'. Если сервер работает в службе
учетная запись (например, услуга сети), укажите учетную запись
ServicePrincipalName в качестве идентификатора в EndpointAddress для
сервер. Если сервер работает в учетной записи пользователя, укажите
UserPrincipalName учетной записи в качестве идентификатора в EndpointAddress для
сервер. "}
Я настроил свою конечную точку следующим образом:
EndpointIdentity identity = EndpointIdentity.CreateUpnIdentity("user@domain");
Кажется, что служба Windows работает под учетной записью, с которой я не знаком, потому что эта конфигурация работает для консольного приложения. У меня есть служба входа в систему как локальная система. Какой аккаунт это использует? Как мне это настроить, чтобы мой клиент мог подключиться к серверу WCF, работающему в качестве службы Windows?