You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Amplify API密钥存储位置及安全授权方案咨询

AWS Amplify API Key 相关问题解答

API密钥的前端存储位置

  • 当你通过Amplify CLI初始化项目并添加GraphQL API后,API密钥会自动写入本地的amplifyconfiguration.json(或aws-exports.js,取决于初始化配置)文件,该文件会被打包进React Native应用的代码包中。
  • 若使用Amplify Studio配置API,密钥会自动同步到本地配置文件,无需手动添加。

API密钥防暴露方法

  • 务必将amplifyconfiguration.json/aws-exports.js加入.gitignore,禁止提交到Git等版本控制系统,避免密钥泄露到公共仓库。
  • 生产环境建议用环境变量注入:借助react-native-dotenv这类库,将密钥存在环境变量中,再在配置文件中引用,避免硬编码。
  • 限制密钥权限与有效期:在AWS AppSync控制台给API密钥设置较短的过期时间,到期及时更换;同时配置细粒度的IAM策略,缩小密钥可操作的资源范围。

替代API Key的高安全授权方案

Amazon Cognito 用户池

这是最常用的用户级授权方案,支持注册、登录,通过JWT令牌实现权限控制:

  • 执行amplify add auth添加Cognito用户池,更新GraphQL API的授权模式为AMAZON_COGNITO_USER_POOLS。
  • 前端通过Auth.signIn()完成用户登录后,Datastore会自动使用用户的JWT令牌发起请求,实现用户级别的数据访问控制。

IAM授权

适合信任的客户端或后端服务,通过AWS IAM角色/用户的临时凭证签名请求:

  • 配置IAM策略限制API的访问权限,前端通过Amplify Auth模块获取临时IAM凭证,Datastore会自动用该凭证签名请求。

OIDC授权

适配已有外部身份提供商(如Google、Facebook)的场景:

  • 在AWS AppSync中配置OIDC身份提供商,用户通过第三方登录获取令牌后,即可用该令牌访问API,实现统一身份认证。

内容的提问来源于stack exchange,提问作者hewa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 20:55:19