tags:

views:

37

answers:

1

I keep getting this error when connecting to my web service

The identity check failed for the outgoing message. The expected identity is 'identity(http://schemas.xmlsoap.org/ws/2005/05/identity/right/possessproperty: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn)' for the 'http://qbes:3790/Bullfrog/QBService/QBService' target endpoint.

The only time I can get it to work is if I set my identity to my email address. I don't know why this works I was just trying things and it worked. But when I publish the client app to my web server that email identity no longer works and I get the same error. What am I doing wrong here? Here is my config section. Thank you!!!

 <system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="WSHttpBinding_IQBService" closeTimeout="00:01:00"
        openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
        bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
        maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
        messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
        allowCookies="false">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
          maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <reliableSession ordered="true" inactivityTimeout="00:10:00"
          enabled="false" />
      <security mode="Message">
        <transport clientCredentialType="Windows" proxyCredentialType="None"
            realm="" />
        <message clientCredentialType="Windows" negotiateServiceCredential="true"
            algorithmSuite="Default" />
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<client>
  <endpoint address="http://QBES:3790/Bullfrog/QBService/QBService"
      binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IQBService"
      contract="IQBService" name="WSHttpBinding_IQBService">
    <identity>
      <userPrincipalName value="twaldron.Bullfrogspas" />
    </identity>
  </endpoint>
</client>

+2  A: 

Your client endpoint configuration specifies expected identity of the service. User principal name identity checks the user account used to run the service. The account has to be specified in UPN format which is indeed the same format as email: userName@domain. I expect that the service is running under your user account so that it is the reason why it works when you type your email.

Ladislav Mrnka
Great thanks for the clarification. so the next part of my question is this. When I publish the client to my webserver in the DMZ I am getting another error message saying: SOAP security negotiation failed The Security Support Provider Interface (SSPI) negotiation failedOf course this has to do with this identity. So what steps do I need to take to get this client in the dmz to talk to service.
twal
Your DMZ is not in domain, isn't it?
Ladislav Mrnka
you are correct it is not in the same domain.
twal
Thank you, I will start a new thread for my new problems as it is a different question.
twal