• 关于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" 如:

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

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

  • 相关阅读:
    python requests模块
    python 模拟豆瓣登录(豆瓣6.0)
    python 抓取糗事百科糗图
    python bz2模块
    the python challenge闯关记录(9-16)
    python之PIL库(Image模块)
    python之zipfile
    python之pickle模块
    the python challenge闯关记录(0-8)
    KVO简介
  • 原文地址:https://www.cnblogs.com/mylydg/p/5749077.html
Copyright © 2020-2023  润新知