我目前正在致力于将 Amazon Cognito 设置为我的 Web 和移动应用程序的唯一 SAML 身份提供商 (IdP)。我找到的大多数文档和指南(例如此 AWS 博客)都侧重于将 Cognito 与 Microsoft Entra ID 或 ADFS 等第三方 IdP 集成。
但是,我的要求是直接使用 Amazon Cognito 作为 SAML IdP,而不涉及任何第三方 IdP。具体来说,我需要以下方面的指导:
设置 Cognito 用户池并将其配置为 SAML IdP。 在 Cognito 中配置 SAML 设置(ACS URL、实体 ID 等)。 使用 SAML 断言将属性从 Cognito 映射到应用程序。 测试并验证 SAML 流程是否可以在没有第三方 IdP 的情况下正常工作。 我已经阅读了有关在 Amazon Cognito 中使用 SAML 的官方文档,但它似乎倾向于涉及外部 IdP 的设置。
是否有任何具体文档、示例或社区指南涵盖将 Cognito 纯粹设置为 SAML IdP?任何详细的步骤、提示或资源将不胜感激。
Amazon Cognito 本身不是 SAML 提供商。相反,它充当 SAML 消费者。 Cognito 可以与支持 SAML 的身份提供商 (IdP) 集成,从而允许它根据基于 SAML 的外部 IdP 对用户进行身份验证,但 Cognito not 旨在成为一个 SAML 提供商,以允许其他人根据 AWS Cognito 用户池对用户进行身份验证。 所以没有任何技巧可以让这项工作发挥作用。 AWS 需要添加功能才能使其成为 SAML 提供商,除非/直到他们这样做,否则您将无法将其纳入其中。
相反,如果您直接反对 Cognito,您可以使用类似于用户池身份验证流程下所示的身份验证流程,但这些选项不是 SAML。