@dotsetlabs/tollgate 0.2.2 → 0.3.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.
Files changed (194) hide show
  1. package/README.md +138 -0
  2. package/dist/analyzers/filesystem.d.ts +5 -0
  3. package/dist/analyzers/filesystem.d.ts.map +1 -1
  4. package/dist/analyzers/filesystem.js +61 -7
  5. package/dist/analyzers/filesystem.js.map +1 -1
  6. package/dist/analyzers/loader.d.ts +5 -0
  7. package/dist/analyzers/loader.d.ts.map +1 -1
  8. package/dist/analyzers/loader.js +112 -6
  9. package/dist/analyzers/loader.js.map +1 -1
  10. package/dist/analyzers/prompt-injection.d.ts +1 -0
  11. package/dist/analyzers/prompt-injection.d.ts.map +1 -1
  12. package/dist/analyzers/prompt-injection.js +48 -2
  13. package/dist/analyzers/prompt-injection.js.map +1 -1
  14. package/dist/analyzers/shell.d.ts +8 -0
  15. package/dist/analyzers/shell.d.ts.map +1 -1
  16. package/dist/analyzers/shell.js +109 -8
  17. package/dist/analyzers/shell.js.map +1 -1
  18. package/dist/analyzers/sql.d.ts.map +1 -1
  19. package/dist/analyzers/sql.js +8 -7
  20. package/dist/analyzers/sql.js.map +1 -1
  21. package/dist/approval/interactive.d.ts +1 -1
  22. package/dist/approval/interactive.d.ts.map +1 -1
  23. package/dist/approval/interactive.js +13 -1
  24. package/dist/approval/interactive.js.map +1 -1
  25. package/dist/approval/rate-limiter.d.ts +115 -0
  26. package/dist/approval/rate-limiter.d.ts.map +1 -0
  27. package/dist/approval/rate-limiter.js +200 -0
  28. package/dist/approval/rate-limiter.js.map +1 -0
  29. package/dist/approval/url-validator.d.ts +51 -0
  30. package/dist/approval/url-validator.d.ts.map +1 -0
  31. package/dist/approval/url-validator.js +184 -0
  32. package/dist/approval/url-validator.js.map +1 -0
  33. package/dist/approval/webhook.d.ts +48 -0
  34. package/dist/approval/webhook.d.ts.map +1 -1
  35. package/dist/approval/webhook.js +89 -0
  36. package/dist/approval/webhook.js.map +1 -1
  37. package/dist/audit/integrity.d.ts +107 -0
  38. package/dist/audit/integrity.d.ts.map +1 -0
  39. package/dist/audit/integrity.js +191 -0
  40. package/dist/audit/integrity.js.map +1 -0
  41. package/dist/audit/logger.d.ts.map +1 -1
  42. package/dist/audit/logger.js +6 -5
  43. package/dist/audit/logger.js.map +1 -1
  44. package/dist/audit/redaction.js +6 -4
  45. package/dist/audit/redaction.js.map +1 -1
  46. package/dist/cli/commands/guard.d.ts +97 -0
  47. package/dist/cli/commands/guard.d.ts.map +1 -0
  48. package/dist/cli/commands/guard.js +456 -0
  49. package/dist/cli/commands/guard.js.map +1 -0
  50. package/dist/cli/commands/serve.js +1 -1
  51. package/dist/cli/commands/serve.js.map +1 -1
  52. package/dist/cli/index.js +3 -0
  53. package/dist/cli/index.js.map +1 -1
  54. package/dist/cli/input-validation.d.ts +83 -0
  55. package/dist/cli/input-validation.d.ts.map +1 -0
  56. package/dist/cli/input-validation.js +237 -0
  57. package/dist/cli/input-validation.js.map +1 -0
  58. package/dist/cli/ui.js +2 -2
  59. package/dist/cli/ui.js.map +1 -1
  60. package/dist/guard/alternatives/index.d.ts +68 -0
  61. package/dist/guard/alternatives/index.d.ts.map +1 -0
  62. package/dist/guard/alternatives/index.js +224 -0
  63. package/dist/guard/alternatives/index.js.map +1 -0
  64. package/dist/guard/alternatives/registry.d.ts +16 -0
  65. package/dist/guard/alternatives/registry.d.ts.map +1 -0
  66. package/dist/guard/alternatives/registry.js +518 -0
  67. package/dist/guard/alternatives/registry.js.map +1 -0
  68. package/dist/guard/alternatives/types.d.ts +86 -0
  69. package/dist/guard/alternatives/types.d.ts.map +1 -0
  70. package/dist/guard/alternatives/types.js +5 -0
  71. package/dist/guard/alternatives/types.js.map +1 -0
  72. package/dist/guard/approval/enhanced-terminal.d.ts +110 -0
  73. package/dist/guard/approval/enhanced-terminal.d.ts.map +1 -0
  74. package/dist/guard/approval/enhanced-terminal.js +387 -0
  75. package/dist/guard/approval/enhanced-terminal.js.map +1 -0
  76. package/dist/guard/config.d.ts +80 -0
  77. package/dist/guard/config.d.ts.map +1 -0
  78. package/dist/guard/config.js +260 -0
  79. package/dist/guard/config.js.map +1 -0
  80. package/dist/guard/context/directory.d.ts +35 -0
  81. package/dist/guard/context/directory.d.ts.map +1 -0
  82. package/dist/guard/context/directory.js +243 -0
  83. package/dist/guard/context/directory.js.map +1 -0
  84. package/dist/guard/context/environment.d.ts +31 -0
  85. package/dist/guard/context/environment.d.ts.map +1 -0
  86. package/dist/guard/context/environment.js +204 -0
  87. package/dist/guard/context/environment.js.map +1 -0
  88. package/dist/guard/context/git.d.ts +52 -0
  89. package/dist/guard/context/git.d.ts.map +1 -0
  90. package/dist/guard/context/git.js +278 -0
  91. package/dist/guard/context/git.js.map +1 -0
  92. package/dist/guard/context/index.d.ts +64 -0
  93. package/dist/guard/context/index.d.ts.map +1 -0
  94. package/dist/guard/context/index.js +227 -0
  95. package/dist/guard/context/index.js.map +1 -0
  96. package/dist/guard/context/project.d.ts +47 -0
  97. package/dist/guard/context/project.d.ts.map +1 -0
  98. package/dist/guard/context/project.js +281 -0
  99. package/dist/guard/context/project.js.map +1 -0
  100. package/dist/guard/context/types.d.ts +152 -0
  101. package/dist/guard/context/types.d.ts.map +1 -0
  102. package/dist/guard/context/types.js +7 -0
  103. package/dist/guard/context/types.js.map +1 -0
  104. package/dist/guard/engine.d.ts +107 -0
  105. package/dist/guard/engine.d.ts.map +1 -0
  106. package/dist/guard/engine.js +430 -0
  107. package/dist/guard/engine.js.map +1 -0
  108. package/dist/guard/enhanced-engine.d.ts +151 -0
  109. package/dist/guard/enhanced-engine.d.ts.map +1 -0
  110. package/dist/guard/enhanced-engine.js +622 -0
  111. package/dist/guard/enhanced-engine.js.map +1 -0
  112. package/dist/guard/hooks/index.d.ts +50 -0
  113. package/dist/guard/hooks/index.d.ts.map +1 -0
  114. package/dist/guard/hooks/index.js +325 -0
  115. package/dist/guard/hooks/index.js.map +1 -0
  116. package/dist/guard/index.d.ts +29 -0
  117. package/dist/guard/index.d.ts.map +1 -0
  118. package/dist/guard/index.js +31 -0
  119. package/dist/guard/index.js.map +1 -0
  120. package/dist/guard/learning/index.d.ts +136 -0
  121. package/dist/guard/learning/index.d.ts.map +1 -0
  122. package/dist/guard/learning/index.js +314 -0
  123. package/dist/guard/learning/index.js.map +1 -0
  124. package/dist/guard/learning/pattern-extractor.d.ts +50 -0
  125. package/dist/guard/learning/pattern-extractor.d.ts.map +1 -0
  126. package/dist/guard/learning/pattern-extractor.js +372 -0
  127. package/dist/guard/learning/pattern-extractor.js.map +1 -0
  128. package/dist/guard/learning/rule-suggester.d.ts +67 -0
  129. package/dist/guard/learning/rule-suggester.d.ts.map +1 -0
  130. package/dist/guard/learning/rule-suggester.js +345 -0
  131. package/dist/guard/learning/rule-suggester.js.map +1 -0
  132. package/dist/guard/learning/types.d.ts +211 -0
  133. package/dist/guard/learning/types.d.ts.map +1 -0
  134. package/dist/guard/learning/types.js +18 -0
  135. package/dist/guard/learning/types.js.map +1 -0
  136. package/dist/guard/preview/effects.d.ts +15 -0
  137. package/dist/guard/preview/effects.d.ts.map +1 -0
  138. package/dist/guard/preview/effects.js +413 -0
  139. package/dist/guard/preview/effects.js.map +1 -0
  140. package/dist/guard/preview/index.d.ts +49 -0
  141. package/dist/guard/preview/index.d.ts.map +1 -0
  142. package/dist/guard/preview/index.js +196 -0
  143. package/dist/guard/preview/index.js.map +1 -0
  144. package/dist/guard/preview/parser.d.ts +34 -0
  145. package/dist/guard/preview/parser.d.ts.map +1 -0
  146. package/dist/guard/preview/parser.js +292 -0
  147. package/dist/guard/preview/parser.js.map +1 -0
  148. package/dist/guard/preview/types.d.ts +140 -0
  149. package/dist/guard/preview/types.d.ts.map +1 -0
  150. package/dist/guard/preview/types.js +5 -0
  151. package/dist/guard/preview/types.js.map +1 -0
  152. package/dist/guard/reversibility/index.d.ts +88 -0
  153. package/dist/guard/reversibility/index.d.ts.map +1 -0
  154. package/dist/guard/reversibility/index.js +310 -0
  155. package/dist/guard/reversibility/index.js.map +1 -0
  156. package/dist/guard/types.d.ts +192 -0
  157. package/dist/guard/types.d.ts.map +1 -0
  158. package/dist/guard/types.js +8 -0
  159. package/dist/guard/types.js.map +1 -0
  160. package/dist/index.d.ts +10 -0
  161. package/dist/index.d.ts.map +1 -1
  162. package/dist/index.js +24 -0
  163. package/dist/index.js.map +1 -1
  164. package/dist/orchestrator/manager.d.ts.map +1 -1
  165. package/dist/orchestrator/manager.js +6 -1
  166. package/dist/orchestrator/manager.js.map +1 -1
  167. package/dist/policy/engine.d.ts.map +1 -1
  168. package/dist/policy/engine.js +11 -3
  169. package/dist/policy/engine.js.map +1 -1
  170. package/dist/policy/parser.d.ts.map +1 -1
  171. package/dist/policy/parser.js +3 -0
  172. package/dist/policy/parser.js.map +1 -1
  173. package/dist/proxy/server.d.ts.map +1 -1
  174. package/dist/proxy/server.js +8 -6
  175. package/dist/proxy/server.js.map +1 -1
  176. package/dist/session/manager.d.ts +2 -2
  177. package/dist/session/manager.d.ts.map +1 -1
  178. package/dist/session/manager.js +106 -88
  179. package/dist/session/manager.js.map +1 -1
  180. package/dist/session/signing.d.ts +88 -0
  181. package/dist/session/signing.d.ts.map +1 -0
  182. package/dist/session/signing.js +166 -0
  183. package/dist/session/signing.js.map +1 -0
  184. package/dist/session/types.d.ts +2 -0
  185. package/dist/session/types.d.ts.map +1 -1
  186. package/dist/session/types.js.map +1 -1
  187. package/dist/utils/security-logger.d.ts +146 -0
  188. package/dist/utils/security-logger.d.ts.map +1 -0
  189. package/dist/utils/security-logger.js +222 -0
  190. package/dist/utils/security-logger.js.map +1 -0
  191. package/dist/wizard.d.ts.map +1 -1
  192. package/dist/wizard.js +7 -1
  193. package/dist/wizard.js.map +1 -1
  194. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/session/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,aAAa,IAAI,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAS7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD;;;GAGG;AACH,MAAM,UAAU;IACN,MAAM,GAAG,KAAK,CAAC;IACf,KAAK,GAAsB,EAAE,CAAC;IAEtC,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,OAAO;QACT,CAAC;QAED,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;QACT,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,oBAAoB;IACvB,MAAM,GAA8B,IAAI,GAAG,EAAE,CAAC;IAEtD,GAAG,CAAC,KAAmB;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,YAAY,CAAC,OAAwB;QACnC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAmB,EAAE,CAAC;QAEnC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,sBAAsB;YACtB,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC7C,SAAS;YACX,CAAC;YAED,oBAAoB;YACpB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpC,SAAS;YACX,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,EAAU;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,YAAY;QACV,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvB,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,kBAAkB,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEnE,MAAM,KAAK,GAAiB;YAC1B,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;YAC3D,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;SAChB,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,eAAe;YACf,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC7C,SAAS;YACX,CAAC;YAED,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC;YAErC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,kBAAkB,EAAE,CAAC;gBAC5D,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACR,KAAK,CAAe;IAC7B,aAAa,GAA0C,IAAI,CAAC;IACnD,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;IAC1C;;;;OAIG;IACc,cAAc,GAAG,IAAI,GAAG,EAAkD,CAAC;IAC3E,oBAAoB,GAAG,IAAI,CAAC;IAE7C;;;;;;OAMG;IACH,YACE,KAAoB,EACpB,YAAqB,IAAI,EACzB,kBAA0B,MAAM;QAEhC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,oBAAoB,EAAE,CAAC;QAEjD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC;oBACH,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;oBAC1B,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,mCAAmC;oBACnC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE;wBAC1B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,EAAE,eAAe,CAAC,CAAC;YAEpB,gDAAgD;YAChD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACrD,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACtD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,KAA8B;QACxC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;QAElF,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QAEvB,mBAAmB;QACnB,IAAI,SAAS,GAAgB,IAAI,CAAC;QAClC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YAC5B,2DAA2D;YAC3D,SAAS,GAAG,GAAG,CAAC;QAClB,CAAC;QACD,gDAAgD;QAEhD,oBAAoB;QACpB,IAAI,UAA8B,CAAC;QACnC,IAAI,IAAwB,CAAC;QAE7B,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,OAAO;gBACV,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,SAAS;gBACZ,UAAU,GAAG,OAAO,CAAC;gBACrB,MAAM;YACR,KAAK,QAAQ;gBACX,6BAA6B;gBAC7B,MAAM;QACV,CAAC;QAED,MAAM,KAAK,GAAiB;YAC1B,EAAE,EAAE,MAAM,EAAE;YACZ,SAAS,EAAE,GAAG;YACd,SAAS;YACT,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK;YACL,UAAU;YACV,IAAI;YACJ,SAAS;YACT,UAAU,EAAE,CAAC;YACb,iBAAiB;SAClB,CAAC;QAEF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEtB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,UAAU,CAAC,OAAwB,EAAE,SAAkB;QACrD,2EAA2E;QAC3E,iEAAiE;QACjE,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;oBAChE,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;oBACrG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC;gBACD,sDAAsD;gBACtD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEpD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAChD,CAAC;QAED,qDAAqD;QACrD,MAAM,aAAa,GAAiC;YAClD,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,CAAC;YACP,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,CAAC;SACV,CAAC;QAEF,sCAAsC;QACtC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAC1D,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC7C,qEAAqE;gBACrE,oDAAoD;gBACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;oBAC9C,4CAA4C;oBAC5C,SAAS;gBACX,CAAC;gBAED,+CAA+C;gBAC/C,MAAM,YAAY,GAAG,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAE7B,2DAA2D;gBAC3D,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnF,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,KAAmB,EACnB,OAAwB;QAExB,8DAA8D;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,KAAK,OAAO;gBACV,mCAAmC;gBACnC,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;oBAC3B,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAClD,CAAC;YAEJ,KAAK,MAAM;gBACT,uBAAuB;gBACvB,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC;YAErC,KAAK,SAAS;gBACZ,0BAA0B;gBAC1B,IAAI,CAAC,KAAK,CAAC,UAAU;oBAAE,OAAO,KAAK,CAAC;gBACpC,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAEnD,KAAK,QAAQ;gBACX,8CAA8C;gBAC9C,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,MAAc;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACtE,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAChC,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,eAAe;QACb,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CACzC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAmB;QAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,mBAAmB;QACnB,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAE9B,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,KAAK,OAAO;gBACV,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,MAAM;gBACT,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7B,MAAM;YACR,KAAK,SAAS;gBACZ,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,MAAM;QACV,CAAC;QAED,SAAS;QACT,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;gBAC7C,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,cAAc,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAED,QAAQ;QACR,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/session/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Session Grant Signing for Tollgate
3
+ *
4
+ * Provides HMAC-SHA256 signatures for session grants to detect
5
+ * unauthorized modification (anti-tampering).
6
+ *
7
+ * @module session/signing
8
+ */
9
+ import type { SessionGrant } from './types.js';
10
+ /**
11
+ * Configuration for session signing.
12
+ */
13
+ export interface SigningConfig {
14
+ /** Secret key for HMAC signing */
15
+ secret: string;
16
+ /** Algorithm to use (default: sha256) */
17
+ algorithm?: string;
18
+ }
19
+ /**
20
+ * Result of signature verification.
21
+ */
22
+ export interface VerificationResult {
23
+ /** Whether the signature is valid */
24
+ valid: boolean;
25
+ /** Reason if invalid */
26
+ reason?: string;
27
+ }
28
+ /**
29
+ * Compute HMAC-SHA256 signature for a session grant.
30
+ *
31
+ * The signature covers all security-critical fields:
32
+ * - id, server, scope, scopeValue, tool, expiresAt, createdAt
33
+ *
34
+ * @param grant - The session grant to sign
35
+ * @param secret - Secret key for HMAC
36
+ * @returns Hex-encoded signature
37
+ */
38
+ export declare function signSessionGrant(grant: SessionGrant, secret: string): string;
39
+ /**
40
+ * Verify the signature of a session grant.
41
+ *
42
+ * @param grant - The session grant to verify (must have signature field)
43
+ * @param secret - Secret key for HMAC
44
+ * @returns Verification result
45
+ */
46
+ export declare function verifySessionGrant(grant: SessionGrant, secret: string): VerificationResult;
47
+ /**
48
+ * Session signing manager with secret management.
49
+ */
50
+ export declare class SessionSigner {
51
+ private secret;
52
+ private enabled;
53
+ constructor(secret?: string, enabled?: boolean);
54
+ /**
55
+ * Generate a cryptographically secure secret.
56
+ */
57
+ private generateSecret;
58
+ /**
59
+ * Sign a session grant and return a new grant with signature.
60
+ */
61
+ sign(grant: SessionGrant): SessionGrant;
62
+ /**
63
+ * Verify a session grant's signature.
64
+ */
65
+ verify(grant: SessionGrant): VerificationResult;
66
+ /**
67
+ * Check if signing is enabled.
68
+ */
69
+ isEnabled(): boolean;
70
+ /**
71
+ * Rotate the signing secret.
72
+ * Existing grants will fail verification after rotation.
73
+ */
74
+ rotateSecret(): void;
75
+ }
76
+ /**
77
+ * Get or create the global session signer.
78
+ */
79
+ export declare function getSessionSigner(secret?: string): SessionSigner;
80
+ /**
81
+ * Configure the global session signer.
82
+ */
83
+ export declare function configureSessionSigner(secret: string, enabled?: boolean): void;
84
+ /**
85
+ * Reset the global session signer.
86
+ */
87
+ export declare function resetSessionSigner(): void;
88
+ //# sourceMappingURL=signing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing.d.ts","sourceRoot":"","sources":["../../src/session/signing.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO/C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IAEf,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,qCAAqC;IACrC,KAAK,EAAE,OAAO,CAAC;IAEf,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAS5E;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAiC1F;AAwBD;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAU;gBAEb,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc;IAKpD;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY;IAWvC;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,kBAAkB;IAQ/C;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,YAAY,IAAI,IAAI;CAIvB;AAQD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAK/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,IAAI,CAEpF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * Session Grant Signing for Tollgate
3
+ *
4
+ * Provides HMAC-SHA256 signatures for session grants to detect
5
+ * unauthorized modification (anti-tampering).
6
+ *
7
+ * @module session/signing
8
+ */
9
+ import { createHmac, randomBytes, timingSafeEqual } from 'node:crypto';
10
+ import { sessionLogger as logger } from '../utils/logger.js';
11
+ // =============================================================================
12
+ // Session Signing Implementation
13
+ // =============================================================================
14
+ /**
15
+ * Compute HMAC-SHA256 signature for a session grant.
16
+ *
17
+ * The signature covers all security-critical fields:
18
+ * - id, server, scope, scopeValue, tool, expiresAt, createdAt
19
+ *
20
+ * @param grant - The session grant to sign
21
+ * @param secret - Secret key for HMAC
22
+ * @returns Hex-encoded signature
23
+ */
24
+ export function signSessionGrant(grant, secret) {
25
+ if (!secret || secret.length < 16) {
26
+ throw new Error('Session signing secret must be at least 16 characters');
27
+ }
28
+ const data = buildSignatureData(grant);
29
+ const hmac = createHmac('sha256', secret);
30
+ hmac.update(data);
31
+ return hmac.digest('hex');
32
+ }
33
+ /**
34
+ * Verify the signature of a session grant.
35
+ *
36
+ * @param grant - The session grant to verify (must have signature field)
37
+ * @param secret - Secret key for HMAC
38
+ * @returns Verification result
39
+ */
40
+ export function verifySessionGrant(grant, secret) {
41
+ if (!grant.signature) {
42
+ return { valid: false, reason: 'No signature present' };
43
+ }
44
+ if (!secret || secret.length < 16) {
45
+ return { valid: false, reason: 'Invalid signing secret' };
46
+ }
47
+ try {
48
+ const expectedSignature = signSessionGrant(grant, secret);
49
+ // Use timing-safe comparison to prevent timing attacks
50
+ const sig1 = Buffer.from(grant.signature, 'hex');
51
+ const sig2 = Buffer.from(expectedSignature, 'hex');
52
+ if (sig1.length !== sig2.length) {
53
+ return { valid: false, reason: 'Signature length mismatch' };
54
+ }
55
+ if (!timingSafeEqual(sig1, sig2)) {
56
+ logger.warn('Session grant signature verification failed', {
57
+ grantId: grant.id,
58
+ server: grant.server,
59
+ });
60
+ return { valid: false, reason: 'Signature mismatch - possible tampering' };
61
+ }
62
+ return { valid: true };
63
+ }
64
+ catch (error) {
65
+ const message = error instanceof Error ? error.message : 'Unknown error';
66
+ return { valid: false, reason: `Verification error: ${message}` };
67
+ }
68
+ }
69
+ /**
70
+ * Build the data string for signature computation.
71
+ * Ensures deterministic ordering of fields.
72
+ */
73
+ function buildSignatureData(grant) {
74
+ const parts = [
75
+ `id:${grant.id}`,
76
+ `server:${grant.server}`,
77
+ `scope:${grant.scope}`,
78
+ `scopeValue:${grant.scopeValue ?? ''}`,
79
+ `tool:${grant.tool ?? ''}`,
80
+ `createdAt:${grant.createdAt.toISOString()}`,
81
+ `expiresAt:${grant.expiresAt?.toISOString() ?? 'null'}`,
82
+ `grantedBy:${grant.grantedBy}`,
83
+ ];
84
+ return parts.join('|');
85
+ }
86
+ // =============================================================================
87
+ // Signing Manager
88
+ // =============================================================================
89
+ /**
90
+ * Session signing manager with secret management.
91
+ */
92
+ export class SessionSigner {
93
+ secret;
94
+ enabled;
95
+ constructor(secret, enabled = true) {
96
+ this.secret = secret ?? this.generateSecret();
97
+ this.enabled = enabled;
98
+ }
99
+ /**
100
+ * Generate a cryptographically secure secret.
101
+ */
102
+ generateSecret() {
103
+ return randomBytes(32).toString('hex');
104
+ }
105
+ /**
106
+ * Sign a session grant and return a new grant with signature.
107
+ */
108
+ sign(grant) {
109
+ if (!this.enabled) {
110
+ return grant;
111
+ }
112
+ return {
113
+ ...grant,
114
+ signature: signSessionGrant(grant, this.secret),
115
+ };
116
+ }
117
+ /**
118
+ * Verify a session grant's signature.
119
+ */
120
+ verify(grant) {
121
+ if (!this.enabled) {
122
+ return { valid: true };
123
+ }
124
+ return verifySessionGrant(grant, this.secret);
125
+ }
126
+ /**
127
+ * Check if signing is enabled.
128
+ */
129
+ isEnabled() {
130
+ return this.enabled;
131
+ }
132
+ /**
133
+ * Rotate the signing secret.
134
+ * Existing grants will fail verification after rotation.
135
+ */
136
+ rotateSecret() {
137
+ this.secret = this.generateSecret();
138
+ logger.info('Session signing secret rotated');
139
+ }
140
+ }
141
+ // =============================================================================
142
+ // Global Signer Instance
143
+ // =============================================================================
144
+ let globalSigner = null;
145
+ /**
146
+ * Get or create the global session signer.
147
+ */
148
+ export function getSessionSigner(secret) {
149
+ if (!globalSigner) {
150
+ globalSigner = new SessionSigner(secret);
151
+ }
152
+ return globalSigner;
153
+ }
154
+ /**
155
+ * Configure the global session signer.
156
+ */
157
+ export function configureSessionSigner(secret, enabled = true) {
158
+ globalSigner = new SessionSigner(secret, enabled);
159
+ }
160
+ /**
161
+ * Reset the global session signer.
162
+ */
163
+ export function resetSessionSigner() {
164
+ globalSigner = null;
165
+ }
166
+ //# sourceMappingURL=signing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing.js","sourceRoot":"","sources":["../../src/session/signing.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,8 @@ export interface SessionGrant {
77
77
  usageCount: number;
78
78
  /** Original request that triggered this grant (for audit) */
79
79
  readonly originalRequestId?: string;
80
+ /** HMAC-SHA256 signature for tampering detection (added in v0.2.4) */
81
+ signature?: string;
80
82
  }
81
83
  /**
82
84
  * Input for creating a new session grant.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA0CH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAyB;IAC5D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,MAAM;YACT,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC;AAuHD;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAkC;IACnE,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,aAAa;IAC9B,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;IACtD,OAAO,EAAE,KAAK;CACf,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA0CH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAyB;IAC5D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,MAAM;YACT,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC;AA0HD;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAkC;IACnE,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,MAAM;IACpB,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,aAAa;IAC9B,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;IACtD,OAAO,EAAE,KAAK;CACf,CAAC"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Security Event Logger
3
+ *
4
+ * Provides structured logging for security-relevant events.
5
+ * Makes it easy to identify, filter, and alert on security issues.
6
+ *
7
+ * @module utils/security-logger
8
+ */
9
+ /**
10
+ * Types of security events.
11
+ */
12
+ export type SecurityEventType = 'prompt_injection' | 'ssrf_attempt' | 'credential_leak' | 'policy_bypass' | 'rate_limit_exceeded' | 'signature_mismatch' | 'audit_tampering' | 'privilege_escalation' | 'dangerous_command' | 'path_traversal';
13
+ /**
14
+ * Severity levels for security events.
15
+ */
16
+ export type SecuritySeverity = 'low' | 'medium' | 'high' | 'critical';
17
+ /**
18
+ * A structured security event.
19
+ */
20
+ export interface SecurityEvent {
21
+ /** Type of security event */
22
+ type: SecurityEventType;
23
+ /** Severity level */
24
+ severity: SecuritySeverity;
25
+ /** Human-readable message */
26
+ message: string;
27
+ /** Event timestamp */
28
+ timestamp: Date;
29
+ /** Context for the event */
30
+ context: SecurityEventContext;
31
+ /** Triggers that caused detection (patterns, rules, etc.) */
32
+ triggers?: string[];
33
+ /** Whether the event was blocked */
34
+ blocked: boolean;
35
+ /** Action taken */
36
+ action: 'blocked' | 'warned' | 'logged';
37
+ }
38
+ /**
39
+ * Context for a security event.
40
+ */
41
+ export interface SecurityEventContext {
42
+ /** MCP server name (if applicable) */
43
+ server?: string;
44
+ /** Tool name (if applicable) */
45
+ tool?: string;
46
+ /** Source of the event (analyzer, policy, etc.) */
47
+ source: string;
48
+ /** Request ID for correlation */
49
+ requestId?: string;
50
+ /** Additional metadata */
51
+ metadata?: Record<string, unknown>;
52
+ }
53
+ /**
54
+ * Options for the security logger.
55
+ */
56
+ export interface SecurityLoggerOptions {
57
+ /** Whether to log to console */
58
+ consoleOutput?: boolean;
59
+ /** Minimum severity to log */
60
+ minSeverity?: SecuritySeverity;
61
+ /** Custom event handler */
62
+ onEvent?: (event: SecurityEvent) => void;
63
+ }
64
+ /**
65
+ * Security event logger with structured output.
66
+ */
67
+ export declare class SecurityLogger {
68
+ private options;
69
+ private eventHistory;
70
+ private maxHistorySize;
71
+ constructor(options?: SecurityLoggerOptions);
72
+ /**
73
+ * Log a security event.
74
+ */
75
+ log(type: SecurityEventType, severity: SecuritySeverity, message: string, context: Omit<SecurityEventContext, 'source'> & {
76
+ source?: string;
77
+ }, options?: {
78
+ triggers?: string[];
79
+ blocked?: boolean;
80
+ action?: 'blocked' | 'warned' | 'logged';
81
+ }): SecurityEvent;
82
+ /**
83
+ * Log to console with structured format.
84
+ */
85
+ private logToConsole;
86
+ /**
87
+ * Log a prompt injection detection.
88
+ */
89
+ promptInjection(context: SecurityEventContext, triggers: string[], blocked?: boolean): SecurityEvent;
90
+ /**
91
+ * Log an SSRF attempt.
92
+ */
93
+ ssrfAttempt(context: SecurityEventContext, url: string, reason: string): SecurityEvent;
94
+ /**
95
+ * Log a credential leak detection.
96
+ */
97
+ credentialLeak(context: SecurityEventContext, credentialTypes: string[], redacted?: boolean): SecurityEvent;
98
+ /**
99
+ * Log a rate limit exceeded event.
100
+ */
101
+ rateLimitExceeded(context: SecurityEventContext, key: string, limit: number): SecurityEvent;
102
+ /**
103
+ * Log a signature mismatch (tampering detection).
104
+ */
105
+ signatureMismatch(context: SecurityEventContext, itemType: 'session' | 'webhook' | 'audit'): SecurityEvent;
106
+ /**
107
+ * Log a dangerous command attempt.
108
+ */
109
+ dangerousCommand(context: SecurityEventContext, command: string, reason: string): SecurityEvent;
110
+ /**
111
+ * Log a path traversal attempt.
112
+ */
113
+ pathTraversal(context: SecurityEventContext, path: string): SecurityEvent;
114
+ /**
115
+ * Get recent security events.
116
+ */
117
+ getRecentEvents(limit?: number, severity?: SecuritySeverity): SecurityEvent[];
118
+ /**
119
+ * Get event counts by type.
120
+ */
121
+ getEventCounts(): Record<SecurityEventType, number>;
122
+ /**
123
+ * Clear event history.
124
+ */
125
+ clearHistory(): void;
126
+ /**
127
+ * Sanitize sensitive data for logging.
128
+ */
129
+ private sanitize;
130
+ }
131
+ /**
132
+ * Get the global security logger instance.
133
+ */
134
+ export declare function getSecurityLogger(options?: SecurityLoggerOptions): SecurityLogger;
135
+ /**
136
+ * Reset the global security logger.
137
+ */
138
+ export declare function resetSecurityLogger(): void;
139
+ /**
140
+ * Log a security event using the global logger.
141
+ */
142
+ export declare function logSecurityEvent(type: SecurityEventType, severity: SecuritySeverity, message: string, context: SecurityEventContext, options?: {
143
+ triggers?: string[];
144
+ blocked?: boolean;
145
+ }): SecurityEvent;
146
+ //# sourceMappingURL=security-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security-logger.d.ts","sourceRoot":"","sources":["../../src/utils/security-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACvB,kBAAkB,GAClB,cAAc,GACd,iBAAiB,GACjB,eAAe,GACf,qBAAqB,GACrB,oBAAoB,GACpB,iBAAiB,GACjB,sBAAsB,GACtB,mBAAmB,GACnB,gBAAgB,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,6BAA6B;IAC7B,IAAI,EAAE,iBAAiB,CAAC;IAExB,qBAAqB;IACrB,QAAQ,EAAE,gBAAgB,CAAC;IAE3B,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,sBAAsB;IACtB,SAAS,EAAE,IAAI,CAAC;IAEhB,4BAA4B;IAC5B,OAAO,EAAE,oBAAoB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IAEjB,mBAAmB;IACnB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IAEf,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,gCAAgC;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAE/B,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC5C;AAkBD;;GAEG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,cAAc,CAAgB;gBAE1B,OAAO,GAAE,qBAA0B;IAQ/C;;OAEG;IACH,GAAG,CACC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EACnE,OAAO,GAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;KAAO,GACnG,aAAa;IAmChB;;OAEG;IACH,OAAO,CAAC,YAAY;IAgCpB;;OAEG;IACH,eAAe,CACX,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE,OAAc,GACxB,aAAa;IAUhB;;OAEG;IACH,WAAW,CACP,OAAO,EAAE,oBAAoB,EAC7B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACf,aAAa;IAUhB;;OAEG;IACH,cAAc,CACV,OAAO,EAAE,oBAAoB,EAC7B,eAAe,EAAE,MAAM,EAAE,EACzB,QAAQ,GAAE,OAAc,GACzB,aAAa;IAUhB;;OAEG;IACH,iBAAiB,CACb,OAAO,EAAE,oBAAoB,EAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACd,aAAa;IAUhB;;OAEG;IACH,iBAAiB,CACb,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAC1C,aAAa;IAUhB;;OAEG;IACH,gBAAgB,CACZ,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACf,aAAa;IAUhB;;OAEG;IACH,aAAa,CACT,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,MAAM,GACb,aAAa;IAchB;;OAEG;IACH,eAAe,CAAC,KAAK,GAAE,MAAY,EAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,aAAa,EAAE;IAWlF;;OAEG;IACH,cAAc,IAAI,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAUnD;;OAEG;IACH,YAAY,IAAI,IAAI;IAQpB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAkBnB;AAQD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAKjF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,oBAAoB,EAC7B,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GACrD,aAAa,CAEf"}