如何处理 ADFS 中 AWS Cognito 的 public 密钥

What to do with AWS Cognito's public key in ADFS

我正在尝试将 AWS Cognito 配置为在 dotnet core 3.1 MVC 应用程序中作为 SAML 提供程序与 ADFS 一起使用。我相信我已经正确配置了 ADFS 和 Cognito,因为我可以使用 ADFS 中的用户登录应用程序。我正处于可以登录和注销的阶段,但是在注销 ADFS 时会抛出错误:

MSIS7054: The SAML logout did not complete properly.

这仍然会使用户退出 ADFS。我想我已经将范围缩小到 ADFS 收到的需要签名的 SAML 注销消息。参考文献:here, here and

Amazon describe how to do this from there end

To set up the SAML IdP to add a signing certificate: To get the certificate containing the public key which will be used by the identity provider to verify the signed logout request, choose Show signing certificate under Active SAML Providers on the SAML dialog under Identity providers on the Federation console page.

但是,我不确定如何获取他们的 public 密钥(这只是一个字符串)并将其提供给 ADFS。我似乎唯一能找到的是一个加密选项卡,它带有一个证书文件(我需要做一些转换吗?)。我试过 this,将密钥放入 .cert 文件并添加到 ADFS 的中继方加密选项卡,但这没有用。

如有任何帮助,我们将不胜感激。

谢谢,亚当

我最终解决了这个问题,方法是从 AWS Cognito 获取密钥并将其放入 .crt 文件中,就像 this 所说的那样,而是将其添加到签名选项卡而不是加密选项卡ADFS 中的中继信任方属性。