samlify 2.11.0 → 2.13.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 (83) hide show
  1. package/README.md +1 -1
  2. package/build/src/api.js +52 -3
  3. package/build/src/api.js.map +1 -1
  4. package/build/src/binding-post.js +236 -182
  5. package/build/src/binding-post.js.map +1 -1
  6. package/build/src/binding-redirect.js +303 -215
  7. package/build/src/binding-redirect.js.map +1 -1
  8. package/build/src/binding-simplesign.js +285 -137
  9. package/build/src/binding-simplesign.js.map +1 -1
  10. package/build/src/entity-idp.js +130 -47
  11. package/build/src/entity-idp.js.map +1 -1
  12. package/build/src/entity-sp.js +81 -39
  13. package/build/src/entity-sp.js.map +1 -1
  14. package/build/src/entity.js +100 -62
  15. package/build/src/entity.js.map +1 -1
  16. package/build/src/extractor.js +119 -155
  17. package/build/src/extractor.js.map +1 -1
  18. package/build/src/flow.js +100 -96
  19. package/build/src/flow.js.map +1 -1
  20. package/build/src/libsaml.js +318 -261
  21. package/build/src/libsaml.js.map +1 -1
  22. package/build/src/metadata-idp.js +60 -30
  23. package/build/src/metadata-idp.js.map +1 -1
  24. package/build/src/metadata-sp.js +51 -41
  25. package/build/src/metadata-sp.js.map +1 -1
  26. package/build/src/metadata.js +47 -43
  27. package/build/src/metadata.js.map +1 -1
  28. package/build/src/options.js +73 -0
  29. package/build/src/options.js.map +1 -0
  30. package/build/src/urn.js +28 -1
  31. package/build/src/urn.js.map +1 -1
  32. package/build/src/utility.js +165 -83
  33. package/build/src/utility.js.map +1 -1
  34. package/build/src/validator.js +27 -10
  35. package/build/src/validator.js.map +1 -1
  36. package/package.json +17 -7
  37. package/types/src/api.d.ts +33 -3
  38. package/types/src/binding-post.d.ts +67 -34
  39. package/types/src/binding-redirect.d.ts +58 -31
  40. package/types/src/binding-simplesign.d.ts +77 -21
  41. package/types/src/entity-idp.d.ts +40 -31
  42. package/types/src/entity-sp.d.ts +37 -27
  43. package/types/src/entity.d.ts +71 -77
  44. package/types/src/extractor.d.ts +31 -22
  45. package/types/src/flow.d.ts +24 -2
  46. package/types/src/libsaml.d.ts +172 -118
  47. package/types/src/metadata-idp.d.ts +27 -11
  48. package/types/src/metadata-sp.d.ts +29 -19
  49. package/types/src/metadata.d.ts +59 -34
  50. package/types/src/options.d.ts +37 -0
  51. package/types/src/types.d.ts +250 -24
  52. package/types/src/urn.d.ts +7 -0
  53. package/types/src/utility.d.ts +144 -89
  54. package/types/src/validator.d.ts +21 -0
  55. package/.circleci/config.yml +0 -98
  56. package/.editorconfig +0 -19
  57. package/.github/FUNDING.yml +0 -1
  58. package/.github/workflows/deploy-docs.yml +0 -56
  59. package/.pre-commit.sh +0 -15
  60. package/.snyk +0 -4
  61. package/Makefile +0 -25
  62. package/index.ts +0 -28
  63. package/src/api.ts +0 -36
  64. package/src/binding-post.ts +0 -336
  65. package/src/binding-redirect.ts +0 -335
  66. package/src/binding-simplesign.ts +0 -231
  67. package/src/entity-idp.ts +0 -145
  68. package/src/entity-sp.ts +0 -114
  69. package/src/entity.ts +0 -243
  70. package/src/extractor.ts +0 -399
  71. package/src/flow.ts +0 -469
  72. package/src/libsaml.ts +0 -777
  73. package/src/metadata-idp.ts +0 -146
  74. package/src/metadata-sp.ts +0 -203
  75. package/src/metadata.ts +0 -166
  76. package/src/types.ts +0 -127
  77. package/src/urn.ts +0 -210
  78. package/src/utility.ts +0 -231
  79. package/src/validator.ts +0 -44
  80. package/tsconfig.json +0 -41
  81. package/tslint.json +0 -35
  82. package/types.d.ts +0 -2
  83. package/vitest.config.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"binding-redirect.js","sourceRoot":"","sources":["../../src/binding-redirect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;EAIE;AACF,mDAAyC;AACzC,sDAAgC;AAIhC,uCAA2B;AAC3B,6BAA2C;AAE3C,IAAM,OAAO,GAAG,aAAO,CAAC,OAAO,CAAC;AAChC,IAAM,SAAS,GAAG,aAAO,CAAC,SAAS,CAAC;AAWpC;;;;;;;EAOE;AACF,SAAS,MAAM,CAAC,KAAa,EAAE,KAAa,EAAE,KAAe;IAC3D,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC;AAC5D,CAAC;AACD;;;;;;;;EAQE;AACF,SAAS,gBAAgB,CAAC,IAAyB;IAE/C,IAAA,OAAO,GAKL,IAAI,QALC,EACP,IAAI,GAIF,IAAI,KAJF,EACJ,QAAQ,GAGN,IAAI,SAHE,EACR,OAAO,GAEL,IAAI,QAFC,EACP,aAAa,GACX,IAAI,cADO,CACN;IACH,IAAA,KAAoB,IAAI,WAAT,EAAf,UAAU,mBAAG,EAAE,KAAA,CAAU;IAC/B,IAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC/D,IAAM,UAAU,GAAG,iBAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrD,8EAA8E;IAC9E,IAAM,WAAW,GAAG,kBAAkB,CAAC,iBAAO,CAAC,YAAY,CAAC,iBAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7F,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QACtB,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,IAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACrG,IAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;QACtD,OAAO,OAAO;cACV,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC;cACzC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAC9C,iBAAO,CAAC,yBAAyB,CAC/B,UAAU,GAAG,GAAG,GAAG,WAAW,EAC9B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,cAAc,EAC5B,SAAS,EACT,aAAa,CAAC,yBAAyB,CACxC,CAAC,QAAQ,EAAE,CACb,CACA,CAAC;IACN,CAAC;IACD,OAAO,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,WAAW,GAAG,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC;AACD;;;;;EAKE;AACF,SAAS,uBAAuB,CAAC,MAA4B,EAAE,oBAA2D;IAExH,IAAM,QAAQ,GAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IAC/E,IAAM,SAAS,GAAQ,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC;IAC/C,IAAI,EAAE,GAAW,EAAE,CAAC;IAEpB,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnE,IAAI,cAAc,SAAQ,CAAC;QAC3B,IAAI,SAAS,CAAC,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;YAC3D,IAAM,IAAI,GAAG,oBAAoB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YAClE,EAAE,GAAG,IAAA,aAAG,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,cAAc,GAAG,IAAA,aAAG,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC5C,qFAAqF;YACrF,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,IAAI,IAAI,SAAS,IAAI,cAAc,EAAE,CAAC;gBACjG,cAAc,GAAI,cAAsC,CAAC,OAAO,CAAC;YACnE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;YAC5C,IAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;YAC1F,EAAE,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;YAC5B,cAAc,GAAG,iBAAO,CAAC,kBAAkB,CAAC,iBAAO,CAAC,2BAA2B,CAAC,OAAO,EAAE;gBACvF,EAAE,EAAE,EAAE;gBACN,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;gBACjC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACtC,YAAY,EAAE,oBAAoB;gBAClC,2BAA2B,EAAE,QAAQ,CAAC,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC;gBAClF,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;gBACnC,WAAW,EAAE,SAAS,CAAC,WAAW;aAC5B,CAAC,CAAC;QACZ,CAAC;QACD,OAAO;YACL,EAAE,IAAA;YACF,OAAO,EAAE,gBAAgB,CAAC;gBACxB,OAAO,EAAE,cAAc;gBACvB,IAAI,EAAE,SAAS,CAAC,WAAW;gBAC3B,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,oBAAoB,EAAE;gBAC5C,aAAa,EAAE,SAAS;gBACxB,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,SAAS,CAAC,UAAU;aACjC,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;EAOE;AACF,SAAS,wBAAwB,CAAC,WAAgB,EAAE,MAAW,EAAE,IAAc,EAAE,UAAmB,EAAE,oBAA2D;IAAhG,qBAAA,EAAA,SAAc;IAC7E,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5C,IAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC;IAC1C,IAAM,QAAQ,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;QAC1B,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU;KACzB,CAAC;IAEF,IAAI,EAAE,GAAW,UAAU,CAAC,UAAU,EAAE,CAAC;IACzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvE,IAAI,eAAe,SAAQ,CAAC;QAC5B,EAAE;QACF,IAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC7C,IAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC1F,IAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,kEAAkE;QAClE,IAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,MAAO,CAAC,CAAC;QACnE,IAAM,MAAM,GAAQ;YAClB,EAAE,EAAE,EAAE;YACN,WAAW,EAAE,UAAU,CAAC,UAAU,EAAE;YACpC,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE;YAClC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;YACnC,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE;YACnC,2BAA2B,EAAE,IAAI;YACjC,UAAU,EAAE,eAAS,CAAC,UAAU,CAAC,OAAO;YACxC,oBAAoB;YACpB,mBAAmB,EAAE,OAAO,CAAC,WAAW,EAAE;YAC1C,sBAAsB,EAAE,oBAAoB,CAAC,WAAW,EAAE;YAC1D,mCAAmC,EAAE,oBAAoB,CAAC,WAAW,EAAE;YACvE,YAAY,EAAE,oBAAoB;YAClC,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACxB,YAAY,EAAE,IAAA,aAAG,EAAC,WAAW,EAAE,oBAAoB,EAAE,EAAE,CAAC;YACxD,cAAc,EAAE,EAAE;YAClB,kBAAkB,EAAE,EAAE;SACvB,CAAC;QAEF,IAAI,UAAU,CAAC,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;YAC7D,IAAM,QAAQ,GAAG,oBAAoB,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAChF,EAAE,GAAG,IAAA,aAAG,EAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/B,eAAe,GAAG,IAAA,aAAG,EAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YAEN,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,CAAC;YACD,eAAe,GAAG,iBAAO,CAAC,kBAAkB,CAAC,iBAAO,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrG,CAAC;QAEO,IAAA,UAAU,GAAoE,UAAU,WAA9E,EAAE,cAAc,GAAoD,UAAU,eAA9D,EAA6B,kBAAkB,GAAK,UAAU,0BAAf,CAAgB;QACjG,IAAM,MAAM,GAAG;YACb,UAAU,YAAA;YACV,cAAc,gBAAA;YACd,kBAAkB,oBAAA;YAClB,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC;YACvD,cAAc,EAAE,KAAK;SACtB,CAAC;QACF,0DAA0D;QAC1D,IAAI,QAAQ,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,CAAC;YACzC,eAAe,GAAG,iBAAO,CAAC,sBAAsB,uBAC3C,MAAM,KACT,cAAc,EAAE,eAAe,EAC/B,wBAAwB,EAAE,SAAS,CAAC,wBAAwB,EAC5D,iBAAiB,EAAE,2DAA2D,EAC9E,eAAe,EAAE;oBACf,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,EAAE,SAAS,EAAE,qFAAqF,EAAE,MAAM,EAAE,OAAO,EAAE;iBAChI,IACD,CAAC;QACL,CAAC;QAED,uDAAuD;QACvD,OAAO;YACL,EAAE,IAAA;YACF,OAAO,EAAE,gBAAgB,CAAC;gBACxB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,SAAS,CAAC,YAAY;gBAC5B,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,eAAe;gBACxB,aAAa,EAAE,UAAU;gBACzB,UAAU,YAAA;aACX,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;;EAME;AACF,SAAS,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAmB,EAAE,oBAAyE;IAC5I,IAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IACpF,IAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9C,IAAI,EAAE,GAAW,WAAW,CAAC,UAAU,EAAE,CAAC;IAC1C,IAAM,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;IAC9C,IAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAE1F,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACjD,IAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,cAAc,GAAW,EAAE,CAAC;QAChC,IAAM,YAAY,GAAG;YACnB,EAAE,EAAE,EAAE;YACN,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;YACrC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;YACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACtC,YAAY,EAAE,oBAAoB;YAClC,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC;QACF,IAAI,WAAW,CAAC,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;YAC9D,IAAM,IAAI,GAAG,oBAAoB,CAAC,WAAW,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;YACnF,EAAE,GAAG,IAAA,aAAG,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,cAAc,GAAG,IAAA,aAAG,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,iBAAO,CAAC,kBAAkB,CAAC,iBAAO,CAAC,4BAA4B,CAAC,OAAO,EAAE,YAAmB,CAAC,CAAC;QACjH,CAAC;QACD,OAAO;YACL,EAAE,IAAA;YACF,OAAO,EAAE,gBAAgB,CAAC;gBACxB,OAAO,EAAE,cAAc;gBACvB,UAAU,YAAA;gBACV,IAAI,EAAE,SAAS,CAAC,aAAa;gBAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,uBAAuB;gBAC7D,aAAa,EAAE,WAAW;gBAC1B,OAAO,EAAE,IAAI;aACd,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;AAC3E,CAAC;AACD;;;;;EAKE;AACF,SAAS,yBAAyB,CAAC,WAAgB,EAAE,MAAW,EAAE,UAAmB,EAAE,oBAA2D;IAChJ,IAAM,QAAQ,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;QAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;KACjC,CAAC;IACF,IAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9C,IAAI,EAAE,GAAW,WAAW,CAAC,UAAU,EAAE,CAAC;IAC1C,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACjD,IAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,eAAe,SAAQ,CAAC;QAC5B,IAAI,WAAW,CAAC,sBAAsB,IAAI,oBAAoB,EAAE,CAAC;YAC/D,IAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;YAC1E,EAAE,GAAG,IAAA,aAAG,EAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/B,eAAe,GAAG,IAAA,aAAG,EAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,IAAM,MAAM,GAAQ;gBAClB,EAAE,EAAE,EAAE;gBACN,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;gBACrC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACtC,UAAU,EAAE,eAAS,CAAC,UAAU,CAAC,OAAO;aACzC,CAAC;YACF,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtE,MAAM,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,CAAC;YACD,eAAe,GAAG,iBAAO,CAAC,kBAAkB,CAAC,iBAAO,CAAC,6BAA6B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtG,CAAC;QACD,OAAO;YACL,EAAE,IAAA;YACF,OAAO,EAAE,gBAAgB,CAAC;gBACxB,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,wBAAwB;gBAC9D,OAAO,EAAE,eAAe;gBACxB,aAAa,EAAE,WAAW;gBAC1B,UAAU,YAAA;aACX,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;AAC5E,CAAC;AAED,IAAM,eAAe,GAAG;IACtB,uBAAuB,yBAAA;IACvB,wBAAwB,0BAAA;IACxB,wBAAwB,0BAAA;IACxB,yBAAyB,2BAAA;CAC1B,CAAC;AAEF,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"binding-redirect.js","sourceRoot":"","sources":["../../src/binding-redirect.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  /**
3
- * @file binding-simplesign.ts
4
- * @author Orange
5
- * @desc Binding-level API, declare the functions using POST SimpleSign binding
6
- */
3
+ * @file binding-simplesign.ts
4
+ * @author Orange
5
+ * @desc Binding-level API for SAML HTTP-POST-SimpleSign. Produces base64
6
+ * payloads alongside a detached signature over the canonical octet string.
7
+ */
7
8
  var __assign = (this && this.__assign) || function () {
8
9
  __assign = Object.assign || function(t) {
9
10
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -94,24 +95,17 @@ var utility_1 = __importStar(require("./utility"));
94
95
  var binding = urn_1.wording.binding;
95
96
  var urlParams = urn_1.wording.urlParams;
96
97
  /**
97
- * @private
98
- * @desc Helper of generating URL param/value pair
99
- * @param {string} param key
100
- * @param {string} value value of key
101
- * @param {boolean} first determine whether the param is the starting one in order to add query header '?'
102
- * @return {string}
103
- */
98
+ * Build a `key=value` URL fragment prefixed with the correct separator.
99
+ */
104
100
  function pvPair(param, value, first) {
105
101
  return (first === true ? '?' : '&') + param + '=' + value;
106
102
  }
107
103
  /**
108
- * @private
109
- * @desc Refactored part of simple signature generation for login/logout request
110
- * @param {string} type
111
- * @param {string} rawSamlRequest
112
- * @param {object} entitySetting
113
- * @return {string}
114
- */
104
+ * Compute a detached RSA signature over a SimpleSign canonical octet string.
105
+ *
106
+ * @param opts signing inputs
107
+ * @returns base64-encoded signature
108
+ */
115
109
  function buildSimpleSignature(opts) {
116
110
  var type = opts.type, context = opts.context, entitySetting = opts.entitySetting;
117
111
  var _a = opts.relayState, relayState = _a === void 0 ? '' : _a;
@@ -124,70 +118,101 @@ function buildSimpleSignature(opts) {
124
118
  return libsaml_1.default.constructMessageSignature(queryParam + '=' + octetString, entitySetting.privateKey, entitySetting.privateKeyPass, undefined, entitySetting.requestSignatureAlgorithm).toString();
125
119
  }
126
120
  /**
127
- * @desc Generate a base64 encoded login request
128
- * @param {string} referenceTagXPath reference uri
129
- * @param {object} entity object includes both idp and sp
130
- * @param {function} customTagReplacement used when developers have their own login response template
131
- */
132
- function base64LoginRequest(entity, customTagReplacement) {
121
+ * Generate a base64-encoded AuthnRequest together with a detached simple
122
+ * signature when the IdP advertises `WantAuthnRequestsSigned`.
123
+ *
124
+ * @param entity `{ idp, sp }` handles
125
+ * @param customTagReplacement optional custom template transformer
126
+ * @param relayState per-request RelayState; falls back to `entitySetting.relayState`
127
+ * @param forceAuthn per-request `ForceAuthn` flag (saml-core §3.4.1)
128
+ * @param assertionConsumerServiceIndex per-request ACS index (saml-core §3.4.1).
129
+ * Mutually exclusive with `AssertionConsumerServiceURL` / `ProtocolBinding`;
130
+ * when supplied, both of those attributes are dropped from the rendered XML.
131
+ */
132
+ function base64LoginRequest(entity, customTagReplacement, relayState, forceAuthn, assertionConsumerServiceIndex) {
133
+ var _a, _b;
133
134
  var metadata = { idp: entity.idp.entityMeta, sp: entity.sp.entityMeta };
134
135
  var spSetting = entity.sp.entitySetting;
135
136
  var id = '';
136
- if (metadata && metadata.idp && metadata.sp) {
137
- var base = metadata.idp.getSingleSignOnService(binding.simpleSign);
138
- var rawSamlRequest = void 0;
139
- if (spSetting.loginRequestTemplate && customTagReplacement) {
140
- var info = customTagReplacement(spSetting.loginRequestTemplate.context);
141
- id = (0, utility_1.get)(info, 'id', null);
142
- rawSamlRequest = (0, utility_1.get)(info, 'context', null);
143
- }
144
- else {
145
- var nameIDFormat = spSetting.nameIDFormat;
146
- var selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
147
- id = spSetting.generateID();
148
- rawSamlRequest = libsaml_1.default.replaceTagsByValue(libsaml_1.default.defaultLoginRequestTemplate.context, {
149
- ID: id,
150
- Destination: base,
151
- Issuer: metadata.sp.getEntityID(),
152
- IssueInstant: new Date().toISOString(),
153
- AssertionConsumerServiceURL: metadata.sp.getAssertionConsumerService(binding.simpleSign),
154
- EntityID: metadata.sp.getEntityID(),
155
- AllowCreate: spSetting.allowCreate,
156
- NameIDFormat: selectedNameIDFormat
157
- });
158
- }
159
- var simpleSignatureContext = null;
160
- if (metadata.idp.isWantAuthnRequestsSigned()) {
161
- var simpleSignature = buildSimpleSignature({
162
- type: urlParams.samlRequest,
163
- context: rawSamlRequest,
164
- entitySetting: spSetting,
165
- relayState: spSetting.relayState,
166
- });
167
- simpleSignatureContext = {
168
- signature: simpleSignature,
169
- sigAlg: spSetting.requestSignatureAlgorithm,
170
- };
171
- }
172
- // No need to embeded XML signature
173
- return __assign({ id: id, context: utility_1.default.base64Encode(rawSamlRequest) }, simpleSignatureContext);
137
+ /* v8 ignore start */
138
+ if (!metadata.idp || !metadata.sp) {
139
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_REQUEST_MISSING_METADATA');
140
+ }
141
+ /* v8 ignore stop */
142
+ var base = metadata.idp.getSingleSignOnService(binding.simpleSign);
143
+ var rawSamlRequest;
144
+ if (customTagReplacement) {
145
+ // saml-binding-simplesign §2 — the AuthnRequest template is informative,
146
+ // not normative. Honour the callback regardless of whether the caller
147
+ // supplied a custom template (closes #549).
148
+ var templateContext = (_b = (_a = spSetting.loginRequestTemplate) === null || _a === void 0 ? void 0 : _a.context) !== null && _b !== void 0 ? _b : libsaml_1.default.defaultLoginRequestTemplate.context;
149
+ var info = customTagReplacement(templateContext);
150
+ id = (0, utility_1.get)(info, 'id');
151
+ rawSamlRequest = (0, utility_1.get)(info, 'context');
152
+ }
153
+ else {
154
+ var nameIDFormat = spSetting.nameIDFormat;
155
+ var selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
156
+ id = spSetting.generateID();
157
+ // saml-core §3.4.1 — `AssertionConsumerServiceIndex` is mutually
158
+ // exclusive with `AssertionConsumerServiceURL` / `ProtocolBinding`.
159
+ // When the caller supplies the index we set the URL+ProtocolBinding
160
+ // tags to undefined so `replaceTagsByValue` drops both attributes
161
+ // from the rendered XML (closes #437).
162
+ var useAcsIndex = assertionConsumerServiceIndex !== undefined;
163
+ var tags = {
164
+ ID: id,
165
+ Destination: base,
166
+ Issuer: metadata.sp.getEntityID(),
167
+ IssueInstant: new Date().toISOString(),
168
+ ProtocolBinding: useAcsIndex
169
+ ? undefined
170
+ : 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
171
+ AssertionConsumerServiceURL: useAcsIndex
172
+ ? undefined
173
+ : metadata.sp.getAssertionConsumerService(binding.simpleSign),
174
+ AssertionConsumerServiceIndex: assertionConsumerServiceIndex,
175
+ EntityID: metadata.sp.getEntityID(),
176
+ AllowCreate: spSetting.allowCreate,
177
+ NameIDFormat: selectedNameIDFormat,
178
+ // saml-core §3.4.1 — `replaceTagsByValue` drops the attribute when
179
+ // `forceAuthn` is undefined, matching `use="optional"`.
180
+ ForceAuthn: forceAuthn,
181
+ };
182
+ rawSamlRequest = libsaml_1.default.replaceTagsByValue(libsaml_1.default.defaultLoginRequestTemplate.context, tags);
174
183
  }
175
- throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_REQUEST_MISSING_METADATA');
184
+ var simpleSignatureContext = null;
185
+ if (metadata.idp.isWantAuthnRequestsSigned()) {
186
+ var simpleSignature = buildSimpleSignature({
187
+ type: urlParams.samlRequest,
188
+ context: rawSamlRequest,
189
+ entitySetting: spSetting,
190
+ relayState: relayState !== null && relayState !== void 0 ? relayState : spSetting.relayState,
191
+ });
192
+ simpleSignatureContext = {
193
+ signature: simpleSignature,
194
+ sigAlg: spSetting.requestSignatureAlgorithm,
195
+ };
196
+ }
197
+ return __assign({ id: id, context: utility_1.default.base64Encode(rawSamlRequest) }, (simpleSignatureContext !== null && simpleSignatureContext !== void 0 ? simpleSignatureContext : {}));
176
198
  }
177
199
  /**
178
- * @desc Generate a base64 encoded login response
179
- * @param {object} requestInfo corresponding request, used to obtain the id
180
- * @param {object} entity object includes both idp and sp
181
- * @param {object} user current logged user (e.g. req.user)
182
- * @param {string} relayState the relay state
183
- * @param {function} customTagReplacement used when developers have their own login response template
184
- */
200
+ * Generate a base64-encoded login response together with a detached simple
201
+ * signature. Login responses are always signed under this binding.
202
+ *
203
+ * @param requestInfo parsed request used to link `InResponseTo`
204
+ * @param entity `{ idp, sp }` handles
205
+ * @param user authenticated user
206
+ * @param relayState caller-supplied redirect URL
207
+ * @param customTagReplacement optional custom template transformer
208
+ */
185
209
  function base64LoginResponse() {
186
210
  return __awaiter(this, arguments, void 0, function (requestInfo, entity, user, relayState, customTagReplacement) {
187
- var idpSetting, spSetting, id, metadata, nameIDFormat, selectedNameIDFormat, base, rawSamlResponse, nowTime, fiveMinutesLaterTime, tvalue, template, privateKey, privateKeyPass, signatureAlgorithm, config, simpleSignature;
211
+ var idpSetting, spSetting, id, metadata, nameIDFormat, selectedNameIDFormat, base, rawSamlResponse, nowTime, fiveMinutesLaterTime, tvalue, templateContext, template, baseTemplate, privateKey, privateKeyPass, signatureAlgorithm, config, simpleSignature;
212
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
188
213
  if (requestInfo === void 0) { requestInfo = {}; }
189
214
  if (user === void 0) { user = {}; }
190
- return __generator(this, function (_a) {
215
+ return __generator(this, function (_k) {
191
216
  idpSetting = entity.idp.entitySetting;
192
217
  spSetting = entity.sp.entitySetting;
193
218
  id = idpSetting.generateID();
@@ -197,79 +222,202 @@ function base64LoginResponse() {
197
222
  };
198
223
  nameIDFormat = idpSetting.nameIDFormat;
199
224
  selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
200
- if (metadata && metadata.idp && metadata.sp) {
201
- base = metadata.sp.getAssertionConsumerService(binding.simpleSign);
202
- rawSamlResponse = void 0;
203
- nowTime = new Date();
204
- fiveMinutesLaterTime = new Date(nowTime.getTime() + 300000);
205
- tvalue = {
206
- ID: id,
207
- AssertionID: idpSetting.generateID(),
208
- Destination: base,
209
- Audience: metadata.sp.getEntityID(),
210
- EntityID: metadata.sp.getEntityID(),
211
- SubjectRecipient: base,
212
- Issuer: metadata.idp.getEntityID(),
213
- IssueInstant: nowTime.toISOString(),
214
- AssertionConsumerServiceURL: base,
215
- StatusCode: urn_1.StatusCode.Success,
216
- // can be customized
217
- ConditionsNotBefore: nowTime.toISOString(),
218
- ConditionsNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
219
- SubjectConfirmationDataNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
220
- NameIDFormat: selectedNameIDFormat,
221
- NameID: user.email || '',
222
- InResponseTo: (0, utility_1.get)(requestInfo, 'extract.request.id', ''),
223
- AuthnStatement: '',
224
- AttributeStatement: '',
225
- };
226
- if (idpSetting.loginResponseTemplate && customTagReplacement) {
227
- template = customTagReplacement(idpSetting.loginResponseTemplate.context);
228
- rawSamlResponse = (0, utility_1.get)(template, 'context', null);
229
- }
230
- else {
231
- if (requestInfo !== null) {
232
- tvalue.InResponseTo = requestInfo.extract.request.id;
233
- }
234
- rawSamlResponse = libsaml_1.default.replaceTagsByValue(libsaml_1.default.defaultLoginResponseTemplate.context, tvalue);
235
- }
236
- privateKey = idpSetting.privateKey, privateKeyPass = idpSetting.privateKeyPass, signatureAlgorithm = idpSetting.requestSignatureAlgorithm;
237
- config = {
238
- privateKey: privateKey,
239
- privateKeyPass: privateKeyPass,
240
- signatureAlgorithm: signatureAlgorithm,
241
- signingCert: metadata.idp.getX509Certificate('signing'),
242
- isBase64Output: false,
243
- };
244
- // step: sign assertion ? -> encrypted ? -> sign message ?
245
- if (metadata.sp.isWantAssertionsSigned()) {
246
- rawSamlResponse = libsaml_1.default.constructSAMLSignature(__assign(__assign({}, config), { rawSamlMessage: rawSamlResponse, transformationAlgorithms: spSetting.transformationAlgorithms, referenceTagXPath: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']", signatureConfig: {
247
- prefix: 'ds',
248
- location: { reference: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']/*[local-name(.)='Issuer']", action: 'after' },
249
- } }));
225
+ /* v8 ignore start */
226
+ if (!metadata.idp || !metadata.sp) {
227
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_RESPONSE_MISSING_METADATA');
228
+ }
229
+ base = metadata.sp.getAssertionConsumerService(binding.simpleSign);
230
+ nowTime = new Date();
231
+ fiveMinutesLaterTime = new Date(nowTime.getTime() + 300000);
232
+ tvalue = {
233
+ ID: id,
234
+ AssertionID: idpSetting.generateID(),
235
+ Destination: base,
236
+ Audience: metadata.sp.getEntityID(),
237
+ EntityID: metadata.sp.getEntityID(),
238
+ SubjectRecipient: base,
239
+ Issuer: metadata.idp.getEntityID(),
240
+ IssueInstant: nowTime.toISOString(),
241
+ AssertionConsumerServiceURL: base,
242
+ StatusCode: urn_1.StatusCode.Success,
243
+ ConditionsNotBefore: nowTime.toISOString(),
244
+ ConditionsNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
245
+ SubjectConfirmationDataNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
246
+ NameIDFormat: selectedNameIDFormat,
247
+ NameID: user.email || '',
248
+ InResponseTo: (0, utility_1.get)(requestInfo, 'extract.request.id', ''),
249
+ AuthnStatement: '',
250
+ AttributeStatement: '',
251
+ };
252
+ if (customTagReplacement) {
253
+ templateContext = (_e = (_b = (_a = idpSetting.loginResponseTemplate) === null || _a === void 0 ? void 0 : _a.context) !== null && _b !== void 0 ? _b : (_d = (_c = idpSetting.tagPrefixedDefaults) === null || _c === void 0 ? void 0 : _c.loginResponseTemplate) === null || _d === void 0 ? void 0 : _d.context) !== null && _e !== void 0 ? _e : libsaml_1.default.defaultLoginResponseTemplate.context;
254
+ template = customTagReplacement(templateContext);
255
+ rawSamlResponse = (0, utility_1.get)(template, 'context');
256
+ }
257
+ else {
258
+ if (requestInfo !== null && ((_f = requestInfo.extract) === null || _f === void 0 ? void 0 : _f.request)) {
259
+ tvalue.InResponseTo = requestInfo.extract.request.id;
250
260
  }
251
- simpleSignature = '';
252
- // like in post and redirect bindings, login response is always signed.
253
- simpleSignature = buildSimpleSignature({
254
- type: urlParams.samlResponse,
255
- context: rawSamlResponse,
256
- entitySetting: idpSetting,
257
- relayState: relayState,
258
- });
259
- return [2 /*return*/, Promise.resolve({
260
- id: id,
261
- context: utility_1.default.base64Encode(rawSamlResponse),
262
- signature: simpleSignature,
263
- sigAlg: idpSetting.requestSignatureAlgorithm,
264
- })];
261
+ baseTemplate = (_j = (_h = (_g = idpSetting.tagPrefixedDefaults) === null || _g === void 0 ? void 0 : _g.loginResponseTemplate) === null || _h === void 0 ? void 0 : _h.context) !== null && _j !== void 0 ? _j : libsaml_1.default.defaultLoginResponseTemplate.context;
262
+ rawSamlResponse = libsaml_1.default.replaceTagsByValue(baseTemplate, tvalue);
265
263
  }
266
- throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_RESPONSE_MISSING_METADATA');
264
+ privateKey = idpSetting.privateKey, privateKeyPass = idpSetting.privateKeyPass, signatureAlgorithm = idpSetting.requestSignatureAlgorithm;
265
+ config = {
266
+ privateKey: privateKey,
267
+ privateKeyPass: privateKeyPass,
268
+ signatureAlgorithm: signatureAlgorithm,
269
+ signingCert: metadata.idp.getX509Certificate('signing'),
270
+ isBase64Output: false,
271
+ };
272
+ if (metadata.sp.isWantAssertionsSigned()) {
273
+ rawSamlResponse = libsaml_1.default.constructSAMLSignature(__assign(__assign({}, config), { rawSamlMessage: rawSamlResponse, transformationAlgorithms: spSetting.transformationAlgorithms, referenceTagXPath: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']", signatureConfig: {
274
+ prefix: 'ds',
275
+ location: { reference: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']/*[local-name(.)='Issuer']", action: 'after' },
276
+ } }));
277
+ }
278
+ simpleSignature = buildSimpleSignature({
279
+ type: urlParams.samlResponse,
280
+ context: rawSamlResponse,
281
+ entitySetting: idpSetting,
282
+ relayState: relayState,
283
+ });
284
+ return [2 /*return*/, Promise.resolve({
285
+ id: id,
286
+ context: utility_1.default.base64Encode(rawSamlResponse),
287
+ signature: simpleSignature,
288
+ sigAlg: idpSetting.requestSignatureAlgorithm,
289
+ })];
267
290
  });
268
291
  });
269
292
  }
293
+ /**
294
+ * Generate a base64-encoded LogoutRequest together with a detached simple
295
+ * signature when the receiving entity requires signed logout requests.
296
+ *
297
+ * @param user currently authenticated user
298
+ * @param entity `{ init, target }` handles
299
+ * @param relayState caller-supplied redirect URL
300
+ * @param customTagReplacement optional custom template transformer
301
+ */
302
+ function base64LogoutRequest(user, entity, relayState, customTagReplacement) {
303
+ var _a, _b, _c, _d, _e, _f, _g, _h;
304
+ var metadata = { init: entity.init.entityMeta, target: entity.target.entityMeta };
305
+ var initSetting = entity.init.entitySetting;
306
+ var nameIDFormat = initSetting.nameIDFormat;
307
+ var selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
308
+ var id = '';
309
+ /* v8 ignore start */
310
+ if (!metadata.init || !metadata.target) {
311
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGOUT_REQUEST_MISSING_METADATA');
312
+ }
313
+ /* v8 ignore stop */
314
+ var rawSamlRequest;
315
+ if (customTagReplacement) {
316
+ // saml-binding-simplesign §2 — honour the callback even when the
317
+ // caller did not override `logoutRequestTemplate` (closes #549).
318
+ // Prefer the user-supplied template, then the tag-prefixed default
319
+ // (closes #388), and finally the library default.
320
+ var templateContext = (_e = (_b = (_a = initSetting.logoutRequestTemplate) === null || _a === void 0 ? void 0 : _a.context) !== null && _b !== void 0 ? _b : (_d = (_c = initSetting.tagPrefixedDefaults) === null || _c === void 0 ? void 0 : _c.logoutRequestTemplate) === null || _d === void 0 ? void 0 : _d.context) !== null && _e !== void 0 ? _e : libsaml_1.default.defaultLogoutRequestTemplate.context;
321
+ var template = customTagReplacement(templateContext);
322
+ id = (0, utility_1.get)(template, 'id');
323
+ rawSamlRequest = (0, utility_1.get)(template, 'context');
324
+ }
325
+ else {
326
+ id = initSetting.generateID();
327
+ var tvalue = {
328
+ ID: id,
329
+ Destination: metadata.target.getSingleLogoutService(binding.simpleSign),
330
+ Issuer: metadata.init.getEntityID(),
331
+ IssueInstant: new Date().toISOString(),
332
+ EntityID: metadata.init.getEntityID(),
333
+ NameIDFormat: selectedNameIDFormat,
334
+ NameID: user.logoutNameID,
335
+ // saml-core §3.7.1 — SessionIndex is optional; replaceTagsByValue
336
+ // drops the element when undefined (closes #470).
337
+ SessionIndex: user.sessionIndex,
338
+ };
339
+ var baseTemplate = (_h = (_g = (_f = initSetting.tagPrefixedDefaults) === null || _f === void 0 ? void 0 : _f.logoutRequestTemplate) === null || _g === void 0 ? void 0 : _g.context) !== null && _h !== void 0 ? _h : libsaml_1.default.defaultLogoutRequestTemplate.context;
340
+ rawSamlRequest = libsaml_1.default.replaceTagsByValue(baseTemplate, tvalue);
341
+ }
342
+ var simpleSignatureContext = null;
343
+ if (entity.target.entitySetting.wantLogoutRequestSigned) {
344
+ var simpleSignature = buildSimpleSignature({
345
+ type: urlParams.logoutRequest,
346
+ context: rawSamlRequest,
347
+ entitySetting: initSetting,
348
+ relayState: relayState,
349
+ });
350
+ simpleSignatureContext = {
351
+ signature: simpleSignature,
352
+ sigAlg: initSetting.requestSignatureAlgorithm,
353
+ };
354
+ }
355
+ return __assign({ id: id, context: utility_1.default.base64Encode(rawSamlRequest) }, (simpleSignatureContext !== null && simpleSignatureContext !== void 0 ? simpleSignatureContext : {}));
356
+ }
357
+ /**
358
+ * Generate a base64-encoded LogoutResponse together with a detached simple
359
+ * signature when the receiving entity requires signed logout responses.
360
+ *
361
+ * @param requestInfo parsed request used to link `InResponseTo`
362
+ * @param entity `{ init, target }` handles
363
+ * @param relayState caller-supplied redirect URL
364
+ * @param customTagReplacement optional custom template transformer
365
+ */
366
+ function base64LogoutResponse(requestInfo, entity, relayState, customTagReplacement) {
367
+ var _a, _b, _c, _d, _e, _f, _g, _h;
368
+ var metadata = { init: entity.init.entityMeta, target: entity.target.entityMeta };
369
+ var initSetting = entity.init.entitySetting;
370
+ var id = '';
371
+ /* v8 ignore start */
372
+ if (!metadata.init || !metadata.target) {
373
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGOUT_RESPONSE_MISSING_METADATA');
374
+ }
375
+ /* v8 ignore stop */
376
+ var rawSamlResponse;
377
+ if (customTagReplacement) {
378
+ // saml-binding-simplesign §2 — honour the callback even when the
379
+ // caller did not override `logoutResponseTemplate` (closes #549).
380
+ // Prefer the user-supplied template, then the tag-prefixed default
381
+ // (closes #388), and finally the library default.
382
+ var templateContext = (_e = (_b = (_a = initSetting.logoutResponseTemplate) === null || _a === void 0 ? void 0 : _a.context) !== null && _b !== void 0 ? _b : (_d = (_c = initSetting.tagPrefixedDefaults) === null || _c === void 0 ? void 0 : _c.logoutResponseTemplate) === null || _d === void 0 ? void 0 : _d.context) !== null && _e !== void 0 ? _e : libsaml_1.default.defaultLogoutResponseTemplate.context;
383
+ var template = customTagReplacement(templateContext);
384
+ id = template.id;
385
+ rawSamlResponse = template.context;
386
+ }
387
+ else {
388
+ id = initSetting.generateID();
389
+ var tvalue = {
390
+ ID: id,
391
+ Destination: metadata.target.getSingleLogoutService(binding.simpleSign),
392
+ EntityID: metadata.init.getEntityID(),
393
+ Issuer: metadata.init.getEntityID(),
394
+ IssueInstant: new Date().toISOString(),
395
+ StatusCode: urn_1.StatusCode.Success,
396
+ InResponseTo: (0, utility_1.get)(requestInfo, 'extract.request.id'),
397
+ };
398
+ var baseTemplate = (_h = (_g = (_f = initSetting.tagPrefixedDefaults) === null || _f === void 0 ? void 0 : _f.logoutResponseTemplate) === null || _g === void 0 ? void 0 : _g.context) !== null && _h !== void 0 ? _h : libsaml_1.default.defaultLogoutResponseTemplate.context;
399
+ rawSamlResponse = libsaml_1.default.replaceTagsByValue(baseTemplate, tvalue);
400
+ }
401
+ var simpleSignatureContext = null;
402
+ if (entity.target.entitySetting.wantLogoutResponseSigned) {
403
+ var simpleSignature = buildSimpleSignature({
404
+ type: urlParams.logoutResponse,
405
+ context: rawSamlResponse,
406
+ entitySetting: initSetting,
407
+ relayState: relayState,
408
+ });
409
+ simpleSignatureContext = {
410
+ signature: simpleSignature,
411
+ sigAlg: initSetting.requestSignatureAlgorithm,
412
+ };
413
+ }
414
+ return __assign({ id: id, context: utility_1.default.base64Encode(rawSamlResponse) }, (simpleSignatureContext !== null && simpleSignatureContext !== void 0 ? simpleSignatureContext : {}));
415
+ }
270
416
  var simpleSignBinding = {
271
417
  base64LoginRequest: base64LoginRequest,
272
418
  base64LoginResponse: base64LoginResponse,
419
+ base64LogoutRequest: base64LogoutRequest,
420
+ base64LogoutResponse: base64LogoutResponse,
273
421
  };
274
422
  exports.default = simpleSignBinding;
275
423
  //# sourceMappingURL=binding-simplesign.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"binding-simplesign.js","sourceRoot":"","sources":["../../src/binding-simplesign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding-simplesign.js","sourceRoot":"","sources":["../../src/binding-simplesign.ts"],"names":[],"mappings":"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"}