加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

OVM webservice 在winform中引用

发布时间:2020-12-17 00:59:46 所属栏目:安全 来源:网络整理
导读:开始按照文档中的 https://.../OVSWS/VirtualMachineService.wsdl 引入服务,代理类生成成功了, 但是自动生成的配置没有生成endpoint,手工配置上去,结果还是报错。 后面随便试试,发现使用 https://.../OVSWS/VirtualMachineServiceSoapHttpPort?WSDL 生

开始按照文档中的

https://.../OVSWS/VirtualMachineService.wsdl 引入服务,代理类生成成功了,

但是自动生成的配置没有生成endpoint,手工配置上去,结果还是报错。


后面随便试试,发现使用

https://.../OVSWS/VirtualMachineServiceSoapHttpPort?WSDL

生成代理类和配置都OK了

但是还是验证不成功,后面反复调整参数,修改transport的 clientCredentialType为Basic级OK了。



<system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="VirtualMachineServiceSoapHttp" closeTimeout="00:01:00"
                    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                    maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                    messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                    useDefaultWebProxy="true">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <security mode="Transport">
                        <transport clientCredentialType="Basic" proxyCredentialType="None"
                            realm="webservices" />
                        <message clientCredentialType="UserName" algorithmSuite="Default" />
                    </security>
                </binding>
                <binding name="VirtualMachineServiceSoapHttp1" closeTimeout="00:01:00"
                    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                    maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                    messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                    useDefaultWebProxy="true">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <security mode="None">
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="webservices" />
                        <message clientCredentialType="UserName" algorithmSuite="Default"  />
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="https://124.225.135.128:4443/OVSWS/VirtualMachineServiceSoapHttpPort"
                binding="basicHttpBinding" bindingConfiguration="VirtualMachineServiceSoapHttp"
                contract="OVM.VirtualMachineService" name="VirtualMachineServiceSoapHttpPort" />
        </client>
         </system.serviceModel>


另外,为了https可以验证成功,需增加下面代码


?? public bool CheckValidationResult(object sender,X509Certificate certificate,X509Chain chain,System.Net.Security.SslPolicyErrors errors) ??????? {?? // 总是接受 ? ??????????? return true; ??????? } ??? ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读