我在记录ADFS SSO时遇到此问题。“加密的SAML响应没有解密密钥”。从另一个帐户登录成功。有人能帮我这个忙。我正在使用Express和passport-saml工作。
这就是我被卡住的地方。
node_modules/passport-saml/lib/passport-saml/saml.js为空。在第623:15行
if (encryptedAssertions.length == 1) {
if (!self.options.decryptionPvk)
throw new Error('No decryption key for encrypted SAML response');
var encryptedAssertionXml = encryptedAssertions[0].toString();发布于 2019-09-16 23:23:20
SAML中的加密方式:身份提供者使用服务提供者的公钥对SAML响应的某些元素进行加密。服务提供商使用与用于加密的公钥相对应的私钥进行解密。换句话说,服务提供商需要拥有密钥对-私钥和公钥-才能使此用例工作。
上述密钥对的私钥需要通过passport-saml中的decryptionPvk参数进行配置。由于断言是加密的,但在decryptionPvk中找不到私钥,passport-saml抱怨道。
删除ADFS端的加密或将私钥提供给passport-saml。
https://stackoverflow.com/questions/57924059
复制相似问题