lemon-core 3.2.13 → 3.2.14
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.
|
@@ -172,11 +172,11 @@ export declare class MyHttpHeaderTool implements HttpHeaderTool {
|
|
|
172
172
|
* get values by name
|
|
173
173
|
* @param name case-insentive name of field
|
|
174
174
|
*/
|
|
175
|
-
getHeaders
|
|
175
|
+
getHeaders(name: string): string[];
|
|
176
176
|
/**
|
|
177
177
|
* get the last value in header by name
|
|
178
178
|
*/
|
|
179
|
-
getHeader
|
|
179
|
+
getHeader(name: string): string;
|
|
180
180
|
/**
|
|
181
181
|
* check if this request is from externals (like API-GW)
|
|
182
182
|
* @returns true if in external
|
|
@@ -196,11 +196,11 @@ export declare class MyHttpHeaderTool implements HttpHeaderTool {
|
|
|
196
196
|
* - support ONLY JWT Token authentication (verification).
|
|
197
197
|
* - iat
|
|
198
198
|
*/
|
|
199
|
-
parseIdentityHeader
|
|
199
|
+
parseIdentityHeader<T extends NextIdentity = NextIdentity>(name?: string): Promise<T>;
|
|
200
200
|
/**
|
|
201
201
|
* parse as identity from json encoded text.
|
|
202
202
|
*/
|
|
203
|
-
parseIdentityJson
|
|
203
|
+
parseIdentityJson(val: string): Promise<NextIdentity<any>>;
|
|
204
204
|
/**
|
|
205
205
|
* find(or make) the proper KMSService per key
|
|
206
206
|
* @param keyId key of KMS
|
|
@@ -210,12 +210,12 @@ export declare class MyHttpHeaderTool implements HttpHeaderTool {
|
|
|
210
210
|
/**
|
|
211
211
|
* encode as JWT string.
|
|
212
212
|
*/
|
|
213
|
-
encodeIdentityJWT
|
|
213
|
+
encodeIdentityJWT(identity: NextIdentity, params?: {
|
|
214
214
|
/** KMS alias to use */
|
|
215
215
|
alias?: string;
|
|
216
216
|
/** current ms */
|
|
217
217
|
current?: number;
|
|
218
|
-
})
|
|
218
|
+
}): Promise<{
|
|
219
219
|
signature: string;
|
|
220
220
|
message: string;
|
|
221
221
|
token: string;
|
|
@@ -223,25 +223,25 @@ export declare class MyHttpHeaderTool implements HttpHeaderTool {
|
|
|
223
223
|
/**
|
|
224
224
|
* parse as jwt-token, and validate the signature.
|
|
225
225
|
*/
|
|
226
|
-
parseIdentityJWT
|
|
226
|
+
parseIdentityJWT<T extends NextIdentityJwt = NextIdentityJwt>(token: string, params?: {
|
|
227
227
|
/** current ms */
|
|
228
228
|
current?: number;
|
|
229
229
|
/** flag to verify JWT (default true) */
|
|
230
230
|
verify?: boolean;
|
|
231
|
-
})
|
|
231
|
+
}): Promise<T>;
|
|
232
232
|
/**
|
|
233
233
|
* parse of header[HEADER_LEMON_LANGUAGE] to get language-type.
|
|
234
234
|
*/
|
|
235
|
-
parseLanguageHeader
|
|
235
|
+
parseLanguageHeader(name?: string): string;
|
|
236
236
|
/**
|
|
237
237
|
* parse of header[HEADER_LEMON_LANGUAGE] to get cookie-set.
|
|
238
238
|
*/
|
|
239
|
-
parseCookiesHeader
|
|
239
|
+
parseCookiesHeader(name?: string): {
|
|
240
240
|
[key: string]: string;
|
|
241
241
|
};
|
|
242
242
|
/**
|
|
243
243
|
* override with AWS request-context
|
|
244
244
|
*/
|
|
245
|
-
prepareContext
|
|
245
|
+
prepareContext($org: NextContext, reqContext: APIGatewayEventRequestContext): Promise<NextContext>;
|
|
246
246
|
}
|
|
247
247
|
export {};
|
|
@@ -107,12 +107,12 @@ const promised = (event, $ctx) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
107
107
|
if (event && event.httpMethod == 'GET' && event.path == '/favicon.ico') {
|
|
108
108
|
return () => (0, exports.success)(FAVICON_ICO, 'image/x-icon');
|
|
109
109
|
}
|
|
110
|
-
|
|
110
|
+
//* transform to protocol-context.
|
|
111
111
|
if (event && event.headers && !event.headers[protocol_service_1.HEADER_PROTOCOL_CONTEXT])
|
|
112
112
|
event.headers[protocol_service_1.HEADER_PROTOCOL_CONTEXT] = $ctx ? engine_1.$U.json($ctx) : null;
|
|
113
113
|
const param = protocol_1.default.service.asTransformer('web').transformToParam(event);
|
|
114
114
|
(0, engine_1._log)(NS, '! protocol-param =', engine_1.$U.json(Object.assign(Object.assign({}, param), { body: undefined }))); // hide `.body` in log.
|
|
115
|
-
|
|
115
|
+
//* returns object..
|
|
116
116
|
return { event, param };
|
|
117
117
|
});
|
|
118
118
|
exports.promised = promised;
|
|
@@ -120,22 +120,22 @@ exports.promised = promised;
|
|
|
120
120
|
* builder for default handler
|
|
121
121
|
*/
|
|
122
122
|
const mxNextHandler = (thiz) => (params) => __awaiter(void 0, void 0, void 0, function* () {
|
|
123
|
-
|
|
123
|
+
//* determine if param or func.
|
|
124
124
|
const fx = typeof params == 'function' ? params : null;
|
|
125
125
|
const $param = params && typeof params == 'object' ? params : null;
|
|
126
126
|
const { param, event } = $param || {};
|
|
127
|
-
|
|
127
|
+
//* call the main handler()
|
|
128
128
|
const R = $param ? yield thiz.handleProtocol(param, event) : fx;
|
|
129
|
-
|
|
129
|
+
//* - if like to override the full response, then return function.
|
|
130
130
|
if (R && typeof R == 'function')
|
|
131
131
|
return R();
|
|
132
|
-
|
|
132
|
+
//* - override `Access-Control-Allow-Origin` to the current origin due to ajax credentials.
|
|
133
133
|
const { httpMethod: method, headers } = event || {};
|
|
134
134
|
if (method && method != 'GET') {
|
|
135
135
|
const origin = `${(headers && headers['origin']) || ''}`;
|
|
136
136
|
return (0, exports.success)(R, null, origin);
|
|
137
137
|
}
|
|
138
|
-
|
|
138
|
+
//* returns response..
|
|
139
139
|
return (0, exports.success)(R);
|
|
140
140
|
});
|
|
141
141
|
exports.mxNextHandler = mxNextHandler;
|
|
@@ -148,20 +148,20 @@ const mxNextFailure = (event, $ctx) => (e) => {
|
|
|
148
148
|
if (message.startsWith('404 NOT FOUND'))
|
|
149
149
|
return (0, exports.notfound)(message);
|
|
150
150
|
(0, engine_1._err)(NS, `! err.msg =`, message);
|
|
151
|
-
|
|
151
|
+
//* common format of error.
|
|
152
152
|
if (typeof message == 'string' && /^[1-9][0-9]{2} [A-Z ]+/.test(message)) {
|
|
153
153
|
const status = engine_1.$U.N(message.substring(0, 3), 0);
|
|
154
|
-
|
|
154
|
+
//* handle for 302/301 redirect. format: 303 REDIRECT - http://~~~
|
|
155
155
|
if ((status == 301 || status == 302) && message.indexOf(' - ') > 0) {
|
|
156
156
|
const loc = message.substring(message.indexOf(' - ') + 3).trim();
|
|
157
157
|
if (loc)
|
|
158
158
|
return (0, exports.redirect)(loc, status);
|
|
159
159
|
}
|
|
160
|
-
|
|
160
|
+
//* handle for `400 SIGNATURE - fail to verify!`. ignore report-error.
|
|
161
161
|
if (status == 400 && message.startsWith('400 SIGNATURE')) {
|
|
162
162
|
return (0, exports.failure)(message, status);
|
|
163
163
|
}
|
|
164
|
-
|
|
164
|
+
//* report error and returns
|
|
165
165
|
if (lambda_handler_1.LambdaHandler.REPORT_ERROR)
|
|
166
166
|
return (0, engine_1.doReportError)(e, $ctx, event)
|
|
167
167
|
.catch(test_helper_1.GETERR)
|
|
@@ -169,7 +169,7 @@ const mxNextFailure = (event, $ctx) => (e) => {
|
|
|
169
169
|
return (0, exports.failure)(message, status);
|
|
170
170
|
}
|
|
171
171
|
else if (typeof message == 'string' && /^\.[a-zA-Z0-9_\-]+/.test(message)) {
|
|
172
|
-
|
|
172
|
+
//* handle for message `.name () is required!`
|
|
173
173
|
if (lambda_handler_1.LambdaHandler.REPORT_ERROR)
|
|
174
174
|
return (0, engine_1.doReportError)(e, $ctx, event)
|
|
175
175
|
.catch(test_helper_1.GETERR)
|
|
@@ -177,14 +177,14 @@ const mxNextFailure = (event, $ctx) => (e) => {
|
|
|
177
177
|
return (0, exports.failure)(message, 400);
|
|
178
178
|
}
|
|
179
179
|
else if (typeof message == 'string' && /^\@[a-zA-Z0-9_\-]+/.test(message)) {
|
|
180
|
-
|
|
180
|
+
//* handle for message `@name () is required!`
|
|
181
181
|
if (lambda_handler_1.LambdaHandler.REPORT_ERROR)
|
|
182
182
|
return (0, engine_1.doReportError)(e, $ctx, event)
|
|
183
183
|
.catch(test_helper_1.GETERR)
|
|
184
184
|
.then(() => (0, exports.failure)(message, 400));
|
|
185
185
|
return (0, exports.failure)(message, 400);
|
|
186
186
|
}
|
|
187
|
-
|
|
187
|
+
//* report error and returns
|
|
188
188
|
if (lambda_handler_1.LambdaHandler.REPORT_ERROR)
|
|
189
189
|
return (0, engine_1.doReportError)(e, $ctx, event)
|
|
190
190
|
.catch(test_helper_1.GETERR)
|
|
@@ -202,20 +202,20 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
202
202
|
*/
|
|
203
203
|
constructor(lambda, register) {
|
|
204
204
|
super(lambda, register ? 'web' : undefined);
|
|
205
|
-
|
|
205
|
+
//* handlers map.
|
|
206
206
|
this._handlers = {};
|
|
207
207
|
/**
|
|
208
208
|
* Default WEB Handler.
|
|
209
209
|
*/
|
|
210
210
|
this.handle = (event, $ctx) => __awaiter(this, void 0, void 0, function* () {
|
|
211
|
-
|
|
211
|
+
//* inspect API parameters.
|
|
212
212
|
(0, engine_1._log)(NS, `handle()....`);
|
|
213
213
|
const $path = event.pathParameters || {};
|
|
214
214
|
const $param = event.queryStringParameters || {};
|
|
215
215
|
(0, engine_1._log)(NS, '! path =', event.path);
|
|
216
216
|
(0, engine_1._log)(NS, '! $path =', engine_1.$U.json($path));
|
|
217
217
|
(0, engine_1._log)(NS, '! $param =', engine_1.$U.json($param));
|
|
218
|
-
|
|
218
|
+
//* start promised..
|
|
219
219
|
return (0, exports.promised)(event, $ctx).then((0, exports.mxNextHandler)(this)).catch((0, exports.mxNextFailure)(event, $ctx));
|
|
220
220
|
});
|
|
221
221
|
/**
|
|
@@ -258,7 +258,7 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
258
258
|
* get all decoders.
|
|
259
259
|
*/
|
|
260
260
|
getHandlerDecoders() {
|
|
261
|
-
|
|
261
|
+
//* copy
|
|
262
262
|
return Object.entries(this._handlers).reduce((M, [key, val]) => {
|
|
263
263
|
if (typeof val == 'function')
|
|
264
264
|
M[key] = val;
|
|
@@ -285,34 +285,34 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
285
285
|
const $param = param.param;
|
|
286
286
|
const $body = param.body;
|
|
287
287
|
const context = param.context;
|
|
288
|
-
|
|
288
|
+
//* debug print body.
|
|
289
289
|
if (!$body) {
|
|
290
290
|
(0, engine_1._log)(NS, `#${MODE}:${CMD} (${TYPE}/${ID})....`);
|
|
291
291
|
}
|
|
292
292
|
else {
|
|
293
293
|
(0, engine_1._log)(NS, `#${MODE}:${CMD} (${TYPE}/${ID}).... body.len=`, $body ? engine_1.$U.json($body).length : -1);
|
|
294
294
|
}
|
|
295
|
-
|
|
295
|
+
//* find target next function
|
|
296
296
|
// const decoder: NextDecoder | CoreWEBController = this._handlers[TYPE];
|
|
297
297
|
const next = ((decoder) => {
|
|
298
|
-
|
|
298
|
+
//* as default handler '/', say the current version.
|
|
299
299
|
if (MODE === 'LIST' && TYPE === '' && ID === '' && CMD === '') {
|
|
300
300
|
return () => __awaiter(this, void 0, void 0, function* () {
|
|
301
301
|
const $pack = (0, shared_1.loadJsonSync)('package.json');
|
|
302
302
|
const name = ($pack && $pack.name) || 'LEMON API';
|
|
303
303
|
const version = ($pack && $pack.version) || '0.0.0';
|
|
304
304
|
const modules = [`${name}/${version}`];
|
|
305
|
-
|
|
305
|
+
//* shows version of `lemon-core` via `dependencies`.
|
|
306
306
|
const coreVer = $pack && $pack.dependencies && $pack.dependencies['lemon-core'];
|
|
307
307
|
if (coreVer)
|
|
308
308
|
modules.push(`lemon-core/${coreVer.startsWith('^') ? coreVer.substring(1) : coreVer}`);
|
|
309
309
|
return modules.join('\n');
|
|
310
310
|
});
|
|
311
311
|
}
|
|
312
|
-
|
|
312
|
+
//* error if no decoder.
|
|
313
313
|
if (!decoder)
|
|
314
314
|
return null;
|
|
315
|
-
|
|
315
|
+
//* use decoder() to find target.
|
|
316
316
|
if (typeof decoder == 'function')
|
|
317
317
|
return decoder(MODE, ID, CMD, PATH);
|
|
318
318
|
else if (typeof decoder == 'object') {
|
|
@@ -324,12 +324,12 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
324
324
|
}
|
|
325
325
|
return null;
|
|
326
326
|
})(this._handlers[TYPE]);
|
|
327
|
-
|
|
327
|
+
//* if no next, then report error.
|
|
328
328
|
if (!next || typeof next != 'function') {
|
|
329
329
|
(0, engine_1._err)(NS, `! WARN ! MISSING NEXT-HANDLER. event=`, engine_1.$U.json(event));
|
|
330
330
|
throw new Error(`404 NOT FOUND - ${MODE} /${TYPE}/${ID}${CMD ? `/${CMD}` : ''}`);
|
|
331
331
|
}
|
|
332
|
-
|
|
332
|
+
//* call next.. (it will return result or promised)
|
|
333
333
|
return (() => {
|
|
334
334
|
try {
|
|
335
335
|
const R = next(ID, $param, $body, context);
|
|
@@ -352,23 +352,30 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
352
352
|
(0, engine_1._log)(NS, `packContext(${event ? '' : 'null'})..`);
|
|
353
353
|
if (!event)
|
|
354
354
|
return null;
|
|
355
|
-
|
|
355
|
+
//* prepare chain object.
|
|
356
356
|
const reqContext = event === null || event === void 0 ? void 0 : event.requestContext;
|
|
357
357
|
orgContext && (0, engine_1._log)(NS, `> orgContext =`, engine_1.$U.S(orgContext, 256, 32));
|
|
358
358
|
reqContext && (0, engine_1._log)(NS, `> reqContext =`, engine_1.$U.S(reqContext, 256, 32));
|
|
359
359
|
// STEP.1 support lambda call JWT Token authentication.
|
|
360
360
|
const headers = event.headers;
|
|
361
361
|
if (headers && headers[protocol_service_1.HEADER_PROTOCOL_CONTEXT]) {
|
|
362
|
-
|
|
362
|
+
//* if it is protocol request via lambda, then returns valid context.
|
|
363
363
|
const $param = protocol_1.default.service.asTransformer('web').transformToParam(event);
|
|
364
364
|
return $param === null || $param === void 0 ? void 0 : $param.context;
|
|
365
365
|
}
|
|
366
366
|
// STEP.2 use internal identity json data via python lambda call.
|
|
367
367
|
const $tool = this.tools(headers);
|
|
368
368
|
const identity = yield $tool.parseIdentityHeader();
|
|
369
|
-
const
|
|
369
|
+
const _prepare = () => {
|
|
370
|
+
const cookie = $tool.parseCookiesHeader();
|
|
371
|
+
const domain = $tool.getHeader('host');
|
|
372
|
+
const referer = $tool.getHeader('referer');
|
|
373
|
+
const origin = $tool.getHeader('origin');
|
|
374
|
+
const userAgent = $tool.getHeader('user-agent');
|
|
375
|
+
return { identity, cookie, domain, referer, origin, userAgent };
|
|
376
|
+
};
|
|
370
377
|
// STEP.3. prepare the final `next-context`.
|
|
371
|
-
const $ctx = yield $tool.prepareContext(
|
|
378
|
+
const $ctx = yield $tool.prepareContext(_prepare(), reqContext);
|
|
372
379
|
$ctx.source = protocol_1.default.service.myProtocolURI($ctx); // self service-uri as source
|
|
373
380
|
// FINIAL. returns
|
|
374
381
|
return $ctx;
|
|
@@ -376,7 +383,7 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
|
|
|
376
383
|
}
|
|
377
384
|
}
|
|
378
385
|
exports.LambdaWEBHandler = LambdaWEBHandler;
|
|
379
|
-
|
|
386
|
+
//* shared config.
|
|
380
387
|
LambdaWEBHandler.REPORT_ERROR = lambda_handler_1.LambdaHandler.REPORT_ERROR;
|
|
381
388
|
/**
|
|
382
389
|
* class: `MyHttpHeaderTool`
|
|
@@ -389,10 +396,26 @@ class MyHttpHeaderTool {
|
|
|
389
396
|
*/
|
|
390
397
|
constructor(handler, headers) {
|
|
391
398
|
/**
|
|
392
|
-
*
|
|
393
|
-
* @
|
|
399
|
+
* check if this request is from externals (like API-GW)
|
|
400
|
+
* @returns true if in external
|
|
394
401
|
*/
|
|
395
|
-
this.
|
|
402
|
+
this.isExternal = () => {
|
|
403
|
+
const host = this.getHeader('host');
|
|
404
|
+
const isExternal = host ? true : false;
|
|
405
|
+
return !!isExternal;
|
|
406
|
+
};
|
|
407
|
+
this.handler = handler;
|
|
408
|
+
this.headers = Object.assign({}, headers);
|
|
409
|
+
}
|
|
410
|
+
hello() {
|
|
411
|
+
return 'header-tool-by-default';
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* get values by name
|
|
415
|
+
* @param name case-insentive name of field
|
|
416
|
+
*/
|
|
417
|
+
getHeaders(name) {
|
|
418
|
+
return Object.entries(this.headers).reduce((L, [key, val]) => {
|
|
396
419
|
if (name === key || key.toLowerCase() === name) {
|
|
397
420
|
if (Array.isArray(val)) {
|
|
398
421
|
val.forEach(val => {
|
|
@@ -413,39 +436,32 @@ class MyHttpHeaderTool {
|
|
|
413
436
|
}
|
|
414
437
|
return L;
|
|
415
438
|
}, []);
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
* **[FOR EXTERNAL CALL BY API-GW]**
|
|
443
|
-
* - support ONLY JWT Token authentication (verification).
|
|
444
|
-
* - iat
|
|
445
|
-
*/
|
|
446
|
-
this.parseIdentityHeader = (name = HEADER_LEMON_IDENTITY) => __awaiter(this, void 0, void 0, function* () {
|
|
447
|
-
var _a;
|
|
448
|
-
//! internal means `request from internal services`
|
|
439
|
+
}
|
|
440
|
+
/**
|
|
441
|
+
* get the last value in header by name
|
|
442
|
+
*/
|
|
443
|
+
getHeader(name) {
|
|
444
|
+
const vals = this.getHeaders(name);
|
|
445
|
+
return vals.length < 1 ? undefined : vals[vals.length - 1];
|
|
446
|
+
}
|
|
447
|
+
/**
|
|
448
|
+
* parse of header[`x-lemon-identity`] to get the instance of `NextIdentity`
|
|
449
|
+
* - lambda 호출의 2가지 방법이 있음 (interval vs external)
|
|
450
|
+
* - internal는 AWS 같은 계정내 호출로 labmda 직접 호출이 가능함.
|
|
451
|
+
* - external는 API-GW를 통한 호출로 JWT 지원 (since 3.1.2).
|
|
452
|
+
*
|
|
453
|
+
* **[FOR INTERNAL CALL BY LAMBDA]**
|
|
454
|
+
* - `x-lemon-identity` 정보로부터, 계정 정보를 얻음 (for direct call via lambda)
|
|
455
|
+
* - 외부 호출과 구분하기 위해서 headr[host]가 비어 있어야함 (API-GW에서는 무조건 있으므로)
|
|
456
|
+
*
|
|
457
|
+
* **[FOR EXTERNAL CALL BY API-GW]**
|
|
458
|
+
* - support ONLY JWT Token authentication (verification).
|
|
459
|
+
* - iat
|
|
460
|
+
*/
|
|
461
|
+
parseIdentityHeader(name = HEADER_LEMON_IDENTITY) {
|
|
462
|
+
var _a;
|
|
463
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
464
|
+
//* internal means `request from internal services`
|
|
449
465
|
const isInternal = !this.isExternal();
|
|
450
466
|
const val = this.getHeader(name);
|
|
451
467
|
let result = val ? { meta: val } : {};
|
|
@@ -465,33 +481,48 @@ class MyHttpHeaderTool {
|
|
|
465
481
|
(0, engine_1._err)(NS, '!WARN! identity =', val);
|
|
466
482
|
result.error = (0, test_helper_1.GETERR)(e);
|
|
467
483
|
}
|
|
468
|
-
|
|
484
|
+
//* overwrite finally language selection.
|
|
469
485
|
const lang = (_a = this.parseLanguageHeader()) !== null && _a !== void 0 ? _a : result === null || result === void 0 ? void 0 : result.lang;
|
|
470
486
|
return Object.assign(Object.assign({}, result), { lang });
|
|
471
487
|
});
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
488
|
+
}
|
|
489
|
+
/**
|
|
490
|
+
* parse as identity from json encoded text.
|
|
491
|
+
*/
|
|
492
|
+
parseIdentityJson(val) {
|
|
493
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
476
494
|
if (typeof val !== 'string')
|
|
477
495
|
throw new Error(`@val[${val}] is invalid - not string!`);
|
|
478
|
-
|
|
496
|
+
//* (ONLY for internal) parse payload as `json`
|
|
479
497
|
const data = JSON.parse(val);
|
|
480
498
|
// if (typeof data?.ns !== 'string') throw new Error(`.ns[${data?.ns}] is required - IdentityHeader`);
|
|
481
499
|
if (typeof (data === null || data === void 0 ? void 0 : data.sid) !== 'string' || !(data === null || data === void 0 ? void 0 : data.sid))
|
|
482
500
|
throw new Error(`.sid[${data === null || data === void 0 ? void 0 : data.sid}] is required - IdentityHeader`);
|
|
483
501
|
return data;
|
|
484
502
|
});
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* find(or make) the proper KMSService per key
|
|
506
|
+
* @param keyId key of KMS
|
|
507
|
+
* @returns service
|
|
508
|
+
*/
|
|
509
|
+
findKMSService(keyId) {
|
|
510
|
+
// const aws = $engine.module('aws') as AWSModule;
|
|
511
|
+
// return aws?.kms;
|
|
512
|
+
const kms = new aws_kms_service_1.AWSKMSService(keyId);
|
|
513
|
+
return kms;
|
|
514
|
+
}
|
|
515
|
+
/**
|
|
516
|
+
* encode as JWT string.
|
|
517
|
+
*/
|
|
518
|
+
encodeIdentityJWT(identity, params) {
|
|
519
|
+
var _a;
|
|
520
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
490
521
|
// STEP.0 validate paramters.
|
|
491
522
|
if (!identity || typeof identity !== 'object')
|
|
492
523
|
throw new Error(`@identity (object) is required - but ${typeof identity}`);
|
|
493
524
|
// STEP.1 prepare payload data
|
|
494
|
-
const current = (
|
|
525
|
+
const current = (_a = params === null || params === void 0 ? void 0 : params.current) !== null && _a !== void 0 ? _a : engine_1.$U.current_time_ms();
|
|
495
526
|
const alias = params === null || params === void 0 ? void 0 : params.alias;
|
|
496
527
|
const payload = Object.assign(Object.assign({}, identity), { iss: alias ? `kms/${alias}` : null, iat: Math.floor(current / 1000), exp: Math.floor(current / 1000) + 24 * 60 * 60 });
|
|
497
528
|
const base64url = (t) => (0, aws_kms_service_1.fromBase64)(Buffer.from(t).toString('base64'));
|
|
@@ -509,17 +540,19 @@ class MyHttpHeaderTool {
|
|
|
509
540
|
const token = [message, signature].join('.');
|
|
510
541
|
return { signature, message, token };
|
|
511
542
|
});
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
543
|
+
}
|
|
544
|
+
/**
|
|
545
|
+
* parse as jwt-token, and validate the signature.
|
|
546
|
+
*/
|
|
547
|
+
parseIdentityJWT(token, params) {
|
|
548
|
+
var _a, _b;
|
|
549
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
550
|
+
const isVerify = (_a = params === null || params === void 0 ? void 0 : params.verify) !== null && _a !== void 0 ? _a : true;
|
|
551
|
+
//* it must be JWT Token. verify signature, and load.
|
|
519
552
|
if (typeof token !== 'string' || !token)
|
|
520
553
|
throw new Error(`@token (string) is required - but ${typeof token}`);
|
|
521
554
|
// STEP.1 decode jwt, and extract { iss, iat, exp }
|
|
522
|
-
const current = (
|
|
555
|
+
const current = (_b = params === null || params === void 0 ? void 0 : params.current) !== null && _b !== void 0 ? _b : engine_1.$U.current_time_ms();
|
|
523
556
|
const sections = token.split('.');
|
|
524
557
|
if (sections.length !== 3)
|
|
525
558
|
throw new Error(`@token[${token}] is invalid format!`);
|
|
@@ -552,84 +585,70 @@ class MyHttpHeaderTool {
|
|
|
552
585
|
throw new Error(`.exp[${engine_1.$U.ts(exp * 1000)}] is invalid - expired!`);
|
|
553
586
|
return data;
|
|
554
587
|
}
|
|
555
|
-
|
|
588
|
+
//* or throw
|
|
556
589
|
throw new Error(`@iss[${iss}] is invalid - unsupportable issuer!`);
|
|
557
590
|
});
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
return parseCookies(cookie);
|
|
591
|
+
}
|
|
592
|
+
/**
|
|
593
|
+
* parse of header[HEADER_LEMON_LANGUAGE] to get language-type.
|
|
594
|
+
*/
|
|
595
|
+
parseLanguageHeader(name = HEADER_LEMON_LANGUAGE) {
|
|
596
|
+
const val = this.getHeader(name);
|
|
597
|
+
return typeof val === 'string' ? val.trim().toLowerCase() : undefined;
|
|
598
|
+
}
|
|
599
|
+
/**
|
|
600
|
+
* parse of header[HEADER_LEMON_LANGUAGE] to get cookie-set.
|
|
601
|
+
*/
|
|
602
|
+
parseCookiesHeader(name = HEADER_COOKIE) {
|
|
603
|
+
const cookie = this.getHeader(name);
|
|
604
|
+
if (!cookie)
|
|
605
|
+
return undefined;
|
|
606
|
+
const parseCookies = (str) => {
|
|
607
|
+
const rx = /([^;=\s]*)=([^;]*)/g;
|
|
608
|
+
const obj = {};
|
|
609
|
+
for (let m; (m = rx.exec(str));)
|
|
610
|
+
obj[m[1]] = decodeURIComponent(m[2]);
|
|
611
|
+
return obj;
|
|
580
612
|
};
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
613
|
+
return parseCookies(cookie);
|
|
614
|
+
}
|
|
615
|
+
/**
|
|
616
|
+
* override with AWS request-context
|
|
617
|
+
*/
|
|
618
|
+
prepareContext($org, reqContext) {
|
|
619
|
+
var _a, _b, _c, _d;
|
|
620
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
621
|
+
const errScope = `web.prepareContext(${(_a = $org === null || $org === void 0 ? void 0 : $org.requestId) !== null && _a !== void 0 ? _a : ''})`;
|
|
586
622
|
// STEP.4 override w/ cognito authentication to NextIdentity.
|
|
587
|
-
if (((
|
|
588
|
-
const
|
|
589
|
-
if (
|
|
590
|
-
throw new Error(`.identity is required -
|
|
591
|
-
const $
|
|
592
|
-
(0, engine_1._inf)(NS, '! identity(req) :=', engine_1.$U.json(
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
if (typeof $
|
|
599
|
-
|
|
600
|
-
if (typeof $
|
|
601
|
-
|
|
602
|
-
if (typeof $
|
|
603
|
-
|
|
604
|
-
(0, engine_1._inf)(NS, '! identity(new) :=', engine_1.$U.json(Object.assign({},
|
|
623
|
+
if (((_b = reqContext === null || reqContext === void 0 ? void 0 : reqContext.identity) === null || _b === void 0 ? void 0 : _b.cognitoIdentityPoolId) !== undefined) {
|
|
624
|
+
const $idt = $org === null || $org === void 0 ? void 0 : $org.identity;
|
|
625
|
+
if (!$idt)
|
|
626
|
+
throw new Error(`.identity (NextIdentity) is required - ${errScope}`);
|
|
627
|
+
const $req = reqContext.identity;
|
|
628
|
+
(0, engine_1._inf)(NS, '! identity(req) :=', engine_1.$U.json($req));
|
|
629
|
+
$idt.identityProvider = $req.cognitoAuthenticationProvider; // provider string.
|
|
630
|
+
$idt.identityPoolId = $req.cognitoIdentityPoolId; // identity-pool-id like 'ap-northeast-2:618ce9d2-3ad6-49df-b3b3-e248ea51425e'
|
|
631
|
+
$idt.identityId = $req.cognitoIdentityId; // identity-id like 'ap-northeast-2:dbd95fb4-7423-48b8-8a04-56e5bc95e444'
|
|
632
|
+
$idt.accountId = $req.accountId; // account-id should be same as context.accountId
|
|
633
|
+
$idt.userAgent = $req.userAgent; // user-agent string.
|
|
634
|
+
if (typeof $req.caller == 'string')
|
|
635
|
+
$idt.caller = $req.caller;
|
|
636
|
+
if (typeof $req.accessKey == 'string')
|
|
637
|
+
$idt.accessKey = $req.accessKey;
|
|
638
|
+
if (typeof $req.apiKey == 'string')
|
|
639
|
+
$idt.apiKey = $req.apiKey;
|
|
640
|
+
(0, engine_1._inf)(NS, '! identity(new) :=', engine_1.$U.json(Object.assign({}, $idt)));
|
|
605
641
|
}
|
|
606
|
-
//TODO - transform to access identity via `lemon-accounts-api` service @200106
|
|
607
642
|
// STEP.5 extract additional request infor from req-context.
|
|
608
|
-
const clientIp = `${((
|
|
609
|
-
const userAgent = `${((
|
|
610
|
-
const requestId = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.requestId) || ''}`;
|
|
611
|
-
const accountId = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.accountId) || ''}`;
|
|
612
|
-
const domain = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.domainName) ||
|
|
613
|
-
|
|
643
|
+
const clientIp = `${((_c = reqContext === null || reqContext === void 0 ? void 0 : reqContext.identity) === null || _c === void 0 ? void 0 : _c.sourceIp) || ($org === null || $org === void 0 ? void 0 : $org.clientIp) || ''}`;
|
|
644
|
+
const userAgent = `${((_d = reqContext === null || reqContext === void 0 ? void 0 : reqContext.identity) === null || _d === void 0 ? void 0 : _d.userAgent) || ($org === null || $org === void 0 ? void 0 : $org.userAgent) || ''}`;
|
|
645
|
+
const requestId = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.requestId) || ($org === null || $org === void 0 ? void 0 : $org.requestId) || ''}`;
|
|
646
|
+
const accountId = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.accountId) || ($org === null || $org === void 0 ? void 0 : $org.accountId) || ''}`;
|
|
647
|
+
const domain = `${(reqContext === null || reqContext === void 0 ? void 0 : reqContext.domainName) || ($org === null || $org === void 0 ? void 0 : $org.domain) || ''}`; //* chore avoid null of headers
|
|
648
|
+
//* save into headers and returns.
|
|
614
649
|
const context = Object.assign(Object.assign({}, $org), { userAgent, clientIp, requestId, accountId, domain });
|
|
615
650
|
return context;
|
|
616
651
|
});
|
|
617
|
-
this.handler = handler;
|
|
618
|
-
this.headers = Object.assign({}, headers);
|
|
619
|
-
}
|
|
620
|
-
hello() {
|
|
621
|
-
return 'header-tool-by-default';
|
|
622
|
-
}
|
|
623
|
-
/**
|
|
624
|
-
* find(or make) the proper KMSService per key
|
|
625
|
-
* @param keyId key of KMS
|
|
626
|
-
* @returns service
|
|
627
|
-
*/
|
|
628
|
-
findKMSService(keyId) {
|
|
629
|
-
// const aws = $engine.module('aws') as AWSModule;
|
|
630
|
-
// return aws?.kms;
|
|
631
|
-
const kms = new aws_kms_service_1.AWSKMSService(keyId);
|
|
632
|
-
return kms;
|
|
633
652
|
}
|
|
634
653
|
}
|
|
635
654
|
exports.MyHttpHeaderTool = MyHttpHeaderTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambda-web-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-web-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lambda-web-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-web-handler.ts"],"names":[],"mappings":"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"}
|