
Amazon Cognito Identity
Amazon Cognito Identity
AWS Cognito Identity Pools API 给前端应用临时 AWS 凭证:身份联邦、guest 用户、AWS 资源直接访问。
前端获得 AWS 短期凭证,无需后端代理
和 Cognito User Pools 容易混淆(User Pools 是用户库,Identity Pools 是凭证发放)
CreateIdentityPool 创建 pool,配置 authenticated 和 guest IAM role。前端调 GetCredentialsForIdentity 拿临时 access key。
可用率 · 30 天窗口
GitHub 活跃度
关于这个 API
Cognito Identity Pools 解决一个特殊问题:前端 app 想直接访问 AWS 资源(如 S3 上传文件、DynamoDB 写数据),但不能把长期 AWS access key 嵌入 app 代码(会泄漏)。Identity Pool 充当「身份转换」中间层——用户用 Cognito User Pools / Facebook / Google 等登录拿到 token,前端把 token 换成临时 AWS 凭证(15 分钟到 12 小时),用这个凭证调 AWS 服务。可以为「已登录用户」和「guest 用户」分配不同的 IAM role,实现细粒度权限控制(比如已登录用户能上传自己的 user-{id} 路径下文件,guest 只能读 public/ 下文件)。注意和 User Pools 的区别:User Pools 是「用户身份库」(注册、登录、用户属性),Identity Pools 是「AWS 凭证发放器」。两者常常配合使用。
你可以做什么
- 1移动 app 直接访问 S3/DynamoDB 不通过后端
- 2guest 用户分配只读权限
- 3联邦 Facebook/Google 登录到 AWS 凭证
- 4管理已登录用户和 guest 用户不同权限
优劣对比
优点
- 前端获得 AWS 短期凭证,无需后端代理
- 支持多种身份提供商(Cognito User Pools、Facebook、Google、SAML)
- 细粒度 IAM policy 控制
注意事项
- 和 Cognito User Pools 容易混淆(User Pools 是用户库,Identity Pools 是凭证发放)
- 权限设计复杂(要写 IAM trust policy)
快速开始
CreateIdentityPool 创建 pool,配置 authenticated 和 guest IAM role。前端调 GetCredentialsForIdentity 拿临时 access key。
常见问题
Identity Pools 和 User Pools 区别?+
User Pools 管用户身份(账号库),Identity Pools 把身份换成 AWS 临时凭证。一个项目通常同时用两个。
guest 用户怎么实现?+
Identity Pool 配置 "allow unauthenticated identities",前端不带 token 也能拿凭证(用 guest role 的权限)。
技术细节
- 认证方式
- unknown
- 计费
- unknown
- 协议
- REST
- SDK
- javascript, swift, kotlin, java, python
- 响应时间
- 60 ms
- 上次巡检
- 2026/6/26 06:22:15
更多来自 Amazon Web Services 的 API
AWS IAM Access Analyzer API 分析 IAM 资源策略找潜在的过度授权或外部访问,主动识别安全风险。
Alexa for Business帮助企业在组织内使用Alexa设备和服务。
Amazon API Gateway帮助开发者构建安全且可扩展的移动和网页应用后端。
用于创建、管理和快速部署应用配置的服务。
Amazon AppFlow 提供云端数据流管理和集成服务。支持不同云服务间的数据传输和同步。
Amazon AppIntegrations 服务用于配置和重用与外部应用的连接。
Amazon AppStream 2.0 提供云端应用程序流式传输服务,支持远程访问和管理。
Amazon Athena 是一种交互式查询服务,允许使用标准 SQL 直接分析存储在 Amazon S3 中的数据。