node-opcua-server 2.82.0 → 2.84.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/base_server.js +19 -0
- package/dist/base_server.js.map +1 -1
- package/dist/opcua_server.js +1 -1
- package/dist/opcua_server.js.map +1 -1
- package/dist/server_end_point.d.ts +9 -7
- package/dist/server_end_point.js +82 -61
- package/dist/server_end_point.js.map +1 -1
- package/package.json +43 -43
- package/source/base_server.ts +32 -8
- package/source/opcua_server.ts +3 -3
- package/source/server_end_point.ts +116 -79
package/dist/server_end_point.js
CHANGED
|
@@ -204,13 +204,6 @@ class OPCUAServerEndPoint extends events_1.EventEmitter {
|
|
|
204
204
|
return arr.length === 0 ? null : arr[0];
|
|
205
205
|
}
|
|
206
206
|
addEndpointDescription(securityMode, securityPolicy, options) {
|
|
207
|
-
if (!options) {
|
|
208
|
-
options = {
|
|
209
|
-
hostname: (0, node_opcua_hostname_1.getFullyQualifiedDomainName)(),
|
|
210
|
-
securityPolicies: [node_opcua_secure_channel_1.SecurityPolicy.Basic256Sha256]
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
options.allowAnonymous = options.allowAnonymous === undefined ? true : options.allowAnonymous;
|
|
214
207
|
// istanbul ignore next
|
|
215
208
|
if (securityMode === node_opcua_secure_channel_1.MessageSecurityMode.None && securityPolicy !== node_opcua_secure_channel_1.SecurityPolicy.None) {
|
|
216
209
|
throw new Error(" invalid security ");
|
|
@@ -231,6 +224,7 @@ class OPCUAServerEndPoint extends events_1.EventEmitter {
|
|
|
231
224
|
if (endpoint_desc) {
|
|
232
225
|
throw new Error(" endpoint already exist");
|
|
233
226
|
}
|
|
227
|
+
const userTokenTypes = options.userTokenTypes;
|
|
234
228
|
// now build endpointUrl
|
|
235
229
|
this._endpoints.push(_makeEndpointDescription({
|
|
236
230
|
collection: this._policy_deduplicator,
|
|
@@ -241,11 +235,11 @@ class OPCUAServerEndPoint extends events_1.EventEmitter {
|
|
|
241
235
|
serverCertificateChain: this.getCertificateChain(),
|
|
242
236
|
securityMode,
|
|
243
237
|
securityPolicy,
|
|
244
|
-
allowAnonymous: options.allowAnonymous,
|
|
245
238
|
allowUnsecurePassword: options.allowUnsecurePassword,
|
|
246
239
|
resourcePath: options.resourcePath,
|
|
247
240
|
restricted: !!options.restricted,
|
|
248
|
-
securityPolicies:
|
|
241
|
+
securityPolicies: options.securityPolicies || [],
|
|
242
|
+
userTokenTypes
|
|
249
243
|
}));
|
|
250
244
|
}
|
|
251
245
|
addRestrictedEndpointDescription(options) {
|
|
@@ -257,6 +251,12 @@ class OPCUAServerEndPoint extends events_1.EventEmitter {
|
|
|
257
251
|
options = options || {};
|
|
258
252
|
options.securityModes = options.securityModes || defaultSecurityModes;
|
|
259
253
|
options.securityPolicies = options.securityPolicies || defaultSecurityPolicies;
|
|
254
|
+
options.userTokenTypes = options.userTokenTypes || defaultUserTokenTypes;
|
|
255
|
+
options.allowAnonymous = options.allowAnonymous === undefined ? true : options.allowAnonymous;
|
|
256
|
+
// make sure we do not have anonymous
|
|
257
|
+
if (!options.allowAnonymous) {
|
|
258
|
+
options.userTokenTypes = options.userTokenTypes.filter((r) => r !== node_opcua_service_endpoints_1.UserTokenType.Anonymous);
|
|
259
|
+
}
|
|
260
260
|
const defaultHostname = options.hostname || (0, node_opcua_hostname_1.getFullyQualifiedDomainName)();
|
|
261
261
|
let hostnames = [defaultHostname];
|
|
262
262
|
options.alternateHostname = options.alternateHostname || [];
|
|
@@ -266,8 +266,14 @@ class OPCUAServerEndPoint extends events_1.EventEmitter {
|
|
|
266
266
|
// remove duplicates if any (uniq)
|
|
267
267
|
hostnames = [...new Set(hostnames.concat(options.alternateHostname))];
|
|
268
268
|
for (const alternateHostname of hostnames) {
|
|
269
|
-
const optionsE =
|
|
270
|
-
|
|
269
|
+
const optionsE = {
|
|
270
|
+
hostname: alternateHostname,
|
|
271
|
+
securityPolicies: options.securityPolicies,
|
|
272
|
+
userTokenTypes: options.userTokenTypes,
|
|
273
|
+
allowUnsecurePassword: options.allowUnsecurePassword,
|
|
274
|
+
alternateHostname: options.alternateHostname,
|
|
275
|
+
resourcePath: options.resourcePath
|
|
276
|
+
};
|
|
271
277
|
if (options.securityModes.indexOf(node_opcua_secure_channel_1.MessageSecurityMode.None) >= 0) {
|
|
272
278
|
this.addEndpointDescription(node_opcua_secure_channel_1.MessageSecurityMode.None, node_opcua_secure_channel_1.SecurityPolicy.None, optionsE);
|
|
273
279
|
}
|
|
@@ -711,62 +717,71 @@ function _makeEndpointDescription(options) {
|
|
|
711
717
|
(0, node_opcua_assert_1.assert)(isFinite(options.securityLevel), "expecting a valid securityLevel");
|
|
712
718
|
const securityPolicyUri = (0, node_opcua_secure_channel_1.toURI)(options.securityPolicy);
|
|
713
719
|
const userIdentityTokens = [];
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
720
|
+
const registerIdentity2 = (tokenType, securityPolicy, name) => {
|
|
721
|
+
return registerIdentity({
|
|
722
|
+
policyId: u(name),
|
|
723
|
+
tokenType,
|
|
724
|
+
issuedTokenType: null,
|
|
725
|
+
issuerEndpointUrl: null,
|
|
726
|
+
securityPolicyUri: securityPolicy
|
|
727
|
+
});
|
|
728
|
+
};
|
|
729
|
+
const registerIdentity = (r) => {
|
|
730
|
+
const tokenType = r.tokenType === undefined ? node_opcua_service_endpoints_1.UserTokenType.Invalid : r.tokenType;
|
|
731
|
+
const securityPolicy = (r.securityPolicyUri || "");
|
|
732
|
+
if (!securityPolicy && options.userTokenTypes.indexOf(tokenType) >= 0) {
|
|
733
|
+
userIdentityTokens.push(r);
|
|
734
|
+
return;
|
|
735
|
+
}
|
|
736
|
+
if (options.securityPolicies.indexOf(securityPolicy) >= 0 && options.userTokenTypes.indexOf(tokenType) >= 0) {
|
|
737
|
+
userIdentityTokens.push(r);
|
|
723
738
|
}
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
739
|
+
};
|
|
740
|
+
if (!options.noUserIdentityTokens) {
|
|
741
|
+
if (options.securityPolicy === node_opcua_secure_channel_1.SecurityPolicy.None) {
|
|
742
|
+
if (options.allowUnsecurePassword) {
|
|
743
|
+
registerIdentity({
|
|
744
|
+
policyId: u("username_unsecure"),
|
|
745
|
+
tokenType: node_opcua_service_endpoints_1.UserTokenType.UserName,
|
|
729
746
|
issuedTokenType: null,
|
|
730
747
|
issuerEndpointUrl: null,
|
|
731
|
-
securityPolicyUri:
|
|
748
|
+
securityPolicyUri: null
|
|
732
749
|
});
|
|
733
750
|
}
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
751
|
+
const onlyCertificateLessConnection = options.onlyCertificateLessConnection === undefined ? false : options.onlyCertificateLessConnection;
|
|
752
|
+
if (!onlyCertificateLessConnection) {
|
|
753
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.UserName, node_opcua_secure_channel_1.SecurityPolicy.Basic256, "username_basic256");
|
|
754
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.UserName, node_opcua_secure_channel_1.SecurityPolicy.Basic128Rsa15, "username_basic128Rsa15");
|
|
755
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.UserName, node_opcua_secure_channel_1.SecurityPolicy.Basic256Sha256, "username_basic256Sha256");
|
|
756
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.UserName, node_opcua_secure_channel_1.SecurityPolicy.Aes128_Sha256_RsaOaep, "username_aes128Sha256RsaOaep");
|
|
757
|
+
// X509
|
|
758
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.Certificate, node_opcua_secure_channel_1.SecurityPolicy.Basic256, "certificate_basic256");
|
|
759
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.Certificate, node_opcua_secure_channel_1.SecurityPolicy.Basic128Rsa15, "certificate_basic128Rsa15");
|
|
760
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.Certificate, node_opcua_secure_channel_1.SecurityPolicy.Basic256Sha256, "certificate_basic256Sha256");
|
|
761
|
+
registerIdentity2(node_opcua_service_endpoints_1.UserTokenType.Certificate, node_opcua_secure_channel_1.SecurityPolicy.Aes128_Sha256_RsaOaep, "certificate_aes128Sha256RsaOaep");
|
|
762
|
+
}
|
|
746
763
|
}
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
}
|
|
767
|
-
|
|
768
|
-
if (options.allowAnonymous) {
|
|
769
|
-
userIdentityTokens.push({
|
|
764
|
+
else {
|
|
765
|
+
// note:
|
|
766
|
+
// when channel session security is not "None",
|
|
767
|
+
// userIdentityTokens can be left to null.
|
|
768
|
+
// in this case this mean that secure policy will be the same as connection security policy
|
|
769
|
+
registerIdentity({
|
|
770
|
+
policyId: u("usernamePassword"),
|
|
771
|
+
tokenType: node_opcua_service_endpoints_1.UserTokenType.UserName,
|
|
772
|
+
issuedTokenType: null,
|
|
773
|
+
issuerEndpointUrl: null,
|
|
774
|
+
securityPolicyUri: null
|
|
775
|
+
});
|
|
776
|
+
registerIdentity({
|
|
777
|
+
policyId: u("certificateX509"),
|
|
778
|
+
tokenType: node_opcua_service_endpoints_1.UserTokenType.Certificate,
|
|
779
|
+
issuedTokenType: null,
|
|
780
|
+
issuerEndpointUrl: null,
|
|
781
|
+
securityPolicyUri: null
|
|
782
|
+
});
|
|
783
|
+
}
|
|
784
|
+
registerIdentity({
|
|
770
785
|
policyId: u("anonymous"),
|
|
771
786
|
tokenType: node_opcua_service_endpoints_1.UserTokenType.Anonymous,
|
|
772
787
|
issuedTokenType: null,
|
|
@@ -817,4 +832,10 @@ const defaultSecurityPolicies = [
|
|
|
817
832
|
node_opcua_secure_channel_1.SecurityPolicy.Aes128_Sha256_RsaOaep
|
|
818
833
|
// NO USED YET SecurityPolicy.Aes256_Sha256_RsaPss
|
|
819
834
|
];
|
|
835
|
+
const defaultUserTokenTypes = [
|
|
836
|
+
node_opcua_service_endpoints_1.UserTokenType.Anonymous,
|
|
837
|
+
node_opcua_service_endpoints_1.UserTokenType.UserName,
|
|
838
|
+
node_opcua_service_endpoints_1.UserTokenType.Certificate
|
|
839
|
+
// NOT USED YET : UserTokenType.IssuedToken
|
|
840
|
+
];
|
|
820
841
|
//# sourceMappingURL=server_end_point.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server_end_point.js","sourceRoot":"","sources":["../source/server_end_point.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server_end_point.js","sourceRoot":"","sources":["../source/server_end_point.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-opcua-server",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.84.0",
|
|
4
4
|
"description": "pure nodejs OPCUA SDK - module -server",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc -b",
|
|
@@ -17,57 +17,57 @@
|
|
|
17
17
|
"chalk": "4.1.2",
|
|
18
18
|
"dequeue": "^1.0.5",
|
|
19
19
|
"lodash": "4.17.21",
|
|
20
|
-
"node-opcua-address-space": "2.
|
|
21
|
-
"node-opcua-address-space-base": "2.
|
|
20
|
+
"node-opcua-address-space": "2.84.0",
|
|
21
|
+
"node-opcua-address-space-base": "2.84.0",
|
|
22
22
|
"node-opcua-assert": "2.77.0",
|
|
23
|
-
"node-opcua-basic-types": "2.
|
|
24
|
-
"node-opcua-binary-stream": "2.
|
|
25
|
-
"node-opcua-certificate-manager": "2.
|
|
26
|
-
"node-opcua-client": "2.
|
|
27
|
-
"node-opcua-client-dynamic-extension-object": "2.
|
|
28
|
-
"node-opcua-common": "2.
|
|
23
|
+
"node-opcua-basic-types": "2.83.0",
|
|
24
|
+
"node-opcua-binary-stream": "2.83.0",
|
|
25
|
+
"node-opcua-certificate-manager": "2.83.0",
|
|
26
|
+
"node-opcua-client": "2.84.0",
|
|
27
|
+
"node-opcua-client-dynamic-extension-object": "2.84.0",
|
|
28
|
+
"node-opcua-common": "2.84.0",
|
|
29
29
|
"node-opcua-constants": "2.77.0",
|
|
30
30
|
"node-opcua-crypto": "^1.12.0",
|
|
31
|
-
"node-opcua-data-model": "2.
|
|
32
|
-
"node-opcua-data-value": "2.
|
|
33
|
-
"node-opcua-date-time": "2.
|
|
34
|
-
"node-opcua-debug": "2.
|
|
35
|
-
"node-opcua-extension-object": "2.
|
|
36
|
-
"node-opcua-factory": "2.
|
|
31
|
+
"node-opcua-data-model": "2.83.0",
|
|
32
|
+
"node-opcua-data-value": "2.84.0",
|
|
33
|
+
"node-opcua-date-time": "2.83.0",
|
|
34
|
+
"node-opcua-debug": "2.83.0",
|
|
35
|
+
"node-opcua-extension-object": "2.84.0",
|
|
36
|
+
"node-opcua-factory": "2.83.0",
|
|
37
37
|
"node-opcua-hostname": "2.77.0",
|
|
38
|
-
"node-opcua-nodeid": "2.
|
|
38
|
+
"node-opcua-nodeid": "2.83.0",
|
|
39
39
|
"node-opcua-nodesets": "2.77.0",
|
|
40
|
-
"node-opcua-numeric-range": "2.
|
|
41
|
-
"node-opcua-object-registry": "2.
|
|
42
|
-
"node-opcua-secure-channel": "2.
|
|
43
|
-
"node-opcua-service-browse": "2.
|
|
44
|
-
"node-opcua-service-call": "2.
|
|
45
|
-
"node-opcua-service-discovery": "2.
|
|
46
|
-
"node-opcua-service-endpoints": "2.
|
|
47
|
-
"node-opcua-service-filter": "2.
|
|
48
|
-
"node-opcua-service-history": "2.
|
|
49
|
-
"node-opcua-service-node-management": "2.
|
|
50
|
-
"node-opcua-service-query": "2.
|
|
51
|
-
"node-opcua-service-read": "2.
|
|
52
|
-
"node-opcua-service-register-node": "2.
|
|
53
|
-
"node-opcua-service-secure-channel": "2.
|
|
54
|
-
"node-opcua-service-session": "2.
|
|
55
|
-
"node-opcua-service-subscription": "2.
|
|
56
|
-
"node-opcua-service-translate-browse-path": "2.
|
|
57
|
-
"node-opcua-service-write": "2.
|
|
58
|
-
"node-opcua-status-code": "2.
|
|
59
|
-
"node-opcua-types": "2.
|
|
60
|
-
"node-opcua-utils": "2.
|
|
61
|
-
"node-opcua-variant": "2.
|
|
40
|
+
"node-opcua-numeric-range": "2.83.0",
|
|
41
|
+
"node-opcua-object-registry": "2.83.0",
|
|
42
|
+
"node-opcua-secure-channel": "2.84.0",
|
|
43
|
+
"node-opcua-service-browse": "2.84.0",
|
|
44
|
+
"node-opcua-service-call": "2.84.0",
|
|
45
|
+
"node-opcua-service-discovery": "2.84.0",
|
|
46
|
+
"node-opcua-service-endpoints": "2.84.0",
|
|
47
|
+
"node-opcua-service-filter": "2.84.0",
|
|
48
|
+
"node-opcua-service-history": "2.84.0",
|
|
49
|
+
"node-opcua-service-node-management": "2.84.0",
|
|
50
|
+
"node-opcua-service-query": "2.84.0",
|
|
51
|
+
"node-opcua-service-read": "2.84.0",
|
|
52
|
+
"node-opcua-service-register-node": "2.84.0",
|
|
53
|
+
"node-opcua-service-secure-channel": "2.84.0",
|
|
54
|
+
"node-opcua-service-session": "2.84.0",
|
|
55
|
+
"node-opcua-service-subscription": "2.84.0",
|
|
56
|
+
"node-opcua-service-translate-browse-path": "2.84.0",
|
|
57
|
+
"node-opcua-service-write": "2.84.0",
|
|
58
|
+
"node-opcua-status-code": "2.83.0",
|
|
59
|
+
"node-opcua-types": "2.84.0",
|
|
60
|
+
"node-opcua-utils": "2.83.0",
|
|
61
|
+
"node-opcua-variant": "2.84.0",
|
|
62
62
|
"thenify": "^3.3.1"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"node-opcua-data-access": "2.
|
|
66
|
-
"node-opcua-leak-detector": "2.
|
|
67
|
-
"node-opcua-pki": "^2.18.
|
|
65
|
+
"node-opcua-data-access": "2.84.0",
|
|
66
|
+
"node-opcua-leak-detector": "2.83.0",
|
|
67
|
+
"node-opcua-pki": "^2.18.3",
|
|
68
68
|
"node-opcua-test-helpers": "2.77.0",
|
|
69
69
|
"should": "^13.2.3",
|
|
70
|
-
"sinon": "^14.0.
|
|
70
|
+
"sinon": "^14.0.2",
|
|
71
71
|
"underscore": "^1.13.6"
|
|
72
72
|
},
|
|
73
73
|
"author": "Etienne Rossignon",
|
|
@@ -85,5 +85,5 @@
|
|
|
85
85
|
"internet of things"
|
|
86
86
|
],
|
|
87
87
|
"homepage": "http://node-opcua.github.io/",
|
|
88
|
-
"gitHead": "
|
|
88
|
+
"gitHead": "47af3803b75cecd9da509053e89c023b981a34de"
|
|
89
89
|
}
|
package/source/base_server.ts
CHANGED
|
@@ -20,7 +20,12 @@ import { coerceLocalizedText, LocalizedText } from "node-opcua-data-model";
|
|
|
20
20
|
import { installPeriodicClockAdjustment, uninstallPeriodicClockAdjustment } from "node-opcua-date-time";
|
|
21
21
|
import { checkDebugFlag, make_debugLog, make_errorLog } from "node-opcua-debug";
|
|
22
22
|
import { displayTraceFromThisProjectOnly } from "node-opcua-debug";
|
|
23
|
-
import {
|
|
23
|
+
import {
|
|
24
|
+
extractFullyQualifiedDomainName,
|
|
25
|
+
getFullyQualifiedDomainName,
|
|
26
|
+
getHostname,
|
|
27
|
+
resolveFullyQualifiedDomainName
|
|
28
|
+
} from "node-opcua-hostname";
|
|
24
29
|
import { Message, Response, ServerSecureChannelLayer, ServerSecureChannelParent } from "node-opcua-secure-channel";
|
|
25
30
|
import { FindServersRequest, FindServersResponse } from "node-opcua-service-discovery";
|
|
26
31
|
import { ApplicationType, GetEndpointsResponse } from "node-opcua-service-endpoints";
|
|
@@ -41,7 +46,6 @@ const debugLog = make_debugLog(__filename);
|
|
|
41
46
|
const errorLog = make_errorLog(__filename);
|
|
42
47
|
const warningLog = errorLog;
|
|
43
48
|
|
|
44
|
-
|
|
45
49
|
const default_server_info = {
|
|
46
50
|
// The globally unique identifier for the application instance. This URI is used as
|
|
47
51
|
// ServerUri in Services if the application is a Server.
|
|
@@ -179,14 +183,14 @@ export class OPCUABaseServer extends OPCUASecureObject {
|
|
|
179
183
|
if (fs.existsSync(this.certificateFile)) {
|
|
180
184
|
return;
|
|
181
185
|
}
|
|
182
|
-
|
|
186
|
+
|
|
183
187
|
// collect all hostnames
|
|
184
188
|
const hostnames = [];
|
|
185
189
|
for (const e of this.endpoints) {
|
|
186
|
-
for(
|
|
190
|
+
for (const ee of e.endpointDescriptions()) {
|
|
187
191
|
/* to do */
|
|
188
192
|
}
|
|
189
|
-
}
|
|
193
|
+
}
|
|
190
194
|
|
|
191
195
|
const lockfile = path.join(this.certificateFile + ".lock");
|
|
192
196
|
await withLock({ lockfile }, async () => {
|
|
@@ -194,8 +198,8 @@ export class OPCUABaseServer extends OPCUASecureObject {
|
|
|
194
198
|
const applicationUri = this.serverInfo.applicationUri!;
|
|
195
199
|
const fqdn = getFullyQualifiedDomainName();
|
|
196
200
|
const hostname = getHostname();
|
|
197
|
-
const dns = [...
|
|
198
|
-
|
|
201
|
+
const dns = [...new Set([fqdn, hostname])];
|
|
202
|
+
|
|
199
203
|
await this.serverCertificateManager.createSelfSignedCertificate({
|
|
200
204
|
applicationUri,
|
|
201
205
|
dns,
|
|
@@ -505,8 +509,28 @@ export class OPCUABaseServer extends OPCUASecureObject {
|
|
|
505
509
|
|
|
506
510
|
const response = new GetEndpointsResponse({});
|
|
507
511
|
|
|
512
|
+
/**
|
|
513
|
+
* endpointUrl String The network address that the Client used to access the DiscoveryEndpoint.
|
|
514
|
+
* The Server uses this information for diagnostics and to determine what URLs to return in the response.
|
|
515
|
+
* The Server should return a suitable default URL if it does not recognize the HostName in the URL
|
|
516
|
+
* localeIds []LocaleId List of locales to use.
|
|
517
|
+
* Specifies the locale to use when returning human readable strings.
|
|
518
|
+
* profileUris [] String List of Transport Profile that the returned Endpoints shall support.
|
|
519
|
+
* OPC 10000-7 defines URIs for the Transport Profiles.
|
|
520
|
+
* All Endpoints are returned if the list is empty.
|
|
521
|
+
* If the URI is a URL, this URL may have a query string appended.
|
|
522
|
+
* The Transport Profiles that support query strings are defined in OPC 10000-7.
|
|
523
|
+
*/
|
|
508
524
|
response.endpoints = this._get_endpoints(null);
|
|
509
|
-
|
|
525
|
+
const e = response.endpoints.map((e) => e.endpointUrl);
|
|
526
|
+
if (request.endpointUrl) {
|
|
527
|
+
const filtered = response.endpoints.filter(
|
|
528
|
+
(endpoint: EndpointDescription) => endpoint.endpointUrl === request.endpointUrl
|
|
529
|
+
);
|
|
530
|
+
if (filtered.length > 0) {
|
|
531
|
+
response.endpoints = filtered;
|
|
532
|
+
}
|
|
533
|
+
}
|
|
510
534
|
response.endpoints = response.endpoints.filter((endpoint: EndpointDescription) => !(endpoint as any).restricted);
|
|
511
535
|
|
|
512
536
|
// apply filters
|
package/source/opcua_server.ts
CHANGED
|
@@ -1141,7 +1141,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
1141
1141
|
});
|
|
1142
1142
|
this.objectFactory = new Factory(this.engine);
|
|
1143
1143
|
|
|
1144
|
-
const endpointDefinitions = options.alternateEndpoints || [];
|
|
1144
|
+
const endpointDefinitions: OPCUAServerEndpointOptions[] = options.alternateEndpoints || [];
|
|
1145
1145
|
const hostname = getFullyQualifiedDomainName();
|
|
1146
1146
|
|
|
1147
1147
|
endpointDefinitions.push({
|
|
@@ -1752,7 +1752,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
1752
1752
|
function rejectConnection(server: OPCUAServer, statusCode: StatusCode): void {
|
|
1753
1753
|
server.engine.incrementSecurityRejectedSessionCount();
|
|
1754
1754
|
|
|
1755
|
-
const response1 = new
|
|
1755
|
+
const response1 = new ServiceFault({
|
|
1756
1756
|
responseHeader: { serviceResult: statusCode }
|
|
1757
1757
|
});
|
|
1758
1758
|
channel.send_response("MSG", response1, message);
|
|
@@ -3506,7 +3506,7 @@ export class OPCUAServer extends OPCUABaseServer {
|
|
|
3506
3506
|
return g_sendError(channel, message, HistoryUpdateResponse, StatusCodes.BadServiceUnsupported);
|
|
3507
3507
|
}
|
|
3508
3508
|
|
|
3509
|
-
private createEndpoint(port1: number, serverOptions:
|
|
3509
|
+
private createEndpoint(port1: number, serverOptions: {defaultSecureTokenLifetime?: number, timeout? : number}): OPCUAServerEndPoint {
|
|
3510
3510
|
// add the tcp/ip endpoint with no security
|
|
3511
3511
|
const endPoint = new OPCUAServerEndPoint({
|
|
3512
3512
|
port: port1,
|