基于证书验证的WCF服务部署到云服务器报错

程序包括IIS托管的服务端和客户端,通过证书进行加密,服务端和客户端各自带有一个证书和私钥,在内网服务器上测试正常,客户端能够调用服务端数据,但是服务端发布到阿里云之后客户端提示以下错误:

************** 异常文本 **************
System.ServiceModel.Security.SecurityNegotiationException: 无法打开安全通道,因为与远程终结点的安全协商已失败。这可能是由于用于创建通道的 EndpointAddress 中不存在 EndpointIdentity 或错误指定了 EndpointIdentity。请确认由 EndpointAddress 指定或暗示的 EndpointIdentity 正确标识了远程终结点。 ---> System.ServiceModel.FaultException: 对安全令牌的请求具有无效或格式不正确的元素。
在 System.ServiceModel.Security.SecurityUtils.ThrowIfNegotiationFault(Message message, EndpointAddress target)
在 System.ServiceModel.Security.SspiNegotiationTokenProvider.GetNextOutgoingMessageBody(Message incomingMessage, SspiNegotiationTokenProviderState sspiState)
--- 内部异常堆栈跟踪的结尾 ---

云服务器是windows server 2016数据中心版,本地服务器是win10,浏览器可以正常浏览云端的svc文件,程序向云服务器和本地服务器发布都是ftp直接发布,证书也一样,客户端分别对两个服务器重新添加引用得到的identity节点下的certificate encodedValue值都是一样的。把客户端上传到云服务器,分别用网址、公网IP和内网IP标记endpoint address进行连接全都报上面的错误。客户端identity节点下只有一个引用时生成的certificate encodedValue,没有其他内容和dns节点。请教各位高手在云服务器上出现的问题到底是什么原因?

c#

1个回答

问题无法及时解决,已更换为website方案

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐