@atlasauth/backend 0.27.1 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/README.md +19 -2
- package/dist/client/api-keys.d.ts +26 -3
- package/dist/client/api-keys.js.map +1 -1
- package/dist/client/app-events.d.ts +129 -0
- package/dist/client/app-events.js +80 -0
- package/dist/client/app-events.js.map +1 -0
- package/dist/client/import-export.d.ts +3 -0
- package/dist/client/import-export.js.map +1 -1
- package/dist/client/index.d.ts +83 -2
- package/dist/client/index.js +4 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/instance.d.ts +78 -0
- package/dist/client/instance.js +22 -0
- package/dist/client/instance.js.map +1 -1
- package/dist/client/messaging.d.ts +28 -8
- package/dist/client/messaging.js +5 -1
- package/dist/client/messaging.js.map +1 -1
- package/dist/client/privacy.d.ts +53 -0
- package/dist/client/privacy.js +10 -0
- package/dist/client/privacy.js.map +1 -1
- package/dist/client/referrals.d.ts +47 -6
- package/dist/client/referrals.js +2 -2
- package/dist/client/referrals.js.map +1 -1
- package/dist/client/sessions.d.ts +31 -0
- package/dist/client/sessions.js +9 -0
- package/dist/client/sessions.js.map +1 -1
- package/dist/client/sign-in-tokens.d.ts +5 -1
- package/dist/client/sign-in-tokens.js +5 -1
- package/dist/client/sign-in-tokens.js.map +1 -1
- package/dist/client/test-mode.d.ts +17 -0
- package/dist/client/test-mode.js +8 -0
- package/dist/client/test-mode.js.map +1 -1
- package/dist/client/users.d.ts +55 -0
- package/dist/client/users.js +18 -0
- package/dist/client/users.js.map +1 -1
- package/dist/client/webhooks.d.ts +2 -1
- package/dist/client/webhooks.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/key-mirror.d.ts +109 -0
- package/dist/key-mirror.js +209 -0
- package/dist/key-mirror.js.map +1 -0
- package/dist/webhooks.d.ts +31 -0
- package/dist/webhooks.js +54 -1
- package/dist/webhooks.js.map +1 -1
- package/package.json +3 -3
package/dist/client/users.d.ts
CHANGED
|
@@ -39,6 +39,28 @@ export interface User {
|
|
|
39
39
|
referral_code?: string | null;
|
|
40
40
|
/** The user's own referral link, when they are a referrer. */
|
|
41
41
|
referral_link?: string | null;
|
|
42
|
+
/**
|
|
43
|
+
* Every linked provider identity (sign-in, connect, imported on create or by
|
|
44
|
+
* bulk import); the same set `identities.list` returns. (Absent from servers
|
|
45
|
+
* older than this field.)
|
|
46
|
+
*/
|
|
47
|
+
external_accounts?: UserExternalAccount[];
|
|
48
|
+
}
|
|
49
|
+
/** A provider identity linked to a user. Tokens are never included. */
|
|
50
|
+
export interface UserExternalAccount {
|
|
51
|
+
object: 'external_account';
|
|
52
|
+
id: string;
|
|
53
|
+
provider: string;
|
|
54
|
+
provider_user_id: string;
|
|
55
|
+
/** The provider's address at the last sign-in or import: a snapshot, not proof of ownership. */
|
|
56
|
+
provider_email: string | null;
|
|
57
|
+
email_verified: boolean;
|
|
58
|
+
first_name?: string | null;
|
|
59
|
+
last_name?: string | null;
|
|
60
|
+
/** The provider's avatar for this identity. */
|
|
61
|
+
image_url?: string | null;
|
|
62
|
+
/** Epoch milliseconds. */
|
|
63
|
+
connected_at: number;
|
|
42
64
|
}
|
|
43
65
|
/** The inbound referral the referral platform matched for a user. */
|
|
44
66
|
export interface UserReferral {
|
|
@@ -90,6 +112,18 @@ export interface UserReferralFlag {
|
|
|
90
112
|
flagged_at: number | null;
|
|
91
113
|
risk_level: 'low' | 'medium' | 'high' | null;
|
|
92
114
|
}
|
|
115
|
+
/** `POST /v1/users/:id/referral/resync`: the user's sign-up call sent again, and where the answer left their referral. */
|
|
116
|
+
export interface UserReferralResync {
|
|
117
|
+
object: 'referral_resync';
|
|
118
|
+
user_id: string;
|
|
119
|
+
/** The sign-up call in the referral delivery log. */
|
|
120
|
+
call_id: string | null;
|
|
121
|
+
call_status: 'pending' | 'succeeded' | 'retrying' | 'failed' | 'held' | 'skipped' | null;
|
|
122
|
+
/** Why the call did not succeed, when it did not. */
|
|
123
|
+
error: string | null;
|
|
124
|
+
/** The user's referral record after the answer (as `GET /v1/users/:id/referral`). */
|
|
125
|
+
referral: Record<string, unknown> | null;
|
|
126
|
+
}
|
|
93
127
|
/**
|
|
94
128
|
* The `data` of a `user.referral_attributed` webhook: the referral platform
|
|
95
129
|
* answered after `user.created` was sent.
|
|
@@ -211,6 +245,10 @@ export interface CreateUserBody {
|
|
|
211
245
|
password?: string;
|
|
212
246
|
first_name?: string;
|
|
213
247
|
last_name?: string;
|
|
248
|
+
/** The profile picture: an https URL, stored as given. */
|
|
249
|
+
image_url?: string;
|
|
250
|
+
/** Alias of `image_url`. */
|
|
251
|
+
profile_image_url?: string;
|
|
214
252
|
email_verified?: boolean;
|
|
215
253
|
/** The user must choose a new password at their first sign-in (`update_password` required action). */
|
|
216
254
|
password_change_required?: boolean;
|
|
@@ -237,6 +275,10 @@ export interface UpdateUserBody {
|
|
|
237
275
|
required_factors?: Array<'totp' | 'sms' | 'passkey' | 'push'> | null;
|
|
238
276
|
first_name?: string;
|
|
239
277
|
last_name?: string;
|
|
278
|
+
/** The profile picture: an https URL; `null` clears. */
|
|
279
|
+
image_url?: string | null;
|
|
280
|
+
/** Alias of `image_url`. */
|
|
281
|
+
profile_image_url?: string | null;
|
|
240
282
|
/**
|
|
241
283
|
* Your own id for the user; `null` clears. With referral attribution on, a
|
|
242
284
|
* change after sign-up is forwarded to the referral platform as an alias,
|
|
@@ -305,6 +347,19 @@ export declare function usersResource(request: RequestFn): {
|
|
|
305
347
|
flagReferral(id: string, body?: {
|
|
306
348
|
reason?: string;
|
|
307
349
|
}, idempotencyKey?: string): Promise<UserReferralFlag>;
|
|
350
|
+
referral: {
|
|
351
|
+
/**
|
|
352
|
+
* `POST /v1/users/:id/referral/resync` — re-report one user to the referral
|
|
353
|
+
* platform: the sign-up call goes out again now (same customerRef, original
|
|
354
|
+
* sign-up time, stored arrival context) and the answer (code, link, partner)
|
|
355
|
+
* is applied. For a user whose earlier answer is final on the platform's
|
|
356
|
+
* side but has since been fixed (e.g. `enroll_email_taken`). `dryRun`
|
|
357
|
+
* previews it without sending anything.
|
|
358
|
+
*/
|
|
359
|
+
resync(id: string, options?: {
|
|
360
|
+
dryRun?: boolean;
|
|
361
|
+
}, idempotencyKey?: string): Promise<UserReferralResync>;
|
|
362
|
+
};
|
|
308
363
|
delete(id: string): Promise<DeletedObject>;
|
|
309
364
|
resetMfa(id: string): Promise<{
|
|
310
365
|
object: "user";
|
package/dist/client/users.js
CHANGED
|
@@ -71,6 +71,24 @@ function usersResource(request) {
|
|
|
71
71
|
idempotencyKey,
|
|
72
72
|
});
|
|
73
73
|
},
|
|
74
|
+
referral: {
|
|
75
|
+
/**
|
|
76
|
+
* `POST /v1/users/:id/referral/resync` — re-report one user to the referral
|
|
77
|
+
* platform: the sign-up call goes out again now (same customerRef, original
|
|
78
|
+
* sign-up time, stored arrival context) and the answer (code, link, partner)
|
|
79
|
+
* is applied. For a user whose earlier answer is final on the platform's
|
|
80
|
+
* side but has since been fixed (e.g. `enroll_email_taken`). `dryRun`
|
|
81
|
+
* previews it without sending anything.
|
|
82
|
+
*/
|
|
83
|
+
resync(id, options = {}, idempotencyKey) {
|
|
84
|
+
return request({
|
|
85
|
+
method: 'POST',
|
|
86
|
+
path: `/v1/users/${(0, request_1.enc)(id)}/referral/resync`,
|
|
87
|
+
idempotencyKey,
|
|
88
|
+
...(options.dryRun ? { query: { dry_run: true } } : {}),
|
|
89
|
+
});
|
|
90
|
+
},
|
|
91
|
+
},
|
|
74
92
|
delete(id) {
|
|
75
93
|
return request({ method: 'DELETE', path: `/v1/users/${(0, request_1.enc)(id)}` });
|
|
76
94
|
},
|
package/dist/client/users.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/client/users.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/client/users.ts"],"names":[],"mappings":"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"}
|
|
@@ -188,6 +188,8 @@ export interface WebhookEndpointSettings {
|
|
|
188
188
|
/** An event destination instead of an HTTPS url. */
|
|
189
189
|
destination?: WebhookDestination;
|
|
190
190
|
destination_credentials?: WebhookDestinationCredentials;
|
|
191
|
+
/** false = switched off: nothing is delivered until it is enabled (on create too). Default true. */
|
|
192
|
+
active?: boolean;
|
|
191
193
|
}
|
|
192
194
|
export interface CreateWebhookEndpointBody extends WebhookEndpointSettings, ProvisioningInput {
|
|
193
195
|
/** Required unless `destination` is an event destination. */
|
|
@@ -196,7 +198,6 @@ export interface CreateWebhookEndpointBody extends WebhookEndpointSettings, Prov
|
|
|
196
198
|
/** Change an endpoint in place. The signing secret is kept. */
|
|
197
199
|
export interface UpdateWebhookEndpointBody extends WebhookEndpointSettings {
|
|
198
200
|
url?: string;
|
|
199
|
-
active?: boolean;
|
|
200
201
|
/** Replaces the provisioning metadata. */
|
|
201
202
|
metadata?: ProvisioningMetadata;
|
|
202
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/client/webhooks.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/client/webhooks.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,8 @@ export * from './botid';
|
|
|
31
31
|
export { createAtlasClient } from './client';
|
|
32
32
|
export type { AtlasClient } from './client';
|
|
33
33
|
export * from './client';
|
|
34
|
+
export { createKeyMirror, memoryKeyMirrorStore, hashApiKeySecret } from './key-mirror';
|
|
35
|
+
export type { KeyMirror, KeyMirrorOptions, KeyMirrorStore, MirroredApiKey, MirrorVerification, MirrorImportInput } from './key-mirror';
|
|
34
36
|
export { createTestIssuer, TEST_TOKEN_TAMPERS, testTenantClaims } from './testing';
|
|
35
37
|
export type { TestIssuer, TestTenantContext, CreateTestIssuerOptions, MintIdTokenOptions, TestAuthorizeOptions, TestAuthorizeResult, TestTokenTamper, } from './testing';
|
|
36
38
|
export { signAtlasReferralCall, signReferalliCall, signReferralUpdatedEvent, referalliSignature, referalliSignatureV2, referralEmailHash, REFERALLI_API_VERSION, } from './referral-test-calls';
|
package/dist/index.js
CHANGED
|
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
exports.verifyAccessToken = exports.requireAcr = exports.protectedResourceMetadataPath = exports.protectedResourceMetadata = exports.memoryDpopReplayStore = exports.memoryDpopNonceSource = exports.hmacDpopNonceSource = exports.createIntrospector = exports.createAccessTokenVerifier = exports.buildWwwAuthenticate = exports.DPOP_PROOF_MAX_AGE_SECONDS = exports.ACCESS_TOKEN_CLOCK_SKEW_SECONDS = void 0;
|
|
17
|
+
exports.verifyPCActn = exports.REFERALLI_API_VERSION = exports.referralEmailHash = exports.referalliSignatureV2 = exports.referalliSignature = exports.signReferralUpdatedEvent = exports.signReferalliCall = exports.signAtlasReferralCall = exports.testTenantClaims = exports.TEST_TOKEN_TAMPERS = exports.createTestIssuer = exports.hashApiKeySecret = exports.memoryKeyMirrorStore = exports.createKeyMirror = exports.createAtlasClient = exports.resetOidcCaches = exports.oidcSsoOf = exports.oidcOrganizationsOf = exports.oidcOrganizationOf = exports.oidcVerifyIdToken = exports.oidcStart = exports.oidcLogoutUrl = exports.oidcClearCookie = exports.oidcCallback = exports.oidc = exports.OIDC_FLOW_MAX_AGE_SECONDS = exports.OIDC_FLOW_COOKIE = exports.AtlasOidcError = exports.readLogoutToken = exports.nextBackchannelLogout = exports.handleBackchannelLogout = exports.fetchBackchannelLogout = exports.fastifyBackchannelLogoutPlugin = exports.fastifyBackchannelLogout = exports.expressBackchannelLogout = exports.verifyLogoutToken = exports.memoryLogoutReplayStore = exports.LogoutTokenVerifier = exports.LOGOUT_TOKEN_MAX_AGE_SECONDS = exports.LOGOUT_TOKEN_CLOCK_SKEW_SECONDS = exports.BACKCHANNEL_LOGOUT_EVENT = exports.peekIssuer = exports.BETTER_AUTH_JWT_ALGS = exports.workosSessionTokenExtractor = exports.magicDidTokenExtractor = exports.looksLikeMagicDidToken = exports.instanceIdFromPublishableKey = exports.discoveryUrlFor = exports.JwksDiscovery = exports.DiscoveryError = void 0;
|
|
18
|
+
exports.verifyAccessToken = exports.requireAcr = exports.protectedResourceMetadataPath = exports.protectedResourceMetadata = exports.memoryDpopReplayStore = exports.memoryDpopNonceSource = exports.hmacDpopNonceSource = exports.createIntrospector = exports.createAccessTokenVerifier = exports.buildWwwAuthenticate = exports.DPOP_PROOF_MAX_AGE_SECONDS = exports.ACCESS_TOKEN_CLOCK_SKEW_SECONDS = exports.memoryPcaStore = exports.defaultExtract = exports.requirePCA = void 0;
|
|
19
19
|
// §7.3 token verification — the original surface, unchanged.
|
|
20
20
|
__exportStar(require("./jwks-cache"), exports);
|
|
21
21
|
// OIDC discovery of the JWKS URL when only `issuer` is configured.
|
|
@@ -96,6 +96,12 @@ __exportStar(require("./botid"), exports);
|
|
|
96
96
|
var client_1 = require("./client");
|
|
97
97
|
Object.defineProperty(exports, "createAtlasClient", { enumerable: true, get: function () { return client_1.createAtlasClient; } });
|
|
98
98
|
__exportStar(require("./client"), exports);
|
|
99
|
+
// A local, authoritative mirror of end-user API keys (mint/import/revoke at
|
|
100
|
+
// Atlas, verify locally against sha256, sync from the revocation feed).
|
|
101
|
+
var key_mirror_1 = require("./key-mirror");
|
|
102
|
+
Object.defineProperty(exports, "createKeyMirror", { enumerable: true, get: function () { return key_mirror_1.createKeyMirror; } });
|
|
103
|
+
Object.defineProperty(exports, "memoryKeyMirrorStore", { enumerable: true, get: function () { return key_mirror_1.memoryKeyMirrorStore; } });
|
|
104
|
+
Object.defineProperty(exports, "hashApiKeySecret", { enumerable: true, get: function () { return key_mirror_1.hashApiKeySecret; } });
|
|
99
105
|
// §1.3(c) dev/test tooling — offline fixtures for verifying Atlas-minted
|
|
100
106
|
// session JWTs with no network call (Clerk's `@clerk/testing` equivalent).
|
|
101
107
|
// Its own module, so it never sits on the hot verification path.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import type { ApiKey, ApiKeyWithSecret, CreateApiKeyBody, apiKeysResource } from './client/api-keys';
|
|
2
|
+
/** What the mirror keeps per key. Never the secret: only its sha256 (hex). */
|
|
3
|
+
export interface MirroredApiKey {
|
|
4
|
+
/** The Atlas key id (`eak_…`). */
|
|
5
|
+
id: string;
|
|
6
|
+
/** sha256 of the full secret, lowercase hex. */
|
|
7
|
+
hash: string;
|
|
8
|
+
/** The public head, for listings. */
|
|
9
|
+
prefix: string;
|
|
10
|
+
subject_type: string;
|
|
11
|
+
subject_id: string;
|
|
12
|
+
name: string | null;
|
|
13
|
+
scopes: string[] | null;
|
|
14
|
+
/** Epoch ms; null = never. */
|
|
15
|
+
expires_at: number | null;
|
|
16
|
+
/** Epoch ms; null = live. */
|
|
17
|
+
revoked_at: number | null;
|
|
18
|
+
}
|
|
19
|
+
export interface KeyMirrorStore {
|
|
20
|
+
put(key: MirroredApiKey): Promise<void>;
|
|
21
|
+
get(id: string): Promise<MirroredApiKey | null>;
|
|
22
|
+
getByHash(hash: string): Promise<MirroredApiKey | null>;
|
|
23
|
+
/** Stamp a key revoked. A no-op for an id the mirror does not hold. */
|
|
24
|
+
markRevoked(id: string, revokedAt: number): Promise<void>;
|
|
25
|
+
/** The revocation-feed cursor last consumed (null = from the start). */
|
|
26
|
+
getCursor(): Promise<string | null>;
|
|
27
|
+
setCursor(cursor: string): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
/** An in-memory store, for tests and single-process apps. */
|
|
30
|
+
export declare function memoryKeyMirrorStore(): KeyMirrorStore & {
|
|
31
|
+
keys: Map<string, MirroredApiKey>;
|
|
32
|
+
};
|
|
33
|
+
type ApiKeysApi = Pick<ReturnType<typeof apiKeysResource>, 'create' | 'delete' | 'listRevoked'>;
|
|
34
|
+
export interface KeyMirrorOptions {
|
|
35
|
+
store: KeyMirrorStore;
|
|
36
|
+
/** `createAtlasClient(...).apiKeys` (or anything with the same create / delete / listRevoked). */
|
|
37
|
+
apiKeys: ApiKeysApi;
|
|
38
|
+
/**
|
|
39
|
+
* The instance scope implications (`auth_config.endUserApiKeys.scopeImplications`),
|
|
40
|
+
* so a local `requiredScopes` check matches Atlas verify. `*` = every scope in
|
|
41
|
+
* `allowedScopes` plus both sides of the map.
|
|
42
|
+
*/
|
|
43
|
+
scopeImplications?: Record<string, string[]>;
|
|
44
|
+
allowedScopes?: string[];
|
|
45
|
+
/** Clock, for tests. */
|
|
46
|
+
now?: () => number;
|
|
47
|
+
}
|
|
48
|
+
export type MirrorVerification = {
|
|
49
|
+
valid: true;
|
|
50
|
+
key: MirroredApiKey;
|
|
51
|
+
effective_scopes: string[];
|
|
52
|
+
} | {
|
|
53
|
+
valid: false;
|
|
54
|
+
code?: 'insufficient_scope';
|
|
55
|
+
missing_scopes?: string[];
|
|
56
|
+
};
|
|
57
|
+
export type MirrorImportInput = Omit<CreateApiKeyBody, 'import' | 'prefix'> & {
|
|
58
|
+
/** The full existing secret (hashed here, never sent) — or its `secretHash`. */
|
|
59
|
+
secret?: string;
|
|
60
|
+
/** sha256 hex of the full secret. */
|
|
61
|
+
secretHash?: string;
|
|
62
|
+
/** The public head shown in listings, e.g. the first 16 characters. */
|
|
63
|
+
prefix: string;
|
|
64
|
+
};
|
|
65
|
+
/** sha256 hex — the hash the mirror stores and Atlas imports as `sha256_hex`. */
|
|
66
|
+
export declare function hashApiKeySecret(secret: string): string;
|
|
67
|
+
export declare function createKeyMirror(options: KeyMirrorOptions): {
|
|
68
|
+
/** Mint at Atlas, then mirror it. Resolves with the one-time `secret`. */
|
|
69
|
+
mint(body: Omit<CreateApiKeyBody, "import">, idempotencyKey?: string): Promise<ApiKeyWithSecret>;
|
|
70
|
+
/**
|
|
71
|
+
* Import an existing key by its sha256 (hex) so customers keep their secret:
|
|
72
|
+
* Atlas stores the hash, the mirror stores the same hash.
|
|
73
|
+
*/
|
|
74
|
+
import(input: MirrorImportInput, idempotencyKey?: string): Promise<ApiKey>;
|
|
75
|
+
/**
|
|
76
|
+
* Revoke LOCALLY first (the key stops working here at once), then at Atlas.
|
|
77
|
+
* A key Atlas already revoked or no longer knows (404/409) counts as revoked;
|
|
78
|
+
* any other Atlas error is thrown after the local revoke, so retry it.
|
|
79
|
+
*/
|
|
80
|
+
revoke(id: string): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Verify a presented secret against the mirror — no network call. Unknown,
|
|
83
|
+
* revoked and expired keys all answer `{ valid: false }`.
|
|
84
|
+
*/
|
|
85
|
+
verify(secret: string, opts?: {
|
|
86
|
+
requiredScopes?: string[];
|
|
87
|
+
}): Promise<MirrorVerification>;
|
|
88
|
+
/**
|
|
89
|
+
* Consume the revocation feed from the stored cursor, revoking each listed key
|
|
90
|
+
* locally. Call it on a timer (every few seconds to a minute): a key revoked at
|
|
91
|
+
* Atlas is rejected here within one tick. Returns how many ids it applied.
|
|
92
|
+
*/
|
|
93
|
+
sync(): Promise<{
|
|
94
|
+
revoked: number;
|
|
95
|
+
}>;
|
|
96
|
+
/**
|
|
97
|
+
* Apply a VERIFIED `api_key.*` webhook (check the signature first, e.g. with
|
|
98
|
+
* `verifyWebhook`). `api_key.revoked` revokes locally; `api_key.updated`
|
|
99
|
+
* refreshes name, scopes and expiry of a key the mirror holds. The hash never
|
|
100
|
+
* changes, so a key the mirror does not hold is ignored (mint/import adds it).
|
|
101
|
+
* Returns whether the event changed the mirror.
|
|
102
|
+
*/
|
|
103
|
+
applyWebhook(event: {
|
|
104
|
+
type: string;
|
|
105
|
+
data: unknown;
|
|
106
|
+
}): Promise<boolean>;
|
|
107
|
+
};
|
|
108
|
+
export type KeyMirror = ReturnType<typeof createKeyMirror>;
|
|
109
|
+
export {};
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.memoryKeyMirrorStore = memoryKeyMirrorStore;
|
|
4
|
+
exports.hashApiKeySecret = hashApiKeySecret;
|
|
5
|
+
exports.createKeyMirror = createKeyMirror;
|
|
6
|
+
/**
|
|
7
|
+
* A local, authoritative mirror of end-user API keys (`ak_`), with Atlas as the
|
|
8
|
+
* minting and revocation backstop.
|
|
9
|
+
*
|
|
10
|
+
* Your request path verifies a presented key against the LOCAL row (sha256 hash,
|
|
11
|
+
* scopes, expiry, revocation) with no network call. Atlas mints and imports keys,
|
|
12
|
+
* and is told about every revoke; a revoke made anywhere else (the dashboard, the
|
|
13
|
+
* user's own `<ApiKeys/>`, another service) reaches the mirror through `sync()`,
|
|
14
|
+
* which consumes the `/v1/api_keys/revoked` feed, or `applyWebhook()` for the
|
|
15
|
+
* `api_key.*` webhooks. Revoking locally happens FIRST, so a failed Atlas call
|
|
16
|
+
* never leaves a key usable here.
|
|
17
|
+
*
|
|
18
|
+
* The store interface is the smallest that works: put / get / getByHash /
|
|
19
|
+
* markRevoked and a feed cursor. `memoryKeyMirrorStore()` is an in-memory store
|
|
20
|
+
* for tests and single-process apps; back it with a table in production.
|
|
21
|
+
*/
|
|
22
|
+
const edge_crypto_1 = require("./edge-crypto");
|
|
23
|
+
/** An in-memory store, for tests and single-process apps. */
|
|
24
|
+
function memoryKeyMirrorStore() {
|
|
25
|
+
const keys = new Map();
|
|
26
|
+
let cursor = null;
|
|
27
|
+
return {
|
|
28
|
+
keys,
|
|
29
|
+
async put(key) {
|
|
30
|
+
keys.set(key.id, { ...key });
|
|
31
|
+
},
|
|
32
|
+
async get(id) {
|
|
33
|
+
return keys.get(id) ?? null;
|
|
34
|
+
},
|
|
35
|
+
async getByHash(hash) {
|
|
36
|
+
for (const k of keys.values())
|
|
37
|
+
if (k.hash === hash)
|
|
38
|
+
return k;
|
|
39
|
+
return null;
|
|
40
|
+
},
|
|
41
|
+
async markRevoked(id, revokedAt) {
|
|
42
|
+
const k = keys.get(id);
|
|
43
|
+
if (k && k.revoked_at === null)
|
|
44
|
+
k.revoked_at = revokedAt;
|
|
45
|
+
},
|
|
46
|
+
async getCursor() {
|
|
47
|
+
return cursor;
|
|
48
|
+
},
|
|
49
|
+
async setCursor(c) {
|
|
50
|
+
cursor = c;
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/** sha256 hex — the hash the mirror stores and Atlas imports as `sha256_hex`. */
|
|
55
|
+
function hashApiKeySecret(secret) {
|
|
56
|
+
return (0, edge_crypto_1.createHash)('sha256').update(secret).digest('hex');
|
|
57
|
+
}
|
|
58
|
+
function expand(held, implications, allowed) {
|
|
59
|
+
const vocab = new Set(allowed);
|
|
60
|
+
for (const [from, tos] of Object.entries(implications)) {
|
|
61
|
+
vocab.add(from);
|
|
62
|
+
for (const t of tos)
|
|
63
|
+
if (t !== '*')
|
|
64
|
+
vocab.add(t);
|
|
65
|
+
}
|
|
66
|
+
const out = new Set(held);
|
|
67
|
+
const queue = [...held];
|
|
68
|
+
while (queue.length > 0) {
|
|
69
|
+
for (const to of implications[queue.pop()] ?? []) {
|
|
70
|
+
for (const t of to === '*' ? vocab : [to]) {
|
|
71
|
+
if (!out.has(t)) {
|
|
72
|
+
out.add(t);
|
|
73
|
+
queue.push(t);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return [...out].sort();
|
|
79
|
+
}
|
|
80
|
+
const HEX64 = /^[0-9a-f]{64}$/;
|
|
81
|
+
function toMirrored(key, hash) {
|
|
82
|
+
return {
|
|
83
|
+
id: key.id,
|
|
84
|
+
hash,
|
|
85
|
+
prefix: key.prefix,
|
|
86
|
+
subject_type: key.subject_type,
|
|
87
|
+
subject_id: key.subject_id,
|
|
88
|
+
name: key.name ?? null,
|
|
89
|
+
scopes: key.scopes ?? null,
|
|
90
|
+
expires_at: key.expires_at ?? null,
|
|
91
|
+
revoked_at: key.revoked_at ?? null,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
function createKeyMirror(options) {
|
|
95
|
+
const { store, apiKeys } = options;
|
|
96
|
+
const now = options.now ?? Date.now;
|
|
97
|
+
const implications = options.scopeImplications ?? {};
|
|
98
|
+
const allowed = options.allowedScopes ?? [];
|
|
99
|
+
return {
|
|
100
|
+
/** Mint at Atlas, then mirror it. Resolves with the one-time `secret`. */
|
|
101
|
+
async mint(body, idempotencyKey) {
|
|
102
|
+
const created = await apiKeys.create(body, idempotencyKey);
|
|
103
|
+
await store.put(toMirrored(created, hashApiKeySecret(created.secret)));
|
|
104
|
+
return created;
|
|
105
|
+
},
|
|
106
|
+
/**
|
|
107
|
+
* Import an existing key by its sha256 (hex) so customers keep their secret:
|
|
108
|
+
* Atlas stores the hash, the mirror stores the same hash.
|
|
109
|
+
*/
|
|
110
|
+
async import(input, idempotencyKey) {
|
|
111
|
+
const { secret, secretHash, prefix, ...rest } = input;
|
|
112
|
+
const hash = secretHash?.toLowerCase() ?? (secret !== undefined ? hashApiKeySecret(secret) : undefined);
|
|
113
|
+
if (!hash || !HEX64.test(hash)) {
|
|
114
|
+
throw new TypeError('import needs the full `secret` or its `secretHash` (64 lowercase hex characters of sha256).');
|
|
115
|
+
}
|
|
116
|
+
const imported = await apiKeys.create({ ...rest, import: { secret_hash: hash, hash_algorithm: 'sha256_hex', prefix } }, idempotencyKey);
|
|
117
|
+
await store.put(toMirrored(imported, hash));
|
|
118
|
+
return imported;
|
|
119
|
+
},
|
|
120
|
+
/**
|
|
121
|
+
* Revoke LOCALLY first (the key stops working here at once), then at Atlas.
|
|
122
|
+
* A key Atlas already revoked or no longer knows (404/409) counts as revoked;
|
|
123
|
+
* any other Atlas error is thrown after the local revoke, so retry it.
|
|
124
|
+
*/
|
|
125
|
+
async revoke(id) {
|
|
126
|
+
await store.markRevoked(id, now());
|
|
127
|
+
try {
|
|
128
|
+
await apiKeys.delete(id);
|
|
129
|
+
}
|
|
130
|
+
catch (err) {
|
|
131
|
+
const status = err.status;
|
|
132
|
+
if (status !== 404 && status !== 409)
|
|
133
|
+
throw err;
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
/**
|
|
137
|
+
* Verify a presented secret against the mirror — no network call. Unknown,
|
|
138
|
+
* revoked and expired keys all answer `{ valid: false }`.
|
|
139
|
+
*/
|
|
140
|
+
async verify(secret, opts = {}) {
|
|
141
|
+
if (typeof secret !== 'string' || !secret)
|
|
142
|
+
return { valid: false };
|
|
143
|
+
const key = await store.getByHash(hashApiKeySecret(secret));
|
|
144
|
+
if (!key || key.revoked_at !== null)
|
|
145
|
+
return { valid: false };
|
|
146
|
+
if (key.expires_at !== null && key.expires_at <= now())
|
|
147
|
+
return { valid: false };
|
|
148
|
+
const effective = expand(key.scopes ?? [], implications, allowed);
|
|
149
|
+
const missing = (opts.requiredScopes ?? []).filter((s) => !effective.includes(s));
|
|
150
|
+
if (missing.length > 0)
|
|
151
|
+
return { valid: false, code: 'insufficient_scope', missing_scopes: missing };
|
|
152
|
+
return { valid: true, key, effective_scopes: effective };
|
|
153
|
+
},
|
|
154
|
+
/**
|
|
155
|
+
* Consume the revocation feed from the stored cursor, revoking each listed key
|
|
156
|
+
* locally. Call it on a timer (every few seconds to a minute): a key revoked at
|
|
157
|
+
* Atlas is rejected here within one tick. Returns how many ids it applied.
|
|
158
|
+
*/
|
|
159
|
+
async sync() {
|
|
160
|
+
let since = (await store.getCursor()) ?? undefined;
|
|
161
|
+
let revoked = 0;
|
|
162
|
+
for (;;) {
|
|
163
|
+
const page = await apiKeys.listRevoked({ ...(since ? { since } : {}), limit: 100 });
|
|
164
|
+
for (const ref of page.data) {
|
|
165
|
+
await store.markRevoked(ref.id, ref.revoked_at ?? now());
|
|
166
|
+
revoked++;
|
|
167
|
+
}
|
|
168
|
+
if (page.next_cursor) {
|
|
169
|
+
since = page.next_cursor;
|
|
170
|
+
await store.setCursor(since);
|
|
171
|
+
}
|
|
172
|
+
if (!page.has_more || !page.next_cursor)
|
|
173
|
+
return { revoked };
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
/**
|
|
177
|
+
* Apply a VERIFIED `api_key.*` webhook (check the signature first, e.g. with
|
|
178
|
+
* `verifyWebhook`). `api_key.revoked` revokes locally; `api_key.updated`
|
|
179
|
+
* refreshes name, scopes and expiry of a key the mirror holds. The hash never
|
|
180
|
+
* changes, so a key the mirror does not hold is ignored (mint/import adds it).
|
|
181
|
+
* Returns whether the event changed the mirror.
|
|
182
|
+
*/
|
|
183
|
+
async applyWebhook(event) {
|
|
184
|
+
if (!event || typeof event.type !== 'string' || !event.type.startsWith('api_key.'))
|
|
185
|
+
return false;
|
|
186
|
+
const data = event.data;
|
|
187
|
+
if (!data || typeof data.id !== 'string')
|
|
188
|
+
return false;
|
|
189
|
+
const held = await store.get(data.id);
|
|
190
|
+
if (!held)
|
|
191
|
+
return false;
|
|
192
|
+
if (event.type === 'api_key.revoked' || (typeof data.revoked_at === 'number' && held.revoked_at === null)) {
|
|
193
|
+
await store.markRevoked(held.id, typeof data.revoked_at === 'number' ? data.revoked_at : now());
|
|
194
|
+
return true;
|
|
195
|
+
}
|
|
196
|
+
if (event.type === 'api_key.updated' || event.type === 'api_key.created') {
|
|
197
|
+
await store.put({
|
|
198
|
+
...held,
|
|
199
|
+
name: data.name !== undefined ? data.name ?? null : held.name,
|
|
200
|
+
scopes: data.scopes !== undefined ? data.scopes ?? null : held.scopes,
|
|
201
|
+
expires_at: data.expires_at !== undefined ? data.expires_at ?? null : held.expires_at,
|
|
202
|
+
});
|
|
203
|
+
return true;
|
|
204
|
+
}
|
|
205
|
+
return false;
|
|
206
|
+
},
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=key-mirror.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-mirror.js","sourceRoot":"","sources":["../src/key-mirror.ts"],"names":[],"mappings":"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"}
|
package/dist/webhooks.d.ts
CHANGED
|
@@ -61,4 +61,35 @@ export interface VerifyWebhookInput {
|
|
|
61
61
|
* ```
|
|
62
62
|
*/
|
|
63
63
|
export declare function verifyWebhook<T = unknown>(input: VerifyWebhookInput): WebhookVerifyResult<T>;
|
|
64
|
+
/** Standard Webhooks header names, as application webhooks send them (lower-case). */
|
|
65
|
+
export declare const STANDARD_WEBHOOK_HEADERS: {
|
|
66
|
+
readonly id: "webhook-id";
|
|
67
|
+
readonly timestamp: "webhook-timestamp";
|
|
68
|
+
readonly signature: "webhook-signature";
|
|
69
|
+
};
|
|
70
|
+
export interface VerifyStandardWebhookInput {
|
|
71
|
+
/** The RAW request body as received — a string or Buffer, NOT a parsed object. */
|
|
72
|
+
body: string | Buffer;
|
|
73
|
+
headers: HeadersLike;
|
|
74
|
+
/** The endpoint's `whsec_…` secret. */
|
|
75
|
+
secret: string;
|
|
76
|
+
now?: Date;
|
|
77
|
+
/** Override the ±replay tolerance in seconds (default 300). */
|
|
78
|
+
toleranceSec?: number;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Verify an APPLICATION webhook (the events an app publishes to its customers'
|
|
82
|
+
* endpoints through Atlas): Standard Webhooks — `webhook-id`,
|
|
83
|
+
* `webhook-timestamp` (seconds), `webhook-signature: v1,<base64>` (one entry
|
|
84
|
+
* per secret during a rotation), HMAC-SHA256 over `<id>.<timestamp>.<rawBody>`
|
|
85
|
+
* keyed with the base64-decoded part of `whsec_<base64>`. Any Standard Webhooks
|
|
86
|
+
* library verifies the same deliveries; this one has no dependencies. Never
|
|
87
|
+
* throws: `{ verified, reason?, event?, deliveryId?, timestamp? }`, where
|
|
88
|
+
* `deliveryId` (the `webhook-id`) is stable across retries — dedupe on it.
|
|
89
|
+
*
|
|
90
|
+
* ```ts
|
|
91
|
+
* const { verified, event } = verifyStandardWebhook({ body: rawBody, headers: req.headers, secret: 'whsec_…' });
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
export declare function verifyStandardWebhook<T = unknown>(input: VerifyStandardWebhookInput): WebhookVerifyResult<T>;
|
|
64
95
|
export {};
|