RocketChat/Rocket.Chat · error · Error
Too many Issuers
Error message
Too many Issuers
What it means
Error "Too many Issuers" thrown in RocketChat/Rocket.Chat.
Source
Thrown at apps/meteor/server/lib/saml/lib/parsers/Response.ts:400
return false;
}
} catch (e) {
SAMLUtils.log(e instanceof Error ? e.message : String(e));
return false;
}
if (!this.signatureCoversElement(sig, expectedId)) {
SAMLUtils.log('Failed to validate SAML signature: signed reference does not match the processed element');
return false;
}
return true;
}
private getIssuer(assertion: Element): any {
const issuers = assertion.getElementsByTagNameNS('urn:oasis:names:tc:SAML:2.0:assertion', 'Issuer');
if (issuers.length > 1) {
throw new Error('Too many Issuers');
}
return issuers[0];
}
private getSubject(assertion: Element): XmlParent {
let subject: XmlParent = assertion.getElementsByTagNameNS('urn:oasis:names:tc:SAML:2.0:assertion', 'Subject')[0];
const encSubject = assertion.getElementsByTagNameNS('urn:oasis:names:tc:SAML:2.0:assertion', 'EncryptedID')[0];
if (typeof encSubject !== 'undefined') {
const options = { key: this.serviceProviderOptions.privateKey, disallowDecryptionWithInsecureAlgorithm: false };
xmlenc.decrypt(encSubject.getElementsByTagNameNS('*', 'EncryptedData')[0], options, (err, result) => {
if (err) {
SAMLUtils.error({ err });
}
subject = new xmldom.DOMParser().parseFromString(result, 'text/xml');
});
}View on GitHub (pinned to b2c16d5842)
Solutions
- Check the IdP so the response contains a single Issuer element; inspect the raw SAML response.
When it happens
Trigger: Thrown when a SAML Response contains more than one Issuer node.
Common situations: See trigger scenarios.
AI-assisted analysis of RocketChat/Rocket.Chat@b2c16d5842 (2026-08-18).
Data as JSON: /api/errors/7f3eb9accda35732.
Report an issue: GitHub.