📅  最后修改于: 2023-12-03 15:03:14.826000             🧑  作者: Mango
在 Node.js 中,x509.issuer 属性是一个表示 X.509 证书颁发者的对象。它通常用于验证证书是否由可信的颁发者颁发。
certificate.issuer
其中,certificate 是一个 X.509 证书对象。
x509.issuer 属性返回一个对象,包含以下属性:
const https = require('https');
const fs = require('fs');
const options = {
key: fs.readFileSync('example.com.key'),
cert: fs.readFileSync('example.com.crt')
};
https.createServer(options, (req, res) => {
const cert = req.socket.getPeerCertificate();
console.log(cert.issuer);
res.end('Hello, world!');
}).listen(443);
以上示例中,我们创建了一个 https 服务器,当有客户端连接时打印该客户端证书的颁发者信息。其中,cert.issuer 表示证书颁发者的对象。
const https = require('https');
const fs = require('fs');
const options = {
key: fs.readFileSync('example.com.key'),
cert: fs.readFileSync('example.com.crt')
};
https.createServer(options, (req, res) => {
const cert = req.socket.getPeerCertificate();
if (cert.issuer.CN !== 'My Trusted CA') {
res.writeHead(403);
res.end('Invalid certificate');
return;
}
res.end('Hello, world!');
}).listen(443);
以上示例中,我们创建了一个 https 服务器,当有客户端连接时验证该客户端证书的颁发者是否为一个名为 My Trusted CA 的可信颁发者。如果不是,将返回 403 响应并结束请求。