📜  Node.js x509.subject 属性(1)

📅  最后修改于: 2023-12-03 15:17:56.324000             🧑  作者: Mango

Node.js x509.subject 属性

在 Node.js 中,x509.subject 属性表示使用 HTTPS 时连接到服务器的 SSL/TLS 证书主题信息。该属性是一个对象,包含有关证书主题的信息,例如 CN (common name),C (country),O (organization),OU (organizational unit) 等。

获取 x509.subject 属性

要获取 x509.subject 属性,需要在 https.createServer() 方法中添加一个回调函数,并在回调函数中访问 request.connection.getPeerCertificate()方法。以下是一个示例代码片段:

const https = require('https');
const options = {
  key: privateKey,
  cert: certificate
};

https.createServer(options, (req, res) => {
  const subject = req.connection.getPeerCertificate().subject;
  console.log(subject);
  res.end("Hello World!");
}).listen(3000);
x509.subject 属性的返回值

x509.subject 属性返回的是一个对象,包含一个或多个键值对,表示证书主题中的各个字段。以下是一个示例返回值:

{
  "CN": "example.com",
  "C": "US",
  "ST": "CA",
  "L": "Los Angeles",
  "O": "Example Inc.",
  "OU": "IT Department",
  "emailAddress": "info@example.com"
}

可以使用以下代码来访问其中的一个字段:

const commonName = subject.CN;

或者,也可以使用以下方式来访问其中的一个字段:

const commonName = subject['CN'];
参考文献