node-opcua-server-configuration 2.166.0 → 2.167.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/clientTools/push_certificate_management_client.d.ts +2 -2
- package/dist/clientTools/push_certificate_management_client.js +9 -2
- package/dist/clientTools/push_certificate_management_client.js.map +1 -1
- package/dist/server/install_push_certitifate_management.d.ts +2 -6
- package/dist/server/install_push_certitifate_management.js +52 -86
- package/dist/server/install_push_certitifate_management.js.map +1 -1
- package/dist/server/promote_trust_list.js +31 -2
- package/dist/server/promote_trust_list.js.map +1 -1
- package/dist/server/push_certificate_manager/create_signing_request.js +3 -3
- package/dist/server/push_certificate_manager/create_signing_request.js.map +1 -1
- package/dist/server/push_certificate_manager/update_certificate.js +12 -3
- package/dist/server/push_certificate_manager/update_certificate.js.map +1 -1
- package/dist/server/push_certificate_manager_helpers.js +3 -3
- package/dist/server/push_certificate_manager_helpers.js.map +1 -1
- package/dist/server/trust_list_server.js +9 -3
- package/dist/server/trust_list_server.js.map +1 -1
- package/package.json +23 -23
- package/source/clientTools/push_certificate_management_client.ts +16 -4
- package/source/server/install_push_certitifate_management.ts +62 -119
- package/source/server/promote_trust_list.ts +32 -2
- package/source/server/push_certificate_manager/create_signing_request.ts +3 -3
- package/source/server/push_certificate_manager/update_certificate.ts +16 -5
- package/source/server/push_certificate_manager_helpers.ts +3 -3
- package/source/server/trust_list_server.ts +9 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push_certificate_manager_helpers.js","sourceRoot":"","sources":["../../source/server/push_certificate_manager_helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"push_certificate_manager_helpers.js","sourceRoot":"","sources":["../../source/server/push_certificate_manager_helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import fs from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { BinaryStream } from "node-opcua-binary-stream";
|
|
4
|
-
import {
|
|
4
|
+
import { readCertificateChainAsync, readCertificateRevocationList } from "node-opcua-crypto";
|
|
5
5
|
import { make_errorLog } from "node-opcua-debug";
|
|
6
6
|
import { TrustListDataType } from "node-opcua-types";
|
|
7
7
|
const errorLog = make_errorLog("TrustListServer");
|
|
8
|
+
/**
|
|
9
|
+
* Read all certificate (chains) and CRLs in a folder
|
|
10
|
+
* @param folder
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
8
13
|
async function readAll(folder) {
|
|
9
14
|
const results = [];
|
|
10
15
|
const files = await fs.promises.readdir(folder);
|
|
@@ -12,8 +17,9 @@ async function readAll(folder) {
|
|
|
12
17
|
const file = path.join(folder, f);
|
|
13
18
|
const ext = path.extname(file);
|
|
14
19
|
if (ext === ".der" || ext === ".pem") {
|
|
15
|
-
const
|
|
16
|
-
|
|
20
|
+
const chain = await readCertificateChainAsync(file);
|
|
21
|
+
const concatenated = Buffer.concat(chain);
|
|
22
|
+
results.push(concatenated);
|
|
17
23
|
}
|
|
18
24
|
else if (ext === ".crl") {
|
|
19
25
|
// Strict validation: only accept valid CRL files
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trust_list_server.js","sourceRoot":"","sources":["../../source/server/trust_list_server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"trust_list_server.js","sourceRoot":"","sources":["../../source/server/trust_list_server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-opcua-server-configuration",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.167.0",
|
|
4
4
|
"description": "pure nodejs OPCUA SDK - module server-configuration",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc -b",
|
|
@@ -15,35 +15,35 @@
|
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"chalk": "4.1.2",
|
|
17
17
|
"memfs": "^4.57.1",
|
|
18
|
-
"node-opcua-address-space": "2.
|
|
19
|
-
"node-opcua-address-space-base": "2.
|
|
18
|
+
"node-opcua-address-space": "2.167.0",
|
|
19
|
+
"node-opcua-address-space-base": "2.167.0",
|
|
20
20
|
"node-opcua-assert": "2.164.0",
|
|
21
|
-
"node-opcua-basic-types": "2.
|
|
22
|
-
"node-opcua-binary-stream": "2.
|
|
23
|
-
"node-opcua-certificate-manager": "2.
|
|
24
|
-
"node-opcua-common": "2.
|
|
21
|
+
"node-opcua-basic-types": "2.167.0",
|
|
22
|
+
"node-opcua-binary-stream": "2.167.0",
|
|
23
|
+
"node-opcua-certificate-manager": "2.167.0",
|
|
24
|
+
"node-opcua-common": "2.167.0",
|
|
25
25
|
"node-opcua-constants": "2.157.0",
|
|
26
|
-
"node-opcua-crypto": "5.3.
|
|
27
|
-
"node-opcua-data-model": "2.
|
|
26
|
+
"node-opcua-crypto": "5.3.3",
|
|
27
|
+
"node-opcua-data-model": "2.167.0",
|
|
28
28
|
"node-opcua-debug": "2.165.0",
|
|
29
|
-
"node-opcua-file-transfer": "2.
|
|
30
|
-
"node-opcua-hostname": "2.
|
|
31
|
-
"node-opcua-nodeid": "2.
|
|
32
|
-
"node-opcua-pki": "6.
|
|
33
|
-
"node-opcua-pseudo-session": "2.
|
|
34
|
-
"node-opcua-secure-channel": "2.
|
|
35
|
-
"node-opcua-server": "2.
|
|
36
|
-
"node-opcua-service-translate-browse-path": "2.
|
|
37
|
-
"node-opcua-status-code": "2.
|
|
38
|
-
"node-opcua-types": "2.
|
|
39
|
-
"node-opcua-variant": "2.
|
|
29
|
+
"node-opcua-file-transfer": "2.167.0",
|
|
30
|
+
"node-opcua-hostname": "2.167.0",
|
|
31
|
+
"node-opcua-nodeid": "2.167.0",
|
|
32
|
+
"node-opcua-pki": "6.12.0",
|
|
33
|
+
"node-opcua-pseudo-session": "2.167.0",
|
|
34
|
+
"node-opcua-secure-channel": "2.167.0",
|
|
35
|
+
"node-opcua-server": "2.167.0",
|
|
36
|
+
"node-opcua-service-translate-browse-path": "2.167.0",
|
|
37
|
+
"node-opcua-status-code": "2.167.0",
|
|
38
|
+
"node-opcua-types": "2.167.0",
|
|
39
|
+
"node-opcua-variant": "2.167.0"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/mocha": "^10.0.10",
|
|
43
43
|
"bcryptjs": "3.0.3",
|
|
44
44
|
"mocha": "11.7.5",
|
|
45
|
-
"node-opcua-client": "2.
|
|
46
|
-
"node-opcua-data-value": "2.
|
|
45
|
+
"node-opcua-client": "2.167.0",
|
|
46
|
+
"node-opcua-data-value": "2.167.0",
|
|
47
47
|
"node-opcua-leak-detector": "2.165.0",
|
|
48
48
|
"node-opcua-nodesets": "2.163.1"
|
|
49
49
|
},
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"internet of things"
|
|
63
63
|
],
|
|
64
64
|
"homepage": "http://node-opcua.github.io/",
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "5decfa86ee53a36ecd3bb454e7bf6e3dd27c7a4e",
|
|
66
66
|
"files": [
|
|
67
67
|
"dist",
|
|
68
68
|
"source"
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { ByteString } from "node-opcua-basic-types";
|
|
5
5
|
import { BinaryStream } from "node-opcua-binary-stream";
|
|
6
|
-
import type
|
|
6
|
+
import { combine_der, type Certificate } from "node-opcua-crypto/web";
|
|
7
7
|
import { AttributeIds, coerceQualifiedName, type QualifiedNameLike } from "node-opcua-data-model";
|
|
8
8
|
import { ClientFile, OpenFileMode } from "node-opcua-file-transfer";
|
|
9
9
|
import { NodeId, resolveNodeId } from "node-opcua-nodeid";
|
|
@@ -141,11 +141,23 @@ export class TrustListClient extends ClientFile implements ITrustList {
|
|
|
141
141
|
return callMethodResult.outputArguments?.[0].value as boolean;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
async addCertificate(
|
|
144
|
+
async addCertificate(
|
|
145
|
+
certificateChain: Certificate | Certificate[],
|
|
146
|
+
isTrustedCertificate: boolean
|
|
147
|
+
): Promise<StatusCode> {
|
|
145
148
|
await this.ensureInitialized();
|
|
146
149
|
|
|
150
|
+
if (Array.isArray(certificateChain)) {
|
|
151
|
+
if (certificateChain.length === 0) {
|
|
152
|
+
return StatusCodes.BadInvalidArgument;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
const compositeCertificate: Buffer =
|
|
157
|
+
Array.isArray(certificateChain) ? combine_der(certificateChain) : certificateChain;
|
|
158
|
+
|
|
147
159
|
const inputArguments: VariantLike[] = [
|
|
148
|
-
{ dataType: DataType.ByteString, value:
|
|
160
|
+
{ dataType: DataType.ByteString, value: compositeCertificate },
|
|
149
161
|
{ dataType: DataType.Boolean, value: !!isTrustedCertificate }
|
|
150
162
|
];
|
|
151
163
|
const methodToCall: CallMethodRequestLike = {
|
|
@@ -211,7 +223,7 @@ export class CertificateGroup {
|
|
|
211
223
|
constructor(
|
|
212
224
|
public session: IBasicSessionAsync,
|
|
213
225
|
public nodeId: NodeId
|
|
214
|
-
) {}
|
|
226
|
+
) { }
|
|
215
227
|
async getCertificateTypes(): Promise<NodeId[]> {
|
|
216
228
|
const browsePathResult = await this.session.translateBrowsePath(makeBrowsePath(this.nodeId, "/CertificateTypes"));
|
|
217
229
|
if (browsePathResult.statusCode.isNotGood()) {
|
|
@@ -9,9 +9,9 @@ import chalk from "chalk";
|
|
|
9
9
|
import type { AddressSpace, UAServerConfiguration } from "node-opcua-address-space";
|
|
10
10
|
import { assert } from "node-opcua-assert";
|
|
11
11
|
import type { OPCUACertificateManager } from "node-opcua-certificate-manager";
|
|
12
|
-
import type
|
|
12
|
+
import { type ICertificateKeyPairProvider, invalidateCachedSecrets } from "node-opcua-common";
|
|
13
13
|
import { readPrivateKey } from "node-opcua-crypto";
|
|
14
|
-
import { type Certificate, convertPEMtoDER, type PrivateKey, split_der } from "node-opcua-crypto/web";
|
|
14
|
+
import { type Certificate, combine_der, convertPEMtoDER, type PrivateKey, split_der } from "node-opcua-crypto/web";
|
|
15
15
|
import { checkDebugFlag, make_debugLog, make_errorLog } from "node-opcua-debug";
|
|
16
16
|
import { getFullyQualifiedDomainName, getIpAddresses } from "node-opcua-hostname";
|
|
17
17
|
import type { OPCUAServer, OPCUAServerEndPoint } from "node-opcua-server";
|
|
@@ -20,117 +20,26 @@ import type { ApplicationDescriptionOptions } from "node-opcua-types";
|
|
|
20
20
|
import { installPushCertificateManagement } from "./push_certificate_manager_helpers.js";
|
|
21
21
|
import type { ActionQueue, PushCertificateManagerServerImpl } from "./push_certificate_manager_server_impl.js";
|
|
22
22
|
|
|
23
|
-
// node 14 onward : import { readFile } from "fs/promises";
|
|
24
|
-
const { readFile } = fs.promises;
|
|
25
|
-
|
|
26
23
|
const debugLog = make_debugLog("ServerConfiguration");
|
|
27
24
|
const errorLog = make_errorLog("ServerConfiguration");
|
|
28
25
|
const doDebug = checkDebugFlag("ServerConfiguration");
|
|
29
26
|
|
|
30
|
-
export interface OPCUAServerPartial extends
|
|
27
|
+
export interface OPCUAServerPartial extends ICertificateKeyPairProvider {
|
|
31
28
|
serverInfo?: ApplicationDescriptionOptions;
|
|
32
29
|
serverCertificateManager: OPCUACertificateManager;
|
|
33
30
|
privateKeyFile: string;
|
|
34
31
|
certificateFile: string;
|
|
35
|
-
$$certificate: null | Certificate;
|
|
36
|
-
$$certificateChain: null | Certificate;
|
|
37
|
-
$$privateKey: null | PrivateKey;
|
|
38
32
|
engine: { addressSpace?: AddressSpace };
|
|
39
33
|
}
|
|
40
34
|
|
|
41
|
-
function
|
|
42
|
-
if (!this.$$certificate) {
|
|
43
|
-
const certificateChain = getCertificateChain.call(this);
|
|
44
|
-
this.$$certificate = split_der(certificateChain)[0];
|
|
45
|
-
}
|
|
46
|
-
return this.$$certificate;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
function getCertificateChain(this: OPCUAServerPartial): Certificate {
|
|
50
|
-
if (!this.$$certificateChain) {
|
|
51
|
-
throw new Error("internal Error. cannot find $$certificateChain");
|
|
52
|
-
}
|
|
53
|
-
return this.$$certificateChain;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
function getPrivateKey(this: OPCUAServerPartial): PrivateKey {
|
|
57
|
-
// c8 ignore next
|
|
58
|
-
if (!this.$$privateKey) {
|
|
59
|
-
throw new Error("internal Error. cannot find $$privateKey");
|
|
60
|
-
}
|
|
61
|
-
return this.$$privateKey;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
*
|
|
68
|
-
*/
|
|
69
|
-
async function install(this: OPCUAServerPartial): Promise<void> {
|
|
70
|
-
doDebug && debugLog("install push certificate management", this.serverCertificateManager.rootDir);
|
|
71
|
-
|
|
72
|
-
Object.defineProperty(this, "privateKeyFile", {
|
|
73
|
-
get: () => this.serverCertificateManager.privateKey,
|
|
74
|
-
configurable: true
|
|
75
|
-
});
|
|
76
|
-
Object.defineProperty(this, "certificateFile", {
|
|
77
|
-
get: () => path.join(this.serverCertificateManager.rootDir, "own/certs/certificate.pem"),
|
|
78
|
-
configurable: true
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
if (!this.$$privateKey) {
|
|
82
|
-
this.$$privateKey = readPrivateKey(this.serverCertificateManager.privateKey);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
if (!this.$$certificateChain) {
|
|
86
|
-
const certificateFile = this.certificateFile;
|
|
87
|
-
|
|
88
|
-
if (!fs.existsSync(certificateFile)) {
|
|
89
|
-
// this is the first time server is launch
|
|
90
|
-
// let's create a default self signed certificate with limited validity
|
|
91
|
-
|
|
92
|
-
const fqdn = await getFullyQualifiedDomainName();
|
|
93
|
-
const ipAddresses = await getIpAddresses();
|
|
94
|
-
|
|
95
|
-
const applicationUri = (this.serverInfo ? this.serverInfo.applicationUri : null) || "uri:MISSING";
|
|
96
|
-
|
|
97
|
-
const options = {
|
|
98
|
-
applicationUri,
|
|
99
|
-
|
|
100
|
-
dns: [fqdn],
|
|
101
|
-
ip: ipAddresses,
|
|
102
|
-
|
|
103
|
-
subject: `/CN=${applicationUri};/L=Paris`,
|
|
104
|
-
|
|
105
|
-
startDate: new Date(),
|
|
106
|
-
|
|
107
|
-
validity: 365 * 5, // five year
|
|
108
|
-
|
|
109
|
-
/* */
|
|
110
|
-
outputFile: certificateFile
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
doDebug && debugLog("creating self signed certificate", options);
|
|
114
|
-
await this.serverCertificateManager.createSelfSignedCertificate(options);
|
|
115
|
-
}
|
|
116
|
-
const certificatePEM = await readFile(certificateFile, "utf8");
|
|
117
|
-
|
|
118
|
-
this.$$certificateChain = convertPEMtoDER(certificatePEM);
|
|
119
|
-
|
|
120
|
-
// await this.serverCertificateManager.trustCertificate( this.$$certificateChain);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
function getCertificateChainEP(this: OPCUAServerEndPoint): Certificate {
|
|
35
|
+
function getCertificateChainEP(this: OPCUAServerEndPoint): Certificate[] {
|
|
125
36
|
const certificateFile = path.join(this.certificateManager.rootDir, "own/certs/certificate.pem");
|
|
126
37
|
const certificatePEM = fs.readFileSync(certificateFile, "utf8");
|
|
127
|
-
|
|
128
|
-
return $$certificateChain;
|
|
38
|
+
return split_der(convertPEMtoDER(certificatePEM));
|
|
129
39
|
}
|
|
130
40
|
|
|
131
41
|
function getPrivateKeyEP(this: OPCUAServerEndPoint): PrivateKey {
|
|
132
|
-
|
|
133
|
-
return privateKey;
|
|
42
|
+
return readPrivateKey(this.certificateManager.privateKey);
|
|
134
43
|
}
|
|
135
44
|
|
|
136
45
|
async function onCertificateAboutToChange(server: OPCUAServer) {
|
|
@@ -143,28 +52,18 @@ async function onCertificateAboutToChange(server: OPCUAServer) {
|
|
|
143
52
|
* onCertificateChange is called when the serverConfiguration notifies
|
|
144
53
|
* that the server certificate and/or private key has changed.
|
|
145
54
|
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
55
|
+
* This function invalidates the cached secrets so that the next
|
|
56
|
+
* getCertificate() / getPrivateKey() call re-reads from disk,
|
|
57
|
+
* then shuts down all channels and resumes endpoints.
|
|
148
58
|
*
|
|
149
59
|
* @param server
|
|
150
60
|
*/
|
|
151
61
|
async function onCertificateChange(server: OPCUAServer) {
|
|
152
62
|
doDebug && debugLog("on CertificateChanged");
|
|
153
63
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
const certificateFile = path.join(server.serverCertificateManager.rootDir, "own/certs/certificate.pem");
|
|
158
|
-
const certificatePEM = fs.readFileSync(certificateFile, "utf8");
|
|
159
|
-
|
|
160
|
-
const privateKeyFile = server.serverCertificateManager.privateKey;
|
|
161
|
-
const privateKey = readPrivateKey(privateKeyFile);
|
|
162
|
-
// also reread the private key
|
|
163
|
-
|
|
164
|
-
_server.$$certificateChain = convertPEMtoDER(certificatePEM);
|
|
165
|
-
_server.$$privateKey = privateKey;
|
|
166
|
-
// note : $$certificate will be reconstructed on demand
|
|
167
|
-
_server.$$certificate = split_der(_server.$$certificateChain)[0];
|
|
64
|
+
// Invalidate the cached certificate chain and private key.
|
|
65
|
+
// The SecretHolder will re-read from disk on next access.
|
|
66
|
+
invalidateCachedSecrets(server);
|
|
168
67
|
|
|
169
68
|
setTimeout(async () => {
|
|
170
69
|
try {
|
|
@@ -184,12 +83,60 @@ async function onCertificateChange(server: OPCUAServer) {
|
|
|
184
83
|
}, 2000);
|
|
185
84
|
}
|
|
186
85
|
|
|
86
|
+
/**
|
|
87
|
+
* Install push certificate management on the server.
|
|
88
|
+
*
|
|
89
|
+
* This redirects `getCertificate`, `getCertificateChain` and
|
|
90
|
+
* `getPrivateKey` to read from the serverCertificateManager's
|
|
91
|
+
* PEM files, and wires up the push certificate management
|
|
92
|
+
* address-space nodes.
|
|
93
|
+
*/
|
|
94
|
+
async function install(this: OPCUAServerPartial): Promise<void> {
|
|
95
|
+
doDebug && debugLog("install push certificate management", this.serverCertificateManager.rootDir);
|
|
96
|
+
|
|
97
|
+
Object.defineProperty(this, "privateKeyFile", {
|
|
98
|
+
get: () => this.serverCertificateManager.privateKey,
|
|
99
|
+
configurable: true
|
|
100
|
+
});
|
|
101
|
+
Object.defineProperty(this, "certificateFile", {
|
|
102
|
+
get: () => path.join(this.serverCertificateManager.rootDir, "own/certs/certificate.pem"),
|
|
103
|
+
configurable: true
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
const certificateFile = this.certificateFile;
|
|
107
|
+
if (!fs.existsSync(certificateFile)) {
|
|
108
|
+
// this is the first time server is launched
|
|
109
|
+
// let's create a default self signed certificate with limited validity
|
|
110
|
+
const fqdn = getFullyQualifiedDomainName();
|
|
111
|
+
const ipAddresses = getIpAddresses();
|
|
112
|
+
|
|
113
|
+
const applicationUri = (this.serverInfo ? this.serverInfo.applicationUri : null) || "uri:MISSING";
|
|
114
|
+
|
|
115
|
+
const options = {
|
|
116
|
+
applicationUri,
|
|
117
|
+
dns: [fqdn],
|
|
118
|
+
ip: ipAddresses,
|
|
119
|
+
subject: `/CN=${applicationUri};/L=Paris`,
|
|
120
|
+
startDate: new Date(),
|
|
121
|
+
validity: 365 * 5, // five years
|
|
122
|
+
outputFile: certificateFile
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
doDebug && debugLog("creating self signed certificate", options);
|
|
126
|
+
await this.serverCertificateManager.createSelfSignedCertificate(options);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
// Invalidate any previously cached secrets so that
|
|
130
|
+
// getCertificateChain() / getPrivateKey() will re-read from disk.
|
|
131
|
+
invalidateCachedSecrets(this);
|
|
132
|
+
}
|
|
133
|
+
|
|
187
134
|
interface UAServerConfigurationEx extends UAServerConfiguration {
|
|
188
135
|
$pushCertificateManager: PushCertificateManagerServerImpl;
|
|
189
136
|
}
|
|
190
137
|
|
|
191
138
|
type OPCUAServerEndPointEx = typeof OPCUAServerEndPoint & {
|
|
192
|
-
_certificateChain:
|
|
139
|
+
_certificateChain: Certificate[] | null;
|
|
193
140
|
_privateKey: PrivateKey | null;
|
|
194
141
|
};
|
|
195
142
|
|
|
@@ -202,10 +149,6 @@ export async function installPushCertificateManagementOnServer(server: OPCUAServ
|
|
|
202
149
|
}
|
|
203
150
|
await install.call(server as unknown as OPCUAServerPartial);
|
|
204
151
|
|
|
205
|
-
server.getCertificate = getCertificate;
|
|
206
|
-
server.getCertificateChain = getCertificateChain;
|
|
207
|
-
server.getPrivateKey = getPrivateKey;
|
|
208
|
-
|
|
209
152
|
for (const endpoint of server.endpoints) {
|
|
210
153
|
const endpointPriv: OPCUAServerEndPointEx = endpoint as unknown as OPCUAServerEndPointEx;
|
|
211
154
|
endpointPriv._certificateChain = null;
|
|
@@ -216,7 +159,7 @@ export async function installPushCertificateManagementOnServer(server: OPCUAServ
|
|
|
216
159
|
|
|
217
160
|
for (const e of endpoint.endpointDescriptions()) {
|
|
218
161
|
Object.defineProperty(e, "serverCertificate", {
|
|
219
|
-
get: () => endpoint.
|
|
162
|
+
get: () => combine_der(endpoint.getCertificateChain()),
|
|
220
163
|
configurable: true
|
|
221
164
|
});
|
|
222
165
|
}
|
|
@@ -289,6 +289,36 @@ async function _closeAndUpdate(
|
|
|
289
289
|
};
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
+
/**
|
|
293
|
+
* Map a `VerificationStatus` returned by the PKI layer to the
|
|
294
|
+
* corresponding OPC UA `StatusCode`.
|
|
295
|
+
*/
|
|
296
|
+
function verificationStatusToStatusCode(status: VerificationStatus): StatusCode {
|
|
297
|
+
switch (status) {
|
|
298
|
+
case VerificationStatus.BadCertificateChainIncomplete:
|
|
299
|
+
return StatusCodes.BadCertificateChainIncomplete;
|
|
300
|
+
case VerificationStatus.BadCertificateRevoked:
|
|
301
|
+
return StatusCodes.BadCertificateRevoked;
|
|
302
|
+
case VerificationStatus.BadCertificateIssuerRevoked:
|
|
303
|
+
return StatusCodes.BadCertificateIssuerRevoked;
|
|
304
|
+
case VerificationStatus.BadCertificateRevocationUnknown:
|
|
305
|
+
return StatusCodes.BadCertificateRevocationUnknown;
|
|
306
|
+
case VerificationStatus.BadCertificateIssuerRevocationUnknown:
|
|
307
|
+
return StatusCodes.BadCertificateIssuerRevocationUnknown;
|
|
308
|
+
case VerificationStatus.BadCertificateTimeInvalid:
|
|
309
|
+
return StatusCodes.BadCertificateTimeInvalid;
|
|
310
|
+
case VerificationStatus.BadCertificateIssuerTimeInvalid:
|
|
311
|
+
return StatusCodes.BadCertificateIssuerTimeInvalid;
|
|
312
|
+
case VerificationStatus.BadCertificateUntrusted:
|
|
313
|
+
return StatusCodes.BadCertificateUntrusted;
|
|
314
|
+
case VerificationStatus.BadSecurityChecksFailed:
|
|
315
|
+
return StatusCodes.BadSecurityChecksFailed;
|
|
316
|
+
case VerificationStatus.BadCertificateInvalid:
|
|
317
|
+
default:
|
|
318
|
+
return StatusCodes.BadCertificateInvalid;
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
|
|
292
322
|
// in TrustList
|
|
293
323
|
async function _addCertificate(
|
|
294
324
|
this: UAMethod,
|
|
@@ -331,7 +361,7 @@ async function _addCertificate(
|
|
|
331
361
|
|
|
332
362
|
if (status !== VerificationStatus.Good) {
|
|
333
363
|
warningLog("Certificate validation failed:", status);
|
|
334
|
-
return { statusCode:
|
|
364
|
+
return { statusCode: verificationStatusToStatusCode(status) };
|
|
335
365
|
}
|
|
336
366
|
|
|
337
367
|
updateLastUpdateTime(trustList);
|
|
@@ -477,7 +507,7 @@ export async function promoteTrustList(trustList: UATrustList) {
|
|
|
477
507
|
callback(err, { statusCode: StatusCodes.BadInternalError });
|
|
478
508
|
});
|
|
479
509
|
} else {
|
|
480
|
-
warningLog("certificateManager is not defined on trustlist do something to update the document before we open it");
|
|
510
|
+
warningLog("certificateManager is not defined on trustlist do something to update the trust list document before we open it");
|
|
481
511
|
return _open_asyncExecutionFunction.call(this, inputArgs, context, callback);
|
|
482
512
|
}
|
|
483
513
|
}
|
|
@@ -2,7 +2,7 @@ import crypto from "node:crypto";
|
|
|
2
2
|
import fs from "node:fs";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { CertificateManager } from "node-opcua-certificate-manager";
|
|
5
|
-
import { convertPEMtoDER,
|
|
5
|
+
import { convertPEMtoDER, exploreCertificate, readCertificateChain, type DirectoryName } from "node-opcua-crypto";
|
|
6
6
|
import { checkDebugFlag, make_debugLog, make_errorLog, make_warningLog } from "node-opcua-debug";
|
|
7
7
|
import { NodeId, resolveNodeId, sameNodeId } from "node-opcua-nodeid";
|
|
8
8
|
import type { SubjectOptions } from "node-opcua-pki";
|
|
@@ -70,8 +70,8 @@ export async function executeCreateSigningRequest(
|
|
|
70
70
|
if (!subjectName) {
|
|
71
71
|
const currentCertificateFilename = path.join(certificateManager.rootDir, "own/certs/certificate.pem");
|
|
72
72
|
try {
|
|
73
|
-
const certificate =
|
|
74
|
-
const e = exploreCertificate(certificate);
|
|
73
|
+
const certificate = readCertificateChain(currentCertificateFilename);
|
|
74
|
+
const e = exploreCertificate(certificate[0]);
|
|
75
75
|
subjectName = subjectToString(e.tbsCertificate.subject as SubjectOptions & DirectoryName);
|
|
76
76
|
warningLog("reusing existing certificate subjectName = ", subjectName);
|
|
77
77
|
} catch (err) {
|
|
@@ -3,7 +3,7 @@ import path from "node:path";
|
|
|
3
3
|
import { assert } from "node-opcua-assert";
|
|
4
4
|
import type { ByteString } from "node-opcua-basic-types";
|
|
5
5
|
import type { CertificateManager, OPCUACertificateManager } from "node-opcua-certificate-manager";
|
|
6
|
-
import { readPrivateKey } from "node-opcua-crypto";
|
|
6
|
+
import { readPrivateKey, exploreCertificate } from "node-opcua-crypto";
|
|
7
7
|
import {
|
|
8
8
|
certificateMatchesPrivateKey,
|
|
9
9
|
coercePEMorDerToPrivateKey,
|
|
@@ -19,7 +19,7 @@ import { StatusCodes } from "node-opcua-status-code";
|
|
|
19
19
|
import type { UpdateCertificateResult } from "../../push_certificate_manager.js";
|
|
20
20
|
import { validateCertificateAndChain } from "../certificate_validation.js";
|
|
21
21
|
import type { PushCertificateManagerInternalContext } from "./internal_context.js";
|
|
22
|
-
import { resolveCertificateGroupContext, validateCertificateType } from "./util.js";
|
|
22
|
+
import { resolveCertificateGroupContext, validateCertificateType, findCertificateGroupName } from "./util.js";
|
|
23
23
|
|
|
24
24
|
const warningLog = make_warningLog("ServerConfiguration");
|
|
25
25
|
const debugLog = make_debugLog("ServerConfiguration");
|
|
@@ -107,9 +107,20 @@ export async function executeUpdateCertificate(
|
|
|
107
107
|
const { certificateManager, allowedTypes } = context;
|
|
108
108
|
|
|
109
109
|
if (!validateCertificateType(certificate, certificateTypeId, allowedTypes ?? [], warningLog)) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
try {
|
|
111
|
+
const info = exploreCertificate(certificate);
|
|
112
|
+
const groupName = findCertificateGroupName(certificateGroupId);
|
|
113
|
+
const certInfoStr = `subject: ${info.tbsCertificate.subject.commonName}, issuer: ${info.tbsCertificate.issuer.commonName}, validFrom: ${info.tbsCertificate.validity.notBefore.toISOString()}, validTo: ${info.tbsCertificate.validity.notAfter.toISOString()}`;
|
|
114
|
+
|
|
115
|
+
warningLog(
|
|
116
|
+
`Certificate type ${certificateTypeId} does not match expected certificateTypeId for group '${groupName}' (${certificateGroupId.toString()})\n allowed types: ${allowedTypes?.map((t) => t.toString()).join(", ")} \n provided certificate: ${certInfoStr}`
|
|
117
|
+
);
|
|
118
|
+
} catch (err) {
|
|
119
|
+
// Fallback if certificate parsing fails
|
|
120
|
+
warningLog(
|
|
121
|
+
`Certificate type ${certificateTypeId} does not match expected certificateTypeId for group '${certificateGroupId.toString()}'\n allowed types: ${allowedTypes?.map((t) => t.toString()).join(", ")} \n certificate could not be explored. ${(err as Error).message}`
|
|
122
|
+
);
|
|
123
|
+
}
|
|
113
124
|
return { statusCode: StatusCodes.BadCertificateInvalid, applyChangesRequired: false };
|
|
114
125
|
}
|
|
115
126
|
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
import { EventNotifierFlags, type UAObject, type UAVariable } from "node-opcua-address-space-base";
|
|
18
18
|
import type { ByteString, UAString } from "node-opcua-basic-types";
|
|
19
19
|
import { ObjectIds, ObjectTypeIds } from "node-opcua-constants";
|
|
20
|
-
import { type Certificate
|
|
20
|
+
import { readCertificateChainAsync, type Certificate } from "node-opcua-crypto";
|
|
21
21
|
import { AccessRestrictionsFlag, BrowseDirection, coerceQualifiedName, NodeClass } from "node-opcua-data-model";
|
|
22
22
|
import { make_debugLog, make_errorLog, make_warningLog } from "node-opcua-debug";
|
|
23
23
|
import { NodeId, resolveNodeId } from "node-opcua-nodeid";
|
|
@@ -258,8 +258,8 @@ async function getCertificate(certificateManager: CertificateManager): Promise<C
|
|
|
258
258
|
try {
|
|
259
259
|
const certificateFile = getCertificateFilename(certificateManager);
|
|
260
260
|
if (fs.existsSync(certificateFile)) {
|
|
261
|
-
const certificate = await
|
|
262
|
-
return certificate;
|
|
261
|
+
const certificate = await readCertificateChainAsync(certificateFile);
|
|
262
|
+
return certificate[0];
|
|
263
263
|
}
|
|
264
264
|
return null;
|
|
265
265
|
} catch (err) {
|