@teleporthq/teleport-plugin-next-workflows 0.45.2 → 0.45.4

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 (54) hide show
  1. package/__tests__/analytics-track-outcome.test.ts +71 -3
  2. package/__tests__/auth-password-security.test.ts +101 -0
  3. package/__tests__/automations-bus.test.ts +85 -2
  4. package/__tests__/security-lists-parity.test.ts +2 -2
  5. package/__tests__/security-runtime.test.ts +37 -20
  6. package/dist/cjs/auth-generator.d.ts.map +1 -1
  7. package/dist/cjs/auth-generator.js +48 -19
  8. package/dist/cjs/auth-generator.js.map +1 -1
  9. package/dist/cjs/automations/event-bus-source.d.ts.map +1 -1
  10. package/dist/cjs/automations/event-bus-source.js +37 -23
  11. package/dist/cjs/automations/event-bus-source.js.map +1 -1
  12. package/dist/cjs/nodes/account/account-request-password-reset.d.ts.map +1 -1
  13. package/dist/cjs/nodes/account/account-request-password-reset.js +3 -2
  14. package/dist/cjs/nodes/account/account-request-password-reset.js.map +1 -1
  15. package/dist/cjs/nodes/analytics/analytics-track-outcome.d.ts.map +1 -1
  16. package/dist/cjs/nodes/analytics/analytics-track-outcome.js +17 -4
  17. package/dist/cjs/nodes/analytics/analytics-track-outcome.js.map +1 -1
  18. package/dist/cjs/password-reset-route-generator.d.ts +2 -0
  19. package/dist/cjs/password-reset-route-generator.d.ts.map +1 -1
  20. package/dist/cjs/password-reset-route-generator.js +17 -10
  21. package/dist/cjs/password-reset-route-generator.js.map +1 -1
  22. package/dist/cjs/security-runtime/security-runtime-code.d.ts +3 -2
  23. package/dist/cjs/security-runtime/security-runtime-code.d.ts.map +1 -1
  24. package/dist/cjs/security-runtime/security-runtime-code.js +17 -13
  25. package/dist/cjs/security-runtime/security-runtime-code.js.map +1 -1
  26. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  27. package/dist/esm/auth-generator.d.ts.map +1 -1
  28. package/dist/esm/auth-generator.js +48 -19
  29. package/dist/esm/auth-generator.js.map +1 -1
  30. package/dist/esm/automations/event-bus-source.d.ts.map +1 -1
  31. package/dist/esm/automations/event-bus-source.js +37 -23
  32. package/dist/esm/automations/event-bus-source.js.map +1 -1
  33. package/dist/esm/nodes/account/account-request-password-reset.d.ts.map +1 -1
  34. package/dist/esm/nodes/account/account-request-password-reset.js +3 -2
  35. package/dist/esm/nodes/account/account-request-password-reset.js.map +1 -1
  36. package/dist/esm/nodes/analytics/analytics-track-outcome.d.ts.map +1 -1
  37. package/dist/esm/nodes/analytics/analytics-track-outcome.js +17 -4
  38. package/dist/esm/nodes/analytics/analytics-track-outcome.js.map +1 -1
  39. package/dist/esm/password-reset-route-generator.d.ts +2 -0
  40. package/dist/esm/password-reset-route-generator.d.ts.map +1 -1
  41. package/dist/esm/password-reset-route-generator.js +16 -9
  42. package/dist/esm/password-reset-route-generator.js.map +1 -1
  43. package/dist/esm/security-runtime/security-runtime-code.d.ts +3 -2
  44. package/dist/esm/security-runtime/security-runtime-code.d.ts.map +1 -1
  45. package/dist/esm/security-runtime/security-runtime-code.js +17 -13
  46. package/dist/esm/security-runtime/security-runtime-code.js.map +1 -1
  47. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  48. package/package.json +2 -2
  49. package/src/auth-generator.ts +48 -19
  50. package/src/automations/event-bus-source.ts +37 -23
  51. package/src/nodes/account/account-request-password-reset.ts +3 -2
  52. package/src/nodes/analytics/analytics-track-outcome.ts +17 -4
  53. package/src/password-reset-route-generator.ts +18 -9
  54. package/src/security-runtime/security-runtime-code.ts +17 -13
@@ -1 +1 @@
1
- {"version":3,"file":"auth-generator.d.ts","sourceRoot":"","sources":["../../src/auth-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,cAAc,EACf,MAAM,4BAA4B,CAAA;AAsBnC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,qBAAqB,KAAK,CAAA;AACvC,eAAO,MAAM,sBAAsB,MAAM,CAAA;AACzC,6EAA6E;AAC7E,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAC/C,qCAAqC;AACrC,eAAO,MAAM,aAAa,KAAK,CAAA;AAC/B;;;GAGG;AACH,eAAO,MAAM,4BAA4B,IAAI,CAAA;AAC7C,eAAO,MAAM,sBAAsB,OAAO,CAAA;AAY1C,eAAO,MAAM,6BAA6B,mBACxB,cAAc,GAAG,IAAI,KACpC,OAAO,MAAM,EAAE,MAAM,CA0BvB,CAAA;AAwID;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAA;AAE7C;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAQrD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAalD,CAAA;AAkBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,WACzB,OAAO,MAAM,EAAE,mBAAmB,EAAE,CAAC,GAAG,SAAS,eAC5C,sBAAsB,EAAE,KACpC,MAAM,EAUR,CAAA;AA8FD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAAoC,CAAA;AAqTpF,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,6BAA6B,CAAA;AA2Y/D,eAAO,MAAM,uBAAuB,SAC5B,kBAAkB,qBACL,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAChD,MA0OF,CAAA;AAoMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,qBAAqB,SAAU,kBAAkB,KAAG,OAWhE,CAAA;AAoID;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,6BAA6B,QAAO,MA8ChD,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,QAAO,MAkD3C,CAAA;AAED,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,eAAO,MAAM,wBAAwB,QAAO,MAqF3C,CAAA;AAED,MAAM,WAAW,oBAAoB;IACnC,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;AA6DD,eAAO,MAAM,yBAAyB,aAAa,oBAAoB,KAAQ,MAkH9E,CAAA;AAMD,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IAGtB,kBAAkB,CAAC,EAAE,2BAA2B,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,gEAAgE;AAChE,MAAM,WAAW,mBAAmB;IAClC,kEAAkE;IAClE,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,YAAa;IACpD,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;CACf,KAAG,MAsCH,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAS,MAAM,KAAG,OACP,CAAA;AAY7C;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,SACxB,kBAAkB,qBACL,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC,KAChD,MAAM,EAeR,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,sFAAsF;IACtF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,uBAAuB,CAAA;IACrC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAoBD,oGAAoG;AACpG,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAED;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,OAAO,CAAA;AAsIjD,eAAO,MAAM,uBAAuB,SAC5B,kBAAkB,YACf,mBAAmB,WACpB,mBAAmB,WACnB,kBAAkB,KACzB,MAiRF,CAAA;AA2ED,MAAM,WAAW,iBAAiB;IAIhC,yBAAyB,CAAC,EAAE,MAAM,CAAA;CACnC;AA4FD,eAAO,MAAM,sBAAsB,SAC3B,kBAAkB,YACf,iBAAiB,KACzB,MAwaF,CAAA;AAoBD,eAAO,MAAM,8BAA8B,QAAO,MA6BjD,CAAA;AAED,eAAO,MAAM,8BAA8B,QAAO,MAiHjD,CAAA"}
1
+ {"version":3,"file":"auth-generator.d.ts","sourceRoot":"","sources":["../../src/auth-generator.ts"],"names":[],"mappings":"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"}
@@ -660,13 +660,15 @@ export const PASSWORD_RESETS_TABLE = 'teleport_password_resets';
660
660
  const PG_PASSWORD_RESET_FUNCTIONS = `
661
661
  // Password-reset links (pages/api/auth/forgot-password + reset-password). Only
662
662
  // the SHA-256 of a link's token is stored, bound to the account id, with its
663
- // expiry; the table is created on first use. The earlier password_reset_tokens
664
- // table and its rows are never read.
663
+ // expiry. The editor makes the table with the other account tables, and a site's
664
+ // database role may read and write it without being allowed to create one
665
+ // (CREATE ... IF NOT EXISTS asks for that permission even when the table is
666
+ // there), so a create is attempted only for a table that really is missing. The
667
+ // earlier password_reset_tokens table and its rows are never read.
665
668
  var PASSWORD_RESETS_TABLE = '${PASSWORD_RESETS_TABLE}';
666
- var __passwordResetsTableReady = false;
669
+ var UNDEFINED_TABLE_CODE = '42P01';
667
670
 
668
- async function ensurePasswordResetsTable(client) {
669
- if (__passwordResetsTableReady) return;
671
+ async function createPasswordResetsTable(client) {
670
672
  await client.query('BEGIN');
671
673
  try {
672
674
  await client.query('SELECT pg_advisory_xact_lock(hashtext($1))', [PASSWORD_RESETS_TABLE]);
@@ -678,28 +680,53 @@ async function ensurePasswordResetsTable(client) {
678
680
  await client.query('COMMIT');
679
681
  } catch (err) {
680
682
  try { await client.query('ROLLBACK'); } catch (_e) {}
681
- throw err;
683
+ throw new Error('[password-reset] the table ' + PASSWORD_RESETS_TABLE + ' is missing and could not be created: ' + (err && err.message ? err.message : String(err)));
684
+ }
685
+ }
686
+
687
+ // Throws when a link could not be kept. Asked for every address, with an account
688
+ // or without, so a table that cannot be used refuses them all alike.
689
+ async function ensurePasswordResetsUsable() {
690
+ const client = getClient();
691
+ try {
692
+ await client.connect();
693
+ try {
694
+ await client.query('SELECT 1 FROM ' + PASSWORD_RESETS_TABLE + ' LIMIT 1');
695
+ } catch (err) {
696
+ if (!err || err.code !== UNDEFINED_TABLE_CODE) throw err;
697
+ await createPasswordResetsTable(client);
698
+ }
699
+ } finally {
700
+ try { await client.end(); } catch (_e) {}
682
701
  }
683
- __passwordResetsTableReady = true;
684
702
  }
685
703
 
686
704
  // One live link per account: a new one ends the ones sent before it.
705
+ async function writePasswordReset(client, userId, tokenHash, ttlSeconds) {
706
+ await client.query(
707
+ 'UPDATE ' + PASSWORD_RESETS_TABLE + ' SET used_at = NOW() WHERE user_id = $1 AND used_at IS NULL',
708
+ [String(userId)]
709
+ );
710
+ await client.query(
711
+ 'INSERT INTO ' + PASSWORD_RESETS_TABLE + " (token_hash, user_id, expires_at) VALUES ($1, $2, NOW() + ($3::int * INTERVAL '1 second'))",
712
+ [tokenHash, String(userId), ttlSeconds]
713
+ );
714
+ await client.query(
715
+ 'DELETE FROM ' + PASSWORD_RESETS_TABLE + " WHERE expires_at < NOW() - INTERVAL '1 day'"
716
+ );
717
+ }
718
+
687
719
  async function storePasswordReset(userId, tokenHash, ttlSeconds) {
688
720
  const client = getClient();
689
721
  try {
690
722
  await client.connect();
691
- await ensurePasswordResetsTable(client);
692
- await client.query(
693
- 'UPDATE ' + PASSWORD_RESETS_TABLE + ' SET used_at = NOW() WHERE user_id = $1 AND used_at IS NULL',
694
- [String(userId)]
695
- );
696
- await client.query(
697
- 'INSERT INTO ' + PASSWORD_RESETS_TABLE + " (token_hash, user_id, expires_at) VALUES ($1, $2, NOW() + ($3::int * INTERVAL '1 second'))",
698
- [tokenHash, String(userId), ttlSeconds]
699
- );
700
- await client.query(
701
- 'DELETE FROM ' + PASSWORD_RESETS_TABLE + " WHERE expires_at < NOW() - INTERVAL '1 day'"
702
- );
723
+ try {
724
+ await writePasswordReset(client, userId, tokenHash, ttlSeconds);
725
+ } catch (err) {
726
+ if (!err || err.code !== UNDEFINED_TABLE_CODE) throw err;
727
+ await createPasswordResetsTable(client);
728
+ await writePasswordReset(client, userId, tokenHash, ttlSeconds);
729
+ }
703
730
  } finally {
704
731
  try { await client.end(); } catch (_e) {}
705
732
  }
@@ -754,6 +781,7 @@ const PASSWORD_RESET_SUPPORTED = true;`;
754
781
  const UNSUPPORTED_PASSWORD_RESET_FUNCTIONS = `
755
782
  // Password-reset links need a Postgres database; this project's user store is
756
783
  // not one, so the reset routes answer without ever sending a link.
784
+ async function ensurePasswordResetsUsable() { throw new Error('Password reset needs a Postgres database'); }
757
785
  async function storePasswordReset() { throw new Error('Password reset needs a Postgres database'); }
758
786
  async function consumePasswordReset() { return null; }
759
787
  async function passwordResetIsLive() { return false; }
@@ -1243,6 +1271,7 @@ ${auth.passwordAuthEnabled
1243
1271
  module.exports.checkSignInAllowed = checkSignInAllowed;
1244
1272
  module.exports.countSignInFailure = countSignInFailure;
1245
1273
  module.exports.SIGN_IN_VISITOR_HEADER = SIGN_IN_VISITOR_HEADER;
1274
+ module.exports.ensurePasswordResetsUsable = ensurePasswordResetsUsable;
1246
1275
  module.exports.storePasswordReset = storePasswordReset;
1247
1276
  module.exports.consumePasswordReset = consumePasswordReset;
1248
1277
  module.exports.passwordResetIsLive = passwordResetIsLive;
@@ -1 +1 @@
1
- {"version":3,"file":"auth-generator.js","sourceRoot":"","sources":["../../src/auth-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-generator.js","sourceRoot":"","sources":["../../src/auth-generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-source.d.ts","sourceRoot":"","sources":["../../../src/automations/event-bus-source.ts"],"names":[],"mappings":"AAcA,gGAAgG;AAChG,eAAO,MAAM,qBAAqB,iCAAiC,CAAA;AAEnE,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,QAA4I,CAAA;AAEzK;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,QAAO,MA8P9C,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,QAAO,MAoBlD,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,QAAO,MA6FjD,CAAA"}
1
+ {"version":3,"file":"event-bus-source.d.ts","sourceRoot":"","sources":["../../../src/automations/event-bus-source.ts"],"names":[],"mappings":"AAcA,gGAAgG;AAChG,eAAO,MAAM,qBAAqB,iCAAiC,CAAA;AAEnE,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,QAA4I,CAAA;AAEzK;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,QAAO,MA4Q9C,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,QAAO,MAoBlD,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,QAAO,MA6FjD,CAAA"}
@@ -83,10 +83,15 @@ async function saveWait(wait) {
83
83
 
84
84
  // The signed requests the dispatch route has taken, each kept until its
85
85
  // signature can no longer verify: the same request again is refused. The
86
- // table (and its expiry index) is made on first use, two instances taking
87
- // turns under the lock. The rows that are over are deleted at most once per
88
- // instance every SIGNED_REQUESTS_CLEANUP_MS, a bounded batch at a time.
86
+ // editor makes the table with the other automation tables, and a site's
87
+ // database role may read and write it without being allowed to create one
88
+ // (CREATE ... IF NOT EXISTS asks for that permission even when the table is
89
+ // there), so a create is attempted only for a table that really is missing,
90
+ // two instances taking turns under the lock. The rows that are over are
91
+ // deleted at most once per instance every SIGNED_REQUESTS_CLEANUP_MS, a
92
+ // bounded batch at a time.
89
93
  var SIGNED_REQUESTS_TABLE = '${SIGNED_REQUESTS_TABLE}';
94
+ var UNDEFINED_TABLE_CODE = '42P01';
90
95
  var LOCK_SIGNED_REQUESTS_SQL = 'SELECT pg_advisory_xact_lock(hashtext($1))';
91
96
  var CREATE_SIGNED_REQUESTS_SQL = 'CREATE TABLE IF NOT EXISTS ' + SIGNED_REQUESTS_TABLE +
92
97
  ' (request_key TEXT PRIMARY KEY, expires_at BIGINT NOT NULL)';
@@ -97,34 +102,43 @@ var FORGET_SIGNED_REQUESTS_SQL = 'DELETE FROM ' + SIGNED_REQUESTS_TABLE + ' WHER
97
102
  var TAKE_SIGNED_REQUEST_SQL = 'INSERT INTO ' + SIGNED_REQUESTS_TABLE + ' (request_key, expires_at) VALUES ($1, $2) ' +
98
103
  'ON CONFLICT (request_key) DO NOTHING RETURNING request_key';
99
104
  var SIGNED_REQUESTS_CLEANUP_MS = 600000;
100
- var __signedRequestsReady = false;
101
105
  var __signedRequestsCleanedAt = 0;
102
106
 
107
+ async function createSignedRequestsTable(client) {
108
+ await client.query('BEGIN');
109
+ try {
110
+ await client.query(LOCK_SIGNED_REQUESTS_SQL, [SIGNED_REQUESTS_TABLE]);
111
+ await client.query(CREATE_SIGNED_REQUESTS_SQL);
112
+ await client.query(INDEX_SIGNED_REQUESTS_SQL);
113
+ await client.query('COMMIT');
114
+ } catch (error) {
115
+ try { await client.query('ROLLBACK'); } catch (_e) {}
116
+ throw new Error('[automations] the table ' + SIGNED_REQUESTS_TABLE + ' is missing and could not be created: ' + errorMessage(error));
117
+ }
118
+ }
119
+
120
+ async function recordSignedRequest(client, key, expiresAt) {
121
+ var nowMs = Date.now();
122
+ if (nowMs - __signedRequestsCleanedAt >= SIGNED_REQUESTS_CLEANUP_MS) {
123
+ __signedRequestsCleanedAt = nowMs;
124
+ await client.query(FORGET_SIGNED_REQUESTS_SQL, [Math.floor(nowMs / 1000)]);
125
+ }
126
+ var taken = await client.query(TAKE_SIGNED_REQUEST_SQL, [key, expiresAt]);
127
+ return !!(taken && taken.rows && taken.rows[0]);
128
+ }
129
+
103
130
  // true the first time a signed request (its key) is taken, false every time
104
131
  // after while it is kept (until expiresAt, unix seconds). Throws when the
105
132
  // database cannot say: the route then refuses.
106
133
  async function takeSignedRequest(key, expiresAt) {
107
134
  return withClient(async function (client) {
108
- if (!__signedRequestsReady) {
109
- await client.query('BEGIN');
110
- try {
111
- await client.query(LOCK_SIGNED_REQUESTS_SQL, [SIGNED_REQUESTS_TABLE]);
112
- await client.query(CREATE_SIGNED_REQUESTS_SQL);
113
- await client.query(INDEX_SIGNED_REQUESTS_SQL);
114
- await client.query('COMMIT');
115
- } catch (error) {
116
- try { await client.query('ROLLBACK'); } catch (_e) {}
117
- throw error;
118
- }
119
- __signedRequestsReady = true;
120
- }
121
- var nowMs = Date.now();
122
- if (nowMs - __signedRequestsCleanedAt >= SIGNED_REQUESTS_CLEANUP_MS) {
123
- __signedRequestsCleanedAt = nowMs;
124
- await client.query(FORGET_SIGNED_REQUESTS_SQL, [Math.floor(nowMs / 1000)]);
135
+ try {
136
+ return await recordSignedRequest(client, key, expiresAt);
137
+ } catch (error) {
138
+ if (!error || error.code !== UNDEFINED_TABLE_CODE) throw error;
139
+ await createSignedRequestsTable(client);
140
+ return recordSignedRequest(client, key, expiresAt);
125
141
  }
126
- var taken = await client.query(TAKE_SIGNED_REQUEST_SQL, [key, expiresAt]);
127
- return !!(taken && taken.rows && taken.rows[0]);
128
142
  });
129
143
  }
130
144
 
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-source.js","sourceRoot":"","sources":["../../../src/automations/event-bus-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAElE;;;;;GAKG;AAEH,MAAM,aAAa,GACjB,sFAAsF,CAAA;AAExF,gGAAgG;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,8BAA8B,CAAA;AAEnE,iFAAiF;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG,gCAAgC,aAAa,4FAA4F,CAAA;AAEzK;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAW,EAAE,CAAC;;;;EAIvD,wBAAwB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA4DG,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqHlD,2BAA2B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyE9B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;CAoB5D,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;uBAWrC,wBAAwB;0BACrB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiFzC,CAAA"}
1
+ {"version":3,"file":"event-bus-source.js","sourceRoot":"","sources":["../../../src/automations/event-bus-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAElE;;;;;GAKG;AAEH,MAAM,aAAa,GACjB,sFAAsF,CAAA;AAExF,gGAAgG;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,8BAA8B,CAAA;AAEnE,iFAAiF;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG,gCAAgC,aAAa,4FAA4F,CAAA;AAEzK;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAW,EAAE,CAAC;;;;EAIvD,wBAAwB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAgEG,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+HlD,2BAA2B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyE9B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;CAoB5D,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAW,EAAE,CAAC;;;;;;;;;;;uBAWrC,wBAAwB;0BACrB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiFzC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"account-request-password-reset.d.ts","sourceRoot":"","sources":["../../../../src/nodes/account/account-request-password-reset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAwChE,eAAO,MAAM,2BAA2B,EAAE,oBAMzC,CAAA"}
1
+ {"version":3,"file":"account-request-password-reset.d.ts","sourceRoot":"","sources":["../../../../src/nodes/account/account-request-password-reset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAyChE,eAAO,MAAM,2BAA2B,EAAE,oBAMzC,CAAA"}
@@ -4,8 +4,9 @@ import { handlerToString } from '../types';
4
4
  // server: whether the address has an account, the link's token (minted there,
5
5
  // stored hashed), the page it opens and the email itself (provider, sender and
6
6
  // template baked from this node's config at generation). The route answers the
7
- // same whether the address has an account or not, so this node always reports
8
- // success for a well-formed request.
7
+ // same whether the address has an account or not, so this node reports success
8
+ // for a well-formed request unless the site could not keep a link, for any
9
+ // address.
9
10
  async function account_request_password_reset(config, context) {
10
11
  const email = config && typeof config.email === 'string' ? config.email.trim() : '';
11
12
  if (!email) {
@@ -1 +1 @@
1
- {"version":3,"file":"account-request-password-reset.js","sourceRoot":"","sources":["../../../../src/nodes/account/account-request-password-reset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,UAAU,CAAA;AAEhE,4EAA4E;AAC5E,wEAAwE;AACxE,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,8EAA8E;AAC9E,qCAAqC;AACrC,KAAK,UAAU,8BAA8B,CAAC,MAAW,EAAE,OAAgC;IACzF,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACnF,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;KACrC;IAED,MAAM,OAAO,GAAG,CAAC,OAAO,IAAK,OAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IAC7D,8DAA8D;IAC9D,MAAM,cAAc,GAAQ,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAA;IAClE,MAAM,SAAS,GAAG,OAAO,IAAK,OAAe,CAAC,QAAQ,CAAA;IACtD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,EAAE;QAC9C,cAAc,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAA;KAChD;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE;QAClE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,cAAc;QACvB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;KAChC,CAAC,CAAA;IAEF,IAAI,IAAI,GAAQ,EAAE,CAAA;IAClB,IAAI;QACF,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;KAC7B;IAAC,OAAO,EAAE,EAAE,GAAE;IAEf,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,qDAAqD,CAAC,CAAA;KAC/F;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAA;AACjE,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAyB;IAC/D,QAAQ,EAAE,gCAAgC;IAC1C,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,eAAe,CAAC,8BAA8B,CAAC,CAAA;IACxD,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"account-request-password-reset.js","sourceRoot":"","sources":["../../../../src/nodes/account/account-request-password-reset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,UAAU,CAAA;AAEhE,4EAA4E;AAC5E,wEAAwE;AACxE,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,+EAA+E;AAC/E,2EAA2E;AAC3E,WAAW;AACX,KAAK,UAAU,8BAA8B,CAAC,MAAW,EAAE,OAAgC;IACzF,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACnF,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;KACrC;IAED,MAAM,OAAO,GAAG,CAAC,OAAO,IAAK,OAAe,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IAC7D,8DAA8D;IAC9D,MAAM,cAAc,GAAQ,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAA;IAClE,MAAM,SAAS,GAAG,OAAO,IAAK,OAAe,CAAC,QAAQ,CAAA;IACtD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,EAAE;QAC9C,cAAc,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAA;KAChD;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE;QAClE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,cAAc;QACvB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;KAChC,CAAC,CAAA;IAEF,IAAI,IAAI,GAAQ,EAAE,CAAA;IAClB,IAAI;QACF,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;KAC7B;IAAC,OAAO,EAAE,EAAE,GAAE;IAEf,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,qDAAqD,CAAC,CAAA;KAC/F;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAA;AACjE,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAyB;IAC/D,QAAQ,EAAE,gCAAgC;IAC1C,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,eAAe,CAAC,8BAA8B,CAAC,CAAA;IACxD,CAAC;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-track-outcome.d.ts","sourceRoot":"","sources":["../../../../src/nodes/analytics/analytics-track-outcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAqG/C,eAAO,MAAM,qBAAqB,EAAE,oBASnC,CAAA"}
1
+ {"version":3,"file":"analytics-track-outcome.d.ts","sourceRoot":"","sources":["../../../../src/nodes/analytics/analytics-track-outcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAkH/C,eAAO,MAAM,qBAAqB,EAAE,oBASnC,CAAA"}
@@ -12,6 +12,11 @@
12
12
  * carries the ids the trigger stamped on the context (`__tpa`, set by every
13
13
  * generated trigger) plus whatever first-touch snapshot the caller binds in
14
14
  * `attribution` (the checkout stamps `utm_*`, `referrer_host`, `landing_path`).
15
+ * A snapshot naming a `session_id` is the visit that placed an order, read back
16
+ * by a run outside that visit (a payment webhook, a cron, an admin page): its
17
+ * `session_id`, `visitor_id` and `exp` stand in for the trigger's ids. Otherwise
18
+ * the visitor id is the tracker's alone: a browser may still hold a persistent
19
+ * id from before its consent was withdrawn.
15
20
  *
16
21
  * Never throws: an outcome that cannot be reported answers `{ sent: false }`
17
22
  * and the workflow continues — analytics must never cost a sale.
@@ -56,22 +61,30 @@ const SERVER_BODY = `async function analytics_track_outcome(config, context) {
56
61
  if (baseUrl.indexOf('http') !== 0 || !publicKey || !serverKey) {
57
62
  return { sent: false, reason: 'not-configured' };
58
63
  }
64
+ // The service dedupes on this id and drops an outcome without one.
65
+ if (config.outcomeId == null || config.outcomeId === '') {
66
+ return { sent: false, reason: 'no-outcome-id' };
67
+ }
59
68
  var ids = context && context.__tpa && typeof context.__tpa === 'object' ? context.__tpa : {};
60
69
  var attribution = config.attribution && typeof config.attribution === 'object' ? config.attribution : {};
70
+ var visit = attribution.session_id
71
+ ? { sessionId: attribution.session_id, visitorId: attribution.visitor_id, exp: attribution.exp }
72
+ : ids;
61
73
  var outcome = {
62
74
  name: name,
63
75
  value: config.value == null || config.value === '' ? null : Number(config.value),
64
76
  currency: config.currency == null ? null : String(config.currency),
65
77
  outcomeId: config.outcomeId == null ? null : String(config.outcomeId),
66
78
  recordId: config.recordId == null ? null : String(config.recordId),
67
- sessionId: ids.sessionId || null,
68
- visitorId: ids.visitorId || attribution.visitor_id || null,
69
- path: ids.path || null,
70
- exp: ids.exp || null,
79
+ sessionId: visit.sessionId || null,
80
+ visitorId: visit.visitorId || null,
81
+ path: visit.path || null,
82
+ exp: visit.exp || null,
71
83
  attribution: {
72
84
  utmSource: attribution.utm_source || attribution.utmSource || null,
73
85
  utmMedium: attribution.utm_medium || attribution.utmMedium || null,
74
86
  utmCampaign: attribution.utm_campaign || attribution.utmCampaign || null,
87
+ utmContent: attribution.utm_content || attribution.utmContent || null,
75
88
  referrerHost: attribution.referrer_host || attribution.referrerHost || null,
76
89
  landingPath: attribution.landing_path || attribution.landingPath || null
77
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-track-outcome.js","sourceRoot":"","sources":["../../../../src/nodes/analytics/analytics-track-outcome.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,oBAAoB,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;AAEzD,MAAM,WAAW,GAAG;;;;;QAKZ,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;;;;;;;;;;;;;;;;;;;;EAoB1C,CAAA;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkDlB,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAyB;IACzD,QAAQ,EAAE,yBAAyB;IACnC,YAAY,EAAE,WAAW;IACzB,eAAe;QACb,OAAO,WAAW,CAAA;IACpB,CAAC;IACD,qBAAqB;QACnB,OAAO,WAAW,CAAA;IACpB,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"analytics-track-outcome.js","sourceRoot":"","sources":["../../../../src/nodes/analytics/analytics-track-outcome.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,oBAAoB,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;AAEzD,MAAM,WAAW,GAAG;;;;;QAKZ,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;;;;;;;;;;;;;;;;;;;;EAoB1C,CAAA;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0DlB,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAyB;IACzD,QAAQ,EAAE,yBAAyB;IACnC,YAAY,EAAE,WAAW;IACzB,eAAe;QACb,OAAO,WAAW,CAAA;IACpB,CAAC;IACD,qBAAqB;QACnB,OAAO,WAAW,CAAA;IACpB,CAAC;CACF,CAAA"}
@@ -30,6 +30,8 @@ export declare const RESET_PASSWORD_VISITOR_LIMIT = 20;
30
30
  export declare const DEFAULT_RESET_PAGE_PATH = "/reset-password";
31
31
  /** The same answer for every well-formed request, whatever the address. */
32
32
  export declare const FORGOT_PASSWORD_ANSWER = "If an account exists for that email, we sent it a link to reset the password.";
33
+ /** What the route answers, to every address, when a link could not be kept. */
34
+ export declare const FORGOT_PASSWORD_NOT_SENT = "We could not send the reset link. Please try again in a moment.";
33
35
  /**
34
36
  * The sessionStorage key the reset page reads the link's token from (mirrored
35
37
  * in teleport-gui `RESET_TOKEN_STORAGE_KEY`). The published site's first head
@@ -1 +1 @@
1
- {"version":3,"file":"password-reset-route-generator.d.ts","sourceRoot":"","sources":["../../src/password-reset-route-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAEL,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,4BAA4B,CAAA;AAenC,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAC3D,eAAO,MAAM,yBAAyB,mBAAmB,CAAA;AAEzD,4CAA4C;AAC5C,eAAO,MAAM,gCAAgC,OAAO,CAAA;AACpD,8FAA8F;AAC9F,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAChD,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAC/C,mEAAmE;AACnE,eAAO,MAAM,4BAA4B,KAAK,CAAA;AAE9C,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB,kFAC8C,CAAA;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AAEvD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,SAAU,WAAW,KAAG,OAUvD,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,yBAAyB,SAAU,WAAW,KAAG,MAAM,EAOnE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,SAChB,WAAW,KAChB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAOnD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SACvB,WAAW,KAChB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAWxE,CAAA;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uDAAuD;IACvD,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,2BAA2B,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,UAAW,OAAO,KAAG,MAWrD,CAAA;AAED,eAAO,MAAM,mBAAmB,QAsB9B,CAAA;AAcF,eAAO,MAAM,2BAA2B,aAAa,0BAA0B,KAAQ,MA6JtF,CAAA;AAED,eAAO,MAAM,0BAA0B,QAAO,MAsD7C,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,sBAAsB,uBAAuB,CAAA;AAE1D,6FAA6F;AAC7F,eAAO,MAAM,gCAAgC,mCAAmC,CAAA;AAEhF,mFAAmF;AACnF,eAAO,MAAM,0BAA0B;gBACZ,OAAO;kBAAgB,OAAO;aAC7C,MAAM,KACf,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAgB/B,CAAA;AAcD;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,cACrB,sBAAsB,QAC3B,kBAAkB,KACvB,IAwDF,CAAA"}
1
+ {"version":3,"file":"password-reset-route-generator.d.ts","sourceRoot":"","sources":["../../src/password-reset-route-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAEL,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,4BAA4B,CAAA;AAenC,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAC3D,eAAO,MAAM,yBAAyB,mBAAmB,CAAA;AAEzD,4CAA4C;AAC5C,eAAO,MAAM,gCAAgC,OAAO,CAAA;AACpD,8FAA8F;AAC9F,eAAO,MAAM,+BAA+B,IAAI,CAAA;AAChD,eAAO,MAAM,6BAA6B,KAAK,CAAA;AAC/C,mEAAmE;AACnE,eAAO,MAAM,4BAA4B,KAAK,CAAA;AAE9C,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB,kFAC8C,CAAA;AAEjF,+EAA+E;AAC/E,eAAO,MAAM,wBAAwB,oEAC8B,CAAA;AAEnE;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AAEvD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,SAAU,WAAW,KAAG,OAUvD,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,yBAAyB,SAAU,WAAW,KAAG,MAAM,EAOnE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,SAChB,WAAW,KAChB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAOnD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SACvB,WAAW,KAChB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAWxE,CAAA;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uDAAuD;IACvD,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,2BAA2B,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,UAAW,OAAO,KAAG,MAWrD,CAAA;AAED,eAAO,MAAM,mBAAmB,QAsB9B,CAAA;AAcF,eAAO,MAAM,2BAA2B,aAAa,0BAA0B,KAAQ,MAkKtF,CAAA;AAED,eAAO,MAAM,0BAA0B,QAAO,MAsD7C,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,sBAAsB,uBAAuB,CAAA;AAE1D,6FAA6F;AAC7F,eAAO,MAAM,gCAAgC,mCAAmC,CAAA;AAEhF,mFAAmF;AACnF,eAAO,MAAM,0BAA0B;gBACZ,OAAO;kBAAgB,OAAO;aAC7C,MAAM,KACf,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAgB/B,CAAA;AAcD;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,cACrB,sBAAsB,QAC3B,kBAAkB,KACvB,IAwDF,CAAA"}
@@ -35,6 +35,8 @@ export const RESET_PASSWORD_VISITOR_LIMIT = 20;
35
35
  export const DEFAULT_RESET_PAGE_PATH = '/reset-password';
36
36
  /** The same answer for every well-formed request, whatever the address. */
37
37
  export const FORGOT_PASSWORD_ANSWER = 'If an account exists for that email, we sent it a link to reset the password.';
38
+ /** What the route answers, to every address, when a link could not be kept. */
39
+ export const FORGOT_PASSWORD_NOT_SENT = 'We could not send the reset link. Please try again in a moment.';
38
40
  /**
39
41
  * The sessionStorage key the reset page reads the link's token from (mirrored
40
42
  * in teleport-gui `RESET_TOKEN_STORAGE_KEY`). The published site's first head
@@ -273,7 +275,9 @@ module.exports = async function handler(req, res) {
273
275
  return __security.sendClientError(res, 503, 'We could not reach the account service. Please try again in a moment.', err);
274
276
  }
275
277
 
278
+ var link = null;
276
279
  try {
280
+ await authUtils.ensurePasswordResetsUsable();
277
281
  // Counted for every address, with an account or without, so neither the
278
282
  // answer nor its timing differs.
279
283
  var recipient = await __security.rateLimit({
@@ -285,17 +289,20 @@ module.exports = async function handler(req, res) {
285
289
  if (user && userId != null && user.email && !recipient.allowed) {
286
290
  console.warn('[forgot-password] reset link not sent: this address was sent ${FORGOT_PASSWORD_RECIPIENT_LIMIT} in the last hour');
287
291
  } else if (user && userId != null && user.email) {
288
- if (!authUtils.PASSWORD_RESET_SUPPORTED) {
289
- console.warn('[forgot-password] reset link not sent: password reset needs a Postgres user store');
290
- } else {
291
- var token = crypto.randomBytes(32).toString('hex');
292
- await authUtils.storePasswordReset(userId, sha256(token), TOKEN_TTL_SECONDS);
293
- var resetUrl = trustedOrigin(req) + RESET_PAGE_PATH + TOKEN_LINK_PREFIX + token;
294
- await sendResetEmail(user, resetUrl, token, __emailLocale.resolveRequestLocale(req));
295
- }
292
+ var token = crypto.randomBytes(32).toString('hex');
293
+ await authUtils.storePasswordReset(userId, sha256(token), TOKEN_TTL_SECONDS);
294
+ link = { token: token, url: trustedOrigin(req) + RESET_PAGE_PATH + TOKEN_LINK_PREFIX + token };
296
295
  }
297
296
  } catch (err) {
298
- console.error('[forgot-password] could not send a reset link:', err && err.message ? err.message : err);
297
+ await waitUntilElapsed(startedAt, MIN_RESPONSE_MS);
298
+ return __security.sendClientError(res, 503, ${JSON.stringify(FORGOT_PASSWORD_NOT_SENT)}, err);
299
+ }
300
+ if (link) {
301
+ try {
302
+ await sendResetEmail(user, link.url, link.token, __emailLocale.resolveRequestLocale(req));
303
+ } catch (err) {
304
+ console.error('[forgot-password] could not send a reset link:', err && err.message ? err.message : err);
305
+ }
299
306
  }
300
307
 
301
308
  await waitUntilElapsed(startedAt, MIN_RESPONSE_MS);
@@ -1 +1 @@
1
- {"version":3,"file":"password-reset-route-generator.js","sourceRoot":"","sources":["../../src/password-reset-route-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"password-reset-route-generator.js","sourceRoot":"","sources":["../../src/password-reset-route-generator.ts"],"names":[],"mappings":"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"}
@@ -32,8 +32,9 @@ export declare const securityRuntimeSpecifier: (relativePrefix: string) => strin
32
32
  * itself, an IPv6 one its /64 (an IPv4 tail counted as the two groups it
33
33
  * fills). Every rate limit keyed by visitor uses it.
34
34
  * - `rateLimit` counts fixed windows in the app's Postgres database (table
35
- * `teleport_rate_limits`, created on first use under an advisory lock), so
36
- * every instance of a serverless app counts together. Only an app with no
35
+ * `teleport_rate_limits`, which the editor makes, created here under an
36
+ * advisory lock only when it is really missing), so every instance of a
37
+ * serverless app counts together. Only an app with no
37
38
  * database (or no `pg` driver) counts in a bounded per-instance map; a
38
39
  * database error counts in that map for a short while and is logged once.
39
40
  * A request waits on the database at most 1.5 s; after a failure one
@@ -1 +1 @@
1
- {"version":3,"file":"security-runtime-code.d.ts","sourceRoot":"","sources":["../../../src/security-runtime/security-runtime-code.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,qBAAqB,CAAA;AAC3D,eAAO,MAAM,qBAAqB,UAAY,CAAA;AAC9C,eAAO,MAAM,0BAA0B,qBAAqB,CAAA;AAC5D,eAAO,MAAM,iBAAiB,yBAAyB,CAAA;AAEvD,qEAAqE;AACrE,eAAO,MAAM,yBAAyB,wCAAwC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,mBAAoB,MAAM,KAAG,MACoB,CAAA;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,2BAA2B,QAAO,MAygB9C,CAAA"}
1
+ {"version":3,"file":"security-runtime-code.d.ts","sourceRoot":"","sources":["../../../src/security-runtime/security-runtime-code.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,qBAAqB,CAAA;AAC3D,eAAO,MAAM,qBAAqB,UAAY,CAAA;AAC9C,eAAO,MAAM,0BAA0B,qBAAqB,CAAA;AAC5D,eAAO,MAAM,iBAAiB,yBAAyB,CAAA;AAEvD,qEAAqE;AACrE,eAAO,MAAM,yBAAyB,wCAAwC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,mBAAoB,MAAM,KAAG,MACoB,CAAA;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,2BAA2B,QAAO,MA4gB9C,CAAA"}