AWS App-sync token能否设置有效期超过1年或永久有效?
AWS AppSync API密钥有效期问题解决方案
AWS AppSync的API密钥本身存在官方硬限制,最长有效期仅支持设置为自创建/更新之日起365天,无法直接设置为永久有效期或超过1年的时长。
无需人工定期修改有效期的替代方案
- 优先更换认证方式(生产环境推荐)
API密钥本身是AWS设计用于开发测试场景的临时认证方式,生产环境建议替换为IAM权限认证、Amazon Cognito用户池/身份池认证模式,Amplify Datastore原生适配上述认证方式,此类认证不存在固定的全局密钥有效期限制,权限通过IAM角色策略、Cognito会话规则管控,无需定期轮换全局密钥,可长期稳定使用。 - 自动化密钥轮换(必须使用API密钥场景)
如果业务场景必须保留API密钥认证,可以通过AWS服务实现全自动轮换,完全无需人工操作:- 配置AWS EventBridge定时规则,每年固定在现有密钥到期前30天触发执行
- 关联Lambda函数执行以下操作:调用AppSync接口创建新的有效期1年的API密钥,同步更新所有需要调用AppSync的客户端/服务端配置,旧密钥到期后自动删除
常用操作命令示例:
# 创建新的1年有效期API密钥 aws appsync create-api-key --api-id <你的AppSync API ID> --expires $(( $(date +%s) + 31536000 ))
注意:不建议使用非官方手段篡改密钥有效期,可能存在安全风险,且AWS可能自动清理不符合规则的密钥导致业务中断。
内容的提问来源于stack exchange,提问作者kinjal dhamat
相关产品推荐
相关产品推荐

