2009-08-07 12 views
7

Possiedo un'app che accede a un servizio WCF su un server ospitato in un'app console. Non ho un problema lì, è quando provo ad accedere a un altro servizio dall'app console che si trova su un altro server che ho il problema.Problema di sicurezza WCF

Sto utilizzando TCP per connettersi e sto utilizzando tutti i valori di sicurezza predefiniti.

Quindi vado da A-> B e poi muore passando da B-> C con. Si noti che quando mi basta andare da A-> C è tutto a posto

L'errore: "una chiamata a SSPI fallito" ... "il nome principale di destinazione non è corretto" ... dello stack trace ...

In B quando si stampa
Console.WriteLine (ServiceSecurityContext.Current.PrimaryIdentity.Name); Console.WriteLine ("ServiceSecurityContext.Current.WindowsIdentity.Name);
posso vedere che è il mio Windows Login che va bene

Così sembra che non passa sulle mie credenziali quando si va da B- > C

Tutte le idee?

risposta

8

SSPI indica che si sta utilizzando l'autenticazione di Windows.

avete creato un nome principale sicuro per il servizio C nel dominio? google il comando setspn. il problema è che le finestre non passerà una credenziale dal do principale di un sistema non affidabile. Ci si fida fornendo il nome principale sicuro nel dominio che consente quindi il passaggio del token.

Secure Principal Name SPN Creation Tutorial

+0

Come Spence menziona, questo è dovuto al fatto che le credenziali si spostano da A a B, ma le stesse credenziali da B a C non sono valide, perché sono abbinate all'AppDomain attualmente in esecuzione diverso da B a C –

Problemi correlati