Nonostante la promozione della visibilità, Closures non presenta alcun nuovo problema di sicurezza.
Questo è dovuto al semplice motivo che la visibilità (cioè privata / pubblica) è non un meccanismo di sicurezza in primo luogo.
Solo perché hai contrassegnato il campo della password come private
, vuol dire che non è accessibile. È non accessibile, ma solo per il codice che si comporta bene.
È ancora facilmente accessibile nel codice, ad es. via riflessione. (Ovviamente, i consumatori della tua classe non dovrebbero farlo ...)
E questo è anche senza andare in cose come il debug, l'ispezione della memoria, ecc ...
Quindi, come ho detto, non influenza il livello di sicurezza. Avresti bisogno di proteggere quel campo Password, ma avresti bisogno di farlo comunque.
(Suggerimento: memorizza le password come SecureString
invece di stringhe ...)