2013-01-25 16 views
6

io sono in procinto di ottenere la mia testa rotonda con ADFS per autenticare un utente in un'applicazione .NET 4.5. Non riesco a trovare alcun esempio di richiesta/ricezione del token da un'app console e la conversione di tale token in un ClaimsPrinciple. Gli unici esempi che posso trovare sono basati sulla configurazione di WCF e mi piacerebbe davvero vedere il codice reale che può farlo nella sua forma più semplice.Autenticazione contro AD FS da un .Net 4.5 Console App

Ho installato ADFS e credo di aver capito configurato pronto a ricevere le richieste. Ho creato un relying party, gli ho dato una chiave e gli ho assegnato un paio di affermazioni.

Qualcuno mi può punto nella giusta direzione, o che cosa devo fare ora nella mia console app per inviare le richieste di autenticazione ad esso?

Grazie

risposta

8

Il modo più semplice è quello di utilizzare il WSTrustChannelFactory da .NET 4.5.

vedere il metodo RequestSecurityToken qui: http://leastprivilege.com/2012/11/16/wcf-and-identity-in-net-4-5-external-authentication-with-ws-trust/

Dopo aver ottenuto il token lo si esegue attraverso il corrispondente gestore di token per trasformarlo in un ClaimsPrincipal.

devo metodi di supporto e attacchi a mia libreria su GitHub: https://github.com/thinktecture/Thinktecture.IdentityModel.45

(cercate la cartella di WCF, la cartella WSTrustClient e le estensioni).

+0

impressionante, penso che è mi ha fatto quasi. Ho disattivato l'associazione nell'esempio per WindowsWSTrust poiché desidero autenticare l'utente attualmente connesso. Sto ottenendo questo ora anche se "la richiesta http non è autorizzata con lo schema di autenticazione del client 'anonimo'" – Gavin

+0

Quale endpoint in ADFS stai usando? – leastprivilege

+0

Ho provato alcuni trust/13/windows, trust/13/windowstransport e trust/2005/windowstransport – Gavin