developers.de
daenet's .NET Community

User Impersonation in WindowsForms and WPF

Following example shows how to enforce interactive user in Windows Forms or WPF applications to become WindowsPrincipal, which can be read by Thread.CurrentPricipal:

  // This is identity of the user interactivelly logged on.
 
WindowsIdentity currentIdentity = WindowsIdentity.GetCurrent();

  // This would be required if you would logon user by username and password.
  // This example shows how to impersonate some other user than the interactive one.
  //
WindowsImpersonationContext ctx = currentIdent.Impersonate();

  
  // This two calls make the all magic.

  WindowsPrincipal wP = new WindowsPrincipal(currentIdent);

 
Thread.CurrentPrincipal = wP;


Posted Mar 19 2010, 10:48 AM by Damir Dobric

Add a Comment

(required)  
(optional)
(required)  
Remember Me?