Thursday, April 21, 2011

WCF: What value should the servicePrincipalName have?

I'm trying to set up client impersonation on my service.

I need to set a value for the servicePrincipalName of my services endPoint

I'm looking at this but still cannot quite figure it out
http://technet.microsoft.com/en-us/library/cc961723.aspx

My service is hosted in a console app on a server that we'll call ServerName1.
The Uri is: "net.tcp://ServerName1:9990/TestService1/"

What specifically should my servicePrincipalName be?

I tried, with no joy:

<identity>
    <servicePrincipalName value="ServerName1" />
</identity>
From stackoverflow
  • The name of the user you wish the service to user (execute under). So if you want to execute it under 'local network' credentials the above XML should look like:

    <identity>
        <servicePrincipalName value="Local Network" />
    </identity>
    
  • Configuring servicePrincipleName is a difficult topic to describe it in a few words Perhaps these articles will help http://msdn.microsoft.com/en-us/library/bb628618.aspx http://msdn.microsoft.com/en-us/magazine/cc163570.aspx#S6

    Most probably, you need to configure it the following way

    <identity>
        <servicePrincipalName value="HOST/ServerName1:9990" />
    </identity>
    

    We usually use userPrincipalName instead of servicePrincipalName, like this

    <identity>
      <userPrincipalName value="account@domain.com" />
    </identity>
    

0 comments:

Post a Comment

Note: Only a member of this blog may post a comment.