@owlmeans/server-auth 0.1.18-rc.53 → 0.1.18-rc.55
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/README.md +7 -7
- package/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/server-auth/SKILL.md +3 -3
- package/agent-meta/skills/supervisor-auth/SKILL.md +5 -5
- package/build/actions/types.local.d.ts +2 -1
- package/build/actions/types.local.d.ts.map +1 -1
- package/build/manager/actions/authenticate.d.ts +8 -0
- package/build/manager/actions/authenticate.d.ts.map +1 -0
- package/build/manager/actions/authenticate.js +5 -0
- package/build/manager/actions/authenticate.js.map +1 -0
- package/build/manager/actions/index.d.ts +3 -1
- package/build/manager/actions/index.d.ts.map +1 -1
- package/build/manager/actions/index.js +3 -1
- package/build/manager/actions/index.js.map +1 -1
- package/build/manager/actions/init.d.ts +8 -0
- package/build/manager/actions/init.d.ts.map +1 -0
- package/build/manager/actions/init.js +5 -0
- package/build/manager/actions/init.js.map +1 -0
- package/build/manager/actions/rely.d.ts +8 -0
- package/build/manager/actions/rely.d.ts.map +1 -0
- package/build/manager/actions/rely.js +7 -0
- package/build/manager/actions/rely.js.map +1 -0
- package/build/manager/entrypoints.d.ts +7 -1
- package/build/manager/entrypoints.d.ts.map +1 -1
- package/build/manager/model.js +6 -6
- package/build/manager/model.js.map +1 -1
- package/build/manager/plugins/basic-ed25519.d.ts +1 -1
- package/build/manager/plugins/basic-ed25519.d.ts.map +1 -1
- package/build/manager/plugins/basic-ed25519.js +5 -5
- package/build/manager/plugins/basic-ed25519.js.map +1 -1
- package/build/manager/plugins/basic-rely.d.ts +1 -1
- package/build/manager/plugins/basic-rely.d.ts.map +1 -1
- package/build/manager/plugins/basic-rely.js +1 -1
- package/build/manager/plugins/basic-rely.js.map +1 -1
- package/build/manager/plugins/consts.d.ts +8 -0
- package/build/manager/plugins/consts.d.ts.map +1 -0
- package/build/manager/plugins/consts.js +9 -0
- package/build/manager/plugins/consts.js.map +1 -0
- package/build/manager/plugins/export.d.ts +1 -1
- package/build/manager/plugins/export.d.ts.map +1 -1
- package/build/manager/plugins/export.js +1 -1
- package/build/manager/plugins/export.js.map +1 -1
- package/build/manager/plugins/index.d.ts +3 -4
- package/build/manager/plugins/index.d.ts.map +1 -1
- package/build/manager/plugins/index.js +6 -6
- package/build/manager/plugins/index.js.map +1 -1
- package/build/manager/plugins/re-captcha.d.ts +1 -1
- package/build/manager/plugins/re-captcha.d.ts.map +1 -1
- package/build/manager/plugins/re-captcha.js +3 -3
- package/build/manager/plugins/re-captcha.js.map +1 -1
- package/build/manager/plugins/supervisor.js +2 -2
- package/build/manager/plugins/supervisor.js.map +1 -1
- package/build/manager/plugins/types.d.ts +17 -2
- package/build/manager/plugins/types.d.ts.map +1 -1
- package/build/manager/plugins/utils.d.ts +5 -4
- package/build/manager/plugins/utils.d.ts.map +1 -1
- package/build/manager/plugins/utils.js +20 -15
- package/build/manager/plugins/utils.js.map +1 -1
- package/build/manager/rely/flow.d.ts.map +1 -1
- package/build/manager/rely/flow.js +5 -5
- package/build/manager/rely/flow.js.map +1 -1
- package/build/manager/supervisor.d.ts.map +1 -1
- package/build/manager/supervisor.js.map +1 -1
- package/build/model/rely/peer.d.ts.map +1 -1
- package/build/model/rely/peer.js +7 -7
- package/build/model/rely/peer.js.map +1 -1
- package/build/service.d.ts.map +1 -1
- package/build/service.js +12 -12
- package/build/service.js.map +1 -1
- package/package.json +28 -28
- package/src/actions/types.local.ts +1 -1
- package/src/manager/README.md +1 -1
- package/src/manager/actions/authenticate.ts +12 -0
- package/src/manager/actions/index.ts +3 -1
- package/src/manager/actions/init.ts +12 -0
- package/src/manager/actions/rely.ts +12 -0
- package/src/manager/model.ts +6 -6
- package/src/manager/plugins/basic-ed25519.ts +5 -5
- package/src/manager/plugins/basic-rely.ts +1 -1
- package/src/manager/plugins/export.ts +1 -1
- package/src/manager/plugins/index.ts +10 -12
- package/src/manager/plugins/re-captcha.ts +3 -3
- package/src/manager/plugins/supervisor.ts +2 -2
- package/src/manager/plugins/types.ts +19 -2
- package/src/manager/plugins/utils.ts +24 -14
- package/src/manager/rely/flow.ts +5 -5
- package/src/manager/supervisor.ts +2 -1
- package/src/model/rely/peer.ts +8 -8
- package/src/service.ts +13 -13
- package/tests/replay-policy.spec.ts +1 -1
- package/tests/supervisor.spec.ts +2 -2
- package/src/manager/actions/manager.ts +0 -25
- /package/src/manager/plugins/{replay-policy.ts → consts.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../../src/manager/plugins/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,sBAAsB,EAAoC,MAAM,gBAAgB,CAAA;AAEjJ,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../../src/manager/plugins/supervisor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { AllowanceResponse } from '@owlmeans/auth';
|
|
2
|
-
import type { AuthModel } from '../types.js';
|
|
2
|
+
import type { AppConfig, AppContext, AuthModel } from '../types.js';
|
|
3
3
|
import type { AbstractRequest } from '@owlmeans/entrypoint';
|
|
4
4
|
import type { RedisResource } from '@owlmeans/redis-resource';
|
|
5
5
|
import type { ResourceRecord } from '@owlmeans/resource';
|
|
6
|
-
import type { AuthChallengeReplayPolicy } from './
|
|
6
|
+
import type { AuthChallengeReplayPolicy } from './consts.js';
|
|
7
7
|
export interface AuthPlugin extends Omit<AuthModel, "rely"> {
|
|
8
8
|
type: string;
|
|
9
9
|
/**
|
|
@@ -28,4 +28,19 @@ export interface RelyRecord extends ResourceRecord, AllowanceResponse {
|
|
|
28
28
|
}
|
|
29
29
|
export interface AuthRedisResource extends RedisResource<RelyRecord> {
|
|
30
30
|
}
|
|
31
|
+
/** Builds the plugin of one authentication type over the context it serves. */
|
|
32
|
+
export interface AuthPluginFactory {
|
|
33
|
+
<C extends AppConfig, T extends AppContext<C>>(context: T): AuthPlugin;
|
|
34
|
+
}
|
|
35
|
+
/** Resolution of the registered plugins, and the check every plugin runs on what it is handed. */
|
|
36
|
+
export interface AuthPluginHelper {
|
|
37
|
+
/** @throws {TypeMissmatchError} when a request names another plugin's type */
|
|
38
|
+
assertType: (type: string, plugin: AuthPlugin) => void;
|
|
39
|
+
/**
|
|
40
|
+
* The registered plugin of a type, built over the context.
|
|
41
|
+
*
|
|
42
|
+
* @throws {AuthUnknown}
|
|
43
|
+
*/
|
|
44
|
+
getPlugin: (type: string, context: AppContext<AppConfig>) => Promise<AuthPlugin>;
|
|
45
|
+
}
|
|
31
46
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAE5D,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;IACzD,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,qBAAqB,CAAC,EAAE,yBAAyB,CAAA;CAClD;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,gBAAiB,SAAQ,eAAe,CAAC;IACxD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAC;CAAI;AAEN,MAAM,WAAW,UAAW,SAAQ,cAAc,EAAE,iBAAiB;CACpE;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa,CAAC,UAAU,CAAC;CAAG;AAEvE,+EAA+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,UAAU,CAAA;CACvE;AAED,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IACtD;;;;OAIG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;CACjF"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { AuthPlugin } from './types.js';
|
|
1
|
+
import type { AuthPlugin, AuthPluginHelper } from './types.js';
|
|
2
2
|
import type { AppContext, AppConfig } from '../types.js';
|
|
3
|
+
export declare const createAuthPluginHelper: () => AuthPluginHelper;
|
|
4
|
+
export declare const authPluginHelper: AuthPluginHelper;
|
|
5
|
+
/** @deprecated compat:factory-refactor — use `authPluginHelper.assertType(…)` */
|
|
3
6
|
export declare const assertType: (type: string, plugin: AuthPlugin) => void;
|
|
4
|
-
/**
|
|
5
|
-
* @throws {AuthUnknown}
|
|
6
|
-
*/
|
|
7
|
+
/** @deprecated compat:factory-refactor — use `authPluginHelper.getPlugin(…)` */
|
|
7
8
|
export declare const getPlugin: (type: string, context: AppContext<AppConfig>) => Promise<AuthPlugin>;
|
|
8
9
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/manager/plugins/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAExD,eAAO,MAAM,sBAAsB,QAAO,gBAiBzC,CAAA;AAED,eAAO,MAAM,gBAAgB,kBAA2B,CAAA;AAExD,iFAAiF;AACjF,eAAO,MAAM,UAAU,SAAU,MAAM,UAAU,UAAU,KAAG,IAAiD,CAAA;AAE/G,gFAAgF;AAChF,eAAO,MAAM,SAAS,SAAgB,MAAM,WAAW,UAAU,CAAC,SAAS,CAAC,KAAG,OAAO,CAAC,UAAU,CAChD,CAAA"}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
import { AuthUnknown, TypeMissmatchError } from '@owlmeans/auth';
|
|
2
|
-
export const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
return
|
|
2
|
+
export const createAuthPluginHelper = () => {
|
|
3
|
+
const assertType = (type, plugin) => {
|
|
4
|
+
if (type !== plugin.type) {
|
|
5
|
+
throw new TypeMissmatchError(plugin.type);
|
|
6
|
+
}
|
|
7
|
+
};
|
|
8
|
+
const getPlugin = async (type, context) => {
|
|
9
|
+
const { plugins } = await import('./index.js');
|
|
10
|
+
const plugin = plugins[type];
|
|
11
|
+
if (plugin == null) {
|
|
12
|
+
throw new AuthUnknown(type);
|
|
13
|
+
}
|
|
14
|
+
return plugins[type](context);
|
|
15
|
+
};
|
|
16
|
+
return { assertType, getPlugin };
|
|
17
17
|
};
|
|
18
|
+
export const authPluginHelper = createAuthPluginHelper();
|
|
19
|
+
/** @deprecated compat:factory-refactor — use `authPluginHelper.assertType(…)` */
|
|
20
|
+
export const assertType = (type, plugin) => authPluginHelper.assertType(type, plugin);
|
|
21
|
+
/** @deprecated compat:factory-refactor — use `authPluginHelper.getPlugin(…)` */
|
|
22
|
+
export const getPlugin = async (type, context) => await authPluginHelper.getPlugin(type, context);
|
|
18
23
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/manager/plugins/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAIhE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,MAAkB,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/manager/plugins/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAIhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAqB,EAAE;IAC3D,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,MAAkB,EAAQ,EAAE;QAC5D,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAE,OAA8B,EAAuB,EAAE;QAC5F,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAA;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;AAClC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA;AAExD,iFAAiF;AACjF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,MAAkB,EAAQ,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AAE/G,gFAAgF;AAChF,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAE,OAA8B,EAAuB,EAAE,CACnG,MAAM,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../../src/manager/rely/flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,IAAI,EAA8B,MAAM,gBAAgB,CAAA;AAExF,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAyB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../../src/manager/rely/flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,IAAI,EAA8B,MAAM,gBAAgB,CAAA;AAExF,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAyB,MAAM,kBAAkB,CAAA;AAC7F,OAAO,KAAK,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAA;AAsB5F,eAAO,MAAM,cAAc,YAAa,UAAU,QAAQ,UAAU,SAAS,IAAI,GAAG,IAAI,KAAG,kBAgH1F,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { AUTH_SCOPE, AuthenticationStage, AuthenticationType, AuthPluginError, AuthRole, RELY_3RD } from '@owlmeans/auth';
|
|
2
|
-
import { isEventMessage, isMessage } from '@owlmeans/socket';
|
|
3
2
|
import { makeAuthModel } from '../model.js';
|
|
4
3
|
import { EnvelopeKind, makeEnvelopeModel } from '@owlmeans/basic-envelope';
|
|
5
4
|
import { trusted } from '../utils/trusted.js';
|
|
6
5
|
import { RELY_TUNNEL } from '../consts.js';
|
|
7
6
|
import { RELY_ACTION_TIMEOUT } from '@owlmeans/auth-common';
|
|
8
7
|
import { logger } from '@owlmeans/log';
|
|
8
|
+
import { socketMessageHelper } from '@owlmeans/socket';
|
|
9
9
|
// 1. There is a difference between privileged (provider)
|
|
10
10
|
// and non-privileged (consumer) request
|
|
11
11
|
// 2. Source allows to distinguish between provider and consumer
|
|
@@ -23,10 +23,10 @@ export const createRelyFlow = (context, conn, auth) => {
|
|
|
23
23
|
const linker = async (rely, source, notify) => {
|
|
24
24
|
const tunnel = context.resource(RELY_TUNNEL);
|
|
25
25
|
const closeReceiver = await tunnel.subscribe(async (message) => {
|
|
26
|
-
if (isMessage(message, true)) {
|
|
26
|
+
if (socketMessageHelper.isMessage(message, true)) {
|
|
27
27
|
await conn.send(message);
|
|
28
28
|
}
|
|
29
|
-
else if (isEventMessage(message, true)) {
|
|
29
|
+
else if (socketMessageHelper.isEventMessage(message, true)) {
|
|
30
30
|
if (message.event === 'close') {
|
|
31
31
|
await conn.close();
|
|
32
32
|
closeSender();
|
|
@@ -40,14 +40,14 @@ export const createRelyFlow = (context, conn, auth) => {
|
|
|
40
40
|
conn._receiveError = async (msg) => { log.debug('Forward error', { nonce: source.nonce, id: msg.id }); };
|
|
41
41
|
conn.defaultCallTimeout = RELY_ACTION_TIMEOUT * 1000;
|
|
42
42
|
const closeSender = conn.listen(async (message) => {
|
|
43
|
-
if (isMessage(message, true)) {
|
|
43
|
+
if (socketMessageHelper.isMessage(message, true)) {
|
|
44
44
|
const forward = { ...message };
|
|
45
45
|
if (forward.rawData != null) {
|
|
46
46
|
delete forward.rawData;
|
|
47
47
|
}
|
|
48
48
|
await tunnel.publish(forward, rely.nonce);
|
|
49
49
|
}
|
|
50
|
-
else if (isEventMessage(message, true)) {
|
|
50
|
+
else if (socketMessageHelper.isEventMessage(message, true)) {
|
|
51
51
|
if (message.event === 'close') {
|
|
52
52
|
const forward = { ...message };
|
|
53
53
|
if (forward.rawData != null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../src/manager/rely/flow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../src/manager/rely/flow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/manager/supervisor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAA2B,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/manager/supervisor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAA2B,MAAM,YAAY,CAAA;AASvG;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,gBACvB,KAAK,CAAC;IAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,UAAS,MAAM,KACvD,IAMF,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,WACtE,CAAC,SAAS,qBAAqB,KACvC,CAyBF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../src/manager/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../src/manager/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAEvD,MAAM,aAAa,GAAG,CAAC,OAAqE,EAAW,EAAE,CACvG,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;AAE3E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,WAAyC,EAAE,KAAK,GAAW,aAAa,EAClE,EAAE;IACR,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC3B,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAAU,EAAE,IAA4B,EACrC,EAAE;IACL,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAA;IACvD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,QAAQ,GAA4B;QACxC,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,mBAAmB;QACrD,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,IAAI;QAClD,WAAW,EAAE,IAAI,EAAE,WAAW;KAC/B,CAAA;IAED,cAAc,CACZ,kBAAkB,CAAC,UAAU,EAC7B,CAAC,GAAG,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAuC,EAAE,QAAQ,CAAC,CAAsB,CACtG,CAAA;IAED,IAAI,IAAI,EAAE,oBAAoB,KAAK,KAAK,EAAE,CAAC;QACzC,yBAAyB,CACvB,OAAO,CAAC,WAAW,EAA6C,EAChE,IAAI,EAAE,KAAK,IAAI,aAAa,CAC7B,CAAA;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../src/model/rely/peer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAI7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../src/model/rely/peer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAI7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAW7C,eAAO,MAAM,aAAa,UAAW,WAAW,KAAG,aAAa,CAAC,SAAS,CAyBzE,CAAA"}
|
package/build/model/rely/peer.js
CHANGED
|
@@ -3,6 +3,13 @@ import { makeEnvelopeModel } from '@owlmeans/basic-envelope';
|
|
|
3
3
|
import { createRandomPrefix, createIdOfLength, IdStyle } from '@owlmeans/basic-ids';
|
|
4
4
|
import { base58 } from '@scure/base';
|
|
5
5
|
import { RELY_CALL_TIMEOUT } from '@owlmeans/auth-common';
|
|
6
|
+
const toNumber = (bytes) => {
|
|
7
|
+
let pinInt = 0n;
|
|
8
|
+
for (let i = bytes.length - 1; i >= 0; i--) {
|
|
9
|
+
pinInt = (pinInt << 8n) | BigInt(bytes[i]);
|
|
10
|
+
}
|
|
11
|
+
return pinInt.toString();
|
|
12
|
+
};
|
|
6
13
|
export const makeRelyModel = (opts) => {
|
|
7
14
|
const envelope = makeEnvelopeModel(RELY_3RD);
|
|
8
15
|
const pinLength = opts?.pinLength ?? 6;
|
|
@@ -26,11 +33,4 @@ export const makeRelyModel = (opts) => {
|
|
|
26
33
|
}, opts?.liveTime ?? RELY_CALL_TIMEOUT * 1000);
|
|
27
34
|
return envelope;
|
|
28
35
|
};
|
|
29
|
-
const toNumber = (bytes) => {
|
|
30
|
-
let pinInt = 0n;
|
|
31
|
-
for (let i = bytes.length - 1; i >= 0; i--) {
|
|
32
|
-
pinInt = (pinInt << 8n) | BigInt(bytes[i]);
|
|
33
|
-
}
|
|
34
|
-
return pinInt.toString();
|
|
35
|
-
};
|
|
36
36
|
//# sourceMappingURL=peer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer.js","sourceRoot":"","sources":["../../../src/model/rely/peer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAkB,EAA4B,EAAE;IAC5E,MAAM,QAAQ,GAAG,iBAAiB,CAAY,QAAQ,CAAC,CAAA;IAEvD,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,CAAC,CAAA;IACtC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,CAAC,CAAA;IAC1C,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAA;IAC3C,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAA;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,WAAW,CAAA;IAC5B,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAA;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAA;IACzD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAA;IAEjD,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;IACtD,QAAQ,CAAC,IAAI,CAAC;QACZ,GAAG;QACH,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;QAC1D,KAAK,EAAE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;KACrD,EAAE,IAAI,EAAE,QAAQ,IAAI,iBAAiB,GAAG,IAAI,CAAC,CAAA;IAE9C,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA
|
|
1
|
+
{"version":3,"file":"peer.js","sourceRoot":"","sources":["../../../src/model/rely/peer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,QAAQ,GAAG,CAAC,KAAiB,EAAU,EAAE;IAC7C,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAkB,EAA4B,EAAE;IAC5E,MAAM,QAAQ,GAAG,iBAAiB,CAAY,QAAQ,CAAC,CAAA;IAEvD,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,CAAC,CAAA;IACtC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,CAAC,CAAA;IAC1C,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAA;IAC3C,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAA;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,WAAW,CAAA;IAC5B,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAA;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAA;IACzD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAA;IAEjD,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;IACtD,QAAQ,CAAC,IAAI,CAAC;QACZ,GAAG;QACH,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;QACrD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC;QAC1D,KAAK,EAAE,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;KACrD,EAAE,IAAI,EAAE,QAAQ,IAAI,iBAAiB,GAAG,IAAI,CAAC,CAAA;IAE9C,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
|
package/build/service.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAa,MAAM,YAAY,CAAA;AAa3E,OAAO,KAAK,EAAE,MAAM,EAAW,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAa,MAAM,YAAY,CAAA;AAa3E,OAAO,KAAK,EAAE,MAAM,EAAW,MAAM,kBAAkB,CAAA;AAKvD,eAAO,MAAM,eAAe,WAAW,MAAM,KAAmB,WAgM/D,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,OACvE,CAAC,UAAS,MAAM,KACpB,CAAC,GAAG,iBAiBN,CAAA"}
|
package/build/service.js
CHANGED
|
@@ -8,20 +8,20 @@ import { trust, extractAuthToken } from '@owlmeans/auth-common/utils';
|
|
|
8
8
|
import { ENTITY_RESOLVER, TOKEN_UPDATE } from '@owlmeans/auth-common';
|
|
9
9
|
import { AUTH_IDENTITY_PROFILE } from '@owlmeans/server-auth-identity';
|
|
10
10
|
import { appendMemoryAuthSessionManager, AUTH_SESSION_MANAGER, AUTH_SESSION_TTL } from '@owlmeans/server-auth-session';
|
|
11
|
-
import {
|
|
11
|
+
import { idHelper } from '@owlmeans/basic-ids';
|
|
12
12
|
import { logger } from '@owlmeans/log';
|
|
13
13
|
const log = logger('server-auth');
|
|
14
|
-
/**
|
|
15
|
-
* A refused token exchange — the manager's token presented to open a session. Logged with the
|
|
16
|
-
* reason and the account id only; returns the error for the caller to throw.
|
|
17
|
-
*/
|
|
18
|
-
const refuse = (reason, error, userId) => {
|
|
19
|
-
const accountId = userId == null ? undefined
|
|
20
|
-
: userId.includes('@') ? `*@${userId.slice(userId.lastIndexOf('@') + 1)}` : userId;
|
|
21
|
-
log.warn('Session exchange refused', { reason, ...(accountId != null ? { accountId } : {}) }, { event: 'auth.refused' });
|
|
22
|
-
return error;
|
|
23
|
-
};
|
|
24
14
|
export const makeAuthService = (alias = DEFAULT_ALIAS) => {
|
|
15
|
+
/**
|
|
16
|
+
* A refused token exchange — the manager's token presented to open a session. Logged with the
|
|
17
|
+
* reason and the account id only; returns the error for the caller to throw.
|
|
18
|
+
*/
|
|
19
|
+
const refuse = (reason, error, userId) => {
|
|
20
|
+
const accountId = userId == null ? undefined
|
|
21
|
+
: userId.includes('@') ? `*@${userId.slice(userId.lastIndexOf('@') + 1)}` : userId;
|
|
22
|
+
log.warn('Session exchange refused', { reason, ...(accountId != null ? { accountId } : {}) }, { event: 'auth.refused' });
|
|
23
|
+
return error;
|
|
24
|
+
};
|
|
25
25
|
const location = `server-auth:${alias}`;
|
|
26
26
|
const cache = (context) => context.resource(AUTH_CACHE);
|
|
27
27
|
const sessions = (context) => context.hasService(AUTH_SESSION_MANAGER)
|
|
@@ -171,7 +171,7 @@ export const makeAuthService = (alias = DEFAULT_ALIAS) => {
|
|
|
171
171
|
isUser: true,
|
|
172
172
|
createdAt: new Date(issuedAt),
|
|
173
173
|
expiresAt,
|
|
174
|
-
sessionId: uuid(),
|
|
174
|
+
sessionId: idHelper.uuid(),
|
|
175
175
|
authorizationVersion: 1
|
|
176
176
|
};
|
|
177
177
|
const manager = sessions(context);
|
package/build/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEvF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,EAAmC,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGtI,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EAAE,eAAe,EAA8B,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACjG,OAAO,EAAE,qBAAqB,EAAsD,MAAM,gCAAgC,CAAA;AAC1H,OAAO,EAAE,8BAA8B,EAAE,oBAAoB,EAAE,gBAAgB,EAA2B,MAAM,+BAA+B,CAAA;AAC/I,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@owlmeans/server-auth",
|
|
3
|
-
"version": "0.1.18-rc.
|
|
3
|
+
"version": "0.1.18-rc.55",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -37,32 +37,32 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@noble/hashes": "^2.4.0",
|
|
40
|
-
"@owlmeans/api": "^0.1.18-rc.
|
|
41
|
-
"@owlmeans/api-config-server": "^0.1.18-rc.
|
|
42
|
-
"@owlmeans/auth": "^0.1.18-rc.
|
|
43
|
-
"@owlmeans/auth-common": "^0.1.18-rc.
|
|
44
|
-
"@owlmeans/basic-envelope": "^0.1.18-rc.
|
|
45
|
-
"@owlmeans/basic-ids": "^0.1.18-rc.
|
|
46
|
-
"@owlmeans/basic-keys": "^0.1.18-rc.
|
|
47
|
-
"@owlmeans/client-config": "^0.1.18-rc.
|
|
48
|
-
"@owlmeans/client-entrypoint": "^0.1.18-rc.
|
|
49
|
-
"@owlmeans/config": "^0.1.18-rc.
|
|
50
|
-
"@owlmeans/context": "^0.1.18-rc.
|
|
51
|
-
"@owlmeans/kluster": "^0.1.18-rc.
|
|
52
|
-
"@owlmeans/log": "^0.1.18-rc.
|
|
53
|
-
"@owlmeans/entrypoint": "^0.1.18-rc.
|
|
54
|
-
"@owlmeans/redis-resource": "^0.1.18-rc.
|
|
55
|
-
"@owlmeans/resource": "^0.1.18-rc.
|
|
56
|
-
"@owlmeans/route": "^0.1.18-rc.
|
|
57
|
-
"@owlmeans/server-api": "^0.1.18-rc.
|
|
58
|
-
"@owlmeans/server-auth-identity": "^0.1.18-rc.
|
|
59
|
-
"@owlmeans/server-auth-session": "^0.1.18-rc.
|
|
60
|
-
"@owlmeans/server-context": "^0.1.18-rc.
|
|
61
|
-
"@owlmeans/server-entrypoint": "^0.1.18-rc.
|
|
62
|
-
"@owlmeans/server-route": "^0.1.18-rc.
|
|
63
|
-
"@owlmeans/server-socket": "^0.1.18-rc.
|
|
64
|
-
"@owlmeans/socket": "^0.1.18-rc.
|
|
65
|
-
"@owlmeans/static-resource": "^0.1.18-rc.
|
|
40
|
+
"@owlmeans/api": "^0.1.18-rc.48",
|
|
41
|
+
"@owlmeans/api-config-server": "^0.1.18-rc.52",
|
|
42
|
+
"@owlmeans/auth": "^0.1.18-rc.40",
|
|
43
|
+
"@owlmeans/auth-common": "^0.1.18-rc.48",
|
|
44
|
+
"@owlmeans/basic-envelope": "^0.1.18-rc.47",
|
|
45
|
+
"@owlmeans/basic-ids": "^0.1.18-rc.38",
|
|
46
|
+
"@owlmeans/basic-keys": "^0.1.18-rc.49",
|
|
47
|
+
"@owlmeans/client-config": "^0.1.18-rc.44",
|
|
48
|
+
"@owlmeans/client-entrypoint": "^0.1.18-rc.48",
|
|
49
|
+
"@owlmeans/config": "^0.1.18-rc.44",
|
|
50
|
+
"@owlmeans/context": "^0.1.18-rc.34",
|
|
51
|
+
"@owlmeans/kluster": "^0.1.18-rc.43",
|
|
52
|
+
"@owlmeans/log": "^0.1.18-rc.2",
|
|
53
|
+
"@owlmeans/entrypoint": "^0.1.18-rc.41",
|
|
54
|
+
"@owlmeans/redis-resource": "^0.1.18-rc.45",
|
|
55
|
+
"@owlmeans/resource": "^0.1.18-rc.40",
|
|
56
|
+
"@owlmeans/route": "^0.1.18-rc.35",
|
|
57
|
+
"@owlmeans/server-api": "^0.1.18-rc.52",
|
|
58
|
+
"@owlmeans/server-auth-identity": "^0.1.18-rc.48",
|
|
59
|
+
"@owlmeans/server-auth-session": "^0.1.18-rc.17",
|
|
60
|
+
"@owlmeans/server-context": "^0.1.18-rc.43",
|
|
61
|
+
"@owlmeans/server-entrypoint": "^0.1.18-rc.40",
|
|
62
|
+
"@owlmeans/server-route": "^0.1.18-rc.34",
|
|
63
|
+
"@owlmeans/server-socket": "^0.1.18-rc.55",
|
|
64
|
+
"@owlmeans/socket": "^0.1.18-rc.41",
|
|
65
|
+
"@owlmeans/static-resource": "^0.1.18-rc.39",
|
|
66
66
|
"@scure/base": "^2.4.0"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"@owlmeans/dep-config": "workspace:*",
|
|
73
|
-
"@owlmeans/test-auth": "^0.1.18-rc.
|
|
73
|
+
"@owlmeans/test-auth": "^0.1.18-rc.47",
|
|
74
74
|
"@types/bun": "^1.4.2",
|
|
75
75
|
"@types/node": "^26.6.4",
|
|
76
76
|
"nodemon": "^3.1.14",
|
package/src/manager/README.md
CHANGED
|
@@ -38,7 +38,7 @@ The manager is built on the OwlMeans entrypoint system, providing:
|
|
|
38
38
|
This manager app is part of the `@owlmeans/server-auth` package:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
|
-
npm install @owlmeans/server-auth@^0.1.18-rc.
|
|
41
|
+
npm install @owlmeans/server-auth@^0.1.18-rc.55
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
## API Reference
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AuthCredentials, AuthToken } from '@owlmeans/auth'
|
|
2
|
+
import type { EntrypointProtocol } from '@owlmeans/entrypoint'
|
|
3
|
+
import { handlers } from '@owlmeans/server-api'
|
|
4
|
+
import { makeAuthModel } from '../model.js'
|
|
5
|
+
import type { AppContext, AppConfig } from '../types.js'
|
|
6
|
+
|
|
7
|
+
const api = handlers<AppContext<AppConfig>>()
|
|
8
|
+
|
|
9
|
+
export const authenticate = (protocol: EntrypointProtocol<{ body: AuthCredentials }, AuthToken>) =>
|
|
10
|
+
api.body(protocol, async (body, context) =>
|
|
11
|
+
await makeAuthModel(context).authenticate(body)
|
|
12
|
+
)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AllowanceRequest, AllowanceResponse } from '@owlmeans/auth'
|
|
2
|
+
import type { EntrypointProtocol } from '@owlmeans/entrypoint'
|
|
3
|
+
import { handlers } from '@owlmeans/server-api'
|
|
4
|
+
import { makeAuthModel } from '../model.js'
|
|
5
|
+
import type { AppContext, AppConfig } from '../types.js'
|
|
6
|
+
|
|
7
|
+
const api = handlers<AppContext<AppConfig>>()
|
|
8
|
+
|
|
9
|
+
export const authenticationInit = (protocol: EntrypointProtocol<{ body: AllowanceRequest }, AllowanceResponse>) =>
|
|
10
|
+
api.body(protocol, async (body, context) =>
|
|
11
|
+
await makeAuthModel(context).init(body)
|
|
12
|
+
)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AuthToken } from '@owlmeans/auth'
|
|
2
|
+
import type { EntrypointProtocol } from '@owlmeans/entrypoint'
|
|
3
|
+
import { makeAuthModel } from '../model.js'
|
|
4
|
+
import type { AppContext, AppConfig } from '../types.js'
|
|
5
|
+
import { connection } from '@owlmeans/server-socket'
|
|
6
|
+
|
|
7
|
+
export const rely = (protocol: EntrypointProtocol<{ query: Partial<AuthToken> }, undefined>) => connection(protocol,
|
|
8
|
+
// @TODO Request will contain information is there requrest
|
|
9
|
+
// privileged or not (privileged request implies auth provider)
|
|
10
|
+
async (conn, context, request) =>
|
|
11
|
+
await makeAuthModel(context as AppContext<AppConfig>).rely(conn, request.auth)
|
|
12
|
+
)
|
package/src/manager/model.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { AuthModel, AppConfig, AppContext } from './types.js'
|
|
2
|
-
import { AuthenFailed, AuthenPayloadError, AuthError, AuthUnavailable,
|
|
2
|
+
import { AuthenFailed, AuthenPayloadError, AuthError, AuthUnavailable, authHelper, type AuthCredentials } from '@owlmeans/auth'
|
|
3
3
|
import { logger } from '@owlmeans/log'
|
|
4
4
|
import { type EntityResolverService, ENTITY_RESOLVER } from '@owlmeans/auth-common'
|
|
5
|
-
import {
|
|
5
|
+
import { authPluginHelper } from './plugins/utils.js'
|
|
6
6
|
import { AUTH_CACHE, AUTHEN_TIMEFRAME } from '../consts.js'
|
|
7
7
|
import { EnvelopeKind, makeEnvelopeModel, type EnvelopeModel } from '@owlmeans/basic-envelope'
|
|
8
8
|
import { createRelyFlow } from './rely/flow.js'
|
|
9
9
|
import { trusted } from './utils/trusted.js'
|
|
10
10
|
import type { Resource } from '@owlmeans/resource'
|
|
11
11
|
import type { AuthSpent } from '../types.js'
|
|
12
|
-
import { AuthChallengeReplayPolicy } from './plugins/
|
|
12
|
+
import { AuthChallengeReplayPolicy } from './plugins/consts.js'
|
|
13
13
|
import type { Context } from './types.local.js'
|
|
14
14
|
|
|
15
15
|
|
|
@@ -28,7 +28,7 @@ export const makeAuthModel = (context: AppContext<AppConfig>): AuthModel => {
|
|
|
28
28
|
|
|
29
29
|
const model: AuthModel = {
|
|
30
30
|
init: async request => {
|
|
31
|
-
const plugin = await getPlugin(request.type, context)
|
|
31
|
+
const plugin = await authPluginHelper.getPlugin(request.type, context)
|
|
32
32
|
const response = await plugin.init(request)
|
|
33
33
|
|
|
34
34
|
const envelope = makeEnvelopeModel(plugin.type)
|
|
@@ -60,7 +60,7 @@ export const makeAuthModel = (context: AppContext<AppConfig>): AuthModel => {
|
|
|
60
60
|
|
|
61
61
|
const msg: string = envelope.message(true)
|
|
62
62
|
|
|
63
|
-
const plugin = await getPlugin(envelope.type(), context)
|
|
63
|
+
const plugin = await authPluginHelper.getPlugin(envelope.type(), context)
|
|
64
64
|
|
|
65
65
|
if (plugin.challengeReplayPolicy !== AuthChallengeReplayPolicy.Plugin) {
|
|
66
66
|
try {
|
|
@@ -92,7 +92,7 @@ export const makeAuthModel = (context: AppContext<AppConfig>): AuthModel => {
|
|
|
92
92
|
// since retired, or (for a token minted before slugs existed) its stable key. The token is
|
|
93
93
|
// signed once and read for as long as it lives, so the value is canonicalized here rather
|
|
94
94
|
// than at every place that later reads it back.
|
|
95
|
-
const entitySlug = entitySlugOf(credential)
|
|
95
|
+
const entitySlug = authHelper.entitySlugOf(credential)
|
|
96
96
|
if (entitySlug != null && context.hasService(ENTITY_RESOLVER)) {
|
|
97
97
|
const entity = await context.service<EntityResolverService>(ENTITY_RESOLVER).resolve(entitySlug)
|
|
98
98
|
if (entity == null) {
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { AuthenticationType, AuthenFailed, ALL_SCOPES, AuthRole } from '@owlmeans/auth'
|
|
2
2
|
import type { AuthPlugin } from './types.js'
|
|
3
|
-
import {
|
|
3
|
+
import { authPluginHelper } from './utils.js'
|
|
4
4
|
import { randomBytes } from '@noble/hashes/utils.js'
|
|
5
5
|
import { base64 } from '@scure/base'
|
|
6
|
-
import {
|
|
6
|
+
import { keyHelper } from '@owlmeans/basic-keys'
|
|
7
7
|
import type { AppConfig, AppContext } from '../types.js'
|
|
8
8
|
import { TRUSTED } from '@owlmeans/config'
|
|
9
9
|
import type { TrustedRecord } from '@owlmeans/auth-common'
|
|
10
10
|
|
|
11
|
-
export const
|
|
11
|
+
export const makeBasicEd25519Plugin = <C extends AppConfig, T extends AppContext<C>>(context: T): AuthPlugin => {
|
|
12
12
|
const plugin: AuthPlugin = {
|
|
13
13
|
type: AuthenticationType.BasicEd25519,
|
|
14
14
|
init: async request => {
|
|
15
|
-
assertType(request.type, plugin)
|
|
15
|
+
authPluginHelper.assertType(request.type, plugin)
|
|
16
16
|
|
|
17
17
|
const challenge = base64.encode(randomBytes(32))
|
|
18
18
|
|
|
@@ -34,7 +34,7 @@ export const basicEd25519 = <C extends AppConfig, T extends AppContext<C>>(conte
|
|
|
34
34
|
throw new SyntaxError('System user missconfigured')
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
const key = fromPubKey(systemUser.credential)
|
|
37
|
+
const key = keyHelper.fromPubKey(systemUser.credential)
|
|
38
38
|
|
|
39
39
|
if (!await key.verify(credential.challenge, credential.credential)) {
|
|
40
40
|
throw new AuthenFailed(`challenge:${plugin.type}`)
|
|
@@ -14,7 +14,7 @@ import { logger } from '@owlmeans/log'
|
|
|
14
14
|
const log = logger('server-auth:rely')
|
|
15
15
|
|
|
16
16
|
const _subscriptions: Record<string, Unsubscribe> = {}
|
|
17
|
-
export const
|
|
17
|
+
export const makeBasicRelyPlugin = (context: AppContext, type?: string): AuthPlugin => {
|
|
18
18
|
const plugin: AuthPlugin = {
|
|
19
19
|
type: type ?? AuthenticationType.RelyHandshake,
|
|
20
20
|
|