2011-06-24 1 views
4

J'essaye de placer le maxClockSkew de mon service de WCF à quelque chose de plus haut que 5 minutes (défaut) mais je ne réussis pas. Il semble que quelque chose ne va pas lorsque je veux le configurer avec authenticationMode = "UserNameOverTransport". J'ai besoin de cela parce que mon serveur fonctionne sous https et je vais authentifier l'utilisateur en utilisant un fournisseur d'authentification personnalisé. Il n'y a pas d'erreurs sur l'initialisation du serveur, mais la valeur ne change pas de 5 minutes (00:05:00) ... Et je reçois toujours le message ennuyeux du côté client disantmaxClockSkew n'atteint pas plus de 5 minutes?! (Même si je l'ai défini explicitement)

L'horodatage de sécurité est invalide parce que son heure de création ('2011-06-24T15: 31: 22.338Z') est dans le futur. L'heure actuelle est «2011-06-24T15: 21: 30.923Z» et l'obliquité de l'horloge est «00: 05: 00».

Ici vous pouvez voir tout mon fichier de configuration de service:

<?xml version="1.0"?> <configuration> 
<system.web> 
    <compilation debug="true"/> 
</system.web> 
<system.serviceModel> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"> 
    </serviceHostingEnvironment> 
    <services> 
     <service name="MYSERVICE"> 
      <endpoint address="" binding="customBinding" bindingConfiguration="HTTP" contract="MYCONTRACT"> 
       <identity> 
        <dns value="https://localhost"/> 
       </identity> 
      </endpoint> 
      <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/> 
      <host> 
       <baseAddresses> 
        <add baseAddress="https://localhost/service"/> 
       </baseAddresses> 
      </host> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
      <behavior> 
       <serviceMetadata httpGetEnabled="False" httpsGetEnabled="True" /> 
       <serviceDebug includeExceptionDetailInFaults="False"/> 
       <serviceCredentials> 
        <userNameAuthentication userNamePasswordValidationMode="Custom" 
         customUserNamePasswordValidatorType="CUSTOMServiceCredentialsValidator, ASSEMBLY" /> 
       </serviceCredentials> 
      </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <bindings> 
     <customBinding> 
      <binding name="HTTP"> 
       <transactionFlow /> 
       <textMessageEncoding> 
        <readerQuotas maxStringContentLength="2147483647"/> 
       </textMessageEncoding> 
       <security authenticationMode="SecureConversation"> 
        <localClientSettings maxClockSkew="00:10:00"/> 
        <localServiceSettings maxClockSkew="00:10:00"/> 
        <secureConversationBootstrap authenticationMode="UserNameOverTransport"> 
         <localClientSettings maxClockSkew="00:10:00"/> 
         <localServiceSettings maxClockSkew="00:10:00"/> 
        </secureConversationBootstrap> 
       </security> 
       <httpsTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"/> 
      </binding> 
     </customBinding> 
    </bindings> 
</system.serviceModel> 
<startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
</startup> 

Qu'est-ce que je manque? Est-ce que quelqu'un a fait face à ce problème? Je n'ai pas trouvé beaucoup de gens face à cette situation.

Merci à l'avance

Pedro

Répondre

Questions connexes