使用证书创建request请求
之前写过的程序,都是普通http request。
这是第一次使用,记录下。
1 private static X509Certificate2 GetCert(string certId,StoreLocation location) 2 { 3 X509Certificate2 result = null; 4 X509Store certStore; 5 certStore = new X509Store(StoreName.My, location); 6 certStore.Open(OpenFlags.OpenExistingOnly | OpenFlags.ReadOnly); 7 8 try 9 { 10 X509Certificate2Collection set = certStore.Certificates.Find( 11 X509FindType.FindByThumbprint, certId, true); 12 13 if (set.Count > 0 && set[0] != null && set[0].HasPrivateKey) 14 { 15 result = set[0]; 16 } 17 } 18 finally 19 { 20 certStore.Close(); 21 } 22 23 return result; 24 }
说明:
命名空间:
using System.Security.Cryptography.X509Certificates;
certID:
证书含有一个指纹(thumbprint),就是certId。在证书的detail中可以查看,注意他们之间的空格,很容易copy错误;
Location:
两个类别:
CurrentUser,LocalMachine。命令行mmc然后找到证书管理。
调用:
req = WebRequest.CreateHttp(url);
// add in the cert we'll authenticate with
req.ClientCertificates.Add(GetCert(thumbprint,StoreLocation.CurrentUser));
这样就创建了一个需要证书的请求。
转载于:https://www.cnblogs.com/shy-huang/p/6737517.html
使用证书创建request请求相关推荐
- Confluence 6 通过 SSL 或 HTTPS 运行 - 创建或请求一个 SSL 证书
在启用 HTTPS 之前,你需要一个有效的证书,如果你已经有了一个有效的证书,你可以直接跳过这个步骤,进入 step 2. 你可以创建一个自签名的证书,或者从信任的 Certificate Autho ...
- C#创建https请求并使用pfx证书
常规情况下创建Web请求,并获取请求数据的代码如下: WebRequest req = WebRequest.Create(url); req.Timeout = 15000; WebResponse ...
- Kubernetes学习之路(一)之概念和架构解析和证书创建和分发
1.Kubernetes的重要概念 转自:CloudMan老师公众号<每天5分钟玩转Kubernetes>https://item.jd.com/26225745440.html Clus ...
- iOS 用自签名证书实现 HTTPS 请求的原理实例讲解
在16年的WWDC中,Apple已表示将从2017年1月1日起,所有新提交的App必须强制性应用HTTPS协议来进行网络请求.默认情况下非HTTPS的网络访问是禁止的并且不能再通过简单粗暴的向Info ...
- SpringMVC4.x源码分析(五):request请求寻址HandlerMethod原理
2019独角兽企业重金招聘Python工程师标准>>> mvc:annotation-driven会将每一个Controllor内的被@RequestMapping注解标注的方法解析 ...
- 【OkHttp】OkHttp 源码分析 ( 同步 / 异步 Request 请求执行原理分析 )
OkHttp 系列文章目录 [OkHttp]OkHttp 简介 ( OkHttp 框架特性 | Http 版本简介 ) [OkHttp]Android 项目导入 OkHttp ( 配置依赖 | 配置 ...
- Java-Web Response响应和Request请求
一.请求响应流程图 二.response概述 response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServletResponse.在客户 ...
- 如何多次读取request请求里的数据
问题场景 : 我们一般直接获取request请求里的参数进行数据处理,现在想在过滤器里获取请求参数并打印,方便做日志排查. 但是POST请求中的参数是存储在流中的,只能读一次,无法多次读取. 解决办法 ...
- 微信小程序php get_php处理微信小程序request请求
微信小程序的js后台只能执行一些简单的逻辑,遇到比较复杂的处理表单数据的功能或者网络功能就需要连接服务器来远程处理,实现方式就是调用小程序的wx.request()这一接口. 小程序端 request ...
最新文章
- js 求时间差 字符串转化为日期
- 605. 种花问题003(贪心算法+思路+详解)
- 当前目标 1614868689
- photoshop cs6 安装过程 0920
- 在DataTable和DataView中查找指定记录
- 『nForce主板』巧妙去掉“安全删除硬盘”图标!
- 你要的《高性能MySQL》.pdf
- php小h站视频系统源码,苹果cms v10x 原创自适应x站h站源码 视频模板 带试看功能 带自动采集YM源码...
- [转载]视频格式介绍
- 微信公众号开发-账号类型
- 解决pip3 install waring ‘The script xxx is installed in ‘/home/xxx/bin‘ which is not on PATH‘
- 超级计算机在天文学的应用,破世界记录:交大π2.0超算系统实现天文学N体模拟粒子数新突破...
- ios epub电子书阅读器demo
- mysql的url参数_mysql-url参数
- 2018 Intellij IDEA 最新旗舰版注册激活破解
- 数据包络分析--SBM Model(第二篇)
- 恢复被流氓病毒隐藏为系统文件的常规文件
- 有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000006A6311F318 处。
- Windows Server 2012 蓝屏 Wpprecorder.sys 故障
- 硅谷女性成功的五大秘诀
热门文章
- 【Java从0到架构师】MyBatis - 查询
- 【实习之T100开发】Genero FGL (TIPTOP4GL) 学习笔记(1)
- 【jQuery笔记Part1】05-jQuery解决冲突
- 面试数据分析岗,怎么提升一倍成功率?让过来人给你支支招
- 如何利用FineBI做财务分析
- linux文件恢复dbf,linux平台下数据文件被误删后,如何及时得知并进行恢复-dbf文件怎么打开...
- 线性回归与梯度下降算法
- java epoch time_Java LocalDate ofEpochDay()用法及代码示例
- C-Wandering Robot 模拟
- 【caffe-windows】 caffe-master 之 matlab接口配置