samlesa 2.13.0 → 2.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of samlesa might be problematic. Click here for more details.

Files changed (149) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +36 -65
  3. package/build/.idea/deployment.xml +14 -0
  4. package/{src → build}/.idea/modules.xml +1 -1
  5. package/build/.idea/workspace.xml +57 -0
  6. package/build/index.js +18 -54
  7. package/build/index.js.map +1 -1
  8. package/build/src/api.js +18 -24
  9. package/build/src/api.js.map +1 -1
  10. package/build/src/binding-post.js +337 -365
  11. package/build/src/binding-post.js.map +1 -1
  12. package/build/src/binding-redirect.js +312 -340
  13. package/build/src/binding-redirect.js.map +1 -1
  14. package/build/src/binding-simplesign.js +201 -229
  15. package/build/src/binding-simplesign.js.map +1 -1
  16. package/build/src/entity-idp.js +119 -127
  17. package/build/src/entity-idp.js.map +1 -1
  18. package/build/src/entity-sp.js +88 -96
  19. package/build/src/entity-sp.js.map +1 -1
  20. package/build/src/entity.js +193 -225
  21. package/build/src/entity.js.map +1 -1
  22. package/build/src/extractor.js +361 -369
  23. package/build/src/extractor.js.map +1 -1
  24. package/build/src/flow.js +313 -320
  25. package/build/src/flow.js.map +1 -1
  26. package/build/src/libsaml.js +693 -721
  27. package/build/src/libsaml.js.map +1 -1
  28. package/build/src/metadata-idp.js +119 -127
  29. package/build/src/metadata-idp.js.map +1 -1
  30. package/build/src/metadata-sp.js +223 -231
  31. package/build/src/metadata-sp.js.map +1 -1
  32. package/build/src/metadata.js +138 -166
  33. package/build/src/metadata.js.map +1 -1
  34. package/build/src/types.js +4 -11
  35. package/build/src/types.js.map +1 -1
  36. package/build/src/urn.js +204 -212
  37. package/build/src/urn.js.map +1 -1
  38. package/build/src/utility.js +277 -292
  39. package/build/src/utility.js.map +1 -1
  40. package/build/src/validator.js +24 -27
  41. package/build/src/validator.js.map +1 -1
  42. package/package.json +19 -14
  43. package/types/api.d.ts +15 -0
  44. package/types/api.d.ts.map +1 -0
  45. package/types/binding-post.d.ts +48 -0
  46. package/types/binding-post.d.ts.map +1 -0
  47. package/types/binding-redirect.d.ts +54 -0
  48. package/types/binding-redirect.d.ts.map +1 -0
  49. package/types/binding-simplesign.d.ts +41 -0
  50. package/types/binding-simplesign.d.ts.map +1 -0
  51. package/types/entity-idp.d.ts +38 -0
  52. package/types/entity-idp.d.ts.map +1 -0
  53. package/types/entity-sp.d.ts +38 -0
  54. package/types/entity-sp.d.ts.map +1 -0
  55. package/types/entity.d.ts +100 -0
  56. package/types/entity.d.ts.map +1 -0
  57. package/types/extractor.d.ts +26 -0
  58. package/types/extractor.d.ts.map +1 -0
  59. package/types/flow.d.ts +7 -0
  60. package/types/flow.d.ts.map +1 -0
  61. package/types/index.d.ts +11 -10
  62. package/types/index.d.ts.map +1 -0
  63. package/types/libsaml.d.ts +208 -0
  64. package/types/libsaml.d.ts.map +1 -0
  65. package/types/metadata-idp.d.ts +25 -0
  66. package/types/metadata-idp.d.ts.map +1 -0
  67. package/types/metadata-sp.d.ts +37 -0
  68. package/types/metadata-sp.d.ts.map +1 -0
  69. package/types/metadata.d.ts +58 -0
  70. package/types/metadata.d.ts.map +1 -0
  71. package/types/src/api.d.ts +15 -13
  72. package/types/src/api.d.ts.map +1 -0
  73. package/types/src/binding-post.d.ts +48 -47
  74. package/types/src/binding-post.d.ts.map +1 -0
  75. package/types/src/binding-redirect.d.ts +54 -53
  76. package/types/src/binding-redirect.d.ts.map +1 -0
  77. package/types/src/binding-simplesign.d.ts +41 -40
  78. package/types/src/binding-simplesign.d.ts.map +1 -0
  79. package/types/src/entity-idp.d.ts +38 -37
  80. package/types/src/entity-idp.d.ts.map +1 -0
  81. package/types/src/entity-sp.d.ts +38 -36
  82. package/types/src/entity-sp.d.ts.map +1 -0
  83. package/types/src/entity.d.ts +100 -101
  84. package/types/src/entity.d.ts.map +1 -0
  85. package/types/src/extractor.d.ts +26 -25
  86. package/types/src/extractor.d.ts.map +1 -0
  87. package/types/src/flow.d.ts +7 -6
  88. package/types/src/flow.d.ts.map +1 -0
  89. package/types/src/libsaml.d.ts +208 -209
  90. package/types/src/libsaml.d.ts.map +1 -0
  91. package/types/src/metadata-idp.d.ts +25 -24
  92. package/types/src/metadata-idp.d.ts.map +1 -0
  93. package/types/src/metadata-sp.d.ts +37 -36
  94. package/types/src/metadata-sp.d.ts.map +1 -0
  95. package/types/src/metadata.d.ts +58 -59
  96. package/types/src/metadata.d.ts.map +1 -0
  97. package/types/src/types.d.ts +128 -129
  98. package/types/src/types.d.ts.map +1 -0
  99. package/types/src/urn.d.ts +195 -194
  100. package/types/src/urn.d.ts.map +1 -0
  101. package/types/src/utility.d.ts +133 -134
  102. package/types/src/utility.d.ts.map +1 -0
  103. package/types/src/validator.d.ts +4 -3
  104. package/types/src/validator.d.ts.map +1 -0
  105. package/types/types.d.ts +128 -0
  106. package/types/types.d.ts.map +1 -0
  107. package/types/urn.d.ts +195 -0
  108. package/types/urn.d.ts.map +1 -0
  109. package/types/utility.d.ts +133 -0
  110. package/types/utility.d.ts.map +1 -0
  111. package/types/validator.d.ts +4 -0
  112. package/types/validator.d.ts.map +1 -0
  113. package/.editorconfig +0 -19
  114. package/.github/FUNDING.yml +0 -1
  115. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  116. package/.idea/modules.xml +0 -8
  117. package/.idea/vcs.xml +0 -6
  118. package/.pre-commit.sh +0 -15
  119. package/.snyk +0 -8
  120. package/.travis.yml +0 -29
  121. package/Makefile +0 -25
  122. package/index.d.ts +0 -10
  123. package/index.js +0 -19
  124. package/index.js.map +0 -1
  125. package/index.ts +0 -28
  126. package/qodana.yaml +0 -29
  127. package/src/.idea/src.iml +0 -12
  128. package/src/.idea/vcs.xml +0 -6
  129. package/src/api.ts +0 -36
  130. package/src/binding-post.ts +0 -348
  131. package/src/binding-redirect.ts +0 -356
  132. package/src/binding-simplesign.ts +0 -238
  133. package/src/entity-idp.ts +0 -153
  134. package/src/entity-sp.ts +0 -114
  135. package/src/entity.ts +0 -243
  136. package/src/extractor.ts +0 -392
  137. package/src/flow.ts +0 -467
  138. package/src/libsaml.ts +0 -895
  139. package/src/metadata-idp.ts +0 -146
  140. package/src/metadata-sp.ts +0 -268
  141. package/src/metadata.ts +0 -166
  142. package/src/types.ts +0 -153
  143. package/src/urn.ts +0 -211
  144. package/src/utility.ts +0 -319
  145. package/src/validator.ts +0 -39
  146. package/tsconfig.json +0 -38
  147. package/tslint.json +0 -35
  148. package/types.d.ts +0 -2
  149. /package/{.idea/samlify.iml → build/.idea/build.iml} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"binding-redirect.js","sourceRoot":"","sources":["../../src/binding-redirect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding-redirect.js","sourceRoot":"","sources":["../../src/binding-redirect.ts"],"names":[],"mappings":"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"}
@@ -1,230 +1,202 @@
1
- "use strict";
2
- /**
3
- * @file binding-simplesign.ts
4
- * @author Orange
5
- * @desc Binding-level API, declare the functions using POST SimpleSign binding
6
- */
7
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
- if (k2 === undefined) k2 = k;
9
- var desc = Object.getOwnPropertyDescriptor(m, k);
10
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
- desc = { enumerable: true, get: function() { return m[k]; } };
12
- }
13
- Object.defineProperty(o, k2, desc);
14
- }) : (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- o[k2] = m[k];
17
- }));
18
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
- Object.defineProperty(o, "default", { enumerable: true, value: v });
20
- }) : function(o, v) {
21
- o["default"] = v;
22
- });
23
- var __importStar = (this && this.__importStar) || function (mod) {
24
- if (mod && mod.__esModule) return mod;
25
- var result = {};
26
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
27
- __setModuleDefault(result, mod);
28
- return result;
29
- };
30
- var __importDefault = (this && this.__importDefault) || function (mod) {
31
- return (mod && mod.__esModule) ? mod : { "default": mod };
32
- };
33
- Object.defineProperty(exports, "__esModule", { value: true });
34
- const urn_js_1 = require("./urn.js");
35
- const libsaml_js_1 = __importDefault(require("./libsaml.js"));
36
- const utility_js_1 = __importStar(require("./utility.js"));
37
- const binding = urn_js_1.wording.binding;
38
- const urlParams = urn_js_1.wording.urlParams;
39
- /**
40
- * @private
41
- * @desc Helper of generating URL param/value pair
42
- * @param {string} param key
43
- * @param {string} value value of key
44
- * @param {boolean} first determine whether the param is the starting one in order to add query header '?'
45
- * @return {string}
46
- */
47
- function pvPair(param, value, first) {
48
- return (first === true ? '?' : '&') + param + '=' + value;
49
- }
50
- /**
51
- * @private
52
- * @desc Refactored part of simple signature generation for login/logout request
53
- * @param {string} type
54
- * @param {string} rawSamlRequest
55
- * @param {object} entitySetting
56
- * @return {string}
57
- */
58
- function buildSimpleSignature(opts) {
59
- const { type, context, entitySetting, } = opts;
60
- let { relayState = '' } = opts;
61
- const queryParam = libsaml_js_1.default.getQueryParamByType(type);
62
- if (relayState !== '') {
63
- relayState = pvPair(urlParams.relayState, relayState);
64
- }
65
- const sigAlg = pvPair(urlParams.sigAlg, entitySetting.requestSignatureAlgorithm);
66
- const octetString = context + relayState + sigAlg;
67
- return libsaml_js_1.default.constructMessageSignature(queryParam + '=' + octetString, entitySetting.privateKey, entitySetting.privateKeyPass, undefined, entitySetting.requestSignatureAlgorithm).toString();
68
- }
69
- /**
70
- * @desc Generate a base64 encoded login request
71
- * @param {string} referenceTagXPath reference uri
72
- * @param {object} entity object includes both idp and sp
73
- * @param {function} customTagReplacement used when developers have their own login response template
74
- */
75
- function base64LoginRequest(entity, customTagReplacement) {
76
- const metadata = { idp: entity.idp.entityMeta, sp: entity.sp.entityMeta };
77
- const spSetting = entity.sp.entitySetting;
78
- let id = '';
79
- if (metadata && metadata.idp && metadata.sp) {
80
- const base = metadata.idp.getSingleSignOnService(binding.simpleSign);
81
- let rawSamlRequest;
82
- if (spSetting.loginRequestTemplate && customTagReplacement) {
83
- const info = customTagReplacement(spSetting.loginRequestTemplate.context);
84
- id = (0, utility_js_1.get)(info, 'id', null);
85
- rawSamlRequest = (0, utility_js_1.get)(info, 'context', null);
86
- }
87
- else {
88
- const nameIDFormat = spSetting.nameIDFormat;
89
- const selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
90
- id = spSetting.generateID();
91
- rawSamlRequest = libsaml_js_1.default.replaceTagsByValue(libsaml_js_1.default.defaultLoginRequestTemplate.context, {
92
- ID: id,
93
- Destination: base,
94
- Issuer: metadata.sp.getEntityID(),
95
- IssueInstant: new Date().toISOString(),
96
- AssertionConsumerServiceURL: metadata.sp.getAssertionConsumerService(binding.simpleSign),
97
- EntityID: metadata.sp.getEntityID(),
98
- AllowCreate: spSetting.allowCreate,
99
- NameIDFormat: selectedNameIDFormat
100
- });
101
- }
102
- let simpleSignatureContext = null;
103
- if (metadata.idp.isWantAuthnRequestsSigned()) {
104
- const simpleSignature = buildSimpleSignature({
105
- type: urlParams.samlRequest,
106
- context: rawSamlRequest,
107
- entitySetting: spSetting,
108
- relayState: spSetting.relayState,
109
- });
110
- simpleSignatureContext = {
111
- signature: simpleSignature,
112
- sigAlg: spSetting.requestSignatureAlgorithm,
113
- };
114
- }
115
- // No need to embeded XML signature
116
- return {
117
- id,
118
- context: utility_js_1.default.base64Encode(rawSamlRequest),
119
- ...simpleSignatureContext,
120
- };
121
- }
122
- throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_REQUEST_MISSING_METADATA');
123
- }
124
- /**
125
- * @desc Generate a base64 encoded login response
126
- * @param {object} requestInfo corresponding request, used to obtain the id
127
- * @param {object} entity object includes both idp and sp
128
- * @param {object} user current logged user (e.g. req.user)
129
- * @param {string} relayState the relay state
130
- * @param {function} customTagReplacement used when developers have their own login response template
131
- * @param AttributeStatement
132
- */
133
- async function base64LoginResponse(requestInfo = {}, entity, user = {}, relayState, customTagReplacement, AttributeStatement = []) {
134
- const idpSetting = entity.idp.entitySetting;
135
- const spSetting = entity.sp.entitySetting;
136
- const id = idpSetting.generateID();
137
- const metadata = {
138
- idp: entity.idp.entityMeta,
139
- sp: entity.sp.entityMeta,
140
- };
141
- const nameIDFormat = idpSetting.nameIDFormat;
142
- const selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
143
- if (metadata && metadata.idp && metadata.sp) {
144
- const base = metadata.sp.getAssertionConsumerService(binding.simpleSign);
145
- let rawSamlResponse;
146
- const nowTime = new Date();
147
- // Five minutes later : nowtime + 5 * 60 * 1000 (in milliseconds)
148
- const fiveMinutesLaterTime = new Date(nowTime.getTime() + 300_000);
149
- const now = nowTime.toISOString();
150
- console.log(`现在是北京时间:${nowTime.toLocaleString()}`);
151
- const sessionIndex = 'session' + idpSetting.generateID(); // 这个是当前系统的会话索引,用于单点注销
152
- const tenHoursLaterTime = new Date(nowTime.getTime());
153
- tenHoursLaterTime.setHours(tenHoursLaterTime.getHours() + 10);
154
- const tenHoursLater = tenHoursLaterTime.toISOString();
155
- const tvalue = {
156
- ID: id,
157
- AssertionID: idpSetting.generateID(),
158
- Destination: base,
159
- Audience: metadata.sp.getEntityID(),
160
- EntityID: metadata.sp.getEntityID(),
161
- SubjectRecipient: base,
162
- Issuer: metadata.idp.getEntityID(),
163
- IssueInstant: nowTime.toISOString(),
164
- AssertionConsumerServiceURL: base,
165
- StatusCode: urn_js_1.StatusCode.Success,
166
- // can be customized
167
- ConditionsNotBefore: nowTime.toISOString(),
168
- ConditionsNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
169
- SubjectConfirmationDataNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
170
- NameIDFormat: selectedNameIDFormat,
171
- NameID: user.NameID || '',
172
- InResponseTo: (0, utility_js_1.get)(requestInfo, 'extract.request.id', ''),
173
- AuthnStatement: `<saml:AuthnStatement AuthnInstant="${now}" SessionNotOnOrAfter="${tenHoursLater}" SessionIndex="${sessionIndex}"><saml:AuthnContext><saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</saml:AuthnContextClassRef></saml:AuthnContext></saml:AuthnStatement>`,
174
- AttributeStatement: libsaml_js_1.default.attributeStatementBuilder(AttributeStatement),
175
- };
176
- if (idpSetting.loginResponseTemplate && customTagReplacement) {
177
- const template = customTagReplacement(idpSetting.loginResponseTemplate.context);
178
- rawSamlResponse = (0, utility_js_1.get)(template, 'context', null);
179
- }
180
- else {
181
- if (requestInfo !== null) {
182
- tvalue.InResponseTo = requestInfo?.extract?.request?.id;
183
- }
184
- rawSamlResponse = libsaml_js_1.default.replaceTagsByValue(libsaml_js_1.default.defaultLoginResponseTemplate.context, tvalue);
185
- }
186
- const { privateKey, privateKeyPass, requestSignatureAlgorithm: signatureAlgorithm } = idpSetting;
187
- const config = {
188
- privateKey,
189
- privateKeyPass,
190
- signatureAlgorithm,
191
- signingCert: metadata.idp.getX509Certificate('signing'),
192
- isBase64Output: false,
193
- };
194
- // step: sign assertion ? -> encrypted ? -> sign message ?
195
- if (metadata.sp.isWantAssertionsSigned()) {
196
- rawSamlResponse = libsaml_js_1.default.constructSAMLSignature({
197
- ...config,
198
- rawSamlMessage: rawSamlResponse,
199
- transformationAlgorithms: spSetting.transformationAlgorithms,
200
- referenceTagXPath: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']",
201
- signatureConfig: {
202
- prefix: 'ds',
203
- location: { reference: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']/*[local-name(.)='Issuer']", action: 'after' },
204
- },
205
- });
206
- }
207
- // SAML response must be signed sign message first, then encrypt
208
- let simpleSignature = '';
209
- // like in post and redirect bindings, login response is always signed.
210
- simpleSignature = buildSimpleSignature({
211
- type: urlParams.samlResponse,
212
- context: rawSamlResponse,
213
- entitySetting: idpSetting,
214
- relayState: relayState,
215
- });
216
- return Promise.resolve({
217
- id,
218
- context: utility_js_1.default.base64Encode(rawSamlResponse),
219
- signature: simpleSignature,
220
- sigAlg: idpSetting.requestSignatureAlgorithm,
221
- });
222
- }
223
- throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_RESPONSE_MISSING_METADATA');
224
- }
225
- const simpleSignBinding = {
226
- base64LoginRequest,
227
- base64LoginResponse,
228
- };
229
- exports.default = simpleSignBinding;
1
+ /**
2
+ * @file binding-simplesign.ts
3
+ * @author Orange
4
+ * @desc Binding-level API, declare the functions using POST SimpleSign binding
5
+ */
6
+ import { wording, StatusCode } from './urn.js';
7
+ import libsaml from './libsaml.js';
8
+ import utility, { get } from './utility.js';
9
+ const binding = wording.binding;
10
+ const urlParams = wording.urlParams;
11
+ /**
12
+ * @private
13
+ * @desc Helper of generating URL param/value pair
14
+ * @param {string} param key
15
+ * @param {string} value value of key
16
+ * @param {boolean} first determine whether the param is the starting one in order to add query header '?'
17
+ * @return {string}
18
+ */
19
+ function pvPair(param, value, first) {
20
+ return (first === true ? '?' : '&') + param + '=' + value;
21
+ }
22
+ /**
23
+ * @private
24
+ * @desc Refactored part of simple signature generation for login/logout request
25
+ * @param {string} type
26
+ * @param {string} rawSamlRequest
27
+ * @param {object} entitySetting
28
+ * @return {string}
29
+ */
30
+ function buildSimpleSignature(opts) {
31
+ const { type, context, entitySetting, } = opts;
32
+ let { relayState = '' } = opts;
33
+ const queryParam = libsaml.getQueryParamByType(type);
34
+ if (relayState !== '') {
35
+ relayState = pvPair(urlParams.relayState, relayState);
36
+ }
37
+ const sigAlg = pvPair(urlParams.sigAlg, entitySetting.requestSignatureAlgorithm);
38
+ const octetString = context + relayState + sigAlg;
39
+ return libsaml.constructMessageSignature(queryParam + '=' + octetString, entitySetting.privateKey, entitySetting.privateKeyPass, undefined, entitySetting.requestSignatureAlgorithm).toString();
40
+ }
41
+ /**
42
+ * @desc Generate a base64 encoded login request
43
+ * @param {string} referenceTagXPath reference uri
44
+ * @param {object} entity object includes both idp and sp
45
+ * @param {function} customTagReplacement used when developers have their own login response template
46
+ */
47
+ function base64LoginRequest(entity, customTagReplacement) {
48
+ const metadata = { idp: entity.idp.entityMeta, sp: entity.sp.entityMeta };
49
+ const spSetting = entity.sp.entitySetting;
50
+ let id = '';
51
+ if (metadata && metadata.idp && metadata.sp) {
52
+ const base = metadata.idp.getSingleSignOnService(binding.simpleSign);
53
+ let rawSamlRequest;
54
+ if (spSetting.loginRequestTemplate && customTagReplacement) {
55
+ const info = customTagReplacement(spSetting.loginRequestTemplate.context);
56
+ id = get(info, 'id', null);
57
+ rawSamlRequest = get(info, 'context', null);
58
+ }
59
+ else {
60
+ const nameIDFormat = spSetting.nameIDFormat;
61
+ const selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
62
+ id = spSetting.generateID();
63
+ rawSamlRequest = libsaml.replaceTagsByValue(libsaml.defaultLoginRequestTemplate.context, {
64
+ ID: id,
65
+ Destination: base,
66
+ Issuer: metadata.sp.getEntityID(),
67
+ IssueInstant: new Date().toISOString(),
68
+ AssertionConsumerServiceURL: metadata.sp.getAssertionConsumerService(binding.simpleSign),
69
+ EntityID: metadata.sp.getEntityID(),
70
+ AllowCreate: spSetting.allowCreate,
71
+ NameIDFormat: selectedNameIDFormat
72
+ });
73
+ }
74
+ let simpleSignatureContext = null;
75
+ if (metadata.idp.isWantAuthnRequestsSigned()) {
76
+ const simpleSignature = buildSimpleSignature({
77
+ type: urlParams.samlRequest,
78
+ context: rawSamlRequest,
79
+ entitySetting: spSetting,
80
+ relayState: spSetting.relayState,
81
+ });
82
+ simpleSignatureContext = {
83
+ signature: simpleSignature,
84
+ sigAlg: spSetting.requestSignatureAlgorithm,
85
+ };
86
+ }
87
+ // No need to embeded XML signature
88
+ return {
89
+ id,
90
+ context: utility.base64Encode(rawSamlRequest),
91
+ ...simpleSignatureContext,
92
+ };
93
+ }
94
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_REQUEST_MISSING_METADATA');
95
+ }
96
+ /**
97
+ * @desc Generate a base64 encoded login response
98
+ * @param {object} requestInfo corresponding request, used to obtain the id
99
+ * @param {object} entity object includes both idp and sp
100
+ * @param {object} user current logged user (e.g. req.user)
101
+ * @param {string} relayState the relay state
102
+ * @param {function} customTagReplacement used when developers have their own login response template
103
+ * @param AttributeStatement
104
+ */
105
+ async function base64LoginResponse(requestInfo = {}, entity, user = {}, relayState, customTagReplacement, AttributeStatement = []) {
106
+ const idpSetting = entity.idp.entitySetting;
107
+ const spSetting = entity.sp.entitySetting;
108
+ const id = idpSetting.generateID();
109
+ const metadata = {
110
+ idp: entity.idp.entityMeta,
111
+ sp: entity.sp.entityMeta,
112
+ };
113
+ const nameIDFormat = idpSetting.nameIDFormat;
114
+ const selectedNameIDFormat = Array.isArray(nameIDFormat) ? nameIDFormat[0] : nameIDFormat;
115
+ if (metadata && metadata.idp && metadata.sp) {
116
+ const base = metadata.sp.getAssertionConsumerService(binding.simpleSign);
117
+ let rawSamlResponse;
118
+ const nowTime = new Date();
119
+ // Five minutes later : nowtime + 5 * 60 * 1000 (in milliseconds)
120
+ const fiveMinutesLaterTime = new Date(nowTime.getTime() + 300_000);
121
+ const now = nowTime.toISOString();
122
+ console.log(`现在是北京时间:${nowTime.toLocaleString()}`);
123
+ const sessionIndex = 'session' + idpSetting.generateID(); // 这个是当前系统的会话索引,用于单点注销
124
+ const tenHoursLaterTime = new Date(nowTime.getTime());
125
+ tenHoursLaterTime.setHours(tenHoursLaterTime.getHours() + 10);
126
+ const tenHoursLater = tenHoursLaterTime.toISOString();
127
+ const tvalue = {
128
+ ID: id,
129
+ AssertionID: idpSetting.generateID(),
130
+ Destination: base,
131
+ Audience: metadata.sp.getEntityID(),
132
+ EntityID: metadata.sp.getEntityID(),
133
+ SubjectRecipient: base,
134
+ Issuer: metadata.idp.getEntityID(),
135
+ IssueInstant: nowTime.toISOString(),
136
+ AssertionConsumerServiceURL: base,
137
+ StatusCode: StatusCode.Success,
138
+ // can be customized
139
+ ConditionsNotBefore: nowTime.toISOString(),
140
+ ConditionsNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
141
+ SubjectConfirmationDataNotOnOrAfter: fiveMinutesLaterTime.toISOString(),
142
+ NameIDFormat: selectedNameIDFormat,
143
+ NameID: user.NameID || '',
144
+ InResponseTo: get(requestInfo, 'extract.request.id', ''),
145
+ AuthnStatement: `<saml:AuthnStatement AuthnInstant="${now}" SessionNotOnOrAfter="${tenHoursLater}" SessionIndex="${sessionIndex}"><saml:AuthnContext><saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</saml:AuthnContextClassRef></saml:AuthnContext></saml:AuthnStatement>`,
146
+ AttributeStatement: libsaml.attributeStatementBuilder(AttributeStatement),
147
+ };
148
+ if (idpSetting.loginResponseTemplate && customTagReplacement) {
149
+ const template = customTagReplacement(idpSetting.loginResponseTemplate.context);
150
+ rawSamlResponse = get(template, 'context', null);
151
+ }
152
+ else {
153
+ if (requestInfo !== null) {
154
+ tvalue.InResponseTo = requestInfo?.extract?.request?.id;
155
+ }
156
+ rawSamlResponse = libsaml.replaceTagsByValue(libsaml.defaultLoginResponseTemplate.context, tvalue);
157
+ }
158
+ const { privateKey, privateKeyPass, requestSignatureAlgorithm: signatureAlgorithm } = idpSetting;
159
+ const config = {
160
+ privateKey,
161
+ privateKeyPass,
162
+ signatureAlgorithm,
163
+ signingCert: metadata.idp.getX509Certificate('signing'),
164
+ isBase64Output: false,
165
+ };
166
+ // step: sign assertion ? -> encrypted ? -> sign message ?
167
+ if (metadata.sp.isWantAssertionsSigned()) {
168
+ rawSamlResponse = libsaml.constructSAMLSignature({
169
+ ...config,
170
+ rawSamlMessage: rawSamlResponse,
171
+ transformationAlgorithms: spSetting.transformationAlgorithms,
172
+ referenceTagXPath: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']",
173
+ signatureConfig: {
174
+ prefix: 'ds',
175
+ location: { reference: "/*[local-name(.)='Response']/*[local-name(.)='Assertion']/*[local-name(.)='Issuer']", action: 'after' },
176
+ },
177
+ });
178
+ }
179
+ // SAML response must be signed sign message first, then encrypt
180
+ let simpleSignature = '';
181
+ // like in post and redirect bindings, login response is always signed.
182
+ simpleSignature = buildSimpleSignature({
183
+ type: urlParams.samlResponse,
184
+ context: rawSamlResponse,
185
+ entitySetting: idpSetting,
186
+ relayState: relayState,
187
+ });
188
+ return Promise.resolve({
189
+ id,
190
+ context: utility.base64Encode(rawSamlResponse),
191
+ signature: simpleSignature,
192
+ sigAlg: idpSetting.requestSignatureAlgorithm,
193
+ });
194
+ }
195
+ throw new Error('ERR_GENERATE_POST_SIMPLESIGN_LOGIN_RESPONSE_MISSING_METADATA');
196
+ }
197
+ const simpleSignBinding = {
198
+ base64LoginRequest,
199
+ base64LoginResponse,
200
+ };
201
+ export default simpleSignBinding;
230
202
  //# 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":"AAAA;;;;EAIE;AAEF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;AAChC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;AAgBpC;;;;;;;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;;;;;;;EAOE;AACF,SAAS,oBAAoB,CAAC,IAA2B;IACvD,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,aAAa,GACd,GAAG,IAAI,CAAC;IACT,IAAI,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC;IAC/B,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAErD,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QACtB,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IAClD,OAAO,OAAO,CAAC,yBAAyB,CACtC,UAAU,GAAG,GAAG,GAAG,WAAW,EAC9B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,cAAc,EAC5B,SAAS,EACT,aAAa,CAAC,yBAAyB,CACxC,CAAC,QAAQ,EAAE,CAAC;AACf,CAAC;AAED;;;;;EAKE;AACF,SAAS,kBAAkB,CAAC,MAAW,EAAE,oBAA2D;IAClG,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IAC1E,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC;IAC1C,IAAI,EAAE,GAAW,EAAE,CAAC;IAEpB,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACrE,IAAI,cAAsB,CAAC;QAC3B,IAAI,SAAS,CAAC,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;YAC3D,MAAM,IAAI,GAAG,oBAAoB,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC1E,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,cAAc,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;YAC5C,MAAM,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,OAAO,CAAC,kBAAkB,CAAC,OAAO,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,2BAA2B,EAAE,QAAQ,CAAC,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC;gBACxF,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;gBACnC,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,YAAY,EAAE,oBAAoB;aAC5B,CAAC,CAAC;QACZ,CAAC;QAED,IAAI,sBAAsB,GAAS,IAAI,CAAC;QACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,yBAAyB,EAAE,EAAE,CAAC;YAC3C,MAAM,eAAe,GAAG,oBAAoB,CAAC;gBACzC,IAAI,EAAE,SAAS,CAAC,WAAW;gBAC3B,OAAO,EAAE,cAAc;gBACvB,aAAa,EAAE,SAAS;gBACxB,UAAU,EAAE,SAAS,CAAC,UAAU;aACnC,CAAC,CAAC;YAEH,sBAAsB,GAAG;gBACvB,SAAS,EAAE,eAAe;gBAC1B,MAAM,EAAE,SAAS,CAAC,yBAAyB;aAC5C,CAAC;QACN,CAAC;QACD,mCAAmC;QACnC,OAAO;YACL,EAAE;YACF,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC;YAC7C,GAAG,sBAAsB;SAC1B,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AACjF,CAAC;AACD;;;;;;;;GAQG;AACH,KAAK,UAAU,mBAAmB,CAAC,cAAmB,EAAE,EAAE,MAAW,EAAE,OAAY,EAAE,EAAE,UAAmB,EAAE,oBAA2D,EAAE,qBAAwB,EAAE;IACjM,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC;IAC1C,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;QAC1B,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU;KACzB,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC7C,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAC1F,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACzE,IAAI,eAAuB,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,kEAAkE;QAClE,MAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,OAAO,CAAE,CAAC;QACpE,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QAClD,MAAM,YAAY,GAAG,SAAS,GAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,sBAAsB;QAC9E,MAAM,iBAAiB,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,iBAAiB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG,iBAAiB,CAAC,WAAW,EAAE,CAAC;QACtD,MAAM,MAAM,GAAQ;YAClB,EAAE,EAAE,EAAE;YACN,WAAW,EAAE,UAAU,CAAC,UAAU,EAAE;YACpC,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;YACnC,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE;YAClC,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE;YACnC,2BAA2B,EAAE,IAAI;YACjC,UAAU,EAAE,UAAU,CAAC,OAAO;YAC9B,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,MAAM,IAAI,EAAE;YACzB,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,oBAAoB,EAAE,EAAE,CAAC;YACxD,cAAc,EAAE,sCAAsC,GAAG,0BAA0B,aAAa,mBAAmB,YAAY,uKAAuK;YACtS,kBAAkB,EAAE,OAAO,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;SAC1E,CAAC;QACF,IAAI,UAAU,CAAC,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAChF,eAAe,GAAG,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,MAAM,CAAC,YAAY,GAAG,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;YAC1D,CAAC;YACD,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,4BAA4B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,GAAG,UAAU,CAAC;QACjG,MAAM,MAAM,GAAG;YACb,UAAU;YACV,cAAc;YACd,kBAAkB;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,OAAO,CAAC,sBAAsB,CAAC;gBAC/C,GAAG,MAAM;gBACT,cAAc,EAAE,eAAe;gBAC/B,wBAAwB,EAAE,SAAS,CAAC,wBAAwB;gBAC5D,iBAAiB,EAAE,2DAA2D;gBAC9E,eAAe,EAAE;oBACf,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,EAAE,SAAS,EAAE,qFAAqF,EAAE,MAAM,EAAE,OAAO,EAAE;iBAChI;aACF,CAAC,CAAC;QACL,CAAC;QAED,gEAAgE;QAChE,IAAI,eAAe,GAAW,EAAE,CAAC;QACjC,uEAAuE;QACvE,eAAe,GAAG,oBAAoB,CAAC;YACnC,IAAI,EAAE,SAAS,CAAC,YAAY;YAC5B,OAAO,EAAE,eAAe;YACxB,aAAa,EAAE,UAAU;YACzB,UAAU,EAAE,UAAU;SACzB,CAAE,CAAC;QAEJ,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,EAAE;YACF,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC;YAC9C,SAAS,EAAE,eAAe;YAC1B,MAAM,EAAE,UAAU,CAAC,yBAAyB;SAC7C,CAAC,CAAC;IAEL,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,iBAAiB,GAAG;IACtB,kBAAkB;IAClB,mBAAmB;CACpB,CAAC;AAEJ,eAAe,iBAAiB,CAAC"}