@spinajs/authn-keys 3.0.3 → 3.0.5
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 +11 -3
- package/lib/cjs/cli/AddKey.d.ts +2 -2
- package/lib/cjs/cli/AddKey.d.ts.map +1 -1
- package/lib/cjs/cli/AddKey.js +2 -1
- package/lib/cjs/cli/AddKey.js.map +1 -1
- package/lib/cjs/cli/KeyCliCommand.d.ts +10 -0
- package/lib/cjs/cli/KeyCliCommand.d.ts.map +1 -0
- package/lib/cjs/{models/AuthnNonce.js → cli/KeyCliCommand.js} +14 -18
- package/lib/cjs/cli/KeyCliCommand.js.map +1 -0
- package/lib/cjs/cli/ListKeys.d.ts +2 -2
- package/lib/cjs/cli/ListKeys.d.ts.map +1 -1
- package/lib/cjs/cli/ListKeys.js +2 -1
- package/lib/cjs/cli/ListKeys.js.map +1 -1
- package/lib/cjs/cli/RevokeKey.d.ts +2 -2
- package/lib/cjs/cli/RevokeKey.d.ts.map +1 -1
- package/lib/cjs/cli/RevokeKey.js +2 -1
- package/lib/cjs/cli/RevokeKey.js.map +1 -1
- package/lib/cjs/cli/index.d.ts +1 -0
- package/lib/cjs/cli/index.d.ts.map +1 -1
- package/lib/cjs/cli/index.js +1 -0
- package/lib/cjs/cli/index.js.map +1 -1
- package/lib/cjs/index.d.ts +0 -1
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +0 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/jws/index.d.ts +1 -0
- package/lib/cjs/jws/index.d.ts.map +1 -1
- package/lib/cjs/jws/index.js +1 -0
- package/lib/cjs/jws/index.js.map +1 -1
- package/lib/cjs/jws/register.d.ts +18 -0
- package/lib/cjs/jws/register.d.ts.map +1 -0
- package/lib/cjs/jws/register.js +66 -0
- package/lib/cjs/jws/register.js.map +1 -0
- package/lib/cjs/models/index.d.ts +0 -1
- package/lib/cjs/models/index.d.ts.map +1 -1
- package/lib/cjs/models/index.js +0 -1
- package/lib/cjs/models/index.js.map +1 -1
- package/lib/cjs/options/options.d.ts +10 -0
- package/lib/cjs/options/options.d.ts.map +1 -1
- package/lib/cjs/options/options.js +9 -0
- package/lib/cjs/options/options.js.map +1 -1
- package/lib/cjs/registry/cache.d.ts +26 -0
- package/lib/cjs/registry/cache.d.ts.map +1 -0
- package/lib/cjs/registry/cache.js +73 -0
- package/lib/cjs/registry/cache.js.map +1 -0
- package/lib/cjs/registry/index.d.ts +1 -0
- package/lib/cjs/registry/index.d.ts.map +1 -1
- package/lib/cjs/registry/index.js +1 -0
- package/lib/cjs/registry/index.js.map +1 -1
- package/lib/cjs/registry/registry.d.ts +15 -2
- package/lib/cjs/registry/registry.d.ts.map +1 -1
- package/lib/cjs/registry/registry.js +35 -2
- package/lib/cjs/registry/registry.js.map +1 -1
- package/lib/cjs/schema.d.ts +40 -0
- package/lib/cjs/schema.d.ts.map +1 -1
- package/lib/cjs/schema.js +19 -0
- package/lib/cjs/schema.js.map +1 -1
- package/lib/cjs/strategies/assertion.d.ts +4 -5
- package/lib/cjs/strategies/assertion.d.ts.map +1 -1
- package/lib/cjs/strategies/assertion.js +6 -5
- package/lib/cjs/strategies/assertion.js.map +1 -1
- package/lib/cjs/strategies/httpsig.d.ts +5 -4
- package/lib/cjs/strategies/httpsig.d.ts.map +1 -1
- package/lib/cjs/strategies/httpsig.js +9 -5
- package/lib/cjs/strategies/httpsig.js.map +1 -1
- package/lib/cjs/strategies/index.d.ts +1 -0
- package/lib/cjs/strategies/index.d.ts.map +1 -1
- package/lib/cjs/strategies/index.js +1 -0
- package/lib/cjs/strategies/index.js.map +1 -1
- package/lib/cjs/strategies/keys.d.ts +3 -1
- package/lib/cjs/strategies/keys.d.ts.map +1 -1
- package/lib/cjs/strategies/keys.js +9 -0
- package/lib/cjs/strategies/keys.js.map +1 -1
- package/lib/cjs/strategies/nonce-key.d.ts +3 -0
- package/lib/cjs/strategies/nonce-key.d.ts.map +1 -0
- package/lib/cjs/strategies/nonce-key.js +8 -0
- package/lib/cjs/strategies/nonce-key.js.map +1 -0
- package/lib/mjs/cli/AddKey.d.ts +2 -2
- package/lib/mjs/cli/AddKey.d.ts.map +1 -1
- package/lib/mjs/cli/AddKey.js +3 -2
- package/lib/mjs/cli/AddKey.js.map +1 -1
- package/lib/mjs/cli/KeyCliCommand.d.ts +10 -0
- package/lib/mjs/cli/KeyCliCommand.d.ts.map +1 -0
- package/lib/mjs/{models/AuthnNonce.js → cli/KeyCliCommand.js} +13 -18
- package/lib/mjs/cli/KeyCliCommand.js.map +1 -0
- package/lib/mjs/cli/ListKeys.d.ts +2 -2
- package/lib/mjs/cli/ListKeys.d.ts.map +1 -1
- package/lib/mjs/cli/ListKeys.js +3 -2
- package/lib/mjs/cli/ListKeys.js.map +1 -1
- package/lib/mjs/cli/RevokeKey.d.ts +2 -2
- package/lib/mjs/cli/RevokeKey.d.ts.map +1 -1
- package/lib/mjs/cli/RevokeKey.js +3 -2
- package/lib/mjs/cli/RevokeKey.js.map +1 -1
- package/lib/mjs/cli/index.d.ts +1 -0
- package/lib/mjs/cli/index.d.ts.map +1 -1
- package/lib/mjs/cli/index.js +1 -0
- package/lib/mjs/cli/index.js.map +1 -1
- package/lib/mjs/index.d.ts +0 -1
- package/lib/mjs/index.d.ts.map +1 -1
- package/lib/mjs/index.js +0 -1
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/jws/index.d.ts +1 -0
- package/lib/mjs/jws/index.d.ts.map +1 -1
- package/lib/mjs/jws/index.js +1 -0
- package/lib/mjs/jws/index.js.map +1 -1
- package/lib/mjs/jws/register.d.ts +18 -0
- package/lib/mjs/jws/register.d.ts.map +1 -0
- package/lib/mjs/jws/register.js +62 -0
- package/lib/mjs/jws/register.js.map +1 -0
- package/lib/mjs/models/index.d.ts +0 -1
- package/lib/mjs/models/index.d.ts.map +1 -1
- package/lib/mjs/models/index.js +0 -1
- package/lib/mjs/models/index.js.map +1 -1
- package/lib/mjs/options/options.d.ts +10 -0
- package/lib/mjs/options/options.d.ts.map +1 -1
- package/lib/mjs/options/options.js +8 -0
- package/lib/mjs/options/options.js.map +1 -1
- package/lib/mjs/registry/cache.d.ts +26 -0
- package/lib/mjs/registry/cache.d.ts.map +1 -0
- package/lib/mjs/registry/cache.js +69 -0
- package/lib/mjs/registry/cache.js.map +1 -0
- package/lib/mjs/registry/index.d.ts +1 -0
- package/lib/mjs/registry/index.d.ts.map +1 -1
- package/lib/mjs/registry/index.js +1 -0
- package/lib/mjs/registry/index.js.map +1 -1
- package/lib/mjs/registry/registry.d.ts +15 -2
- package/lib/mjs/registry/registry.d.ts.map +1 -1
- package/lib/mjs/registry/registry.js +37 -4
- package/lib/mjs/registry/registry.js.map +1 -1
- package/lib/mjs/schema.d.ts +40 -0
- package/lib/mjs/schema.d.ts.map +1 -1
- package/lib/mjs/schema.js +19 -0
- package/lib/mjs/schema.js.map +1 -1
- package/lib/mjs/strategies/assertion.d.ts +4 -5
- package/lib/mjs/strategies/assertion.d.ts.map +1 -1
- package/lib/mjs/strategies/assertion.js +7 -6
- package/lib/mjs/strategies/assertion.js.map +1 -1
- package/lib/mjs/strategies/httpsig.d.ts +5 -4
- package/lib/mjs/strategies/httpsig.d.ts.map +1 -1
- package/lib/mjs/strategies/httpsig.js +10 -6
- package/lib/mjs/strategies/httpsig.js.map +1 -1
- package/lib/mjs/strategies/index.d.ts +1 -0
- package/lib/mjs/strategies/index.d.ts.map +1 -1
- package/lib/mjs/strategies/index.js +1 -0
- package/lib/mjs/strategies/index.js.map +1 -1
- package/lib/mjs/strategies/keys.d.ts +3 -1
- package/lib/mjs/strategies/keys.d.ts.map +1 -1
- package/lib/mjs/strategies/keys.js +8 -0
- package/lib/mjs/strategies/keys.js.map +1 -1
- package/lib/mjs/strategies/nonce-key.d.ts +3 -0
- package/lib/mjs/strategies/nonce-key.d.ts.map +1 -0
- package/lib/mjs/strategies/nonce-key.js +4 -0
- package/lib/mjs/strategies/nonce-key.js.map +1 -0
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +20 -11
- package/lib/cjs/models/AuthnNonce.d.ts +0 -8
- package/lib/cjs/models/AuthnNonce.d.ts.map +0 -1
- package/lib/cjs/models/AuthnNonce.js.map +0 -1
- package/lib/cjs/nonce/index.d.ts +0 -2
- package/lib/cjs/nonce/index.d.ts.map +0 -1
- package/lib/cjs/nonce/index.js +0 -18
- package/lib/cjs/nonce/index.js.map +0 -1
- package/lib/cjs/nonce/store.d.ts +0 -22
- package/lib/cjs/nonce/store.d.ts.map +0 -1
- package/lib/cjs/nonce/store.js +0 -98
- package/lib/cjs/nonce/store.js.map +0 -1
- package/lib/mjs/models/AuthnNonce.d.ts +0 -8
- package/lib/mjs/models/AuthnNonce.d.ts.map +0 -1
- package/lib/mjs/models/AuthnNonce.js.map +0 -1
- package/lib/mjs/nonce/index.d.ts +0 -2
- package/lib/mjs/nonce/index.d.ts.map +0 -1
- package/lib/mjs/nonce/index.js +0 -2
- package/lib/mjs/nonce/index.js.map +0 -1
- package/lib/mjs/nonce/store.d.ts +0 -22
- package/lib/mjs/nonce/store.d.ts.map +0 -1
- package/lib/mjs/nonce/store.js +0 -92
- package/lib/mjs/nonce/store.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/registry/cache.ts"],"names":[],"mappings":";;;AAAA,4CAAsF;AAEtF,wCAA4C;AAG5C,yCAAsC;AAEtC;;;GAGG;AACH,oBAA4B,SAAQ,mBAAQ;IAM1C,YACqB,KAAe,EACf,OAAwB,EACxB,GAAyB;QAE5C,KAAK,EAAE,CAAC;QAJW,UAAK,GAAL,KAAK,CAAU;QACf,YAAO,GAAP,OAAO,CAAiB;QACxB,QAAG,GAAH,GAAG,CAAsB;QAP9C,2FAA2F;QACnF,UAAK,GAAG,CAAC,CAAC;QAShB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,kBAAW,CAAoB,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,UAAU,GAAG,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChL,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAA,0BAAoB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAc;QAChC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,CAAC,IAAA,mBAAa,EAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAW;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,IAAA,mBAAa,EAAC,KAAK,EAAE,GAAG,CAAC,EAAE,IAAA,iBAAW,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,WAAW,CAAC,KAAkB;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,KAAkB,EAAE,GAAW,EAAE,EAAQ;QAC3D,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,CAAC,IAAA,mBAAa,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,EAAQ;QACtC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,CAAC,IAAA,mBAAa,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,kCAAkC;IAC3B,OAAO;QACZ,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,IAAc;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/registry/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|
|
@@ -16,5 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./store.js"), exports);
|
|
18
18
|
__exportStar(require("./orm-store.js"), exports);
|
|
19
|
+
__exportStar(require("./cache.js"), exports);
|
|
19
20
|
__exportStar(require("./registry.js"), exports);
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,iDAA+B;AAC/B,gDAA8B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/registry/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,iDAA+B;AAC/B,6CAA2B;AAC3B,gDAA8B"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import '../register-schema.js';
|
|
2
2
|
import { AuthnAudit } from '@spinajs/authn/audit';
|
|
3
|
+
import '@spinajs/authn/bus';
|
|
3
4
|
import type { AuthnAuditor, AuthnEventBody } from '@spinajs/authn/audit';
|
|
4
|
-
import { AuthnThrottle, KeyRegistry, SecretStore } from '@spinajs/authn/contracts';
|
|
5
|
+
import { AuthnThrottle, CredentialChangeBus, KeyRegistry, SecretStore } from '@spinajs/authn/contracts';
|
|
5
6
|
import type { AuthnContext, IdentityRef, KeyChallengeRequest, KeyChallengeResult, KeyMaterial, KeyOwner, KeyRecord, KeyRegisterResult, KeyRegistration, PrincipalRef } from '@spinajs/authn/contracts';
|
|
7
|
+
import { Log } from '@spinajs/log';
|
|
6
8
|
import type { KeysConfig, KeysOptions } from '../options/options.js';
|
|
7
9
|
import { KeyStore } from './store.js';
|
|
8
10
|
/** Usable for verification: neither revoked nor expired at `now`. */
|
|
@@ -21,8 +23,13 @@ export interface DefaultKeyRegistryDeps {
|
|
|
21
23
|
readonly audit?: AuthnAuditor;
|
|
22
24
|
/** Complete options that bypass the configuration. */
|
|
23
25
|
readonly options?: KeysOptions;
|
|
26
|
+
/** Told about revoked keys, and evicts the key cache; otherwise the registered CredentialChangeBus. */
|
|
27
|
+
readonly bus?: CredentialChangeBus;
|
|
24
28
|
}
|
|
25
|
-
/**
|
|
29
|
+
/**
|
|
30
|
+
* KeyRegistry over a KeyStore, challenges in SecretStore (lane notes D7, D12). The store is wrapped in a
|
|
31
|
+
* {@link CachedKeyStore} unless `authn.keys.cache.ttlSeconds` is 0.
|
|
32
|
+
*/
|
|
26
33
|
export declare class DefaultKeyRegistry extends KeyRegistry {
|
|
27
34
|
protected readonly Deps?: DefaultKeyRegistryDeps | undefined;
|
|
28
35
|
protected KeysConfig: KeysConfig;
|
|
@@ -30,11 +37,15 @@ export declare class DefaultKeyRegistry extends KeyRegistry {
|
|
|
30
37
|
protected Store: KeyStore;
|
|
31
38
|
protected Secrets: SecretStore;
|
|
32
39
|
protected Throttle: AuthnThrottle;
|
|
40
|
+
protected Bus: CredentialChangeBus | undefined;
|
|
41
|
+
protected Log: Log;
|
|
42
|
+
private cached;
|
|
33
43
|
private readonly stamped;
|
|
34
44
|
/** Kids whose last stamp is remembered; past this the least recently stamped is forgotten and costs one extra write. */
|
|
35
45
|
protected readonly maxStamped: number;
|
|
36
46
|
constructor(Deps?: DefaultKeyRegistryDeps | undefined);
|
|
37
47
|
protected get store(): KeyStore;
|
|
48
|
+
protected get bus(): CredentialChangeBus | undefined;
|
|
38
49
|
protected get secrets(): SecretStore;
|
|
39
50
|
protected get throttle(): AuthnThrottle;
|
|
40
51
|
protected get options(): KeysOptions;
|
|
@@ -46,6 +57,8 @@ export declare class DefaultKeyRegistry extends KeyRegistry {
|
|
|
46
57
|
revoke(owner: IdentityRef, kid: string, ctx: AuthnContext, opts?: {
|
|
47
58
|
readonly actor?: PrincipalRef;
|
|
48
59
|
}): Promise<boolean>;
|
|
60
|
+
/** The store already evicted its own cache; this tells the other caches of the process. */
|
|
61
|
+
protected changed(kid: string): Promise<void>;
|
|
49
62
|
byId(kid: string): Promise<KeyRecord | null>;
|
|
50
63
|
/** Stamps last_used_at after a successful verification, at most once a minute per key so busy clients write little. */
|
|
51
64
|
touch(kid: string, at: Date): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/registry/registry.ts"],"names":[],"mappings":"AAGA,OAAO,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/registry/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,12 +15,16 @@ const di_1 = require("@spinajs/di");
|
|
|
15
15
|
const configuration_1 = require("@spinajs/configuration");
|
|
16
16
|
require("../register-schema.js");
|
|
17
17
|
const audit_1 = require("@spinajs/authn/audit");
|
|
18
|
+
// Registers the default CredentialChangeBus.
|
|
19
|
+
require("@spinajs/authn/bus");
|
|
18
20
|
const contracts_1 = require("@spinajs/authn/contracts");
|
|
19
21
|
const util_1 = require("@spinajs/util");
|
|
20
22
|
const exceptions_1 = require("@spinajs/exceptions");
|
|
23
|
+
const log_1 = require("@spinajs/log");
|
|
21
24
|
const challenge_js_1 = require("../challenge/challenge.js");
|
|
22
25
|
const keys_js_1 = require("../jwk/keys.js");
|
|
23
26
|
const options_js_1 = require("../options/options.js");
|
|
27
|
+
const cache_js_1 = require("./cache.js");
|
|
24
28
|
const store_js_1 = require("./store.js");
|
|
25
29
|
const OWNER_TYPES = ['user', 'service', 'agent'];
|
|
26
30
|
const MAX_OWNER_ID = 64;
|
|
@@ -67,7 +71,10 @@ exports.isUsableKey = isUsableKey;
|
|
|
67
71
|
*/
|
|
68
72
|
const loginChallengeIdentity = (kid) => ({ type: 'key', id: (0, keys_js_1.isValidKid)(kid) ? kid : (0, node_crypto_1.createHash)('sha256').update(kid, 'utf8').digest('hex') });
|
|
69
73
|
exports.loginChallengeIdentity = loginChallengeIdentity;
|
|
70
|
-
/**
|
|
74
|
+
/**
|
|
75
|
+
* KeyRegistry over a KeyStore, challenges in SecretStore (lane notes D7, D12). The store is wrapped in a
|
|
76
|
+
* {@link CachedKeyStore} unless `authn.keys.cache.ttlSeconds` is 0.
|
|
77
|
+
*/
|
|
71
78
|
let DefaultKeyRegistry = class DefaultKeyRegistry extends contracts_1.KeyRegistry {
|
|
72
79
|
constructor(Deps) {
|
|
73
80
|
super();
|
|
@@ -77,7 +84,15 @@ let DefaultKeyRegistry = class DefaultKeyRegistry extends contracts_1.KeyRegistr
|
|
|
77
84
|
this.maxStamped = 10_000;
|
|
78
85
|
}
|
|
79
86
|
get store() {
|
|
80
|
-
|
|
87
|
+
const inner = this.Deps?.store ?? this.Store;
|
|
88
|
+
if (this.cached?.inner !== inner) {
|
|
89
|
+
const cache = this.options.cache ?? options_js_1.DEFAULT_KEY_CACHE;
|
|
90
|
+
this.cached = { inner, store: cache.ttlSeconds > 0 ? new cache_js_1.CachedKeyStore(inner, cache, this.bus) : inner };
|
|
91
|
+
}
|
|
92
|
+
return this.cached.store;
|
|
93
|
+
}
|
|
94
|
+
get bus() {
|
|
95
|
+
return this.Deps?.bus ?? this.Bus;
|
|
81
96
|
}
|
|
82
97
|
get secrets() {
|
|
83
98
|
return this.Deps?.secrets ?? this.Secrets;
|
|
@@ -160,12 +175,22 @@ let DefaultKeyRegistry = class DefaultKeyRegistry extends contracts_1.KeyRegistr
|
|
|
160
175
|
if (done === 'none') {
|
|
161
176
|
return false;
|
|
162
177
|
}
|
|
178
|
+
await this.changed(kid);
|
|
163
179
|
if (done === 'already') {
|
|
164
180
|
return true;
|
|
165
181
|
}
|
|
166
182
|
await this.publish(ctx, { type: 'key.revoke', outcome: 'success', identity: owner, ...(opts?.actor ? { actor: opts.actor } : {}), data: { kid } });
|
|
167
183
|
return true;
|
|
168
184
|
}
|
|
185
|
+
/** The store already evicted its own cache; this tells the other caches of the process. */
|
|
186
|
+
async changed(kid) {
|
|
187
|
+
try {
|
|
188
|
+
await this.bus?.publish({ kind: 'key', id: kid });
|
|
189
|
+
}
|
|
190
|
+
catch (err) {
|
|
191
|
+
this.Log.error({ error: err, kid }, 'Could not publish the revoke of key ${kid}');
|
|
192
|
+
}
|
|
193
|
+
}
|
|
169
194
|
async byId(kid) {
|
|
170
195
|
return (0, keys_js_1.isValidKid)(kid) ? this.store.get(kid) : null;
|
|
171
196
|
}
|
|
@@ -237,6 +262,14 @@ __decorate([
|
|
|
237
262
|
(0, di_1.Autoinject)(contracts_1.AuthnThrottle),
|
|
238
263
|
__metadata("design:type", contracts_1.AuthnThrottle)
|
|
239
264
|
], DefaultKeyRegistry.prototype, "Throttle", void 0);
|
|
265
|
+
__decorate([
|
|
266
|
+
(0, di_1.Autoinject)(contracts_1.CredentialChangeBus, { optional: true }),
|
|
267
|
+
__metadata("design:type", Object)
|
|
268
|
+
], DefaultKeyRegistry.prototype, "Bus", void 0);
|
|
269
|
+
__decorate([
|
|
270
|
+
(0, log_1.Logger)('authn-keys'),
|
|
271
|
+
__metadata("design:type", log_1.Log)
|
|
272
|
+
], DefaultKeyRegistry.prototype, "Log", void 0);
|
|
240
273
|
exports.DefaultKeyRegistry = DefaultKeyRegistry = __decorate([
|
|
241
274
|
(0, di_1.Injectable)(contracts_1.KeyRegistry),
|
|
242
275
|
__metadata("design:paramtypes", [Object])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/registry/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/registry/registry.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/schema.d.ts
CHANGED
|
@@ -57,6 +57,29 @@ export declare const AUTHN_KEYS_CONFIGURATION_SCHEMA: {
|
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
59
|
};
|
|
60
|
+
signer: {
|
|
61
|
+
type: string;
|
|
62
|
+
nullable: boolean;
|
|
63
|
+
default: null;
|
|
64
|
+
description: string;
|
|
65
|
+
properties: {
|
|
66
|
+
current: {
|
|
67
|
+
type: string;
|
|
68
|
+
minLength: number;
|
|
69
|
+
description: string;
|
|
70
|
+
};
|
|
71
|
+
keys: {
|
|
72
|
+
type: string;
|
|
73
|
+
minItems: number;
|
|
74
|
+
items: {
|
|
75
|
+
type: string;
|
|
76
|
+
minLength: number;
|
|
77
|
+
};
|
|
78
|
+
description: string;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
required: string[];
|
|
82
|
+
};
|
|
60
83
|
httpSignature: {
|
|
61
84
|
type: string;
|
|
62
85
|
default: {};
|
|
@@ -83,6 +106,23 @@ export declare const AUTHN_KEYS_CONFIGURATION_SCHEMA: {
|
|
|
83
106
|
};
|
|
84
107
|
};
|
|
85
108
|
};
|
|
109
|
+
cache: {
|
|
110
|
+
type: string;
|
|
111
|
+
default: {};
|
|
112
|
+
properties: {
|
|
113
|
+
ttlSeconds: {
|
|
114
|
+
type: string;
|
|
115
|
+
minimum: number;
|
|
116
|
+
default: number;
|
|
117
|
+
description: string;
|
|
118
|
+
};
|
|
119
|
+
maxEntries: {
|
|
120
|
+
type: string;
|
|
121
|
+
minimum: number;
|
|
122
|
+
default: number;
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
};
|
|
86
126
|
};
|
|
87
127
|
};
|
|
88
128
|
//# sourceMappingURL=schema.d.ts.map
|
package/lib/cjs/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,eAAO,MAAM,+BAA+B;;;;;;;YAM1B,IAAI;YAAW,QAAQ;YAAK,WAAW;YAAQ,KAAK;gBAAI,IAAI;gBAAY,IAAI;;YAAwB,OAAO;;;YAEvH,IAAI;YACJ,OAAO;YACP,UAAU;gBACR,UAAU;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAQ,OAAO;;gBACjE,QAAQ;oBAAI,IAAI;oBAAsB,SAAS;oBAAK,OAAO;oBAAQ,WAAW;;;;;YAIhF,IAAI;YACJ,OAAO;YACP,UAAU;gBACR,QAAQ;oBAAI,IAAI;oBAAsB,SAAS;oBAAK,OAAO;oBAAQ,WAAW;;gBAC9E,kBAAkB;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO;;gBACxE,WAAW;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,eAAO,MAAM,+BAA+B;;;;;;;YAM1B,IAAI;YAAW,QAAQ;YAAK,WAAW;YAAQ,KAAK;gBAAI,IAAI;gBAAY,IAAI;;YAAwB,OAAO;;;YAEvH,IAAI;YACJ,OAAO;YACP,UAAU;gBACR,UAAU;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAQ,OAAO;;gBACjE,QAAQ;oBAAI,IAAI;oBAAsB,SAAS;oBAAK,OAAO;oBAAQ,WAAW;;;;;YAIhF,IAAI;YACJ,OAAO;YACP,UAAU;gBACR,QAAQ;oBAAI,IAAI;oBAAsB,SAAS;oBAAK,OAAO;oBAAQ,WAAW;;gBAC9E,kBAAkB;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO;;gBACxE,WAAW;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO;;;;;YAInE,IAAI;YACJ,QAAQ;YACR,OAAO;YACP,WAAW;YACX,UAAU;gBACR,OAAO;oBAAI,IAAI;oBAAY,SAAS;oBAAK,WAAW;;gBACpD,IAAI;oBAAI,IAAI;oBAAW,QAAQ;oBAAK,KAAK;wBAAI,IAAI;wBAAY,SAAS;;oBAAO,WAAW;;;YAE1F,QAAQ;;;;;;;oBAMW,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO;;;oBACpD,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAO,OAAO;;;;;wBA3C5B,IAAI;wBAAY,SAAS;;;;;;;YAgDhE,IAAI;YACJ,OAAO;YACP,UAAU;gBACR,UAAU;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;oBAAM,WAAW;;gBACnE,UAAU;oBAAI,IAAI;oBAAa,OAAO;oBAAK,OAAO;;;;;CAIzD,CAAC"}
|
package/lib/cjs/schema.js
CHANGED
|
@@ -27,6 +27,17 @@ exports.AUTHN_KEYS_CONFIGURATION_SCHEMA = {
|
|
|
27
27
|
skewSeconds: { type: 'integer', minimum: 0, maximum: 300, default: 30 },
|
|
28
28
|
},
|
|
29
29
|
},
|
|
30
|
+
signer: {
|
|
31
|
+
type: 'object',
|
|
32
|
+
nullable: true,
|
|
33
|
+
default: null,
|
|
34
|
+
description: 'Private signing keys for the JwsSigner (and its JWKS route); null registers no signer.',
|
|
35
|
+
properties: {
|
|
36
|
+
current: { type: 'string', minLength: 1, description: 'kid of the key that signs by default; one of the keys.' },
|
|
37
|
+
keys: { type: 'array', minItems: 1, items: { type: 'string', minLength: 1 }, description: 'Secret references the configuration resolves to private JWKs (JSON text), never inline keys.' },
|
|
38
|
+
},
|
|
39
|
+
required: ['current', 'keys'],
|
|
40
|
+
},
|
|
30
41
|
httpSignature: {
|
|
31
42
|
type: 'object',
|
|
32
43
|
default: {},
|
|
@@ -36,6 +47,14 @@ exports.AUTHN_KEYS_CONFIGURATION_SCHEMA = {
|
|
|
36
47
|
requiredComponents: { ...stringList, default: ['@method', '@target-uri', 'content-digest'] },
|
|
37
48
|
},
|
|
38
49
|
},
|
|
50
|
+
cache: {
|
|
51
|
+
type: 'object',
|
|
52
|
+
default: {},
|
|
53
|
+
properties: {
|
|
54
|
+
ttlSeconds: { type: 'integer', minimum: 0, default: 10, description: 'Seconds KeyRegistry.byId serves a key from memory; 0 turns the cache off.' },
|
|
55
|
+
maxEntries: { type: 'integer', minimum: 1, default: 10000 },
|
|
56
|
+
},
|
|
57
|
+
},
|
|
39
58
|
},
|
|
40
59
|
};
|
|
41
60
|
//# sourceMappingURL=schema.js.map
|
package/lib/cjs/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":";;;AAAA,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;AAE9E,kGAAkG;AACrF,QAAA,+BAA+B,GAAG;IAC7C,GAAG,EAAE,8CAA8C;IACnD,oBAAoB,EAAE,YAAY;IAClC,WAAW,EAAE,uCAAuC;IACpD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAC/I,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;YACX,UAAU,EAAE;gBACV,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;gBACxE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,4GAA4G,EAAE;aAC/L;SACF;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;YACX,UAAU,EAAE;gBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,2DAA2D,EAAE;gBAC7I,kBAAkB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;gBAC/E,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;aACxE;SACF;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;YACX,UAAU,EAAE;gBACV,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE;gBAC1E,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;gBACvE,kBAAkB,EAAE,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,gBAAgB,CAAC,EAAE;aAC7F;SACF;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { JwsVerifier } from '@spinajs/authn/contracts';
|
|
1
|
+
import { JwsVerifier, NonceStore } from '@spinajs/authn/contracts';
|
|
2
2
|
import type { AuthnContext, Credentials, StrategyOutcome, ThrottleKey } from '@spinajs/authn/contracts';
|
|
3
|
-
import { KeyNonceStore } from '../nonce/store.js';
|
|
4
3
|
import { KeyStrategy } from './keys.js';
|
|
5
4
|
import type { KeyStrategyDeps } from './keys.js';
|
|
6
5
|
export interface JwsAssertionStrategyDeps extends KeyStrategyDeps {
|
|
7
6
|
readonly verifier?: JwsVerifier;
|
|
8
|
-
readonly nonces?:
|
|
7
|
+
readonly nonces?: NonceStore;
|
|
9
8
|
}
|
|
10
9
|
/**
|
|
11
10
|
* Machine clients: `Authorization: Bearer <jws>` signed by a registered key (design §22.10, A17). Header typ
|
|
@@ -17,9 +16,9 @@ export declare class JwsAssertionStrategy extends KeyStrategy<JwsAssertionStrate
|
|
|
17
16
|
readonly kinds: string[];
|
|
18
17
|
readonly interactive = false;
|
|
19
18
|
protected Verifier: JwsVerifier;
|
|
20
|
-
protected Nonces:
|
|
19
|
+
protected Nonces: NonceStore | undefined;
|
|
21
20
|
protected get verifier(): JwsVerifier;
|
|
22
|
-
protected get nonces():
|
|
21
|
+
protected get nonces(): NonceStore;
|
|
23
22
|
/** The audience the assertions name; which strategies are listed decides that one is required, so this is a boot check, not a schema rule. */
|
|
24
23
|
protected get audience(): string;
|
|
25
24
|
resolve(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion.d.ts","sourceRoot":"","sources":["../../../src/strategies/assertion.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"assertion.d.ts","sourceRoot":"","sources":["../../../src/strategies/assertion.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3F,OAAO,KAAK,EAAE,YAAY,EAAgB,WAAW,EAAsC,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAO1J,OAAO,EAAE,WAAW,EAAkG,MAAM,WAAW,CAAC;AACxI,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAkBjD,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAED;;;;GAIG;AACH,qBACa,oBAAqB,SAAQ,WAAW,CAAC,wBAAwB,CAAC;IAC7E,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,KAAK,WAAqB;IACnC,QAAQ,CAAC,WAAW,SAAS;IAG7B,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC;IAGhC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAEzC,SAAS,KAAK,QAAQ,IAAI,WAAW,CAEpC;IAED,SAAS,KAAK,MAAM,IAAI,UAAU,CAEjC;IAED,8IAA8I;IAC9I,SAAS,KAAK,QAAQ,IAAI,MAAM,CAM/B;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpC;IAED,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,SAAS,WAAW,EAAE,CAEtE;IAEK,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAwCxE;CACF"}
|
|
@@ -17,7 +17,7 @@ const exceptions_1 = require("@spinajs/exceptions");
|
|
|
17
17
|
const base64url_js_1 = require("../jwk/base64url.js");
|
|
18
18
|
const keys_js_1 = require("../jwk/keys.js");
|
|
19
19
|
const json_js_1 = require("../jws/json.js");
|
|
20
|
-
const
|
|
20
|
+
const nonce_key_js_1 = require("./nonce-key.js");
|
|
21
21
|
const keys_js_2 = require("./keys.js");
|
|
22
22
|
const MAX_JTI = 128;
|
|
23
23
|
const assertionClaims = (p) => (typeof p.jti === 'string' && p.jti.length > 0 && p.jti.length <= MAX_JTI ? p : null);
|
|
@@ -44,7 +44,7 @@ let JwsAssertionStrategy = class JwsAssertionStrategy extends keys_js_2.KeyStrat
|
|
|
44
44
|
return this.Deps?.verifier ?? this.Verifier;
|
|
45
45
|
}
|
|
46
46
|
get nonces() {
|
|
47
|
-
return this.Deps?.nonces ?? this.Nonces;
|
|
47
|
+
return (0, keys_js_2.requireNonceStore)(this.Deps?.nonces ?? this.Nonces, this.name);
|
|
48
48
|
}
|
|
49
49
|
/** The audience the assertions name; which strategies are listed decides that one is required, so this is a boot check, not a schema rule. */
|
|
50
50
|
get audience() {
|
|
@@ -55,6 +55,7 @@ let JwsAssertionStrategy = class JwsAssertionStrategy extends keys_js_2.KeyStrat
|
|
|
55
55
|
return audience;
|
|
56
56
|
}
|
|
57
57
|
async resolve() {
|
|
58
|
+
void this.nonces;
|
|
58
59
|
void this.audience;
|
|
59
60
|
await super.resolve();
|
|
60
61
|
}
|
|
@@ -97,7 +98,7 @@ let JwsAssertionStrategy = class JwsAssertionStrategy extends keys_js_2.KeyStrat
|
|
|
97
98
|
}
|
|
98
99
|
return (0, keys_js_2.failure)('invalid_credentials');
|
|
99
100
|
}
|
|
100
|
-
if (!(await this.nonces.claim((0,
|
|
101
|
+
if (!(await this.nonces.claim((0, nonce_key_js_1.nonceKey)('jti', r.key.kid, r.claims.jti), new Date((r.claims.exp + a.skewSeconds) * 1000), ctx.now))) {
|
|
101
102
|
return (0, keys_js_2.failure)('invalid_credentials');
|
|
102
103
|
}
|
|
103
104
|
return this.success(r.key, 'jws', ctx);
|
|
@@ -109,8 +110,8 @@ __decorate([
|
|
|
109
110
|
__metadata("design:type", contracts_1.JwsVerifier)
|
|
110
111
|
], JwsAssertionStrategy.prototype, "Verifier", void 0);
|
|
111
112
|
__decorate([
|
|
112
|
-
(0, di_1.Autoinject)(
|
|
113
|
-
__metadata("design:type",
|
|
113
|
+
(0, di_1.Autoinject)(contracts_1.NonceStore, { optional: true }),
|
|
114
|
+
__metadata("design:type", Object)
|
|
114
115
|
], JwsAssertionStrategy.prototype, "Nonces", void 0);
|
|
115
116
|
exports.JwsAssertionStrategy = JwsAssertionStrategy = __decorate([
|
|
116
117
|
(0, di_1.Injectable)(contracts_1.AuthenticationStrategy)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion.js","sourceRoot":"","sources":["../../../src/strategies/assertion.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"assertion.js","sourceRoot":"","sources":["../../../src/strategies/assertion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { NonceStore } from '@spinajs/authn/contracts';
|
|
1
2
|
import type { AuthnContext, Credentials, KeyAlgorithm, SignedRequest, StrategyOutcome, ThrottleKey } from '@spinajs/authn/contracts';
|
|
2
3
|
import type { SignatureInput } from '../httpsig/fields.js';
|
|
3
|
-
import { KeyNonceStore } from '../nonce/store.js';
|
|
4
4
|
import { KeyStrategy } from './keys.js';
|
|
5
5
|
import type { KeyStrategyDeps } from './keys.js';
|
|
6
6
|
interface Checked {
|
|
@@ -12,7 +12,7 @@ interface Checked {
|
|
|
12
12
|
readonly alg?: KeyAlgorithm;
|
|
13
13
|
}
|
|
14
14
|
export interface HttpSignatureStrategyDeps extends KeyStrategyDeps {
|
|
15
|
-
readonly nonces?:
|
|
15
|
+
readonly nonces?: NonceStore;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Per-request HTTP message signatures, an RFC 9421 subset (design §22.10, A18): one signature; `@method`,
|
|
@@ -23,8 +23,9 @@ export declare class HttpSignatureStrategy extends KeyStrategy<HttpSignatureStra
|
|
|
23
23
|
readonly name = "keys-httpsig";
|
|
24
24
|
readonly kinds: string[];
|
|
25
25
|
readonly interactive = false;
|
|
26
|
-
protected Nonces:
|
|
27
|
-
protected get nonces():
|
|
26
|
+
protected Nonces: NonceStore | undefined;
|
|
27
|
+
protected get nonces(): NonceStore;
|
|
28
|
+
resolve(): Promise<void>;
|
|
28
29
|
throttleKeys(c: Credentials, ctx: AuthnContext): readonly ThrottleKey[];
|
|
29
30
|
/** Everything that needs no key: the headers' form, the parameters, coverage, the digest and the time window. */
|
|
30
31
|
protected check(req: SignedRequest, ctx: AuthnContext): Checked | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpsig.d.ts","sourceRoot":"","sources":["../../../src/strategies/httpsig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpsig.d.ts","sourceRoot":"","sources":["../../../src/strategies/httpsig.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIrI,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAiF,MAAM,WAAW,CAAC;AACvH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAQjD,UAAU,OAAO;IACf,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC;CAC7B;AAOD,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAED;;;;GAIG;AACH,qBACa,qBAAsB,SAAQ,WAAW,CAAC,yBAAyB,CAAC;IAC/E,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,WAAsB;IACpC,QAAQ,CAAC,WAAW,SAAS;IAG7B,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAEzC,SAAS,KAAK,MAAM,IAAI,UAAU,CAEjC;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAGpC;IAED,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,SAAS,WAAW,EAAE,CAKtE;IAED,iHAAiH;IACjH,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,GAAG,IAAI,CAuCrE;IAEK,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CA4BxE;CACF"}
|
|
@@ -15,7 +15,7 @@ const contracts_1 = require("@spinajs/authn/contracts");
|
|
|
15
15
|
const signature_js_1 = require("../jwk/signature.js");
|
|
16
16
|
const base_js_1 = require("../httpsig/base.js");
|
|
17
17
|
const fields_js_1 = require("../httpsig/fields.js");
|
|
18
|
-
const
|
|
18
|
+
const nonce_key_js_1 = require("./nonce-key.js");
|
|
19
19
|
const keys_js_1 = require("./keys.js");
|
|
20
20
|
/** RFC 9421 algorithm names; the `alg` parameter is optional and, when sent, must name the key's algorithm. */
|
|
21
21
|
const ALG_PARAM = { ed25519: 'EdDSA', 'ecdsa-p256-sha256': 'ES256' };
|
|
@@ -39,7 +39,11 @@ let HttpSignatureStrategy = class HttpSignatureStrategy extends keys_js_1.KeyStr
|
|
|
39
39
|
this.interactive = false;
|
|
40
40
|
}
|
|
41
41
|
get nonces() {
|
|
42
|
-
return this.Deps?.nonces ?? this.Nonces;
|
|
42
|
+
return (0, keys_js_1.requireNonceStore)(this.Deps?.nonces ?? this.Nonces, this.name);
|
|
43
|
+
}
|
|
44
|
+
async resolve() {
|
|
45
|
+
void this.nonces;
|
|
46
|
+
await super.resolve();
|
|
43
47
|
}
|
|
44
48
|
throttleKeys(c, ctx) {
|
|
45
49
|
const req = c.kind === 'http-signature' && isRequest(c.request) ? c.request : null;
|
|
@@ -110,7 +114,7 @@ let HttpSignatureStrategy = class HttpSignatureStrategy extends keys_js_1.KeyStr
|
|
|
110
114
|
return (0, keys_js_1.failure)('invalid_credentials');
|
|
111
115
|
}
|
|
112
116
|
const expiresAt = new Date((checked.expires + this.options.httpSignature.skewSeconds) * 1000);
|
|
113
|
-
if (!(await this.nonces.claim((0,
|
|
117
|
+
if (!(await this.nonces.claim((0, nonce_key_js_1.nonceKey)('sig', key.kid, checked.nonce), expiresAt, ctx.now))) {
|
|
114
118
|
return (0, keys_js_1.failure)('invalid_credentials');
|
|
115
119
|
}
|
|
116
120
|
return this.success(key, 'http-signature', ctx);
|
|
@@ -118,8 +122,8 @@ let HttpSignatureStrategy = class HttpSignatureStrategy extends keys_js_1.KeyStr
|
|
|
118
122
|
};
|
|
119
123
|
exports.HttpSignatureStrategy = HttpSignatureStrategy;
|
|
120
124
|
__decorate([
|
|
121
|
-
(0, di_1.Autoinject)(
|
|
122
|
-
__metadata("design:type",
|
|
125
|
+
(0, di_1.Autoinject)(contracts_1.NonceStore, { optional: true }),
|
|
126
|
+
__metadata("design:type", Object)
|
|
123
127
|
], HttpSignatureStrategy.prototype, "Nonces", void 0);
|
|
124
128
|
exports.HttpSignatureStrategy = HttpSignatureStrategy = __decorate([
|
|
125
129
|
(0, di_1.Injectable)(contracts_1.AuthenticationStrategy)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpsig.js","sourceRoot":"","sources":["../../../src/strategies/httpsig.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"httpsig.js","sourceRoot":"","sources":["../../../src/strategies/httpsig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/strategies/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/strategies/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
|
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./keys.js"), exports);
|
|
18
|
+
__exportStar(require("./nonce-key.js"), exports);
|
|
18
19
|
__exportStar(require("./assertion.js"), exports);
|
|
19
20
|
__exportStar(require("./httpsig.js"), exports);
|
|
20
21
|
__exportStar(require("./challenge.js"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/strategies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,iDAA+B;AAC/B,+CAA6B;AAC7B,iDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/strategies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,iDAA+B;AAC/B,iDAA+B;AAC/B,+CAA6B;AAC7B,iDAA+B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Log } from '@spinajs/log';
|
|
2
2
|
import '../register-schema.js';
|
|
3
3
|
import { AuthenticationStrategy, KeyRegistry } from '@spinajs/authn/contracts';
|
|
4
|
-
import type { AuthnContext, AuthnFailure, KeyAlgorithm, IdentityRef, KeyOwner, KeyRecord, StrategyOutcome, ThrottleKey } from '@spinajs/authn/contracts';
|
|
4
|
+
import type { AuthnContext, AuthnFailure, KeyAlgorithm, IdentityRef, KeyOwner, KeyRecord, NonceStore, StrategyOutcome, ThrottleKey } from '@spinajs/authn/contracts';
|
|
5
5
|
import type { KeysConfig, KeysOptions } from '../options/options.js';
|
|
6
6
|
/** Credentials longer than this are refused before any parsing (a header is parsed before its signature is checked). */
|
|
7
7
|
export declare const MAX_CREDENTIAL_LENGTH = 8192;
|
|
@@ -19,6 +19,8 @@ export type KeyLookup = {
|
|
|
19
19
|
};
|
|
20
20
|
/** byId for verifiers: only a key that is neither revoked nor expired at ctx.now is usable; the reason goes to audit. */
|
|
21
21
|
export declare function usableKey(registry: KeyRegistry, kid: string, ctx: AuthnContext): Promise<KeyLookup>;
|
|
22
|
+
/** Only authn-orm registers a NonceStore, so an app without it fails when the strategy boots, not on the first request. */
|
|
23
|
+
export declare function requireNonceStore(nonces: NonceStore | undefined, strategy: string): NonceStore;
|
|
22
24
|
export declare const failure: (reason: AuthnFailure) => StrategyOutcome;
|
|
23
25
|
/** A test seam for building a key strategy with `new`: each field replaces what DI injects. */
|
|
24
26
|
export interface KeyStrategyDeps {
|