Lau*_*ren 6 amazon-web-services aws-lambda aws-api-gateway
我有一个带有自定义授权者 lambda 的 AWS API Gateway (v2/HTTP) 设置。
网关的路由键类似于:
ANY /{project_id}/{uri+}
Run Code Online (Sandbox Code Playgroud)
我的授权者 lambda 检查给定用户是否有权获得所提供的权限project_id。不幸的是,这意味着我无法缓存结果,因为获得一个项目 ID 授权的用户随后会为其他项目 ID 缓存该授权。
我看到AWS 为网关提供了一个“身份源”参数,它将用作缓存密钥:
您可以通过指定authorizerResultTtlInSeconds 为Lambda 授权方启用缓存。当为授权者启用缓存时,API Gateway 使用授权者的身份源作为缓存密钥。如果客户端在配置的 TTL 内的身份源中指定相同的参数,API Gateway 将使用缓存的授权方结果,而不是调用您的 Lambda 函数。
因此,我想使用我的“project_id”路径参数,但对于我来说,是否可以使用支持的身份源来实现这一点并不明显:
是否可以project_id使用这些表达式来引用路径参数?
| 归档时间: |
|
| 查看次数: |
3104 次 |
| 最近记录: |