【问题标题】:WCF wsHttpBinding with certificate authentication on multiple machinesWCF wsHttpBinding 在多台机器上进行证书身份验证
【发布时间】:2010-06-30 11:30:58
【问题描述】:

我有使用 wsHttpBinding 和证书身份验证的 WCF 服务。

我在多台机器上运行此服务,我的防火墙将请求路由到不同的服务器。

问题是当客户端打开代理并与一台服务器一起工作时,在下一次调用时防火墙将请求路由到另一台服务器时,我在客户端上遇到异常:

不安全或不正确的安全 收到对方的故障 派对。查看内部的 FaultException 获取故障代码和详细信息。

内部异常:

无法处理该消息。 这很可能是因为该操作 'http://www.site.com/api/contract/IService/DoAction' 不正确或因为消息 包含无效或过期的 安全上下文令牌或因为 绑定之间不匹配。 安全上下文令牌将是 如果服务中止,则无效 由于不活动而导致的频道。阻止 中止空闲的服务 会议过早地增加 接收服务超时 端点的绑定。

有什么解决办法吗?

【问题讨论】:

  • 回答:找到解决方案 - 使用:建立安全上下文="false"

标签: c# wcf wcf-security


【解决方案1】:

使用:建立SecurityContext="false"

  <security mode="Message">            
    <message clientCredentialType="Certificate" negotiateServiceCredential="false"
      algorithmSuite="Default" establishSecurityContext="false" />
  </security>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 2023-03-29
    • 2011-04-09
    • 2013-10-07
    相关资源
    最近更新 更多