Normal people bore me!

Questo blog si è trasferito qui: www.geniodelmale.info
posts - 4199, comments - 7055, trackbacks - 491

My Links

News



Subscribe Subscribe

- Chi sono... C.V. e altre informazioni! - Lista dei miei articoli

View Lorenzo Barbieri's profile on LinkedIn

Genio del Male Fan Page



This is my personal weblog. These postings are provided 'AS IS' with no warranties, and confer no rights. The views expressed on this weblog are mine alone and do not necessarily reflect the views of my employer.

Licenza Creative Commons

Tag Cloud

Archives

Post Categories

Unimpersonator!

Per chi usa Impersonation (male... molto male... non fatelo sapere a Raf!) ma ha bisogno di accedere all'identità originale per poter andare sulla rete... ecco una bella classe che wrappa il RevertToSelf, e implementa pure il Dispose per tornare all'utente di partenza...

Disposable Unimpersonation

Sempre dello stesso autore anche un post che spiega che non sono solo le risorse di rete a non andare quando state impersonando qualcuno, ma anche l'Encripted File System...

Print | posted on giovedì 1 dicembre 2005 13.54 | Filed Under [ .NET: varie ]

Feedback

Gravatar

# re: Unimpersonator!

Ciao Lorenzo,
proprio oggi in ufficio stavo cercando di trovare la soluzione migliore per l'impersonate, da usare per un blocco di codice che richiedeva privilegi più alti di quelli assegnati all'utente che esegue il worker process di asp.net. Segnalo qualche link sull'argomento : http://support.microsoft.com/default.aspx?scid=KB;en-us;q306158">http://support.microsoft.com/default.aspx?scid=KB;en-us;q306158 - qui c'è il codice di esempio di microsoft, che wrappa le funzioni RevertToSelf e LogonUser della libreria advapi32.dll. Ebbene il 5 parametro di LogonUser specifica il logonProvider da usare per generare il token di auth per l'utente di cui si vuole fare l'impersonate.
Microsoft, qui http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthn/security/logonuser.asp inoltre avverte che usando LOGON32_LOGON_NETWORK come logontype si ha il beneficio della velocità, ma la funzione LogonUser non generando un token primario, ma uno di impersonation (da convertire poi in primario con la funzione DuplicateTokenEx) non permette al processo di accedere alle risorse di rete. Nel codice pubblicato su http://support.microsoft.com/default.aspx?scid=KB;en-us;q306158">http://support.microsoft.com/default.aspx?scid=KB;en-us;q306158 viene infatti utilizzato
LOGON32_LOGON_INTERACTIVE che è meno limitativo, ma si paga il caching delle informazioni di logon per le operazioni disconnesse, infatti msdn dice che non è adatto per applicazioni client\server come ad esempio i mail server.

Ciao
01/12/2005 21.42 | Michele Cerreto
Gravatar

# re: Unimpersonator!

Grazie per le info!
02/12/2005 8.55 | Lorenzo Barbieri
Comments have been closed on this topic.

Powered by: