2010-04-09 16 views
15

Mam usługę WCF, który chciałby wspierać basicHttpBinding i webHttpBinding. Gdy klient pomyślnie zaloguje się, serwer wygeneruje token, aby klient mógł przekazać serwerowi na wszystkie żądania, aby później. Pytanie brzmi, w jaki sposób klient może przekazać token na serwer? Nie chcę dodawać dodatkowego parametru do każdej metody internetowej, aby zatrzymać token.WCF jak przekazać token do uwierzytelnienia?

Odpowiedz

17

Zazwyczaj najlepszym sposobem na zrobienie czegoś podobnego jest przekazywanie takich "meta-informacji" w nagłówku WCF. Możesz łatwo utworzyć inspektora komunikatów, aby rozszerzyć WCF (to naprawdę nie jest takie straszne i trudne do zrobienia!), Które wstrzyknęłoby token do każdego wychodzącego żądania od klienta, i pobierze je z nagłówka i sprawdzi po stronie serwera.

Istnieje wiele bardzo dobrych blogu tam pokazano, jak utworzyć inspektora wiadomość:

Sprawdź dwa odpowiednie interfejsy do wdrożenia:

+0

Dzięki, to działa. To dokładnie to, czego potrzebowałem. – Kevin

+0

Przekazanie tokena w nagłówku nie powoduje problemów z bezpieczeństwem? –

+0

@Learning Wiem, że to stary komentarz, ale powinieneś przynajmniej użyć bezpiecznego połączenia i dobrze jest zastosować szyfrowanie tokena, które tylko ty i klient wiecie, jak zaimplementować. – Silvermind

Powiązane problemy