首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有安全模式的pollingDuplexHttpBinding TransportWithMessageCredential。来自服务器的响应不会到达客户端

具有安全模式的pollingDuplexHttpBinding TransportWithMessageCredential。来自服务器的响应不会到达客户端
EN

Stack Overflow用户
提问于 2012-01-24 19:28:04
回答 1查看 827关注 0票数 0

我们在安全模式TransportWithMessageCredential.中使用SSL上的pollingDuplexHttpBinding。服务从客户端接收消息,但客户端没有得到响应。

如果我们将安全模式从TransportWithMessageCredential更改为传输模式,则所有的工作方式都很好。

工作配置

要显示的注释不起作用配置。

服务配置

代码语言:javascript
复制
<behaviors>
  <serviceBehaviors>
    <behavior name="">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
      <!--
      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom" 
                                customUserNamePasswordValidatorType="myType" />
      </serviceCredentials>
      -->
    </behavior>
  </serviceBehaviors>
</behaviors>

<bindings>
  <pollingDuplexHttpBinding>
    <binding name="multipleMessagesPerPollPollingDuplexHttpBinding"
              duplexMode="SingleMessagePerPoll">
      <!--
      <security mode="TransportWithMessageCredential" />
      -->
      <security mode="Transport" />
    </binding>
  </pollingDuplexHttpBinding>
</bindings>

<services>
  <service name="Gam.Service.GamSrv">
    <endpoint
        address=""
        binding="pollingDuplexHttpBinding"
        bindingConfiguration="multipleMessagesPerPollPollingDuplexHttpBinding"
        contract="Gam.Service.Abstract.IUserSrv" />
    <endpoint
        address="mex"
        binding="mexHttpBinding"
        contract="IMetadataExchange" />
  </service>
</services>

SilverLight 4客户端配置

代码语言:javascript
复制
<bindings>
  <customBinding>
    <binding name="pd">
      <!--
      <security authenticationMode="UserNameOverTransport" />
      -->
      <pollingDuplex duplexMode="SingleMessagePerPoll" />
      <binaryMessageEncoding />
      <httpsTransport transferMode="Buffered" />
    </binding>
  </customBinding>
</bindings>
<client>
  <endpoint address="/GamSrv.svc"
    binding="customBinding"
    bindingConfiguration="pd"
    contract="GamSrvReference.IUserSrv"
    name="MyDuplexContract" />
</client>
EN

回答 1

Stack Overflow用户

发布于 2012-01-25 07:13:15

解决方案-在客户端安全配置中添加includeTimestamp="false“

代码语言:javascript
复制
<security authenticationMode="UserNameOverTransport" includeTimestamp="false" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8992826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档