@atlasauth/emulator-core 0.2.0 → 0.3.1

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.
Files changed (248) hide show
  1. package/LICENSE +21 -0
  2. package/dist/custom-html.d.ts +57 -0
  3. package/dist/custom-html.js +491 -0
  4. package/dist/custom-html.js.map +1 -0
  5. package/dist/engine.d.ts +1 -1
  6. package/dist/engine.js +5 -1
  7. package/dist/engine.js.map +1 -1
  8. package/dist/error-catalog.js +8 -0
  9. package/dist/error-catalog.js.map +1 -1
  10. package/dist/event-gate.js +60 -2
  11. package/dist/event-gate.js.map +1 -1
  12. package/dist/generic.js +5 -1
  13. package/dist/generic.js.map +1 -1
  14. package/dist/handlers/access-signals.d.ts +48 -0
  15. package/dist/handlers/access-signals.js +76 -0
  16. package/dist/handlers/access-signals.js.map +1 -0
  17. package/dist/handlers/approvals.js +54 -1
  18. package/dist/handlers/approvals.js.map +1 -1
  19. package/dist/handlers/authz-data.d.ts +2 -0
  20. package/dist/handlers/authz-data.js +627 -0
  21. package/dist/handlers/authz-data.js.map +1 -0
  22. package/dist/handlers/authz-layers.d.ts +229 -0
  23. package/dist/handlers/authz-layers.js +786 -0
  24. package/dist/handlers/authz-layers.js.map +1 -0
  25. package/dist/handlers/authz-state.d.ts +80 -0
  26. package/dist/handlers/authz-state.js +175 -0
  27. package/dist/handlers/authz-state.js.map +1 -0
  28. package/dist/handlers/authz.js +240 -177
  29. package/dist/handlers/authz.js.map +1 -1
  30. package/dist/handlers/billing.d.ts +99 -1
  31. package/dist/handlers/billing.js +556 -77
  32. package/dist/handlers/billing.js.map +1 -1
  33. package/dist/handlers/cedar-ext.d.ts +35 -0
  34. package/dist/handlers/cedar-ext.js +174 -0
  35. package/dist/handlers/cedar-ext.js.map +1 -0
  36. package/dist/handlers/cedar.d.ts +146 -0
  37. package/dist/handlers/cedar.js +689 -0
  38. package/dist/handlers/cedar.js.map +1 -0
  39. package/dist/handlers/connections.d.ts +4 -1
  40. package/dist/handlers/connections.js +267 -38
  41. package/dist/handlers/connections.js.map +1 -1
  42. package/dist/handlers/control.js +6 -1
  43. package/dist/handlers/control.js.map +1 -1
  44. package/dist/handlers/device.js +18 -1
  45. package/dist/handlers/device.js.map +1 -1
  46. package/dist/handlers/emu3-misc.d.ts +38 -0
  47. package/dist/handlers/emu3-misc.js +1056 -0
  48. package/dist/handlers/emu3-misc.js.map +1 -0
  49. package/dist/handlers/emu4-actions-access.d.ts +46 -0
  50. package/dist/handlers/emu4-actions-access.js +107 -0
  51. package/dist/handlers/emu4-actions-access.js.map +1 -0
  52. package/dist/handlers/emu4-actions-catalog-extra.d.ts +3 -0
  53. package/dist/handlers/emu4-actions-catalog-extra.js +204 -0
  54. package/dist/handlers/emu4-actions-catalog-extra.js.map +1 -0
  55. package/dist/handlers/emu4-actions-catalog.d.ts +3 -0
  56. package/dist/handlers/emu4-actions-catalog.js +143 -0
  57. package/dist/handlers/emu4-actions-catalog.js.map +1 -0
  58. package/dist/handlers/emu4-actions-def.d.ts +50 -0
  59. package/dist/handlers/emu4-actions-def.js +250 -0
  60. package/dist/handlers/emu4-actions-def.js.map +1 -0
  61. package/dist/handlers/emu4-actions-sandbox.d.ts +36 -0
  62. package/dist/handlers/emu4-actions-sandbox.js +318 -0
  63. package/dist/handlers/emu4-actions-sandbox.js.map +1 -0
  64. package/dist/handlers/emu4-actions-typegen.d.ts +5 -0
  65. package/dist/handlers/emu4-actions-typegen.js +73 -0
  66. package/dist/handlers/emu4-actions-typegen.js.map +1 -0
  67. package/dist/handlers/emu4-actions.d.ts +2 -0
  68. package/dist/handlers/emu4-actions.js +506 -0
  69. package/dist/handlers/emu4-actions.js.map +1 -0
  70. package/dist/handlers/emu4-authz-trust.d.ts +40 -0
  71. package/dist/handlers/emu4-authz-trust.js +488 -0
  72. package/dist/handlers/emu4-authz-trust.js.map +1 -0
  73. package/dist/handlers/emu4-authz.d.ts +2 -0
  74. package/dist/handlers/emu4-authz.js +752 -0
  75. package/dist/handlers/emu4-authz.js.map +1 -0
  76. package/dist/handlers/emu4-billing-core.d.ts +23 -0
  77. package/dist/handlers/emu4-billing-core.js +22 -0
  78. package/dist/handlers/emu4-billing-core.js.map +1 -0
  79. package/dist/handlers/emu4-billing-x.d.ts +2 -0
  80. package/dist/handlers/emu4-billing-x.js +489 -0
  81. package/dist/handlers/emu4-billing-x.js.map +1 -0
  82. package/dist/handlers/emu4-billing.d.ts +14 -0
  83. package/dist/handlers/emu4-billing.js +846 -0
  84. package/dist/handlers/emu4-billing.js.map +1 -0
  85. package/dist/handlers/emu4-clones.d.ts +2 -0
  86. package/dist/handlers/emu4-clones.js +322 -0
  87. package/dist/handlers/emu4-clones.js.map +1 -0
  88. package/dist/handlers/emu4-compliance.d.ts +8 -0
  89. package/dist/handlers/emu4-compliance.js +39 -0
  90. package/dist/handlers/emu4-compliance.js.map +1 -0
  91. package/dist/handlers/emu4-config.d.ts +14 -0
  92. package/dist/handlers/emu4-config.js +148 -0
  93. package/dist/handlers/emu4-config.js.map +1 -0
  94. package/dist/handlers/emu4-cookies.d.ts +8 -0
  95. package/dist/handlers/emu4-cookies.js +248 -0
  96. package/dist/handlers/emu4-cookies.js.map +1 -0
  97. package/dist/handlers/emu4-erasure.d.ts +2 -0
  98. package/dist/handlers/emu4-erasure.js +587 -0
  99. package/dist/handlers/emu4-erasure.js.map +1 -0
  100. package/dist/handlers/emu4-federation.d.ts +8 -0
  101. package/dist/handlers/emu4-federation.js +18 -0
  102. package/dist/handlers/emu4-federation.js.map +1 -0
  103. package/dist/handlers/emu4-journey-math.d.ts +42 -0
  104. package/dist/handlers/emu4-journey-math.js +99 -0
  105. package/dist/handlers/emu4-journey-math.js.map +1 -0
  106. package/dist/handlers/emu4-messaging.d.ts +21 -0
  107. package/dist/handlers/emu4-messaging.js +595 -0
  108. package/dist/handlers/emu4-messaging.js.map +1 -0
  109. package/dist/handlers/emu4-minors.d.ts +7 -0
  110. package/dist/handlers/emu4-minors.js +408 -0
  111. package/dist/handlers/emu4-minors.js.map +1 -0
  112. package/dist/handlers/emu4-oauth-audit.d.ts +5 -0
  113. package/dist/handlers/emu4-oauth-audit.js +17 -0
  114. package/dist/handlers/emu4-oauth-audit.js.map +1 -0
  115. package/dist/handlers/emu4-oauth-auth.d.ts +83 -0
  116. package/dist/handlers/emu4-oauth-auth.js +363 -0
  117. package/dist/handlers/emu4-oauth-auth.js.map +1 -0
  118. package/dist/handlers/emu4-oauth-delivery.d.ts +68 -0
  119. package/dist/handlers/emu4-oauth-delivery.js +207 -0
  120. package/dist/handlers/emu4-oauth-delivery.js.map +1 -0
  121. package/dist/handlers/emu4-oauth-keys.d.ts +11 -0
  122. package/dist/handlers/emu4-oauth-keys.js +268 -0
  123. package/dist/handlers/emu4-oauth-keys.js.map +1 -0
  124. package/dist/handlers/emu4-oauth-pub.d.ts +36 -0
  125. package/dist/handlers/emu4-oauth-pub.js +420 -0
  126. package/dist/handlers/emu4-oauth-pub.js.map +1 -0
  127. package/dist/handlers/emu4-oauth.d.ts +10 -0
  128. package/dist/handlers/emu4-oauth.js +23 -0
  129. package/dist/handlers/emu4-oauth.js.map +1 -0
  130. package/dist/handlers/emu4-policies.d.ts +2 -0
  131. package/dist/handlers/emu4-policies.js +408 -0
  132. package/dist/handlers/emu4-policies.js.map +1 -0
  133. package/dist/handlers/emu4-region.d.ts +2 -0
  134. package/dist/handlers/emu4-region.js +189 -0
  135. package/dist/handlers/emu4-region.js.map +1 -0
  136. package/dist/handlers/emu4-saml.d.ts +12 -0
  137. package/dist/handlers/emu4-saml.js +532 -0
  138. package/dist/handlers/emu4-saml.js.map +1 -0
  139. package/dist/handlers/emu4-shared.d.ts +44 -0
  140. package/dist/handlers/emu4-shared.js +90 -0
  141. package/dist/handlers/emu4-shared.js.map +1 -0
  142. package/dist/handlers/emu4-snapshots.d.ts +38 -0
  143. package/dist/handlers/emu4-snapshots.js +231 -0
  144. package/dist/handlers/emu4-snapshots.js.map +1 -0
  145. package/dist/handlers/emu4-sns.d.ts +9 -0
  146. package/dist/handlers/emu4-sns.js +21 -0
  147. package/dist/handlers/emu4-sns.js.map +1 -0
  148. package/dist/handlers/emu4-trust-binding.d.ts +27 -0
  149. package/dist/handlers/emu4-trust-binding.js +344 -0
  150. package/dist/handlers/emu4-trust-binding.js.map +1 -0
  151. package/dist/handlers/emu4-trust.d.ts +35 -0
  152. package/dist/handlers/emu4-trust.js +543 -0
  153. package/dist/handlers/emu4-trust.js.map +1 -0
  154. package/dist/handlers/fga-engine.d.ts +78 -0
  155. package/dist/handlers/fga-engine.js +663 -0
  156. package/dist/handlers/fga-engine.js.map +1 -0
  157. package/dist/handlers/governance.js +3 -2
  158. package/dist/handlers/governance.js.map +1 -1
  159. package/dist/handlers/hooks.js +13 -0
  160. package/dist/handlers/hooks.js.map +1 -1
  161. package/dist/handlers/index.js +14 -1
  162. package/dist/handlers/index.js.map +1 -1
  163. package/dist/handlers/machines.js +6 -0
  164. package/dist/handlers/machines.js.map +1 -1
  165. package/dist/handlers/messaging.d.ts +3 -1
  166. package/dist/handlers/messaging.js +455 -48
  167. package/dist/handlers/messaging.js.map +1 -1
  168. package/dist/handlers/oauth-adv.d.ts +191 -0
  169. package/dist/handlers/oauth-adv.js +1305 -0
  170. package/dist/handlers/oauth-adv.js.map +1 -0
  171. package/dist/handlers/oauth-flows.d.ts +25 -1
  172. package/dist/handlers/oauth-flows.js +111 -50
  173. package/dist/handlers/oauth-flows.js.map +1 -1
  174. package/dist/handlers/oauth.d.ts +24 -3
  175. package/dist/handlers/oauth.js +245 -60
  176. package/dist/handlers/oauth.js.map +1 -1
  177. package/dist/handlers/orgs.js +6 -0
  178. package/dist/handlers/orgs.js.map +1 -1
  179. package/dist/handlers/platform.d.ts +5 -0
  180. package/dist/handlers/platform.js +33 -15
  181. package/dist/handlers/platform.js.map +1 -1
  182. package/dist/handlers/scim.d.ts +2 -0
  183. package/dist/handlers/scim.js +198 -11
  184. package/dist/handlers/scim.js.map +1 -1
  185. package/dist/handlers/sessions.d.ts +2 -0
  186. package/dist/handlers/sessions.js +24 -16
  187. package/dist/handlers/sessions.js.map +1 -1
  188. package/dist/handlers/users.js +3 -0
  189. package/dist/handlers/users.js.map +1 -1
  190. package/dist/jwe.d.ts +18 -0
  191. package/dist/jwe.js +101 -0
  192. package/dist/jwe.js.map +1 -0
  193. package/dist/jws.js +2 -0
  194. package/dist/jws.js.map +1 -1
  195. package/dist/messaging-callbacks.d.ts +100 -0
  196. package/dist/messaging-callbacks.js +767 -0
  197. package/dist/messaging-callbacks.js.map +1 -0
  198. package/dist/openapi.d.ts +1 -0
  199. package/dist/openapi.js +44 -2
  200. package/dist/openapi.js.map +1 -1
  201. package/dist/parity-emu3-authz.d.ts +3 -0
  202. package/dist/parity-emu3-authz.js +61 -0
  203. package/dist/parity-emu3-authz.js.map +1 -0
  204. package/dist/parity-emu3-billing.d.ts +3 -0
  205. package/dist/parity-emu3-billing.js +25 -0
  206. package/dist/parity-emu3-billing.js.map +1 -0
  207. package/dist/parity-emu3-messaging.d.ts +3 -0
  208. package/dist/parity-emu3-messaging.js +27 -0
  209. package/dist/parity-emu3-messaging.js.map +1 -0
  210. package/dist/parity-emu3-misc.d.ts +2 -0
  211. package/dist/parity-emu3-misc.js +63 -0
  212. package/dist/parity-emu3-misc.js.map +1 -0
  213. package/dist/parity-emu3-oauth.d.ts +2 -0
  214. package/dist/parity-emu3-oauth.js +39 -0
  215. package/dist/parity-emu3-oauth.js.map +1 -0
  216. package/dist/parity-emu4-actions.d.ts +2 -0
  217. package/dist/parity-emu4-actions.js +38 -0
  218. package/dist/parity-emu4-actions.js.map +1 -0
  219. package/dist/parity-emu4-authz.d.ts +3 -0
  220. package/dist/parity-emu4-authz.js +68 -0
  221. package/dist/parity-emu4-authz.js.map +1 -0
  222. package/dist/parity-emu4-billing.d.ts +6 -0
  223. package/dist/parity-emu4-billing.js +44 -0
  224. package/dist/parity-emu4-billing.js.map +1 -0
  225. package/dist/parity-emu4-compliance.d.ts +2 -0
  226. package/dist/parity-emu4-compliance.js +92 -0
  227. package/dist/parity-emu4-compliance.js.map +1 -0
  228. package/dist/parity-emu4-federation.d.ts +2 -0
  229. package/dist/parity-emu4-federation.js +33 -0
  230. package/dist/parity-emu4-federation.js.map +1 -0
  231. package/dist/parity-emu4-messaging.d.ts +3 -0
  232. package/dist/parity-emu4-messaging.js +42 -0
  233. package/dist/parity-emu4-messaging.js.map +1 -0
  234. package/dist/parity-emu4-oauth.d.ts +2 -0
  235. package/dist/parity-emu4-oauth.js +55 -0
  236. package/dist/parity-emu4-oauth.js.map +1 -0
  237. package/dist/parity-emu4-trust.d.ts +2 -0
  238. package/dist/parity-emu4-trust.js +41 -0
  239. package/dist/parity-emu4-trust.js.map +1 -0
  240. package/dist/parity-routes.js +19 -1
  241. package/dist/parity-routes.js.map +1 -1
  242. package/dist/sns-cert.d.ts +9 -0
  243. package/dist/sns-cert.js +101 -0
  244. package/dist/sns-cert.js.map +1 -0
  245. package/dist/tokens.d.ts +69 -4
  246. package/dist/tokens.js +164 -38
  247. package/dist/tokens.js.map +1 -1
  248. package/package.json +2 -2
@@ -1,12 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resetSessions = exports.REFRESH_GRACE_MS = void 0;
3
+ exports.sessionIdOfRefresh = exports.resetSessions = exports.REFRESH_GRACE_MS = void 0;
4
4
  exports.issueRefreshToken = issueRefreshToken;
5
5
  exports.refreshSession = refreshSession;
6
6
  exports.sessionsHandlers = sessionsHandlers;
7
+ const emu4_oauth_auth_1 = require("./emu4-oauth-auth");
7
8
  const errors_1 = require("../errors");
8
9
  const store_1 = require("../store");
10
+ const emu3_misc_1 = require("./emu3-misc");
9
11
  const oauth_1 = require("./oauth");
12
+ const emu4_trust_binding_1 = require("./emu4-trust-binding");
10
13
  const round2_1 = require("./round2");
11
14
  const util_1 = require("./util");
12
15
  const memberOrgRole = (e, userId, orgId) => {
@@ -40,6 +43,12 @@ const refreshMap = (e) => {
40
43
  };
41
44
  const resetSessions = (e) => void refreshTokens.delete(e);
42
45
  exports.resetSessions = resetSessions;
46
+ /** The session a presented refresh token belongs to (also a spent one); `live` only answers for a token not yet rotated. */
47
+ const sessionIdOfRefresh = (e, token, live = false) => {
48
+ const rec = refreshMap(e).get(token);
49
+ return rec && (!live || rec.rotatedAt === undefined) ? rec.sessionId : undefined;
50
+ };
51
+ exports.sessionIdOfRefresh = sessionIdOfRefresh;
43
52
  function issueRefreshToken(e, sessionId, token) {
44
53
  const t = token ?? `rt_${(0, store_1.randomToken)(32)}`;
45
54
  refreshMap(e).set(t, { sessionId });
@@ -60,7 +69,7 @@ async function refreshSession(e, token) {
60
69
  const now = e.clock.now();
61
70
  if (s.expires_at <= now)
62
71
  throw new errors_1.EmulatorError('SESSION_EXPIRED', 'The session has expired.');
63
- const mint = async () => (await e.tokens.mintSession({ userId: s.user_id, sessionId: s.id, organizationId: s.organization_id, claims: memberOrgRole(e, s.user_id, s.organization_id) }));
72
+ const mint = async () => (await e.tokens.mintSession({ userId: s.user_id, sessionId: s.id, organizationId: s.organization_id, claims: { ...memberOrgRole(e, s.user_id, s.organization_id), ...(0, emu4_trust_binding_1.sessionBindingClaims)(e, s.id) } }));
64
73
  if (rec.rotatedAt !== undefined) {
65
74
  if (now - rec.rotatedAt <= exports.REFRESH_GRACE_MS && rec.successor) {
66
75
  const minted = await mint();
@@ -83,7 +92,11 @@ function sessionsHandlers() {
83
92
  method: 'GET',
84
93
  pattern: '/.well-known/jwks.json',
85
94
  public: true,
86
- handler: async (c) => ({ body: await c.engine.tokens.jwks() }),
95
+ handler: async (c) => {
96
+ // A client that registered encrypted request objects needs the key to encrypt to: it is published once one did.
97
+ await (0, emu4_oauth_auth_1.ensureRegisteredEncryptionKeys)(c.engine);
98
+ return { body: await c.engine.tokens.publishedJwks() };
99
+ },
87
100
  },
88
101
  { method: 'GET', pattern: '/.well-known/openid-configuration', public: true, handler: (c) => ({ body: (0, oauth_1.discoveryDocument)(c.engine) }) },
89
102
  {
@@ -100,13 +113,17 @@ function sessionsHandlers() {
100
113
  const presented = cookie ? decodeURIComponent(cookie) : (header ?? bodyToken);
101
114
  if (!presented)
102
115
  throw new errors_1.EmulatorError('UNAUTHENTICATED', 'No refresh token was presented.');
116
+ // A session bound to a key or device (sender-constrained sessions, device-bound sessions) refreshes only next to its proof.
117
+ const boundSid = (0, exports.sessionIdOfRefresh)(c.engine, presented);
118
+ if (boundSid)
119
+ await (0, emu4_trust_binding_1.enforceSessionBinding)(c, boundSid);
103
120
  const out = await refreshSession(c.engine, presented);
104
121
  if (out.session_id !== c.params.id)
105
122
  throw (0, errors_1.notFound)('Session');
106
123
  const attrs = 'Path=/; HttpOnly; SameSite=Lax';
107
124
  return {
108
125
  body: { object: 'session_tokens', jwt: out.jwt, session_id: out.session_id, expires_in: out.expires_in, ...(cookie ? {} : { refresh_token: out.refresh_token }) },
109
- headers: { 'set-cookie': [`__session=${out.jwt}; ${attrs}; Max-Age=${out.expires_in}`, `__atlas_rt=${encodeURIComponent(out.refresh_token)}; ${attrs}`] },
126
+ headers: { 'set-cookie': [`__session=${out.jwt}; ${attrs}; Max-Age=${out.expires_in}`, `__atlas_rt=${encodeURIComponent(out.refresh_token)}; ${attrs}`], ...(cookie ? await (0, emu4_trust_binding_1.dbscRegistrationHeaders)(c.engine, out.session_id) : {}) },
110
127
  };
111
128
  },
112
129
  },
@@ -125,6 +142,8 @@ function sessionsHandlers() {
125
142
  const orgClaims = memberOrgRole(e, userId, orgId);
126
143
  const now = e.clock.now();
127
144
  const s = e.db.sessions.insert({ user_id: userId, organization_id: orgId, status: 'active', created_at: now, expires_at: now + SESSION_TTL, last_active_at: now });
145
+ // An organization's maxSessions ends the member's least recently active sessions (reason org_max_sessions_exceeded); the new one is kept.
146
+ (0, emu3_misc_1.enforceOrgSessionCap)(e, s);
128
147
  const minted = await e.tokens.mintSession({ userId, sessionId: s.id, organizationId: orgId, claims: { ...orgClaims, ...(c.body.actor?.sub ? { act: { sub: c.body.actor.sub } } : {}) } });
129
148
  return { status: 200, body: { ...presentSession(s), jwt: minted.jwt, refresh_token: issueRefreshToken(e, s.id), expires_in: minted.expiresIn } };
130
149
  },
@@ -164,7 +183,7 @@ function sessionsHandlers() {
164
183
  if (!s || s.status !== 'active')
165
184
  throw (0, errors_1.notFound)('Session');
166
185
  const name = c.params.template ?? 'session';
167
- let claims = memberOrgRole(e, s.user_id, s.organization_id);
186
+ let claims = { ...memberOrgRole(e, s.user_id, s.organization_id), ...(0, emu4_trust_binding_1.sessionBindingClaims)(e, s.id) };
168
187
  let ttl = 60;
169
188
  if (name !== 'session') {
170
189
  const t = e.generic.get('jwt_templates')?.find((r) => r.name === name);
@@ -196,17 +215,6 @@ function sessionsHandlers() {
196
215
  return { body: { object: 'token_verification', verified: true, user_id: r.claims.sub, session_id: sid, organization_id: r.claims.org_id ?? null, organization_role: r.claims.org_role ?? null } };
197
216
  },
198
217
  },
199
- { method: 'GET', pattern: '/v1/instance/signing_keys', handler: async (c) => ({ body: { object: 'list', data: await c.engine.tokens.signingKeys() } }) },
200
- {
201
- method: 'POST',
202
- pattern: '/v1/instance/signing_keys/rotate',
203
- handler: async (c) => {
204
- const alg = c.body.alg === 'ES256' ? 'ES256' : 'RS256';
205
- const r = await c.engine.tokens.rotate(alg);
206
- c.engine.webhooks.emit('signing_key.rotated', { kid: r.kid, previous_kid: r.previous_kid, emergency: false, retires_at: null });
207
- return { body: { object: 'signing_key_rotation', ...r } };
208
- },
209
- },
210
218
  ];
211
219
  }
212
220
  //# sourceMappingURL=sessions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/handlers/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/handlers/sessions.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.presentUser = presentUser;
4
4
  exports.usersHandlers = usersHandlers;
5
5
  exports.presentMembership = presentMembership;
6
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+ const authz_state_1 = require("./authz-state");
6
8
  const errors_1 = require("../errors");
7
9
  const support_1 = require("./support");
8
10
  const util_1 = require("./util");
@@ -161,6 +163,7 @@ function usersHandlers() {
161
163
  e.db.memberships.delete(m.id);
162
164
  e.changed({ type: 'organization_membership.deleted', data: { id: m.id, organization_id: m.organization_id, user_id: u.id }, resource: 'membership', id: m.id, op: 'delete' });
163
165
  }
166
+ (0, authz_state_1.onMembershipChanged)(e);
164
167
  emit(e, 'user.deleted', u, 'delete', { id: u.id, object: 'user', deleted: true });
165
168
  return { body: { object: 'user', id: u.id, deleted: true } };
166
169
  },
@@ -1 +1 @@
1
- {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/handlers/users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/handlers/users.ts"],"names":[],"mappings":"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"}
package/dist/jwe.d.ts ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Compact JWE decryption on Web Crypto only (like `jws.ts`), for request objects a client encrypts to the emulator's
3
+ * published encryption key: key management `RSA-OAEP-256` or `ECDH-ES` (P-256, direct), content encryption
4
+ * `A128GCM`, `A256GCM`, `A128CBC-HS256` or `A256CBC-HS512`. The same lists the real provider accepts.
5
+ */
6
+ export declare const OP_DECRYPT_ALGS: readonly ["RSA-OAEP-256", "ECDH-ES"];
7
+ export type OpDecryptAlg = (typeof OP_DECRYPT_ALGS)[number];
8
+ export declare const JWE_ENCS: readonly ["A128GCM", "A256GCM", "A128CBC-HS256", "A256CBC-HS512"];
9
+ export declare const isOpDecryptAlg: (v: unknown) => v is OpDecryptAlg;
10
+ export interface OpEncKey {
11
+ alg: OpDecryptAlg;
12
+ kid: string;
13
+ publicJwk: Record<string, any>;
14
+ privateKey: CryptoKey;
15
+ }
16
+ export declare function generateEncKey(alg: OpDecryptAlg, kid: string): Promise<OpEncKey>;
17
+ /** The plaintext of a compact JWE, or null when it is malformed, names another key, or fails authentication. Never throws. */
18
+ export declare function decryptJwe(jwe: string, key: OpEncKey): Promise<string | null>;
package/dist/jwe.js ADDED
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isOpDecryptAlg = exports.JWE_ENCS = exports.OP_DECRYPT_ALGS = void 0;
4
+ exports.generateEncKey = generateEncKey;
5
+ exports.decryptJwe = decryptJwe;
6
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+ const jws_1 = require("./jws");
8
+ /**
9
+ * Compact JWE decryption on Web Crypto only (like `jws.ts`), for request objects a client encrypts to the emulator's
10
+ * published encryption key: key management `RSA-OAEP-256` or `ECDH-ES` (P-256, direct), content encryption
11
+ * `A128GCM`, `A256GCM`, `A128CBC-HS256` or `A256CBC-HS512`. The same lists the real provider accepts.
12
+ */
13
+ exports.OP_DECRYPT_ALGS = ['RSA-OAEP-256', 'ECDH-ES'];
14
+ exports.JWE_ENCS = ['A128GCM', 'A256GCM', 'A128CBC-HS256', 'A256CBC-HS512'];
15
+ const isOpDecryptAlg = (v) => exports.OP_DECRYPT_ALGS.includes(v);
16
+ exports.isOpDecryptAlg = isOpDecryptAlg;
17
+ async function generateEncKey(alg, kid) {
18
+ const pair = (await (alg === 'RSA-OAEP-256'
19
+ ? crypto.subtle.generateKey({ name: 'RSA-OAEP', modulusLength: 2048, publicExponent: new Uint8Array([1, 0, 1]), hash: 'SHA-256' }, false, ['decrypt', 'encrypt'])
20
+ : crypto.subtle.generateKey({ name: 'ECDH', namedCurve: 'P-256' }, false, ['deriveBits'])));
21
+ const jwk = (await crypto.subtle.exportKey('jwk', pair.publicKey));
22
+ delete jwk.key_ops;
23
+ delete jwk.ext;
24
+ return { alg, kid, publicJwk: { ...jwk, kid, use: 'enc', alg }, privateKey: pair.privateKey };
25
+ }
26
+ const ENC_KEY_BYTES = { A128GCM: 16, A256GCM: 32, 'A128CBC-HS256': 32, 'A256CBC-HS512': 64 };
27
+ const u32 = (n) => new Uint8Array([(n >>> 24) & 255, (n >>> 16) & 255, (n >>> 8) & 255, n & 255]);
28
+ const cat = (...parts) => {
29
+ const out = new Uint8Array(parts.reduce((n, p) => n + p.length, 0));
30
+ let at = 0;
31
+ for (const p of parts)
32
+ (out.set(p, at), (at += p.length));
33
+ return out;
34
+ };
35
+ const lenPrefixed = (b) => cat(u32(b.length), b);
36
+ /** RFC 7518 section 4.6.2: the Concat KDF with SHA-256, `bits` of output. */
37
+ async function concatKdf(z, algId, apu, apv, bits) {
38
+ const info = cat(lenPrefixed(new TextEncoder().encode(algId)), lenPrefixed(apu), lenPrefixed(apv), u32(bits));
39
+ const rounds = Math.ceil(bits / 256);
40
+ const parts = [];
41
+ for (let i = 1; i <= rounds; i++)
42
+ parts.push(new Uint8Array(await crypto.subtle.digest('SHA-256', cat(u32(i), z, info))));
43
+ return cat(...parts).slice(0, bits / 8);
44
+ }
45
+ const tagEqual = (a, b) => {
46
+ if (a.length !== b.length)
47
+ return false;
48
+ let d = 0;
49
+ for (let i = 0; i < a.length; i++)
50
+ d |= a[i] ^ b[i];
51
+ return d === 0;
52
+ };
53
+ /** The plaintext of a compact JWE, or null when it is malformed, names another key, or fails authentication. Never throws. */
54
+ async function decryptJwe(jwe, key) {
55
+ try {
56
+ const parts = jwe.split('.');
57
+ if (parts.length !== 5)
58
+ return null;
59
+ const [h, ek, iv, ct, tag] = parts;
60
+ const header = JSON.parse(new TextDecoder().decode((0, jws_1.b64urlDecode)(h)));
61
+ const keyBytes = ENC_KEY_BYTES[header.enc];
62
+ if (header.alg !== key.alg || !keyBytes || header.zip !== undefined)
63
+ return null;
64
+ let cek;
65
+ if (key.alg === 'RSA-OAEP-256') {
66
+ cek = new Uint8Array(await crypto.subtle.decrypt({ name: 'RSA-OAEP' }, key.privateKey, (0, jws_1.b64urlDecode)(ek)));
67
+ }
68
+ else {
69
+ const epk = header.epk;
70
+ if (ek || !epk || epk.kty !== 'EC' || epk.crv !== 'P-256')
71
+ return null;
72
+ const pub = await crypto.subtle.importKey('jwk', { kty: 'EC', crv: 'P-256', x: epk.x, y: epk.y }, { name: 'ECDH', namedCurve: 'P-256' }, false, []);
73
+ const z = new Uint8Array(await crypto.subtle.deriveBits({ name: 'ECDH', public: pub }, key.privateKey, 256));
74
+ cek = await concatKdf(z, header.enc, header.apu ? (0, jws_1.b64urlDecode)(header.apu) : new Uint8Array(), header.apv ? (0, jws_1.b64urlDecode)(header.apv) : new Uint8Array(), keyBytes * 8);
75
+ }
76
+ if (cek.length !== keyBytes)
77
+ return null;
78
+ const aad = new TextEncoder().encode(h);
79
+ const ivB = (0, jws_1.b64urlDecode)(iv);
80
+ const ctB = (0, jws_1.b64urlDecode)(ct);
81
+ const tagB = (0, jws_1.b64urlDecode)(tag);
82
+ if (header.enc.endsWith('GCM')) {
83
+ const k = await crypto.subtle.importKey('raw', cek, 'AES-GCM', false, ['decrypt']);
84
+ return new TextDecoder().decode(await crypto.subtle.decrypt({ name: 'AES-GCM', iv: ivB, additionalData: aad, tagLength: 128 }, k, cat(ctB, tagB)));
85
+ }
86
+ const half = keyBytes / 2;
87
+ const hash = header.enc === 'A128CBC-HS256' ? 'SHA-256' : 'SHA-512';
88
+ const mac = await crypto.subtle.importKey('raw', cek.slice(0, half), { name: 'HMAC', hash }, false, ['sign']);
89
+ const al = new Uint8Array(8);
90
+ new DataView(al.buffer).setUint32(4, aad.length * 8);
91
+ const expected = new Uint8Array(await crypto.subtle.sign('HMAC', mac, cat(aad, ivB, ctB, al))).slice(0, half);
92
+ if (!tagEqual(expected, tagB))
93
+ return null;
94
+ const k = await crypto.subtle.importKey('raw', cek.slice(half), 'AES-CBC', false, ['decrypt']);
95
+ return new TextDecoder().decode(await crypto.subtle.decrypt({ name: 'AES-CBC', iv: ivB }, k, ctB));
96
+ }
97
+ catch {
98
+ return null;
99
+ }
100
+ }
101
+ //# sourceMappingURL=jwe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwe.js","sourceRoot":"","sources":["../src/jwe.ts"],"names":[],"mappings":"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"}
package/dist/jws.js CHANGED
@@ -38,7 +38,9 @@ const ALGS = {
38
38
  RS256: { import: { name: 'RSASSA-PKCS1-v1_5', hash: hashOf('256') }, verify: { name: 'RSASSA-PKCS1-v1_5' } },
39
39
  RS384: { import: { name: 'RSASSA-PKCS1-v1_5', hash: hashOf('384') }, verify: { name: 'RSASSA-PKCS1-v1_5' } },
40
40
  RS512: { import: { name: 'RSASSA-PKCS1-v1_5', hash: hashOf('512') }, verify: { name: 'RSASSA-PKCS1-v1_5' } },
41
+ ES512: { import: { name: 'ECDSA', namedCurve: 'P-521' }, verify: { name: 'ECDSA', hash: hashOf('512') } },
41
42
  PS256: { import: { name: 'RSA-PSS', hash: hashOf('256') }, verify: { name: 'RSA-PSS', saltLength: 32 } },
43
+ PS384: { import: { name: 'RSA-PSS', hash: hashOf('384') }, verify: { name: 'RSA-PSS', saltLength: 48 } },
42
44
  EdDSA: { import: { name: 'Ed25519' }, verify: { name: 'Ed25519' } },
43
45
  };
44
46
  exports.SUPPORTED_ALGS = Object.keys(ALGS);
package/dist/jws.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jws.js","sourceRoot":"","sources":["../src/jws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jws.js","sourceRoot":"","sources":["../src/jws.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ export type EventStatus = 'sent' | 'delivered' | 'bounced' | 'complained' | 'failed';
2
+ export interface DeliveryEvent {
3
+ channel: 'email' | 'sms';
4
+ provider: string;
5
+ messageIds: string[];
6
+ status: EventStatus;
7
+ bounceType?: 'hard' | 'soft' | 'unknown';
8
+ recipient?: string;
9
+ detail?: string;
10
+ /** Epoch milliseconds. */
11
+ at: number;
12
+ suppress?: 'hard_bounce' | 'complaint' | 'unsubscribe' | 'invalid';
13
+ }
14
+ export declare const sha256Hex: (v: string | Uint8Array) => Promise<string>;
15
+ export interface TestKeys {
16
+ ec(): Promise<{
17
+ publicB64: string;
18
+ privateKey: CryptoKey;
19
+ }>;
20
+ rsa(): Promise<{
21
+ publicB64: string;
22
+ pkcs8: Uint8Array;
23
+ certPem: string;
24
+ }>;
25
+ }
26
+ export declare function testKeys(): TestKeys;
27
+ /** The test signing secret the emulator uses for a provider when none was stored (stable per instance). */
28
+ export declare function testSecret(instanceId: string, provider: string): Promise<string>;
29
+ /** The URL token of the providers that cannot sign (and the fallback when no signing secret is stored). */
30
+ export declare const receiverToken: (instanceId: string, provider: string) => Promise<string>;
31
+ export declare function idVariants(id: unknown): string[];
32
+ export declare function verifySvix(i: {
33
+ secret: string;
34
+ id: string;
35
+ timestamp: string;
36
+ signatureHeader: string;
37
+ body: string;
38
+ now: number;
39
+ }): Promise<boolean>;
40
+ export declare function snsStringToSign(m: Record<string, unknown>): string | null;
41
+ /** Where the emulator's SNS signing key is "served"; any other SNS host fails like an unreachable certificate. */
42
+ export declare const SNS_CERT_URL = "https://sns.us-east-1.amazonaws.com/SimpleNotificationService-emulator.pem";
43
+ export declare function presentedTokens(headers: Headers, query: Record<string, string>): string[];
44
+ export interface CallbackIn {
45
+ provider: string;
46
+ raw: string;
47
+ contentType: string;
48
+ headers: Headers;
49
+ query: Record<string, string>;
50
+ /** Every public URL the sender could have signed (Twilio signs the URL). */
51
+ urls: string[];
52
+ /** The stored verification secret (signing key, public key, whsec_, topic ARNs), or null. */
53
+ secret: string | null;
54
+ token: string;
55
+ /** Auth tokens of the instance's Twilio SMS providers. */
56
+ twilioTokens: string[];
57
+ /** The certificate (PEM) an SNS `SigningCertURL` serves, or null when nothing is served there. */
58
+ snsCertificate: (url: string) => Promise<string | null>;
59
+ /** Epoch seconds. */
60
+ now: number;
61
+ }
62
+ export type CallbackOut = {
63
+ ok: false;
64
+ why: string;
65
+ malformed?: boolean;
66
+ message?: string;
67
+ } | {
68
+ ok: true;
69
+ events: DeliveryEvent[];
70
+ id: string;
71
+ confirmed?: boolean;
72
+ subscribeUrl?: string;
73
+ };
74
+ /** Verify one callback with the provider's own scheme and say what it reports. Never throws. */
75
+ export declare function verifyCallback(i: CallbackIn): Promise<CallbackOut>;
76
+ export interface PrepIn {
77
+ provider: string;
78
+ event: EventStatus;
79
+ bounce: 'hard' | 'soft';
80
+ messageId: string;
81
+ recipient: string;
82
+ detail?: string;
83
+ /** The signing secret to use, or null for the URL-token mode of the providers that have one. */
84
+ secret: string | null;
85
+ token: string;
86
+ /** The public URL the callback is posted to, without a query. */
87
+ url: string;
88
+ now: number;
89
+ /** Appended to what is signed, so the signature is well formed but wrong (a tampered callback). */
90
+ salt: string;
91
+ topic: string;
92
+ keys: TestKeys;
93
+ }
94
+ export interface Prepared {
95
+ content_type: string;
96
+ body: string;
97
+ headers: Record<string, string>;
98
+ query: Record<string, string>;
99
+ }
100
+ export declare function prepareCallback(p: PrepIn): Promise<Prepared>;