AWS HTTP API 网关作为私有 S3 存储桶的代理
AWS HTTP API Gateway as a proxy to private S3 bucket
我有一个包含许多小文件的私有 S3 存储桶。我想使用 AWS API 网关作为代理公开存储桶的内容(仅限只读访问)。 S3 存储桶和 AWS API 网关属于同一个 AWS 账户并且在同一个 VPC 和可用区中。
AWS API 网关有两种类型:HTTP API、REST API。 REST API 的配置选项更高级,此外,REST API 比 HTTP API 支持更多的 AWS 服务集成。事实上,我上面描述的用例完全涵盖在 REST API 的 the documentation tabs 之一中。然而,REST API 有一个巨大的缺点——它比 HTTP API 贵了大约 70%,价格带有更多的配置选项,但就目前而言,我只需要一个——与 S3 服务集成这就是为什么我认为这种类型的服务不太适合我的用例。我开始搜索 HTTP API 是否可以与 S3 集成,到目前为止我还没有找到任何实现它的方法。
我尝试了 creating/editing 与 HTTP API 网关实例关联的服务相关角色,但无法编辑这些角色(仅限只读访问)。至于现在,我不知道下一步应该搜索哪里,或者我的目标是否可以使用 HTTP 实现 API.
我是 AWS HTTP API 的粉丝。
我每天都使用一个 API,它的用途非常相似。我这样做的方法是使用与 APIs 路径集成的 AWS Lambda 函数。
对我有用的是:
定义您的 API 路径,并将它们与 AWS Lambda 函数集成。
让您的集成 Lambda 函数 return 为您希望通过 API 调用提供访问权限的任何对象签名 URL。
有几种不同的方法可以将您想要的对象的名称传递给服务于 API 调用的 Lambda 函数。
这是简短的回答。我计划稍后给出更长的答案。但这对我有用。
我有一个包含许多小文件的私有 S3 存储桶。我想使用 AWS API 网关作为代理公开存储桶的内容(仅限只读访问)。 S3 存储桶和 AWS API 网关属于同一个 AWS 账户并且在同一个 VPC 和可用区中。
AWS API 网关有两种类型:HTTP API、REST API。 REST API 的配置选项更高级,此外,REST API 比 HTTP API 支持更多的 AWS 服务集成。事实上,我上面描述的用例完全涵盖在 REST API 的 the documentation tabs 之一中。然而,REST API 有一个巨大的缺点——它比 HTTP API 贵了大约 70%,价格带有更多的配置选项,但就目前而言,我只需要一个——与 S3 服务集成这就是为什么我认为这种类型的服务不太适合我的用例。我开始搜索 HTTP API 是否可以与 S3 集成,到目前为止我还没有找到任何实现它的方法。
我尝试了 creating/editing 与 HTTP API 网关实例关联的服务相关角色,但无法编辑这些角色(仅限只读访问)。至于现在,我不知道下一步应该搜索哪里,或者我的目标是否可以使用 HTTP 实现 API.
我是 AWS HTTP API 的粉丝。 我每天都使用一个 API,它的用途非常相似。我这样做的方法是使用与 APIs 路径集成的 AWS Lambda 函数。
对我有用的是:
定义您的 API 路径,并将它们与 AWS Lambda 函数集成。
让您的集成 Lambda 函数 return 为您希望通过 API 调用提供访问权限的任何对象签名 URL。
有几种不同的方法可以将您想要的对象的名称传递给服务于 API 调用的 Lambda 函数。
这是简短的回答。我计划稍后给出更长的答案。但这对我有用。