@itentialopensource/adapter-zscaler 0.10.5 → 0.10.7
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/CHANGELOG.md +16 -0
- package/SYSTEMINFO.md +1 -1
- package/TAB2.md +3 -3
- package/adapter.js +1 -1
- package/metadata.json +7 -11
- package/package.json +4 -4
- package/refs?service=git-upload-pack +0 -0
- package/report/adapterInfo.json +4 -4
- package/sampleProperties.json +6 -6
- package/test/integration/adapterTestConnectivity.js +0 -24
- package/test/integration/adapterTestIntegration.js +11 -7
- package/test/unit/adapterTestUnit.js +13 -9
- package/compliance-report.json +0 -9
- package/compliance-report.txt +0 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
|
|
2
|
+
## 0.10.7 [09-20-2024]
|
|
3
|
+
|
|
4
|
+
* add workshop and fix vulnerabilities
|
|
5
|
+
|
|
6
|
+
See merge request itentialopensource/adapters/adapter-zscaler!36
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 0.10.6 [08-15-2024]
|
|
11
|
+
|
|
12
|
+
* fix vulnerabilities
|
|
13
|
+
|
|
14
|
+
See merge request itentialopensource/adapters/adapter-zscaler!34
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
2
18
|
## 0.10.5 [08-15-2024]
|
|
3
19
|
|
|
4
20
|
* Changes made at 2024.08.14_19:52PM
|
package/SYSTEMINFO.md
CHANGED
|
@@ -4,7 +4,7 @@ Vendor: Zscaler
|
|
|
4
4
|
Homepage: https://www.zscaler.com/
|
|
5
5
|
|
|
6
6
|
Product: Internet Access (ZIA)
|
|
7
|
-
Product Page: https://www.zscaler.com/products/zscaler-internet-access
|
|
7
|
+
Product Page: https://www.zscaler.com/products-and-solutions/zscaler-internet-access
|
|
8
8
|
|
|
9
9
|
## Introduction
|
|
10
10
|
We classify Zscaler into the Security domain as Zscaler provides access to cloud security services and functionalities.
|
package/TAB2.md
CHANGED
|
@@ -71,9 +71,9 @@ Sample Properties can be used to help you configure the adapter in the Itential
|
|
|
71
71
|
"protocol": "https",
|
|
72
72
|
"authentication": {
|
|
73
73
|
"auth_method": "request_token",
|
|
74
|
-
"username": "
|
|
75
|
-
"password": "
|
|
76
|
-
"apiKey": "
|
|
74
|
+
"username": "username",
|
|
75
|
+
"password": "password",
|
|
76
|
+
"apiKey": "token",
|
|
77
77
|
"token": "",
|
|
78
78
|
"token_timeout": 180000,
|
|
79
79
|
"token_cache": "local",
|
package/adapter.js
CHANGED
|
@@ -683,7 +683,7 @@ class Zscaler extends AdapterBaseCl {
|
|
|
683
683
|
const { allProps: { authentication: { apiKey } } } = this;
|
|
684
684
|
const timestamp = Date.now().toString();
|
|
685
685
|
if (!apiKey) {
|
|
686
|
-
return {
|
|
686
|
+
return {};
|
|
687
687
|
}
|
|
688
688
|
const high = timestamp.substring(timestamp.length - 6);
|
|
689
689
|
|
package/metadata.json
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "adapter-zscaler",
|
|
3
3
|
"webName": "Adapter for Integration to Zscaler",
|
|
4
|
+
"supportLevel": "community",
|
|
4
5
|
"vendor": "Zscaler",
|
|
5
6
|
"product": "Zscaler",
|
|
7
|
+
"techAlliance": false,
|
|
6
8
|
"osVersion": [],
|
|
7
9
|
"apiVersions": [],
|
|
8
10
|
"iapVersions": [
|
|
@@ -46,7 +48,7 @@
|
|
|
46
48
|
"storeLink": "",
|
|
47
49
|
"npmLink": "https://www.npmjs.com/package/@itentialopensource/adapter-zscaler",
|
|
48
50
|
"repoLink": "https://gitlab.com/itentialopensource/adapters/adapter-zscaler",
|
|
49
|
-
"docLink": "https://
|
|
51
|
+
"docLink": "https://gitlab.com/itentialopensource/adapters/adapter-zscaler/-/blob/master/README.md?ref_type=heads",
|
|
50
52
|
"demoLinks": [
|
|
51
53
|
{
|
|
52
54
|
"title": "SD-WAN & Multi-Cloud Network Automation with Itential (ONUG)",
|
|
@@ -64,7 +66,7 @@
|
|
|
64
66
|
"issueLink": "https://itential.atlassian.net/servicedesk/customer/portals",
|
|
65
67
|
"webLink": "https://www.itential.com/adapters/zscaler/",
|
|
66
68
|
"vendorLink": "https://www.zscaler.com/",
|
|
67
|
-
"productLink": "https://www.zscaler.com/products/zscaler-internet-access",
|
|
69
|
+
"productLink": "https://www.zscaler.com/products-and-solutions/zscaler-internet-access",
|
|
68
70
|
"apiLinks": [
|
|
69
71
|
{
|
|
70
72
|
"title": "Zscaler Internet Access (ZIA)",
|
|
@@ -77,12 +79,8 @@
|
|
|
77
79
|
"public": true
|
|
78
80
|
}
|
|
79
81
|
],
|
|
80
|
-
"workshopLinks": [
|
|
81
|
-
|
|
82
|
-
],
|
|
83
|
-
"workshopHomePage": [
|
|
84
|
-
"https://www.itential.com/get-started/"
|
|
85
|
-
]
|
|
82
|
+
"workshopLinks": [],
|
|
83
|
+
"workshopHomePage": "https://www.itential.com/get-started/"
|
|
86
84
|
},
|
|
87
85
|
"assets": [],
|
|
88
86
|
"relatedItems": {
|
|
@@ -92,7 +90,5 @@
|
|
|
92
90
|
"workflowProjects": [],
|
|
93
91
|
"transformationProjects": [],
|
|
94
92
|
"exampleProjects": []
|
|
95
|
-
}
|
|
96
|
-
"supportLevel": "community",
|
|
97
|
-
"techAlliance": false
|
|
93
|
+
}
|
|
98
94
|
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itentialopensource/adapter-zscaler",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.7",
|
|
4
4
|
"description": "This adapter integrates with system Zscaler",
|
|
5
5
|
"main": "adapter.js",
|
|
6
6
|
"wizardVersion": "2.44.7",
|
|
7
|
-
"engineVersion": "1.
|
|
7
|
+
"engineVersion": "1.68.2",
|
|
8
8
|
"adapterType": "http",
|
|
9
9
|
"scripts": {
|
|
10
10
|
"artifactize": "npm i && node utils/packModificationScript.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"author": "Itential",
|
|
53
53
|
"homepage": "https://gitlab.com/itentialopensource/adapters/adapter-zscaler#readme",
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@itentialopensource/adapter-utils": "^5.
|
|
55
|
+
"@itentialopensource/adapter-utils": "^5.8.0",
|
|
56
56
|
"acorn": "^8.12.1",
|
|
57
57
|
"ajv": "^8.17.1",
|
|
58
58
|
"axios": "^1.7.4",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"prompts": "^2.4.2",
|
|
68
68
|
"readline-sync": "^1.4.10",
|
|
69
69
|
"semver": "^7.6.3",
|
|
70
|
-
"winston": "^3.
|
|
70
|
+
"winston": "^3.14.2"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"chai": "^4.3.7",
|
|
Binary file
|
package/report/adapterInfo.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.10.
|
|
2
|
+
"version": "0.10.6",
|
|
3
3
|
"configLines": 22098,
|
|
4
4
|
"scriptLines": 1783,
|
|
5
5
|
"codeLines": 20937,
|
|
6
|
-
"testLines":
|
|
7
|
-
"testCases":
|
|
8
|
-
"totalCodeLines":
|
|
6
|
+
"testLines": 14642,
|
|
7
|
+
"testCases": 745,
|
|
8
|
+
"totalCodeLines": 37362,
|
|
9
9
|
"wfTasks": 268
|
|
10
10
|
}
|
package/sampleProperties.json
CHANGED
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
"protocol": "https",
|
|
16
16
|
"authentication": {
|
|
17
17
|
"auth_method": "request_token",
|
|
18
|
-
"username": "
|
|
19
|
-
"password": "
|
|
20
|
-
"apiKey": "
|
|
18
|
+
"username": "username",
|
|
19
|
+
"password": "password",
|
|
20
|
+
"apiKey": "token",
|
|
21
21
|
"token": "",
|
|
22
22
|
"token_timeout": 180000,
|
|
23
23
|
"token_cache": "local",
|
|
@@ -134,7 +134,7 @@
|
|
|
134
134
|
"ostypePrefix": "meraki-",
|
|
135
135
|
"port": "{port}",
|
|
136
136
|
"ipaddress": "{ip_addr}",
|
|
137
|
-
"serial"
|
|
137
|
+
"serial": "{serial}"
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
140
|
],
|
|
@@ -160,7 +160,7 @@
|
|
|
160
160
|
"ostypePrefix": "meraki-",
|
|
161
161
|
"port": "{port}",
|
|
162
162
|
"ipaddress": "{ip_addr}",
|
|
163
|
-
"serial"
|
|
163
|
+
"serial": "{serial}",
|
|
164
164
|
"id": "{myid}"
|
|
165
165
|
}
|
|
166
166
|
}
|
|
@@ -244,7 +244,7 @@
|
|
|
244
244
|
"ostypePrefix": "meraki-",
|
|
245
245
|
"port": "{port}",
|
|
246
246
|
"ipaddress": "{ip_addr}",
|
|
247
|
-
"serial"
|
|
247
|
+
"serial": "{serial}",
|
|
248
248
|
"id": "{myid}"
|
|
249
249
|
}
|
|
250
250
|
}
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
/* eslint no-unused-vars: warn */
|
|
5
5
|
|
|
6
6
|
const assert = require('assert');
|
|
7
|
-
const http = require('http');
|
|
8
7
|
const https = require('https');
|
|
9
8
|
const mocha = require('mocha');
|
|
10
9
|
const ping = require('ping');
|
|
@@ -53,29 +52,6 @@ describe('[integration] Adapter Test', () => {
|
|
|
53
52
|
});
|
|
54
53
|
});
|
|
55
54
|
|
|
56
|
-
it('Support HTTP on port 80', (done) => {
|
|
57
|
-
const requestOptions = {
|
|
58
|
-
host,
|
|
59
|
-
port: 80,
|
|
60
|
-
method: 'HEAD'
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
const req = http.request(requestOptions, (res) => {
|
|
64
|
-
try {
|
|
65
|
-
assert.ok(res.statusCode >= 200 && res.statusCode < 400);
|
|
66
|
-
done();
|
|
67
|
-
} catch (error) {
|
|
68
|
-
done(error);
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
req.on('error', (err) => {
|
|
73
|
-
done(err);
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
req.end();
|
|
77
|
-
});
|
|
78
|
-
|
|
79
55
|
it('Support HTTPS on port 443', (done) => {
|
|
80
56
|
const requestOptions = {
|
|
81
57
|
host,
|
|
@@ -36,13 +36,17 @@ const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
|
|
|
36
36
|
// these variables can be changed to run in integrated mode so easier to set them here
|
|
37
37
|
// always check these in with bogus data!!!
|
|
38
38
|
samProps.stub = true;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
samProps.
|
|
42
|
-
samProps.
|
|
43
|
-
samProps.
|
|
44
|
-
samProps.
|
|
45
|
-
samProps.
|
|
39
|
+
|
|
40
|
+
// uncomment if connecting
|
|
41
|
+
// samProps.host = 'replace.hostorip.here';
|
|
42
|
+
// samProps.authentication.username = 'username';
|
|
43
|
+
// samProps.authentication.password = 'password';
|
|
44
|
+
// samProps.authentication.token = 'password';
|
|
45
|
+
// samProps.protocol = 'http';
|
|
46
|
+
// samProps.port = 80;
|
|
47
|
+
// samProps.ssl.enabled = false;
|
|
48
|
+
// samProps.ssl.accept_invalid_cert = false;
|
|
49
|
+
|
|
46
50
|
if (samProps.request.attempt_timeout < 30000) {
|
|
47
51
|
samProps.request.attempt_timeout = 30000;
|
|
48
52
|
}
|
|
@@ -36,13 +36,17 @@ const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
|
|
|
36
36
|
// these variables can be changed to run in integrated mode so easier to set them here
|
|
37
37
|
// always check these in with bogus data!!!
|
|
38
38
|
samProps.stub = true;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
samProps.
|
|
42
|
-
samProps.
|
|
43
|
-
samProps.
|
|
44
|
-
samProps.
|
|
45
|
-
samProps.
|
|
39
|
+
|
|
40
|
+
// uncomment if connecting
|
|
41
|
+
// samProps.host = 'replace.hostorip.here';
|
|
42
|
+
// samProps.authentication.username = 'username';
|
|
43
|
+
// samProps.authentication.password = 'password';
|
|
44
|
+
// samProps.authentication.token = 'password';
|
|
45
|
+
// samProps.protocol = 'http';
|
|
46
|
+
// samProps.port = 80;
|
|
47
|
+
// samProps.ssl.enabled = false;
|
|
48
|
+
// samProps.ssl.accept_invalid_cert = false;
|
|
49
|
+
|
|
46
50
|
samProps.request.attempt_timeout = 1200000;
|
|
47
51
|
const attemptTimeout = samProps.request.attempt_timeout;
|
|
48
52
|
const { stub } = samProps;
|
|
@@ -323,7 +327,7 @@ describe('[unit] Zscaler Adapter Test', () => {
|
|
|
323
327
|
assert.equal('^0.4.4', packageDotJson.dependencies.ping);
|
|
324
328
|
assert.equal('^1.4.10', packageDotJson.dependencies['readline-sync']);
|
|
325
329
|
assert.equal('^7.6.3', packageDotJson.dependencies.semver);
|
|
326
|
-
assert.equal('^3.
|
|
330
|
+
assert.equal('^3.14.2', packageDotJson.dependencies.winston);
|
|
327
331
|
done();
|
|
328
332
|
} catch (error) {
|
|
329
333
|
log.error(`Test Failure: ${error}`);
|
|
@@ -561,7 +565,7 @@ describe('[unit] Zscaler Adapter Test', () => {
|
|
|
561
565
|
log.error(`Adapter Exception: ${error}`);
|
|
562
566
|
done(error);
|
|
563
567
|
}
|
|
564
|
-
});
|
|
568
|
+
}).timeout(attemptTimeout);
|
|
565
569
|
});
|
|
566
570
|
|
|
567
571
|
describe('propertiesSchema.json', () => {
|
package/compliance-report.json
DELETED
package/compliance-report.txt
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
---------------------------------------------------------------------------------------------
|
|
2
|
-
**** Project Compliance Summary ****
|
|
3
|
-
0 project(s) are not valid
|
|
4
|
-
0 project(s) are valid
|
|
5
|
-
---------------------------------------------------------------------------------------------
|