2013-01-25 15 views
6

Jestem w trakcie sprawdzania mojej głowy za pomocą AD FS, aby uwierzytelnić użytkownika w aplikacji .NET 4.5. Nie mogę znaleźć żadnych przykładów żądania/odbioru tokena z aplikacji konsolowej i konwersji tego tokena w ClaimsPrinciple. Jedyne przykłady, jakie mogę znaleźć to konfiguracja WCF i naprawdę chciałbym zobaczyć prawdziwy kod, który może to zrobić w najprostszej formie.Uwierzytelnianie przeciwko programowi AD FS za pośrednictwem aplikacji .Net 4.5 Console

Zainstalowałem program AD FS i myślę, że skonfigurowałem go jako gotowy do odbierania żądań. Stworzyłem stronę ufającą, zważywszy na jej klucz i przypisałem jej kilka roszczeń.

Czy ktoś może wskazać mi właściwy kierunek lub to, co muszę teraz zrobić w mojej aplikacji konsolowej, aby wysłać do niego żądanie uwierzytelnienia?

Dzięki

Odpowiedz

8

Najprostszym sposobem jest użycie WSTrustChannelFactory z .NET 4.5.

Zobacz metodę RequestSecurityToken tutaj: http://leastprivilege.com/2012/11/16/wcf-and-identity-in-net-4-5-external-authentication-with-ws-trust/

Po masz token go uruchomić poprzez odpowiednią symboliczną obsługi, aby włączyć go do ClaimsPrincipal.

mam metody pomocnika i wiązania w mojej bibliotece na github: https://github.com/thinktecture/Thinktecture.IdentityModel.45

(poszukaj folderu WCF, folder WSTrustClient a Extensions).

+0

Niesamowite, myślę, że mnie już prawie udało. Wyłączyłem powiązanie w przykładzie dla WindowsWSTrust, ponieważ chcę uwierzytelnić bieżącego zalogowanego użytkownika. Dostaję to teraz jednak "żądanie http jest nieautoryzowane ze schematem uwierzytelniania klienta" anonimowym "" – Gavin

+0

Który punkt końcowy w programie AD FS używasz? – leastprivilege

+0

Próbowałem kilku zaufanych/13/okien, zaufania/13/windowstransport i zaufania/2005/windowstransport – Gavin