samlesa 2.12.10 → 2.12.11

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.

@@ -27,14 +27,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  /**
30
- * @file SamlLib.js
31
- * @author tngan
32
- * @desc A simple library including some common functions
33
- */
30
+ * @file SamlLib.js
31
+ * @author tngan
32
+ * @desc A simple library including some common functions
33
+ */
34
34
  const node_crypto_1 = require("node:crypto");
35
35
  const utility_js_1 = __importStar(require("./utility.js"));
36
36
  const urn_js_1 = require("./urn.js");
37
37
  const xpath_1 = require("xpath");
38
+ const xmlbuilder2_1 = require("xmlbuilder2");
38
39
  const xml_crypto_1 = require("xml-crypto");
39
40
  const xmlenc = __importStar(require("xml-encryption"));
40
41
  const camelcase_1 = __importDefault(require("camelcase"));
@@ -63,9 +64,9 @@ function mapSignAlgorithm(algorithm) {
63
64
  }
64
65
  const libSaml = () => {
65
66
  /**
66
- * @desc helper function to get back the query param for redirect binding for SLO/SSO
67
- * @type {string}
68
- */
67
+ * @desc helper function to get back the query param for redirect binding for SLO/SSO
68
+ * @type {string}
69
+ */
69
70
  function getQueryParamByType(type) {
70
71
  if ([urlParams.logoutRequest, urlParams.samlRequest].indexOf(type) !== -1) {
71
72
  return 'SAMLRequest';
@@ -89,37 +90,44 @@ const libSaml = () => {
89
90
  'http://www.w3.org/2001/04/xmldsig-more#rsa-sha512': 'RSA-SHA512',
90
91
  };
91
92
  /**
92
- * @desc Default login request template
93
- * @type {LoginRequestTemplate}
94
- */
93
+ * @desc Default login request template
94
+ * @type {LoginRequestTemplate}
95
+ */
95
96
  const defaultLoginRequestTemplate = {
96
97
  context: '<samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="{ID}" Version="2.0" IssueInstant="{IssueInstant}" Destination="{Destination}" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AssertionConsumerServiceURL="{AssertionConsumerServiceURL}"><saml:Issuer>{Issuer}</saml:Issuer><samlp:NameIDPolicy Format="{NameIDFormat}" AllowCreate="{AllowCreate}"/></samlp:AuthnRequest>',
97
98
  };
98
99
  /**
99
- * @desc Default logout request template
100
- * @type {LogoutRequestTemplate}
101
- */
100
+ * @desc Default logout request template
101
+ * @type {LogoutRequestTemplate}
102
+ */
102
103
  const defaultLogoutRequestTemplate = {
103
104
  context: '<samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="{ID}" Version="2.0" IssueInstant="{IssueInstant}" Destination="{Destination}"><saml:Issuer>{Issuer}</saml:Issuer><saml:NameID Format="{NameIDFormat}">{NameID}</saml:NameID></samlp:LogoutRequest>',
104
105
  };
105
106
  /**
106
- * @desc Default AttributeStatement template
107
- * @type {AttributeStatementTemplate}
108
- */
107
+ * @desc Default AttributeStatement template
108
+ * @type {AttributeStatementTemplate}
109
+ */
109
110
  const defaultAttributeStatementTemplate = {
110
111
  context: '<saml:AttributeStatement>{Attributes}</saml:AttributeStatement>',
111
112
  };
112
113
  /**
113
- * @desc Default Attribute template
114
- * @type {AttributeTemplate}
115
- */
114
+ * @desc Default Attribute template
115
+ * @type {AttributeTemplate}
116
+ */
116
117
  const defaultAttributeTemplate = {
117
- context: '<saml:Attribute Name="{Name}" NameFormat="{NameFormat}"><saml:AttributeValue xmlns:xs="{ValueXmlnsXs}" xmlns:xsi="{ValueXmlnsXsi}" xsi:type="{ValueXsiType}">{Value}</saml:AttributeValue></saml:Attribute>',
118
+ context: '<saml:Attribute Name="{Name}" NameFormat="{NameFormat}">{AttributeValues}</saml:Attribute>',
119
+ };
120
+ /**
121
+ * @desc Default AttributeValue template
122
+ * @type {AttributeTemplate}
123
+ */
124
+ const defaultAttributeValueTemplate = {
125
+ context: '<saml:AttributeValue xmlns:xs="{ValueXmlnsXs}" xmlns:xsi="{ValueXmlnsXsi}" xsi:type="{ValueXsiType}">{Value}</saml:AttributeValue>',
118
126
  };
119
127
  /**
120
- * @desc Default login response template
121
- * @type {LoginResponseTemplate}
122
- */
128
+ * @desc Default login response template
129
+ * @type {LoginResponseTemplate}
130
+ */
123
131
  const defaultLoginResponseTemplate = {
124
132
  context: '<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="{ID}" Version="2.0" IssueInstant="{IssueInstant}" Destination="{Destination}" InResponseTo="{InResponseTo}"><saml:Issuer>{Issuer}</saml:Issuer><samlp:Status><samlp:StatusCode Value="{StatusCode}"/></samlp:Status><saml:Assertion xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="{AssertionID}" Version="2.0" IssueInstant="{IssueInstant}"><saml:Issuer>{Issuer}</saml:Issuer><saml:Subject><saml:NameID Format="{NameIDFormat}">{NameID}</saml:NameID><saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"><saml:SubjectConfirmationData NotOnOrAfter="{SubjectConfirmationDataNotOnOrAfter}" Recipient="{SubjectRecipient}" InResponseTo="{InResponseTo}"/></saml:SubjectConfirmation></saml:Subject><saml:Conditions NotBefore="{ConditionsNotBefore}" NotOnOrAfter="{ConditionsNotOnOrAfter}"><saml:AudienceRestriction><saml:Audience>{Audience}</saml:Audience></saml:AudienceRestriction></saml:Conditions>{AuthnStatement}{AttributeStatement}</saml:Assertion></samlp:Response>',
125
133
  attributes: [],
@@ -129,9 +137,9 @@ const libSaml = () => {
129
137
  }
130
138
  };
131
139
  /**
132
- * @desc Default logout response template
133
- * @type {LogoutResponseTemplate}
134
- */
140
+ * @desc Default logout response template
141
+ * @type {LogoutResponseTemplate}
142
+ */
135
143
  const defaultLogoutResponseTemplate = {
136
144
  context: '<samlp:LogoutResponse xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="{ID}" Version="2.0" IssueInstant="{IssueInstant}" Destination="{Destination}" InResponseTo="{InResponseTo}"><saml:Issuer>{Issuer}</saml:Issuer><samlp:Status><samlp:StatusCode Value="{StatusCode}"/></samlp:Status></samlp:LogoutResponse>',
137
145
  };
@@ -145,21 +153,21 @@ const libSaml = () => {
145
153
  return nrsaAliasMappingForNode[signatureAlgorithms.RSA_SHA256];
146
154
  }
147
155
  /**
148
- * @private
149
- * @desc Get the digest algorithms by signature algorithms
150
- * @param {string} sigAlg signature algorithm
151
- * @return {string/undefined} digest algorithm
152
- */
156
+ * @private
157
+ * @desc Get the digest algorithms by signature algorithms
158
+ * @param {string} sigAlg signature algorithm
159
+ * @return {string/undefined} digest algorithm
160
+ */
153
161
  function getDigestMethod(sigAlg) {
154
162
  return digestAlgorithms[sigAlg];
155
163
  }
156
164
  /**
157
- * @public
158
- * @desc Create XPath
159
- * @param {string/object} local parameters to create XPath
160
- * @param {boolean} isExtractAll define whether returns whole content according to the XPath
161
- * @return {string} xpath
162
- */
165
+ * @public
166
+ * @desc Create XPath
167
+ * @param {string/object} local parameters to create XPath
168
+ * @param {boolean} isExtractAll define whether returns whole content according to the XPath
169
+ * @return {string} xpath
170
+ */
163
171
  function createXPath(local, isExtractAll) {
164
172
  if ((0, utility_js_1.isString)(local)) {
165
173
  return isExtractAll === true ? "//*[local-name(.)='" + local + "']/text()" : "//*[local-name(.)='" + local + "']";
@@ -193,12 +201,13 @@ const libSaml = () => {
193
201
  defaultAttributeTemplate,
194
202
  defaultLogoutRequestTemplate,
195
203
  defaultLogoutResponseTemplate,
204
+ defaultAttributeValueTemplate,
196
205
  /**
197
- * @desc Replace the tag (e.g. {tag}) inside the raw XML
198
- * @param {string} rawXML raw XML string used to do keyword replacement
199
- * @param {array} tagValues tag values
200
- * @return {string}
201
- */
206
+ * @desc Replace the tag (e.g. {tag}) inside the raw XML
207
+ * @param {string} rawXML raw XML string used to do keyword replacement
208
+ * @param {array} tagValues tag values
209
+ * @return {string}
210
+ */
202
211
  replaceTagsByValue(rawXML, tagValues) {
203
212
  Object.keys(tagValues).forEach(t => {
204
213
  rawXML = rawXML.replace(new RegExp(`("?)\\{${t}\\}`, 'g'), escapeTag(tagValues[t]));
@@ -206,45 +215,82 @@ const libSaml = () => {
206
215
  return rawXML;
207
216
  },
208
217
  /**
209
- * @desc Helper function to build the AttributeStatement tag
210
- * @param {LoginResponseAttribute} attributes an array of attribute configuration
211
- * @param {AttributeTemplate} attributeTemplate the attribute tag template to be used
212
- * @param {AttributeStatementTemplate} attributeStatementTemplate the attributeStatement tag template to be used
213
- * @return {string}
214
- */
215
- attributeStatementBuilder(attributes, attributeTemplate = defaultAttributeTemplate, attributeStatementTemplate = defaultAttributeStatementTemplate) {
216
- const attr = attributes.map(({ name, nameFormat, valueTag, valueXsiType, type, valueXmlnsXs, valueXmlnsXsi }) => {
218
+ * @desc Helper function to build the AttributeStatement tag
219
+ * @param {LoginResponseAttribute} attributes an array of attribute configuration
220
+ * @param {AttributeTemplate} attributeTemplate the attribute tag template to be used
221
+ * @param {AttributeStatementTemplate} attributeStatementTemplate the attributeStatement tag template to be used
222
+ * @return {string}
223
+ */
224
+ /* attributeStatementBuilder(
225
+ attributes: LoginResponseAttribute[],
226
+ attributeTemplate: AttributeTemplate = defaultAttributeTemplate,
227
+ attributeStatementTemplate: AttributeStatementTemplate = defaultAttributeStatementTemplate
228
+ ): string {
229
+ const attr = attributes.map(({name, nameFormat, valueTag, valueXsiType, type, valueXmlnsXs, valueXmlnsXsi}) => {
217
230
  const defaultValueXmlnsXs = 'http://www.w3.org/2001/XMLSchema';
218
231
  const defaultValueXmlnsXsi = 'http://www.w3.org/2001/XMLSchema-instance';
219
232
  let attributeLine = attributeTemplate.context;
220
233
  if (attributeLine && typeof attributeLine === 'function') {
221
- // 安全调用
222
- // @ts-ignore
223
- return attributeLine({ name, nameFormat, valueTag, valueXsiType, type, valueXmlnsXs: valueXmlnsXs ?? defaultValueXmlnsXs, valueXmlnsXsi: valueXmlnsXsi ?? defaultValueXmlnsXsi });
224
- }
225
- else {
226
- attributeLine = attributeLine.replace('{Name}', name);
227
- attributeLine = attributeLine.replace('{NameFormat}', nameFormat);
228
- attributeLine = attributeLine.replace('{ValueXmlnsXs}', valueXmlnsXs ? valueXmlnsXs : defaultValueXmlnsXs);
229
- attributeLine = attributeLine.replace('{ValueXmlnsXsi}', valueXmlnsXsi ? valueXmlnsXsi : defaultValueXmlnsXsi);
230
- attributeLine = attributeLine.replace('{ValueXsiType}', valueXsiType);
231
- attributeLine = attributeLine.replace('{Value}', `{${tagging('attr', valueTag)}}`);
232
- return attributeLine;
234
+ // 安全调用
235
+ // @ts-ignore
236
+ return attributeLine({
237
+ name,
238
+ nameFormat,
239
+ valueTag,
240
+ valueXsiType,
241
+ type,
242
+ valueXmlnsXs: valueXmlnsXs ?? defaultValueXmlnsXs,
243
+ valueXmlnsXsi: valueXmlnsXsi ?? defaultValueXmlnsXsi
244
+ })
245
+ } else {
246
+ attributeLine = attributeLine.replace('{Name}', name);
247
+ attributeLine = attributeLine.replace('{NameFormat}', nameFormat);
248
+ attributeLine = attributeLine.replace('{ValueXmlnsXs}', valueXmlnsXs ? valueXmlnsXs : defaultValueXmlnsXs);
249
+ attributeLine = attributeLine.replace('{ValueXmlnsXsi}', valueXmlnsXsi ? valueXmlnsXsi : defaultValueXmlnsXsi);
250
+ attributeLine = attributeLine.replace('{ValueXsiType}', valueXsiType);
251
+ attributeLine = attributeLine.replace('{Value}', `{${tagging('attr', valueTag)}}`);
252
+ return attributeLine;
233
253
  }
234
- }).join('');
235
- return attributeStatementTemplate.context.replace('{Attributes}', attr);
254
+
255
+ }).join('');
256
+ return attributeStatementTemplate.context.replace('{Attributes}', attr);
257
+ },*/
258
+ /** For Test */
259
+ attributeStatementBuilder(attributeData) {
260
+ const root = (0, xmlbuilder2_1.create)({
261
+ // 关键配置:关闭 XML 声明头和独立文档标识
262
+ headless: true
263
+ }).ele('saml:AttributeStatement', {
264
+ index: 1
265
+ });
266
+ attributeData.forEach(attr => {
267
+ const attribute = root.ele('saml:Attribute', {
268
+ Name: attr.Name,
269
+ NameFormat: attr.NameFormat,
270
+ FriendlyName: attr.FriendlyName
271
+ });
272
+ attr.valueArray.forEach(valueObj => {
273
+ const valueElement = attribute.ele('saml:AttributeValue');
274
+ // 根据 ValueType 添加数据类型
275
+ /* if (attr.ValueType === 1) {
276
+ valueElement.att('xsi:type', 'xs:string');
277
+ } // 可扩展其他类型...*/
278
+ valueElement.txt(valueObj.value);
279
+ });
280
+ });
281
+ return root.end({ prettyPrint: true });
236
282
  },
237
283
  /**
238
- * @desc Construct the XML signature for POST binding
239
- * @param {string} rawSamlMessage request/response xml string
240
- * @param {string} referenceTagXPath reference uri
241
- * @param {string} privateKey declares the private key
242
- * @param {string} passphrase passphrase of the private key [optional]
243
- * @param {string|buffer} signingCert signing certificate
244
- * @param {string} signatureAlgorithm signature algorithm
245
- * @param {string[]} transformationAlgorithms canonicalization and transformation Algorithms
246
- * @return {string} base64 encoded string
247
- */
284
+ * @desc Construct the XML signature for POST binding
285
+ * @param {string} rawSamlMessage request/response xml string
286
+ * @param {string} referenceTagXPath reference uri
287
+ * @param {string} privateKey declares the private key
288
+ * @param {string} passphrase passphrase of the private key [optional]
289
+ * @param {string|buffer} signingCert signing certificate
290
+ * @param {string} signatureAlgorithm signature algorithm
291
+ * @param {string[]} transformationAlgorithms canonicalization and transformation Algorithms
292
+ * @return {string} base64 encoded string
293
+ */
248
294
  constructSAMLSignature(opts) {
249
295
  const { rawSamlMessage, referenceTagXPath, privateKey, privateKeyPass, signatureAlgorithm = signatureAlgorithms.RSA_SHA512, transformationAlgorithms = [
250
296
  'http://www.w3.org/2000/09/xmldsig#enveloped-signature',
@@ -282,9 +328,9 @@ const libSaml = () => {
282
328
  return isBase64Output !== false ? utility_js_1.default.base64Encode(sig.getSignedXml()) : sig.getSignedXml();
283
329
  },
284
330
  /**
285
- * @desc Verify the XML signature
286
- * @param {string} xml xml
287
- * @param {SignatureVerifierOptions} opts cert declares the X509 certificate
331
+ * @desc Verify the XML signature
332
+ * @param {string} xml xml
333
+ * @param {SignatureVerifierOptions} opts cert declares the X509 certificate
288
334
  * @return {[boolean, string | null]} - A tuple where:
289
335
  * - The first element is `true` if the signature is valid, `false` otherwise.
290
336
  * - The second element is the cryptographically authenticated assertion node as a string, or `null` if not found.
@@ -396,7 +442,6 @@ const libSaml = () => {
396
442
  return [true, null]; // signature is valid. But there is no assertion node here. It could be metadata node, hence return null
397
443
  }
398
444
  }
399
- ;
400
445
  // something has gone seriously wrong if we are still here
401
446
  throw new Error('ERR_ZERO_SIGNATURE');
402
447
  // response must be signed, either entire document or assertion
@@ -407,7 +452,7 @@ const libSaml = () => {
407
452
  assertionNode = node[0].toString();
408
453
  }
409
454
  }
410
-
455
+
411
456
  if (assertionSignatureNode.length === 1) {
412
457
  const verifiedAssertionInfo = extract(assertionSignatureNode[0].toString(), [{
413
458
  key: 'refURI',
@@ -439,15 +484,15 @@ const libSaml = () => {
439
484
  }]);
440
485
  assertionNode = verifiedDoc.assertion.toString();
441
486
  }
442
-
487
+
443
488
  return [verified, assertionNode];*/
444
489
  },
445
490
  /**
446
- * @desc Helper function to create the key section in metadata (abstraction for signing and encrypt use)
447
- * @param {string} use type of certificate (e.g. signing, encrypt)
448
- * @param {string} certString declares the certificate String
449
- * @return {object} object used in xml module
450
- */
491
+ * @desc Helper function to create the key section in metadata (abstraction for signing and encrypt use)
492
+ * @param {string} use type of certificate (e.g. signing, encrypt)
493
+ * @param {string} certString declares the certificate String
494
+ * @return {object} object used in xml module
495
+ */
451
496
  createKeySection(use, certString) {
452
497
  return {
453
498
  ['KeyDescriptor']: [
@@ -515,14 +560,14 @@ const libSaml = () => {
515
560
  verifier.update(octetString);
516
561
  const isValid = verifier.verify(utility_js_1.default.getPublicKeyPemFromCertificate(signCert), Buffer.isBuffer(signature) ? signature : Buffer.from(signature, 'base64'));
517
562
  console.log(isValid);
518
- console.log('验证结果-------------');
563
+ console.log('-------------签名验证结果-------------');
519
564
  return isValid;
520
565
  },
521
566
  /**
522
- * @desc Get the public key in string format
523
- * @param {string} x509Certificate certificate
524
- * @return {string} public key
525
- */
567
+ * @desc Get the public key in string format
568
+ * @param {string} x509Certificate certificate
569
+ * @return {string} public key
570
+ */
526
571
  getKeyInfo(x509Certificate, signatureConfig = {}) {
527
572
  const prefix = signatureConfig.prefix ? `${signatureConfig.prefix}:` : '';
528
573
  return {
@@ -535,12 +580,12 @@ const libSaml = () => {
535
580
  };
536
581
  },
537
582
  /**
538
- * @desc Encrypt the assertion section in Response
539
- * @param {Entity} sourceEntity source entity
540
- * @param {Entity} targetEntity target entity
541
- * @param {string} xml response in xml string format
542
- * @return {Promise} a promise to resolve the finalized xml
543
- */
583
+ * @desc Encrypt the assertion section in Response
584
+ * @param {Entity} sourceEntity source entity
585
+ * @param {Entity} targetEntity target entity
586
+ * @param {string} xml response in xml string format
587
+ * @return {Promise} a promise to resolve the finalized xml
588
+ */
544
589
  encryptAssertion(sourceEntity, targetEntity, xml) {
545
590
  // Implement encryption after signature if it has
546
591
  return new Promise((resolve, reject) => {
@@ -591,13 +636,13 @@ const libSaml = () => {
591
636
  });
592
637
  },
593
638
  /**
594
- * @desc Decrypt the assertion section in Response
595
- * @param {string} type only accept SAMLResponse to proceed decryption
596
- * @param {Entity} here this entity
597
- * @param {Entity} from from the entity where the message is sent
598
- * @param {string} entireXML response in xml string format
599
- * @return {function} a promise to get back the entire xml with decrypted assertion
600
- */
639
+ * @desc Decrypt the assertion section in Response
640
+ * @param {string} type only accept SAMLResponse to proceed decryption
641
+ * @param {Entity} here this entity
642
+ * @param {Entity} from from the entity where the message is sent
643
+ * @param {string} entireXML response in xml string format
644
+ * @return {function} a promise to get back the entire xml with decrypted assertion
645
+ */
601
646
  decryptAssertion(here, entireXML) {
602
647
  return new Promise((resolve, reject) => {
603
648
  // Implement decryption first then check the signature
@@ -1 +1 @@
1
- {"version":3,"file":"libsaml.js","sourceRoot":"","sources":["../../src/libsaml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libsaml.js","sourceRoot":"","sources":["../../src/libsaml.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/validator.ts"],"names":[],"mappings":";;;AAGA,SAAS,UAAU,CACjB,YAAgC,EAChC,eAAmC,EACnC,QAAwB,CAAC,CAAC,EAAE,CAAC,CAAC;IAG9B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,IAAI,CAAC,YAAY,IAAI,CAAC,eAAe,EAAE;QACrC,kHAAkH;QAClH,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;QAC1G,OAAO,IAAI,CAAC;KACb;IAED,IAAI,cAAc,GAAgB,IAAI,CAAC;IACvC,IAAI,iBAAiB,GAAgB,IAAI,CAAC;IAE1C,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC;IAElD,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;QACpC,cAAc,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,OAAO,CAAC,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG,CAAC;KACjD;IACD,IAAI,CAAC,YAAY,IAAI,eAAe,EAAE;QACpC,iBAAiB,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KACtD;IAED,cAAc,GAAG,IAAI,IAAI,CAAC,YAAa,CAAC,CAAC;IACzC,iBAAiB,GAAG,IAAI,IAAI,CAAC,eAAgB,CAAC,CAAC;IAE/C,OAAO,CACL,CAAC,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG;QACxC,CAAC,GAAG,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAC9C,CAAC;AAEJ,CAAC;AAGC,gCAAU"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/validator.ts"],"names":[],"mappings":";;;AAGA,SAAS,UAAU,CACjB,YAAgC,EAChC,eAAmC,EACnC,QAAwB,CAAC,CAAC,EAAE,CAAC,CAAC;IAE9B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,YAAY,IAAI,CAAC,eAAe,EAAE;QACrC,kHAAkH;QAClH,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;QAC1G,OAAO,IAAI,CAAC;KACb;IACD,IAAI,cAAc,GAAgB,IAAI,CAAC;IACvC,IAAI,iBAAiB,GAAgB,IAAI,CAAC;IAC1C,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC;IAClD,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;QACpC,cAAc,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,OAAO,CAAC,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG,CAAC;KACjD;IACD,IAAI,CAAC,YAAY,IAAI,eAAe,EAAE;QACpC,iBAAiB,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KACtD;IAED,cAAc,GAAG,IAAI,IAAI,CAAC,YAAa,CAAC,CAAC;IACzC,iBAAiB,GAAG,IAAI,IAAI,CAAC,eAAgB,CAAC,CAAC;IAE/C,OAAO,CACL,CAAC,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG;QACxC,CAAC,GAAG,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAC9C,CAAC;AAEJ,CAAC;AAGC,gCAAU"}
package/package.json CHANGED
@@ -1,70 +1,70 @@
1
- {
2
- "name": "samlesa",
3
- "version": "2.12.10",
4
- "description": "High-level API for Single Sign On (SAML 2.0) 维护分支:修复原项目samlify的一些问题 ",
5
- "main": "build/index.js",
6
- "keywords": [
7
- "nodejs",
8
- "saml2",
9
- "sso",
10
- "slo",
11
- "metadata"
12
- ],
13
- "typings": "types/index.d.ts",
14
- "scripts": {
15
- "build": "tsc",
16
- "docs": "docsify serve -o docs",
17
- "lint": "tslint -p .",
18
- "lint:fix": "tslint -p . --fix",
19
- "pretest": "make pretest",
20
- "test": "NODE_ENV=test nyc ava",
21
- "coverage": "nyc report --reporter=text-lcov | coveralls",
22
- "hooks:postinstall": "ln -sf $PWD/.pre-commit.sh $PWD/.git/hooks/pre-commit"
23
- },
24
- "contributors": [
25
- "Veclea <vemocle@gmail.com>"
26
- ],
27
-
28
- "author": "Veclea",
29
- "repository": {
30
- "url": "https://github.com/Veclea/samlify.git",
31
- "type": "git"
32
- },
33
- "license": "MIT",
34
- "dependencies": {
35
- "xml-encryption": "^3.0.1",
36
- "@xmldom/xmldom": "^0.8.6",
37
- "camelcase": "^6.2.0",
38
- "pako": "^1.0.10",
39
- "uuid": "^10.0.0",
40
- "xml": "^1.0.1",
41
- "xml-crypto": "^6.1.0",
42
- "xml-escape": "^1.1.0",
43
- "xpath": "^0.0.32"
44
- },
45
- "devDependencies": {
46
- "@ava/typescript": "^1.1.1",
47
- "@types/node": "^22.15.17",
48
- "@types/pako": "^1.0.1",
49
- "@types/uuid": "^10.0.0",
50
- "@types/xmldom": "^0.1.31",
51
- "ava": "^4.1.0",
52
- "coveralls": "^3.1.1",
53
- "nyc": "^17.1.0",
54
- "timekeeper": "^2.2.0",
55
- "ts-node": "^10.9.2",
56
- "tslint": "^6.1.3",
57
- "typescript": "^4.4.2"
58
- },
59
- "ava": {
60
- "extensions": [
61
- "ts"
62
- ],
63
- "require": [
64
- "ts-node/register"
65
- ],
66
- "files": [
67
- "!**/*.d.ts"
68
- ]
69
- }
70
- }
1
+ {
2
+ "name": "samlesa",
3
+ "version": "2.12.11",
4
+ "description": "High-level API for Single Sign On (SAML 2.0) 维护分支:修复原项目samlify的一些问题 ",
5
+ "main": "build/index.js",
6
+ "keywords": [
7
+ "nodejs",
8
+ "saml2",
9
+ "sso",
10
+ "slo",
11
+ "metadata"
12
+ ],
13
+ "typings": "types/index.d.ts",
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "docs": "docsify serve -o docs",
17
+ "lint": "tslint -p .",
18
+ "lint:fix": "tslint -p . --fix",
19
+ "pretest": "make pretest",
20
+ "test": "NODE_ENV=test nyc ava",
21
+ "coverage": "nyc report --reporter=text-lcov | coveralls",
22
+ "hooks:postinstall": "ln -sf $PWD/.pre-commit.sh $PWD/.git/hooks/pre-commit"
23
+ },
24
+ "contributors": [
25
+ "Veclea <vemocle@gmail.com>"
26
+ ],
27
+ "author": "Veclea",
28
+ "repository": {
29
+ "url": "https://github.com/Veclea/samlify.git",
30
+ "type": "git"
31
+ },
32
+ "license": "MIT",
33
+ "dependencies": {
34
+ "@xmldom/xmldom": "^0.8.6",
35
+ "camelcase": "^6.2.0",
36
+ "pako": "^1.0.10",
37
+ "uuid": "^10.0.0",
38
+ "xml": "^1.0.1",
39
+ "xml-crypto": "^6.1.0",
40
+ "xml-encryption": "^3.0.1",
41
+ "xml-escape": "^1.1.0",
42
+ "xmlbuilder2": "^3.1.1",
43
+ "xpath": "^0.0.32"
44
+ },
45
+ "devDependencies": {
46
+ "@ava/typescript": "^1.1.1",
47
+ "@types/node": "^22.15.17",
48
+ "@types/pako": "^1.0.1",
49
+ "@types/uuid": "^10.0.0",
50
+ "@types/xmldom": "^0.1.31",
51
+ "ava": "^4.1.0",
52
+ "coveralls": "^3.1.1",
53
+ "nyc": "^17.1.0",
54
+ "timekeeper": "^2.2.0",
55
+ "ts-node": "^10.9.2",
56
+ "tslint": "^6.1.3",
57
+ "typescript": "^4.4.2"
58
+ },
59
+ "ava": {
60
+ "extensions": [
61
+ "ts"
62
+ ],
63
+ "require": [
64
+ "ts-node/register"
65
+ ],
66
+ "files": [
67
+ "!**/*.d.ts"
68
+ ]
69
+ }
70
+ }
@@ -80,7 +80,7 @@ function base64LoginRequest(referenceTagXPath: string, entity: any, customTagRep
80
80
  * @param {boolean} encryptThenSign whether or not to encrypt then sign first (if signing). Defaults to sign-then-encrypt
81
81
  * @param AttributeStatement
82
82
  */
83
- async function base64LoginResponse(requestInfo: any = {}, entity: any, user: any = {}, customTagReplacement?: (template: string) => BindingContext, encryptThenSign: boolean = false ,AttributeStatement=''): Promise<BindingContext> {
83
+ async function base64LoginResponse(requestInfo: any = {}, entity: any, user: any = {}, customTagReplacement?: (template: string) => BindingContext, encryptThenSign: boolean = false , AttributeStatement=[]): Promise<BindingContext> {
84
84
  const idpSetting = entity.idp.entitySetting;
85
85
  const spSetting = entity.sp.entitySetting;
86
86
  const id = idpSetting.generateID();
@@ -127,7 +127,7 @@ async function base64LoginResponse(requestInfo: any = {}, entity: any, user: any
127
127
  NameID: user?.NameID || '',
128
128
  InResponseTo: get(requestInfo, 'extract.request.id', ''),
129
129
  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>`,
130
- AttributeStatement: AttributeStatement,
130
+ AttributeStatement: libsaml.attributeStatementBuilder(AttributeStatement),
131
131
  };
132
132
  if (idpSetting.loginResponseTemplate && customTagReplacement) {
133
133
  const template = customTagReplacement(idpSetting.loginResponseTemplate.context);