2013-02-26 12 views
8

Mam klienta, który używa proxy WCF do wywołania usługi. Poświadczenia i inne funkcje działają prawidłowo, ale jeśli użytkownik zmieni hasło domeny i zrestartuję aplikację, nie mogę zadzwonić do tej usługi z powodu tego błędu:W jaki sposób obsłużyć zmianę hasła podczas korzystania z WCF i DefaultCredentials?

System.ServiceModel.Security.SecurityNegotiaionException -> Serwer odrzucił poświadczenia klienta.

System.Security.Authentication.InvalidCredentialException -> Serwer odrzucił poświadczenia klienta.

System.componentmodel.Win32Exception -> Próba logowania nie powiodła się.

Oczywiście wiem, że dane uwierzytelniające użytkownika uległy zmianie, ale jak mogę odświeżyć CredentialCache, aby odzwierciedlić nowe poświadczenia, aby wywołanie WCF się powiodło?

+0

przez @Ryblex: "Czy po ponownym uruchomieniu aplikacji masz na myśli aplikację usług WCF, w tym AppPool?" [edytowane dla gramatyki] – Gray

Odpowiedz

6

Usługa sprawdza token w kontekście klienta względem AD. Klient wcf używa istniejącego tokenu okna, który otrzymuje, gdy użytkownik zalogował się na swoje konto Windows. Jeśli zmienisz hasło, sesja systemu Windows będzie nadal działała ze starymi poświadczeniami. Musisz się zalogować i wylogować z sesji systemu Windows, aby zaktualizować poświadczenia z pamięci podręcznej.

Powiązane problemy