@netacea/cloudflare 4.0.3 → 5.1.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/CHANGELOG.md +33 -2
- package/dist/package.json +5 -4
- package/dist/src/Cloudflare.d.ts +6 -1
- package/dist/src/Cloudflare.js +20 -6
- package/dist/src/Cloudflare.js.map +1 -1
- package/dist/src/cookieEncryption.d.ts +2 -0
- package/dist/src/cookieEncryption.js +23 -0
- package/dist/src/cookieEncryption.js.map +1 -0
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,9 +3,40 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
# [5.1.0](https://github.com/Netacea/JavascriptATAIntegration/compare/@netacea/cloudflare@4.1.0...@netacea/cloudflare@5.1.0) (2023-02-03)
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **Cloudflare:** PE2-359: add jose dependency ([202666c](https://github.com/Netacea/JavascriptATAIntegration/commit/202666ccfdda84441c6ad22300ffd33301b47e73))
|
|
12
|
+
* **Cloudflare:** PE2-359: bump to version 5 ([de5814a](https://github.com/Netacea/JavascriptATAIntegration/commit/de5814a4c2418c58b6cfe1aa05d15b8237d62def))
|
|
13
|
+
* **Cloudflare:** PE2-359: linting ([db7411b](https://github.com/Netacea/JavascriptATAIntegration/commit/db7411ba0d9bedf4e6a6f0e6de72a16a0fc1ae96))
|
|
14
|
+
* **Cloudflare:** PE2-359: reduce duplication in test code ([a5f30c4](https://github.com/Netacea/JavascriptATAIntegration/commit/a5f30c4cf802f7e464da1c7a946e70fc7c74d470))
|
|
15
|
+
* **Cloudflare:** PE2-359: test with & without encryption ([2c438f4](https://github.com/Netacea/JavascriptATAIntegration/commit/2c438f47cd6f75987b90e426404e6eec5059c0b9))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* **Cloudflare:** 359: encrypt netacea cookies ([56f6956](https://github.com/Netacea/JavascriptATAIntegration/commit/56f69560266499207f4e7711e4f22ce2f046a863))
|
|
21
|
+
* **Cloudflare:** PE2-359: encrypt cookies with secret ([789b9c3](https://github.com/Netacea/JavascriptATAIntegration/commit/789b9c369fc1784376ceb7109f609531e2b44ad8))
|
|
22
|
+
* **Cloudflare:** PE2-359: use A256GCM encryption ([efe2c7c](https://github.com/Netacea/JavascriptATAIntegration/commit/efe2c7c9b0519917e28b7b0063241b111974c148))
|
|
23
|
+
* **Cloudflare:** PE2-359: use compact encryption ([2aa9c2d](https://github.com/Netacea/JavascriptATAIntegration/commit/2aa9c2d01207a2a3d190a9bdcb03bf9c618868b2))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
# [4.1.0](https://github.com/Netacea/JavascriptATAIntegration/compare/@netacea/cloudflare@4.0.1...@netacea/cloudflare@4.1.0) (2023-01-30)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
### Bug Fixes
|
|
33
|
+
|
|
34
|
+
* **all:** PE-414 fix package versions to match published ([9074a82](https://github.com/Netacea/JavascriptATAIntegration/commit/9074a82927cceddd13d40a927adf4c3ec7cc6a72))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Features
|
|
38
|
+
|
|
39
|
+
* **NetaceaBase:** PE2-359: make readCookie() and buildCookieFromValues() async ([399a0f4](https://github.com/Netacea/JavascriptATAIntegration/commit/399a0f47f58d1b9deba78dc1a99cdf887f9d54e7))
|
|
9
40
|
|
|
10
41
|
|
|
11
42
|
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netacea/cloudflare",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.1.0",
|
|
4
4
|
"description": "Netacea Cloudflare CDN Integration",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"types": "dist/src/index.d.ts",
|
|
@@ -16,8 +16,9 @@
|
|
|
16
16
|
},
|
|
17
17
|
"license": "ISC",
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@netacea/netaceaintegrationbase": "^1.
|
|
20
|
-
"@netacea/netaceaintegrationtestrunner": "^1.
|
|
19
|
+
"@netacea/netaceaintegrationbase": "^1.14.1",
|
|
20
|
+
"@netacea/netaceaintegrationtestrunner": "^1.6.1",
|
|
21
|
+
"jose": "^4.11.2"
|
|
21
22
|
},
|
|
22
23
|
"devDependencies": {
|
|
23
24
|
"@cloudflare/workers-types": "^2.0.0",
|
|
@@ -33,5 +34,5 @@
|
|
|
33
34
|
"tsconfig-paths": "^3.9.0",
|
|
34
35
|
"typescript": "^3.9.7"
|
|
35
36
|
},
|
|
36
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "8aa3af041b2714615cab11d98c2bc14567c554cc"
|
|
37
38
|
}
|
package/dist/src/Cloudflare.d.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import NetaceaBase, { InjectResponse, MakeRequestArgs, MakeRequestResponse, MitigateResponse, NetaceaBaseArgs } from '@netacea/netaceaintegrationbase';
|
|
2
|
-
export declare type CloudflareConstructorArgs = NetaceaBaseArgs
|
|
2
|
+
export declare type CloudflareConstructorArgs = NetaceaBaseArgs & {
|
|
3
|
+
cookieEncryptionKey?: string;
|
|
4
|
+
};
|
|
3
5
|
declare type CloudflareMitigateResponse = MitigateResponse<Response>;
|
|
4
6
|
export default class Cloudflare extends NetaceaBase<Request, Response> {
|
|
7
|
+
private readonly cookieEncryptionKey;
|
|
5
8
|
constructor(args: CloudflareConstructorArgs);
|
|
6
9
|
/**
|
|
7
10
|
*
|
|
@@ -23,5 +26,7 @@ export default class Cloudflare extends NetaceaBase<Request, Response> {
|
|
|
23
26
|
private getMitigationResponse;
|
|
24
27
|
private timeoutCheck;
|
|
25
28
|
getCookieHeader(args: Request): string | null | undefined;
|
|
29
|
+
protected encryptCookieValue(cookieValue: string): Promise<string>;
|
|
30
|
+
protected decryptCookieValue(encryptedCookieValue: string): Promise<string>;
|
|
26
31
|
}
|
|
27
32
|
export {};
|
package/dist/src/Cloudflare.js
CHANGED
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const netaceaintegrationbase_1 = require("@netacea/netaceaintegrationbase");
|
|
4
4
|
const pack = require("../package.json");
|
|
5
|
+
const cookieEncryption_1 = require("./cookieEncryption");
|
|
5
6
|
class Cloudflare extends netaceaintegrationbase_1.default {
|
|
6
7
|
// Lint rule disables as it is disabled, but we want to always use cloudflareConstructorArgs interface
|
|
7
8
|
// eslint-disable-next-line @typescript-eslint/no-useless-constructor
|
|
8
9
|
constructor(args) {
|
|
9
10
|
super(args);
|
|
11
|
+
this.cookieEncryptionKey = args.cookieEncryptionKey;
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
12
14
|
*
|
|
@@ -19,14 +21,14 @@ class Cloudflare extends netaceaintegrationbase_1.default {
|
|
|
19
21
|
async run(event, responsePredicate) {
|
|
20
22
|
var _a, _b;
|
|
21
23
|
const netaceaResult = await this.timeoutCheck(this.runMitigation(event.request), this.timeout);
|
|
22
|
-
const setCookie = this.readCookie('_mitata', netaceaResult.setCookie);
|
|
24
|
+
const setCookie = await this.readCookie('_mitata', netaceaResult.setCookie);
|
|
23
25
|
let mitata = '';
|
|
24
26
|
if (setCookie !== undefined && setCookie !== '') {
|
|
25
27
|
mitata = setCookie;
|
|
26
28
|
}
|
|
27
29
|
else {
|
|
28
30
|
const cookieString = this.getHeaderValueOrDefault(event.request.headers, 'cookie');
|
|
29
|
-
mitata = (_a = this.readCookie('_mitata', cookieString)) !== null && _a !== void 0 ? _a : '';
|
|
31
|
+
mitata = (_a = await this.readCookie('_mitata', cookieString)) !== null && _a !== void 0 ? _a : '';
|
|
30
32
|
}
|
|
31
33
|
if (mitata !== '') {
|
|
32
34
|
const { match, mitigate, captcha } = (_b = netaceaintegrationbase_1.matchMitataCookie(mitata)) !== null && _b !== void 0 ? _b : {
|
|
@@ -93,10 +95,10 @@ class Cloudflare extends netaceaintegrationbase_1.default {
|
|
|
93
95
|
var _a, _b, _c, _d;
|
|
94
96
|
const setCookie = this.getHeaderValueOrDefault(response.headers, 'set-cookie');
|
|
95
97
|
const cookieString = setCookie !== '' ? setCookie : this.getHeaderValueOrDefault(request.headers, 'cookie');
|
|
96
|
-
let mitata = (_a = this.readCookie('_mitata', cookieString)) !== null && _a !== void 0 ? _a : '';
|
|
98
|
+
let mitata = (_a = await this.readCookie('_mitata', cookieString)) !== null && _a !== void 0 ? _a : '';
|
|
97
99
|
if (mitata === undefined || mitata === '') {
|
|
98
100
|
const cookieString = this.getHeaderValueOrDefault(request.headers, 'cookie');
|
|
99
|
-
mitata = (_b = this.readCookie('_mitata', cookieString)) !== null && _b !== void 0 ? _b : '';
|
|
101
|
+
mitata = (_b = await this.readCookie('_mitata', cookieString)) !== null && _b !== void 0 ? _b : '';
|
|
100
102
|
}
|
|
101
103
|
const { match, mitigate, captcha } = (_c = netaceaintegrationbase_1.matchMitataCookie(mitata)) !== null && _c !== void 0 ? _c : {
|
|
102
104
|
match: 0,
|
|
@@ -196,8 +198,8 @@ class Cloudflare extends netaceaintegrationbase_1.default {
|
|
|
196
198
|
async getMitigationResponse(request) {
|
|
197
199
|
var _a, _b, _c;
|
|
198
200
|
const cookies = request.headers.get('cookie');
|
|
199
|
-
const mitataCookie = (_a = this.readCookie('_mitata', cookies)) !== null && _a !== void 0 ? _a : '';
|
|
200
|
-
const mitataCaptcha = this.readCookie('_mitatacaptcha', cookies);
|
|
201
|
+
const mitataCookie = (_a = await this.readCookie('_mitata', cookies)) !== null && _a !== void 0 ? _a : '';
|
|
202
|
+
const mitataCaptcha = await this.readCookie('_mitatacaptcha', cookies);
|
|
201
203
|
const clientIp = (_b = request.headers.get('cf-connecting-ip')) !== null && _b !== void 0 ? _b : '';
|
|
202
204
|
const userAgent = (_c = request.headers.get('user-agent')) !== null && _c !== void 0 ? _c : '';
|
|
203
205
|
return await this.processMitigateRequest({
|
|
@@ -218,6 +220,18 @@ class Cloudflare extends netaceaintegrationbase_1.default {
|
|
|
218
220
|
getCookieHeader(args) {
|
|
219
221
|
return args.headers.get('cookie');
|
|
220
222
|
}
|
|
223
|
+
async encryptCookieValue(cookieValue) {
|
|
224
|
+
if (this.cookieEncryptionKey !== undefined) {
|
|
225
|
+
return await cookieEncryption_1.encrypt(cookieValue, this.cookieEncryptionKey);
|
|
226
|
+
}
|
|
227
|
+
return cookieValue;
|
|
228
|
+
}
|
|
229
|
+
async decryptCookieValue(encryptedCookieValue) {
|
|
230
|
+
if (this.cookieEncryptionKey !== undefined) {
|
|
231
|
+
return await cookieEncryption_1.decrypt(encryptedCookieValue, this.cookieEncryptionKey);
|
|
232
|
+
}
|
|
233
|
+
return encryptedCookieValue;
|
|
234
|
+
}
|
|
221
235
|
}
|
|
222
236
|
exports.default = Cloudflare;
|
|
223
237
|
//# sourceMappingURL=Cloudflare.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cloudflare.js","sourceRoot":"","sources":["../../src/Cloudflare.ts"],"names":[],"mappings":";;AAAA,4EAUwC;AACxC,wCAAuC;
|
|
1
|
+
{"version":3,"file":"Cloudflare.js","sourceRoot":"","sources":["../../src/Cloudflare.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.decrypt = exports.encrypt = void 0;
|
|
4
|
+
const jose = require("jose");
|
|
5
|
+
async function encrypt(s, secret) {
|
|
6
|
+
const joseSecret = jose.base64url.decode(secret);
|
|
7
|
+
const payload = new TextEncoder().encode(s);
|
|
8
|
+
const jwt = await new jose.CompactEncrypt(payload)
|
|
9
|
+
.setProtectedHeader({ alg: 'dir', enc: 'A256GCM' })
|
|
10
|
+
.encrypt(joseSecret);
|
|
11
|
+
return jwt;
|
|
12
|
+
}
|
|
13
|
+
exports.encrypt = encrypt;
|
|
14
|
+
async function decrypt(jwe, secret) {
|
|
15
|
+
const joseSecret = jose.base64url.decode(secret);
|
|
16
|
+
const { plaintext } = await jose.compactDecrypt(jwe, joseSecret, {
|
|
17
|
+
keyManagementAlgorithms: ['dir'],
|
|
18
|
+
contentEncryptionAlgorithms: ['A256GCM']
|
|
19
|
+
});
|
|
20
|
+
return new TextDecoder().decode(plaintext);
|
|
21
|
+
}
|
|
22
|
+
exports.decrypt = decrypt;
|
|
23
|
+
//# sourceMappingURL=cookieEncryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookieEncryption.js","sourceRoot":"","sources":["../../src/cookieEncryption.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAErB,KAAK,UAAU,OAAO,CAAE,CAAS,EAAE,MAAc;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEhD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;SAC/C,kBAAkB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;SAClD,OAAO,CAAC,UAAU,CAAC,CAAA;IAEtB,OAAO,GAAG,CAAA;AACZ,CAAC;AATD,0BASC;AAEM,KAAK,UAAU,OAAO,CAAE,GAAW,EAAE,MAAc;IACxD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEhD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE;QAC/D,uBAAuB,EAAE,CAAC,KAAK,CAAC;QAChC,2BAA2B,EAAE,CAAC,SAAS,CAAC;KACzC,CAAC,CAAA;IAEF,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC5C,CAAC;AATD,0BASC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netacea/cloudflare",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.1.0",
|
|
4
4
|
"description": "Netacea Cloudflare CDN Integration",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"types": "dist/src/index.d.ts",
|
|
@@ -16,8 +16,9 @@
|
|
|
16
16
|
},
|
|
17
17
|
"license": "ISC",
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@netacea/netaceaintegrationbase": "^1.
|
|
20
|
-
"@netacea/netaceaintegrationtestrunner": "^1.
|
|
19
|
+
"@netacea/netaceaintegrationbase": "^1.14.1",
|
|
20
|
+
"@netacea/netaceaintegrationtestrunner": "^1.6.1",
|
|
21
|
+
"jose": "^4.11.2"
|
|
21
22
|
},
|
|
22
23
|
"devDependencies": {
|
|
23
24
|
"@cloudflare/workers-types": "^2.0.0",
|
|
@@ -33,5 +34,5 @@
|
|
|
33
34
|
"tsconfig-paths": "^3.9.0",
|
|
34
35
|
"typescript": "^3.9.7"
|
|
35
36
|
},
|
|
36
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "8aa3af041b2714615cab11d98c2bc14567c554cc"
|
|
37
38
|
}
|