DefaultNetworkCredentials o DefaultCredentials
-
22-09-2019 - |
Domanda
Quale dovrei usare quando ho bisogno di fornire una credenziale per un proxy (locale o in rete)?
Qual è la differenza esatta tra questi due?
Soluzione
Sono esattamente la stessa cosa, che è possibile confermare per voi stessi utilizzando un disassembler come riflettore. L'unica differenza è che DefaultNetworkCredentials
restituisce un oggetto NetworkCredentials
ed e DefaultCredentials
l'inserisce in ICredentials
. In modo da avere accesso a più informazioni con un oggetto NetworkCredentials, ma che di quelli si utilizza alimentazione a un oggetto che richiede un'istanza ICredentials fa alcuna differenza, dal momento che è la stessa istanza di oggetto: object.ReferenceEquals(CredentialCache.DefaultCredentials, CredentialCache.DefaultNetworkCredentials)
ritorna true
Altri suggerimenti
La differenza tra i due è molto sottile. DefaultNetworkCredentials è il più recente dei due (ha aggiunto con .NET 2.0), e la differenza principale è che in certe condizioni di sicurezza, si può esporre informazioni più private sulla utente connesso all'applicazione. Per ulteriori informazioni, provate questo post del blog:
http://blogs.msdn.com/buckh/ archive / 2004/07/28 / 199706.aspx