首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS认知中的身份池是否仅用于应用程序管理?

AWS认知中的身份池是否仅用于应用程序管理?
EN

Stack Overflow用户
提问于 2022-06-26 06:03:43
回答 1查看 33关注 0票数 0

我读过关于AWS的认知,我知道用户池是一个身份提供者,用于对您的移动应用程序、网站和管理用户进行身份验证。还有身份池,用于授权用户访问您的aws资源,如IAM、S3等。

因此,我的问题是:身份池是否用于应用程序管理,如devs、开发操作或任何需要管理/更新应用程序的人?这就是身份池的工作吗?

EN

回答 1

Stack Overflow用户

发布于 2022-06-27 02:37:56

身份池不一定用于应用程序管理。我可以告诉你我的团队是如何在我的上一份工作中使用它们的。(可能还有其他用例,但我怀疑我们的用例是相当常见的。)

我们正在开发一个应用程序,用户需要上传和下载我们将存储在S3中的文件。出于各种原因,我们希望客户端与S3直接交互以进行文件传输(而不是通过我们必须维护的API层推动文件)。身份池正是为这种场景创建的。基本上,它们允许客户端将身份令牌交换为一组临时IAM凭据(access_key_id + secret_access_key + session_token)。临时IAM凭据是客户端与AWS交互或为AWS的本地服务之一创建签名HTTP请求所需的凭据。

被交换为凭据的身份令牌可以由认知用户池提供,但也可以来自不同的身份提供者。例如,我们使用Auth0作为身份提供者。但我们仍然希望我们的客户直接与S3进行交互,为此,我们需要认知身份池。

我们利用的身份池的一个非常酷的特性是科尼托所称的主体标记映射,这是将Auth0中的声明(属性)映射的能力--向会话标记提供身份令牌,这些类似于附加到临时凭据会话的环境变量。然后,您可以编写包含会话标记的IAM策略来执行基于属性的访问控制。我们编写了提供细粒度访问控制的S3桶策略,其中只允许每个用户读取和写入包含自己用户id的前缀。

我不得不说,认知中的用户池和身份池之间的区别让每个人都感到困惑,AWS的文档在这一点上并不总是那么有用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72759245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档