如何禁用AWS API Gateway按密钥缓存失效的Require authorization?CloudFormation部署操作
关于AWS API Gateway缓存失效授权设置的问题解答
1. 控制台禁用「按密钥缓存失效」的Require authorization设置
- 登录AWS控制台,进入API Gateway服务
- 选中目标API,切换到「Stages」标签页
- 选择需要配置的阶段,点击「Cache」标签
- 在「Per-key cache invalidation」区域,取消勾选「Require authorization」选项
- 点击「Save Changes」完成设置
2. CloudFormation部署时禁用该选项
在CloudFormation模板中,通过AWS::ApiGateway::Stage资源的MethodSettings属性配置即可:
- 针对目标API阶段,在
MethodSettings的Settings字段里,将RequireAuthorizationForCacheControl设为false,同时确保EnableCacheInvalidation设为true(启用按密钥缓存失效)。
示例模板片段:
Resources: MyApiProdStage: Type: AWS::ApiGateway::Stage Properties: RestApiId: !Ref MyRestApi StageName: prod CacheClusterEnabled: true CacheClusterSize: '0.5' MethodSettings: - ResourcePath: "/*" HttpMethod: "*" Settings: EnableCacheInvalidation: true RequireAuthorizationForCacheControl: false
你的API已通过OAuth+Cognito做身份保护,无需额外添加InvalidateCache策略,禁用该授权要求后,授权用户即可通过发送带Cache-Control: max-age=0的请求触发缓存失效。
内容的提问来源于stack exchange,提问作者Erik Finnman
相关产品推荐
相关产品推荐

