Проверка подлинности Windows в службе WCF завершается неудачно после смены пароля - PullRequest
0 голосов
/ 29 мая 2019

У нас есть служба Windows, на которой размещены некоторые веб-службы wcf, аутентифицированные с помощью wsHttpBindings.У пользователя возникли проблемы с аутентификацией, и оказалось, что срок действия ее пароля истек.Затем она сменила свой пароль и перезагрузила компьютер.После этого изменения пароля она больше не могла получить доступ к веб-службам.Она получила

System.ServiceModel.Security.SecurityNegotiationException: The caller was not authenticated by the service. ---> System.ServiceModel.FaultException: The request for security token could not be satisfied because authentication failed.

На сервере у нас была включена трассировка службы, и при попытке пользователя вызвать службу появляется ошибка:

System.ComponentModel.Win32Exception (0x80004005): The Security Support Provider Interface (SSPI) negotiation failed.

Затем мы проверили журналы Windows -> Безопасностьв режиме просмотра событий на сервере и найдите

Учетная запись не смогла войти в систему.

Subject:
    Security ID:        NULL SID
    Account Name:       -
    Account Domain:     -
    Logon ID:       0x0

Logon Type:         3

Account For Which Logon Failed:
    Security ID:        NULL SID
    Account Name:       user@compyany.com
    Account Domain:     

Failure Information:
    Failure Reason:     Unknown user name or bad password.
    Status:         0xc000006d
    Sub Status:     0xc0000064

Мы попытались восстановить ее пароль еще раз, но это не помогло.

1 Ответ

0 голосов
/ 29 мая 2019
Control Panel -> User Accounts -> Manage your credentials -> Windows Credentials

В списке была одна запись о сервере, к которому у нас возникли проблемы с доступом. Мы удалили его, и пользователь смог получить доступ к сервису без проблем.

Похоже, что пользователь получил доступ к серверу с помощью mstsc или аналогичного, ввел формат имени пользователя upn user@company.com и сохранил пароль. Это не было обновлено, когда она изменила свой пароль, и по какой-то причине wcf использует эти учетные данные при доступе к службе вместо значения по умолчанию.

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