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.
- package/build/src/binding-post.js +2 -2
- package/build/src/binding-post.js.map +1 -1
- package/build/src/binding-redirect.js +2 -2
- package/build/src/binding-redirect.js.map +1 -1
- package/build/src/binding-simplesign.js +2 -2
- package/build/src/binding-simplesign.js.map +1 -1
- package/build/src/entity-idp.js +17 -22
- package/build/src/entity-idp.js.map +1 -1
- package/build/src/extractor.js +1 -1
- package/build/src/extractor.js.map +1 -1
- package/build/src/libsaml.js +148 -103
- package/build/src/libsaml.js.map +1 -1
- package/build/src/validator.js.map +1 -1
- package/package.json +70 -70
- package/src/binding-post.ts +2 -2
- package/src/binding-redirect.ts +2 -2
- package/src/binding-simplesign.ts +2 -2
- package/src/entity-idp.ts +4 -4
- package/src/extractor.ts +1 -1
- package/src/libsaml.ts +271 -207
- package/src/validator.ts +2 -7
- package/types/src/binding-post.d.ts +1 -1
- package/types/src/binding-redirect.d.ts +1 -1
- package/types/src/binding-simplesign.d.ts +1 -1
- package/types/src/entity-idp.d.ts +1 -1
- package/types/src/libsaml.d.ts +56 -47
package/build/src/libsaml.js
CHANGED
|
@@ -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
|
-
|
|
67
|
-
|
|
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
|
-
|
|
93
|
-
|
|
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
|
-
|
|
100
|
-
|
|
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
|
-
|
|
107
|
-
|
|
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
|
-
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
* @desc Default Attribute template
|
|
115
|
+
* @type {AttributeTemplate}
|
|
116
|
+
*/
|
|
116
117
|
const defaultAttributeTemplate = {
|
|
117
|
-
context: '<saml:Attribute Name="{Name}" NameFormat="{NameFormat}"
|
|
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
|
-
|
|
121
|
-
|
|
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
|
-
|
|
133
|
-
|
|
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
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
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
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
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
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
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
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
attributeStatementBuilder(
|
|
216
|
-
|
|
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
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
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
|
-
|
|
235
|
-
|
|
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
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
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
|
-
|
|
286
|
-
|
|
287
|
-
|
|
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
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
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
|
-
|
|
523
|
-
|
|
524
|
-
|
|
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
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
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
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
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
|
package/build/src/libsaml.js.map
CHANGED
|
@@ -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;
|
|
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.
|
|
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
|
-
"
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"xml": "^
|
|
41
|
-
"xml-
|
|
42
|
-
"
|
|
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
|
+
}
|
package/src/binding-post.ts
CHANGED
|
@@ -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=
|
|
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);
|