最近的系统要求较高的安全等级

https+usbkey证书

https的操作很简单

openssl 生成ca 和证书,配置启动即可

生成成功后,类似这样。

类似这样

var options = {
key: fs.readFileSync(__dirname + '/server.key'),
cert: fs.readFileSync(__dirname+'/server.pem'),
ca: fs.readFileSync(__dirname+'/ca.crt'),
auth:"1CUI"
};
 server =https.createServer(options, app).listen(app.get('port'), function() {
console.log('Express server listening on port ' + server.address().port);
}); app.close = function (callback) {
server.close(callback);
}

但验证客户端证书,网上查不到现成的

没办法了,查官方文档。

https://nodejs.org/api/https.html#https_https_createserver_options_requestlistener

https://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener

找到了配置客户端证书的额外参数

requestCert:true  //请求客户端证书

rejectUnauthorized:true //如果没有请求到客户端来自信任CA颁发的证书,拒绝客户端的连接

添加重新web服务。果断连接不上了

Chrome报错

SSL 连接出错

ERR_SSL_PROTOCOL_ERROR
隐藏详细信息
无法与服务器建立安全连接。可能是服务器出现了问题,也可能是您没有服务器要求的客户端身份验证证书。
 
但这就表示目的达到了,接下来,只要安装客户端证书即可。
 
客户端证书添加完毕,则最后一步,是将证书“迁移”到USBKEY内验证
 
未完, 碰到其他问题

nodejs 客户端证书设置。的更多相关文章

  1. 【Azure API 管理】在APIM中使用客户端证书验证API的请求,但是一直提示错误"No client certificate received."

    API 管理 (APIM) 是一种为现有后端服务创建一致且现代化的 API 网关的方法. 问题描述 在设置了APIM客户端证书,用户保护后端API,让请求更安全. 但是,最近发现使用客户端证书的API ...

  2. tomcat 配置客户端证书认证

    在完成配置客户端证书认证后,浏览器以https访问服务器的时候,会提示选择证书,之后,服务器端会验证证书.也就意味着只有拥有有效证书的客户端才能打开该网站. 以下是具体的配置过程. 1. 在服务器端生 ...

  3. iis https 客户端证书

    1.自建根证书 makecert -r -pe -n "CN=WebSSLTestRoot" -b 12/22/2013 -e 12/23/2024 -ss root -sr lo ...

  4. curl+个人证书(又叫客户端证书)访问https站点

    摘自http://blog.csdn.net/chary8088/article/details/22990741 curl+个人证书(又叫客户端证书)访问https站点 目前,大公司的OA管理系统( ...

  5. C#在服务端验证客户端证书(Certificate)

    使用https协议进行通讯的时候可以设置双向证书认证,客户端验证服务端证书的方法前面已经介绍过了,现在说一下在服务端验证客户端证书的方案. 这里给出的方案比较简单,只需要在Service端的配置文件中 ...

  6. node.js – 服务器端的客户端证书验证,DEPTH_ZERO_SELF_SIGNED_CERT错误

    我正在使用节点0.10.26并尝试建立与客户端验证的https连接. 服务器代码: var https = require('https'); var fs = require('fs'); proc ...

  7. fiddler工具介绍及证书设置

    fiddler 目录 1.Fiddler介绍 01.介绍 02.简单使用 03.结果状态码 介绍完了,接下来就到证书了 2.Fiddler证书设置 这就是fiddler证书设置的全部步骤了 1.Fid ...

  8. 基于CFSSL工具创建CA证书,服务端证书,客户端证书

    背景描述 在局域网中部署组件时,想要通过证书来实现身份的认证,确保通信的安全性,可以通过cfssl工具来进行CA证书,服务端证书,客户端证书的创建. 目录 背景描述 部署cfssl工具 下载,上传cf ...

  9. Linux OpenVPN 服务端吊销(revoke)客户端证书

    (转自:https://www.xiaohui.com/dev/server/20070904-revoke-openvpn-client.htm) OpenVPN 服务器与 VPN 客户端之间的身份 ...

随机推荐

  1. Maven - No plugin found for prefix 'tomcat7' in the current project

    问题发现: 在构建Maven项目的时候,出现了No plugin found for prefix 'tomcat7' in the current project的错误. 是需要在Maven的Pom ...

  2. Dynamics CRM - 在 C# Plugin 里以 System Administrator 权限来更新 Entity

    场景说明: 1.在使用 CRM 系统时,经常会有需要在某个 Entity 下对其他 Entity 的 Record 进行更新,或者在 post 中对自身进行更新,这里就需要用到 SDK 上的 upda ...

  3. Json返回结果为null属性不显示解决

    import java.io.IOException; import org.springframework.boot.autoconfigure.condition.ConditionalOnMis ...

  4. shift+alt 可对notepadplusplus 打开的文档进行列操作

    shift+alt 可对notepadplusplus 打开的文档进行列操作

  5. java 用condition&reentrylock实现生产者消费者

    package com.lb; import java.util.ArrayList; import java.util.List; import java.util.concurrent.locks ...

  6. Django专题-AJAX

    AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JS ...

  7. centos 7搭建 strongSwan

    https://blog.csdn.net/sqzhao/article/details/76093994

  8. HTTP协议解析小白文

    1. 什么是HTTP协议? HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本 ...

  9. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  10. AI精灵

    由于使用的CRM系统是Aras Innovator系统,所有的任务分配必须登入系统查看,故做出以下自动接受任务信息的小工具. 1.登入,实现自动记录上次登入的信息,支持多账户   登入成功后会以图标运 ...