2 c850391642 c850391642 于 2016.03.25 19:27 提问

服务器A访问服务器B没有携带https客户度证书

我有个wcf程序部署在在iis,它会请求另外的服务器B,并携带一个客户端证书(证书是安装在电脑上面的),
我部署在自己的电脑上面win10,能正常访问另外的服务器B,
我部署在服务器winservice08 ,就不能正常发起另外的服务器B,
我通过抓包工具发现,他是没有携带 https 的客户端证书,所以服务器B断开连接了。

2个回答

oyljerry
oyljerry   Ds   Rxr 2016.03.25 20:39

那你的程序是如何提交证书来发送请求的

c850391642
c850391642 我不太会用csdn
2 年多之前 回复
c850391642
c850391642 request = (HttpWebRequest)System.Net.WebRequest.Create(uri); X509Certificate cert = new X509Certificate(certificateFilePath, certificatePassword); request.ClientCertificates.Add(cert);
2 年多之前 回复
c850391642
c850391642 request = (HttpWebRequest)System.Net.WebRequest.Create(uri); X509Certificate cert = new X509Certificate(certificateFilePath, certificatePassword); request.ClientCertificates.Add(cert);
2 年多之前 回复
c850391642
c850391642 request = (HttpWebRequest)System.Net.WebRequest.Create(uri); X509Certificate cert = new X509Certificate(certificateFilePath, certificatePassword); request.ClientCertificates.Add(cert);
2 年多之前 回复
c850391642
c850391642   2016.03.26 11:06
                    request = (HttpWebRequest)System.Net.WebRequest.Create(uri);
        X509Certificate cert = new X509Certificate(certificateFilePath, certificatePassword);
        request.ClientCertificates.Add(cert);

程序中是这样带证书的,但如果我不把证书安装在本地,这样带来证书也是验证不通过,只有程序携带和电脑安装都行才可以正常访问。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
客户端用https连接服务器证书问题
项目需要用https与服务器进行连接,获取系统需要的一些配置参数。以前是用http进行连接的,客户端代码比较简单,直接使用URL类进行连接并获取输入流即可。试着在浏览器中输入相应的https连接地址,提示证书确认,确认以后就访问到内容了。    改成https以后碰到了一些问题。原以为Java可能已经封装好了,所以把直接把原来的http连接改成https,结果抛出异常:java.lang.Uns
https 证书生产及服务器配置
https 自签名证书,keytool, tomcat配置,httpclient
Https协议的使用--服务器端和客户端
文章内容 1.Web服务器(tomcat)端配置 2.客户端(HttpClient)实现(Get/Post) 1.Web服务器(tomcat)端配置 1.1.服务器证书生成 使用keytool按照提示创建一个证书,如果以后真正在产品环境中使用肯定要去证书提供商去购买,证书认证一般都是由VeriSign认证,中文官方网站:http://www.verisign.com/cn/,需要注意
【MFC】https post 出现证书无效问题
做项目时,https post 请求服务,但服务器没有证书,调用微软  CInternetSession  \ CInternetConnection \ CInternetFile 这些类,然后设置 SECURITY_FLAG_IGNORE_UNKNOWN_CA 等参数(可参考:http://blog.csdn.net/xl19900502/article/details/5015414
https :如何使用HttpClient来发送带客户端证书的请求,以及如何忽略掉对服务器端证书的校验
 最近要做客户端和服务器端的双向认证,在客户端向服务器端发送带证书的请求这里有一点问题,网上的例子大多都不太好使,于是找了github上httpclient源代码中的例子改造了一下,终于弄明白了 github上我参考的例子在:https://github.com/apache/httpclient/blob/4.5.x/httpclient/src/examples/org/apache/htt...
如何要求客户端出示“客户端证书”后,才能访问网站
一、设置服务器安全通信“要求客户端证书”。 此时如果客户端未安装相关证书,则出现“需要客户证书界面“ 二、申请客户证书(通过证书管理网站,添入个人相关信息:姓名、密钥用法、密钥大小等)   三、管理员颁发证书 四、安装证书 五、使用证书访问网站时,系统会弹出“选择数字证书“对话框,确定后就可以访问网站了
https 客户端和服务器的证书必须是同一个
如果用相同的命令(完全一样)生成的俩证书,一个在客户端使用, 一个在服务器端调用 那么在验证的过程中也会失败 sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: signature check failed
HTTPS 客户端验证 服务端证书流程
网上的文章很多, 但是对摘要的验证流程不够通俗易懂。 QQ截图20160420114804.png 证书预置和申请 1:客户端浏览器会预置根证书, 里面包含CA公钥 2:服务器去CA申请一个证书 3: CA用自己的签名去签一个证书,指纹信息保存在证书的数字摘要里面, 然后发送给服务器 一次访问流程(简化) 1: 客户端 sayHello 2: 服务器
HttpClient如何访问需要提交客户端证书的SSL服务
1.1 问题背景 自从***一期工程上了CA认证网关之后,在访问受CA认证网关保护的应用子系统时,必须提交客户端证书。那么问题来了,如果是人工(通过IE浏览器)访问子系统自然没问题,访问时会提示选择证书,输入PIN码等等,照做即可。但是如果是应用程序去访问呢?例如,A子系统提供了外部接口程序,由于受到CA认证网关的“保护”,外部程序如何访问A子系统的接口呢? 1.2 问题分析 应用程序自然没
在Linux服务器上部署Apache和https证书
1、下载证书: , 打开阿里云管理控制台,找到证书服务,点击下载进入证书下载页面 在下载页面选择相应的Web容器进行相应证书下载。