Link to home
Start Free TrialLog in
Avatar of bswiftly
bswiftly

asked on

WCF Server Config - "Invalid or expired security context"

So, in my dev environment my tests to my local service works but when I deploy it - I get the following error on my unit tests (Automated build server spits this exception out).

"System.ServiceModel.FaultException : The message could not be processed. This is most likely because the action 'http://tempuri.org/IUserTasks/GetUsers' is incorrect or because the message contains an invalid or expired security context token or because there is a mismatch between bindings. The security context token would be invalid if the service aborted the channel due to inactivity. To prevent the service from aborting idle sessions prematurely increase the Receive timeout on the service endpoint's binding."

Dev env. is Vista w/  VS2008,
Published to  an XP IIS 5.1 box  with .net 3.5 sp1 installed.

The following are my config files and I am not sure if it is a config issue preventing this communication or if its my machine security.  I know I shouldn't need any certificates as I'm explicitly declaring no security for the service and client.  

Any Ideas?
Server Config -------
 
 <system.serviceModel>
    <bindings>
      <wsHttpBinding>
        <binding name="WsHTTPBinding_IUserTasksBindingConfiguration"  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="None">
            <transport clientCredentialType="None" proxyCredentialType="None"
                realm="" />
            <message clientCredentialType="None" negotiateServiceCredential="false"
                establishSecurityContext="false" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    <services>
      <service name="SwiftToDo.Services.UserTasksServiceType"  behaviorConfiguration="UserTasksServiceTypeBehaviour">
        <!-- Service Endpoints -->
        <endpoint address="" 
                  binding="wsHttpBinding" 
                  contract="SwiftToDo.Services.IUserTasks"
                  bindingConfiguration="WsHTTPBinding_IUserTasksBindingConfiguration">
        </endpoint>
      </service>
      
    </services>
    <behaviors>
      <serviceBehaviors>
        
        <behavior name="UserTasksServiceTypeBehaviour" >
          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
          <serviceMetadata httpGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="true" />
          <serviceTimeouts transactionTimeout="00:01:00"/>
          
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
 
 
 
 
 
Client------
 
 <system.serviceModel>
    <client>
      <endpoint address="http://brettlaptop/SwiftToDo/Service.svc" 
                   binding="wsHttpBinding"
                   bindingConfiguration="WsHTTPBinding_IUserTasksBindingConfiguration"
                   contract="SwiftToDo.Services.IUserTasks"
                   name="wsHttpBinding_IUserTasks"/>
 
    </client>
    <bindings>
      <wsHttpBinding>
        <binding name="WsHTTPBinding_IUserTasksBindingConfiguration"  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="None">
            <transport clientCredentialType="None" proxyCredentialType="None"
                realm="" />
            <message clientCredentialType="None" negotiateServiceCredential="false"
                establishSecurityContext="false" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
  </system.serviceModel>

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Darren
Darren
Flag of Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial