如何让 AWS 充当 OIDC 或 SAML 提供商的 IdP?

How can I make AWS work as IdP for OIDC or SAML provider?

我计划使用 IAMcognito 身份池作为 OIDC 或 SAML 提供商。 我的目标是在没有任何第三方集成的情况下使用 AWS 作为提供商。

我查看了 IAM Identity Provider 并通读了文档 https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html 但似乎我需要为 SAML 提供 Metadata document 或为来自第三方的 OIDC 提供 Provider URL and audience提供商。

有没有办法使用 AWS 作为提供商?我不想使用任何其他提供商。

如果这是您的高级目标:

  • 通过 OAuth 2.0 和 Open ID Connect 为 UI 和 API 提供现代标准安全性

那么 Cognito 用户池可能就是您要找的。这将提供基于标准的端点,以便您可以以首选方式对 UI 和 API 进行编码。

如果我没记错的话,身份池是一种非标准解决方案,用于获取用于访问用户特定 AWS 资源的 AWS 特定令牌。您应该能够在需要时通过让用户池与身份池对话来使用它。

注释

从应用程序的角度来看,第一步通常总是找到 Open ID Connect 元数据端点 - UI 和 API 中的许多安全库都会使用它。

Cognito 不是最成熟的系统,并且有一些烦恼和局限性。因此,让您的解决方案基于 OAuth 2.0 和 Open ID Connect 是值得的,这样您就有最好的长期选择 - 并且可以在需要时更换供应商 ...