AWS自定义授权lambda批准Api网关服务代理操作?

时间:2017-06-05 13:11:39

标签: amazon-web-services aws-lambda aws-api-gateway

我想创建一个Api Gateway路由,它通过服务代理连接到s3。

只有具有特定权限(存储在DynamoDb表中)的经过身份验证和授权的用户(来自Cognito Userpool)才能上传文件。

由于我没有使用S3作为服务代理而不是lambda,是否可以在Custom Authorizer lambda中对Dynamodb进行代码检查? (在验证令牌并且在发送成功回调之前)。

查询很简单,根据Cognito用户唯一ID,我在用户有权上传的情况下检查用户表。

我不希望通过lambda函数完成上传,因为有些文件很大。

由于

1 个答案:

答案 0 :(得分:2)

你也可以考虑

  • 在S3存储桶前面设置CloudFront。
  • 在API网关上使用IAM授权。
  • 编写一个Lambda端点,用于检查请求上下文中的Cognito ID与Dynamodb。
  • 从Lambda返回Signed URL,以便授权用户直接从浏览器客户端将文件上传到S3。
相关问题