zoukankan      html  css  js  c++  java
  • 关于WCF报错之调用方未由服务器进行身份验证

    在我们部署好WCF服务以后,调用WCF服务会出现”调用方未由服务器进行身份验证”的错误。这个错误是怎么造成的呢?

    通常我们在创建WCF后,用本机调试,一切正常,没有任何问题。其实用本机测试的时候,服务端和客户端是默认建立了一个身份认证。而我们将WCF部署在其他服务端上后,

    这样的身份验证便不再存在。因此,系统便会报调用方未由服务器进行身份验证的错误。这个问题怎么解决呢?

    解决方法:

    1、在WCF的服务端配置文件和客户端配置文件中声明一段Bindings

        <bindings>
          <wsHttpBinding>
            <binding name="NoneSecurity"  maxBufferPoolSize="12000000" maxReceivedMessageSize="12000000" useDefaultWebProxy="false">
              <readerQuotas maxStringContentLength="12000000" maxArrayLength="12000000"/>
              <security mode="None"/>
            </binding>
          </wsHttpBinding>
        </bindings>

    ps:这段xml要放在 <system.serviceModel>下

    2、在WCF服务端配置文件的endpoint节点中加入绑定属性 bindingConfiguration="NoneSecurity" 如:

    PS:bindingConfiguration的值为binding的name,这个name可以取任意名字

    3、在WCF的客户端配置文件中也要加入绑定属性 bindingConfiguration="NoneSecurity" 如:

    设置完成后,再次运行,错误消失。服务正常运行。

    注意:此方法仅适用于没有什么安全性需求的服务设置。如果对安全性有要求,谨慎使用!!!

  • 相关阅读:
    nodewebkit系列(00):什么是nodewebkit?
    浅析Chrome Packaged Apps
    C#实现飞信短信发送
    结束——2012年微软精英挑战赛
    Vue开发笔记 — Vue项目结构
    TOGAF
    笔记本安装CentOS8
    架构设计的10个核心原则
    Vue PDF文件预览vuepdf
    Druid中使用log4j2进行日志输出
  • 原文地址:https://www.cnblogs.com/mylydg/p/5749077.html
Copyright © 2011-2022 走看看