如何配置AWS CloudFront,通过带通配符的签名Cookie访问S3存储桶
问题背景
在AWS S3存储服务中实现细粒度访问控制,首选方案是结合AWS CloudFront与签名URL。
配置要点
CloudFront有对应的配置流程,需采用官方推荐的最新设置而非旧版配置,配置完成后要将生成的策略复制到S3中。
常规签名URL的局限
使用Python搭配最新官方库可以生成签名URL,但这种方式需要为S3存储桶中的每个对象单独生成签名URL,无法直接实现某个目录下所有对象的批量访问授权。
通配符访问的解决方案
如果要为S3存储桶中某目录下的所有对象提供通配符访问权限,必须使用自定义策略。目前网上多数Python实现示例依赖的库已过时,建议参考AWS官方文档中的自定义策略实现逻辑来编写代码。
Lambda依赖问题解决
在Amazon Linux 2的EC2实例上构建Lambda函数时,使用Python cryptography包会出现缺失库的错误,该问题可通过AWS Klayers解决。
固定策略的Cookie实现参考
存在针对固定策略(即只为单个S3文件生成专属签名URL)的Cookie实现方案,可参考相关技术博客的实现思路。
内容的提问来源于stack exchange,提问作者user3179198
相关产品推荐
相关产品推荐

