@enkaku/server 0.3.0 → 0.4.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.
@@ -1,13 +1,12 @@
1
- import type { SignedToken } from '@enkaku/jwt';
2
- import type { AnyClientPayloadOf, AnyDefinitions } from '@enkaku/protocol';
1
+ import type { SignedToken } from '@enkaku/token';
3
2
  export type CommandAccessRecord = Record<string, boolean | Array<string>>;
4
3
  export type CommandAccessPayload = {
5
- iss?: string;
4
+ iss: string;
6
5
  sub?: string;
7
6
  aud?: string;
8
7
  cmd?: string;
9
8
  exp?: number;
10
9
  };
11
- export declare function checkCommandAccess(record: CommandAccessRecord, token: SignedToken<CommandAccessPayload>, atTime?: number): Promise<void>;
12
- export declare function checkClientToken<Definition extends AnyDefinitions>(serverID: string, record: CommandAccessRecord, token: SignedToken<AnyClientPayloadOf<Definition>>, atTime?: number): Promise<void>;
10
+ export declare function checkCommandAccess(serverID: string, record: CommandAccessRecord, token: SignedToken<CommandAccessPayload>, atTime?: number): Promise<void>;
11
+ export declare function checkClientToken(serverID: string, record: CommandAccessRecord, token: SignedToken, atTime?: number): Promise<void>;
13
12
  //# sourceMappingURL=access-control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"access-control.d.ts","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE1E,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;AAEzE,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,EACxC,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAsB,gBAAgB,CAAC,UAAU,SAAS,cAAc,EACtE,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,EAClD,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAgBf"}
1
+ {"version":3,"file":"access-control.d.ts","sourceRoot":"","sources":["../src/access-control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;AAEzE,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,EACxC,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,WAAW,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA4Bf"}
@@ -1,10 +1,9 @@
1
1
  import { assertNonExpired, checkCapability, hasPartsMatch } from '@enkaku/capability';
2
- export async function checkCommandAccess(record, token, atTime) {
2
+ export async function checkCommandAccess(serverID, record, token, atTime) {
3
3
  const payload = token.payload;
4
4
  if (payload.cmd == null) {
5
5
  throw new Error('No command to check');
6
6
  }
7
- const subject = payload.sub ?? payload.iss;
8
7
  for (const [command, access] of Object.entries(record)){
9
8
  if (hasPartsMatch(payload.cmd, command)) {
10
9
  if (access === true) {
@@ -14,13 +13,18 @@ export async function checkCommandAccess(record, token, atTime) {
14
13
  if (access === false) {
15
14
  continue;
16
15
  }
17
- if (!access.includes(subject)) {
16
+ if (access.includes(payload.iss)) {
17
+ // Issuer is allowed directly
18
+ return;
19
+ }
20
+ if (payload.sub == null || !access.includes(payload.sub)) {
18
21
  continue;
19
22
  }
20
23
  try {
24
+ // Check delegation from subject
21
25
  await checkCapability({
22
26
  act: payload.cmd,
23
- res: subject
27
+ res: serverID
24
28
  }, payload, atTime);
25
29
  return;
26
30
  } catch {}
@@ -30,6 +34,10 @@ export async function checkCommandAccess(record, token, atTime) {
30
34
  }
31
35
  export async function checkClientToken(serverID, record, token, atTime) {
32
36
  const payload = token.payload;
37
+ const command = payload.cmd;
38
+ if (command == null) {
39
+ throw new Error('No command to check');
40
+ }
33
41
  if (payload.iss === serverID) {
34
42
  // If issuer uses the server's signer, only check audience and expiration if provided
35
43
  if (payload.aud != null && payload.aud !== serverID) {
@@ -40,8 +48,16 @@ export async function checkClientToken(serverID, record, token, atTime) {
40
48
  }
41
49
  return;
42
50
  }
51
+ if (payload.sub === serverID) {
52
+ // If subject is the server, check capability directly
53
+ await checkCapability({
54
+ act: command,
55
+ res: serverID
56
+ }, payload, atTime);
57
+ return;
58
+ }
43
59
  if (payload.aud !== serverID) {
44
60
  throw new Error('Invalid audience');
45
61
  }
46
- await checkCommandAccess(record, token, atTime);
62
+ await checkCommandAccess(serverID, record, token, atTime);
47
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/handlers/channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAEd,gBAAgB,EAChB,aAAa,EACd,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAGV,cAAc,EAKf,MAAM,aAAa,CAAA;AAGpB,MAAM,MAAM,gBAAgB,CAC1B,WAAW,SAAS,cAAc,EAClC,OAAO,SAAS,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,WAAW,GAAG,MAAM,IACrE,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAElE,wBAAgB,aAAa,CAC3B,WAAW,SAAS,cAAc,EAClC,OAAO,SAAS,MAAM,WAAW,GAAG,MAAM,EAE1C,GAAG,EAAE,cAAc,CAAC,WAAW,CAAC,EAChC,GAAG,EAAE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,GAC1C,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2ChC"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/handlers/channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAEd,gBAAgB,EAChB,aAAa,EACd,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAIV,cAAc,EAKf,MAAM,aAAa,CAAA;AAGpB,MAAM,MAAM,gBAAgB,CAC1B,WAAW,SAAS,cAAc,EAClC,OAAO,SAAS,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,WAAW,GAAG,MAAM,IACrE,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAElE,wBAAgB,aAAa,CAC3B,WAAW,SAAS,cAAc,EAClC,OAAO,SAAS,MAAM,WAAW,GAAG,MAAM,EAE1C,GAAG,EAAE,cAAc,CAAC,WAAW,CAAC,EAChC,GAAG,EAAE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,GAC1C,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDhC"}
package/lib/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export type { CommandAccessRecord } from './access-control.js';
1
2
  export type { RejectionType } from './rejections.js';
2
3
  export { type ServeParams, type Server, serve } from './server.js';
3
4
  export type { ChannelHandler, ChannelHandlerContext, CommandHandlers, EventHandler, EventHandlerContext, HandlerReturn, RequestHandler, RequestHandlerContext, StreamHandler, StreamHandlerContext, } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAClE,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,oBAAoB,GACrB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAClE,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,oBAAoB,GACrB,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,cAAc,EAEd,iBAAiB,EAClB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,cAAc,CAAA;AAE5D,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,qBAAqB,CAAA;AAKhF,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpE,OAAO,KAAK,EAEV,eAAe,EAEf,iBAAiB,EAClB,MAAM,YAAY,CAAA;AAQnB,MAAM,MAAM,oBAAoB,CAAC,WAAW,SAAS,cAAc,IAAI;IACrE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC9C,QAAQ,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACtC,MAAM,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,IAAI,CAAA;IAC1C,MAAM,EAAE,WAAW,CAAA;IACnB,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;CAC1C,GAAG,CAAC;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAAA;AAwH7F,MAAM,MAAM,WAAW,CAAC,WAAW,SAAS,cAAc,IAAI;IAC5D,QAAQ,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACtC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;CAC1C,GAAG,CAAC;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAAA;AAEzF,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG;IAC9B,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;CAC1C,CAAA;AAED,wBAAgB,KAAK,CAAC,WAAW,SAAS,cAAc,EACtD,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,MAAM,CAiCR"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAsB,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAG7F,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,cAAc,CAAA;AAE5D,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,qBAAqB,CAAA;AAKhF,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpE,OAAO,KAAK,EAEV,eAAe,EAEf,iBAAiB,EAClB,MAAM,YAAY,CAAA;AAQnB,MAAM,MAAM,oBAAoB,CAAC,WAAW,SAAS,cAAc,IAAI;IACrE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC9C,QAAQ,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACtC,MAAM,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,IAAI,CAAA;IAC1C,MAAM,EAAE,WAAW,CAAA;IACnB,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;CAC1C,GAAG,CAAC;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAAA;AAwH7F,MAAM,MAAM,WAAW,CAAC,WAAW,SAAS,cAAc,IAAI;IAC5D,QAAQ,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACtC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA;CAC1C,GAAG,CAAC;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAAA;AAEzF,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG;IAC9B,UAAU,EAAE,cAAc,CAAC,aAAa,CAAC,CAAA;CAC1C,CAAA;AAED,wBAAgB,KAAK,CAAC,WAAW,SAAS,cAAc,EACtD,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,MAAM,CAiCR"}
package/lib/server.js CHANGED
@@ -1,5 +1,5 @@
1
- import { createUnsignedToken, isSignedToken } from '@enkaku/jwt';
2
1
  import { createPipe } from '@enkaku/stream';
2
+ import { createUnsignedToken, isSignedToken } from '@enkaku/token';
3
3
  import { createDisposer } from '@enkaku/util';
4
4
  import { checkClientToken } from './access-control.js';
5
5
  import { handleChannel } from './handlers/channel.js';
@@ -55,7 +55,7 @@ async function handleMessages(params) {
55
55
  context.send({
56
56
  typ: 'error',
57
57
  rid: message.payload.rid,
58
- code: 'EKK1000',
58
+ code: 'EK02',
59
59
  msg: errorMessage
60
60
  });
61
61
  }
package/lib/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { Token } from '@enkaku/jwt';
2
1
  import type { AnyDefinition, AnyDefinitions, AnyServerPayloadOf, ChannelDefinition, EventCallPayload, EventDefinition, RequestCallPayload, RequestDefinition, RequestType, StreamDefinition } from '@enkaku/protocol';
2
+ import type { Token } from '@enkaku/token';
3
3
  import type { RejectionType } from './rejections.js';
4
4
  export type RequestController = AbortController;
5
5
  export type ChannelController<Send = unknown> = AbortController & {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/lib/utils.js CHANGED
@@ -33,8 +33,8 @@ export async function executeHandler(context, payload, execute) {
33
33
  } catch (cause) {
34
34
  if (!controller.signal.aborted) {
35
35
  context.send(HandlerError.from(cause, {
36
- code: 'EKK2000',
37
- message: 'Error code EKK2000'
36
+ code: 'EK01',
37
+ message: cause.message ?? 'Handler execution failed'
38
38
  }).toPayload(payload.rid));
39
39
  }
40
40
  context.reject(new ErrorRejection(`Error handling command: ${payload.cmd}`, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enkaku/server",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "license": "MIT",
5
5
  "keywords": [],
6
6
  "type": "module",
@@ -14,14 +14,14 @@
14
14
  ],
15
15
  "sideEffects": false,
16
16
  "dependencies": {
17
- "@enkaku/capability": "^0.3.0",
18
- "@enkaku/util": "^0.3.0",
19
- "@enkaku/stream": "^0.3.0",
20
- "@enkaku/jwt": "^0.3.0"
17
+ "@enkaku/capability": "^0.4.0",
18
+ "@enkaku/token": "^0.4.0",
19
+ "@enkaku/util": "^0.4.0",
20
+ "@enkaku/stream": "^0.4.0"
21
21
  },
22
22
  "devDependencies": {
23
- "@enkaku/protocol": "^0.3.0",
24
- "@enkaku/transport": "^0.3.0"
23
+ "@enkaku/protocol": "^0.4.0",
24
+ "@enkaku/transport": "^0.4.0"
25
25
  },
26
26
  "scripts": {
27
27
  "build:clean": "del lib",