Click here to Skip to main content
13,143,774 members (31,634 online)
Rate this:
Please Sign up or sign in to vote.
See more:
Ok, this may be a newbie question but what is the difference between these two?


Seems both of these return the client user id in a WCF service.
Posted 11-Feb-13 13:30pm
Updated 12-Feb-13 5:45am

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

The most common implementation in .NET to get authenticated Windows account under which process is running is to get via WindowsIdentity.GetCurrent()

WCF stores information about the identity of the remote client via System.ServiceModel.ServiceSecurityContext class. It’s two most important properties are:
- PrimaryIdentity – This is the identity used by the remote party for authentication while accessing the service.
- WindowsIdentity – This is the WindowsIdentity object representing the Windows Account information used for Windows Authentication.

We can access the ServiceSecurityContext instance from WCF service operation using the static Current property of ServiceSecurityContext class, i.e.: ServiceSecurityContext.Current

Thus, WindowsIdentity is at basic level and a part of identity when used via WCF.
For full details, refer: Identity & ServiceSecurityContext in WCF[^]
Espen Harlinn 12-Feb-13 14:42pm
Very nice, Sandeep :-D
Sandeep Mewara 12-Feb-13 14:46pm
Thanks Espen. :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy |
Web02 | 2.8.170915.1 | Last Updated 12 Feb 2013
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100