Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 如何使用特定的referer策略和CloudFront分发来改进S3 bucket的防刮功能_Amazon S3_Dns_Amazon Cloudfront_Http Referer - Fatal编程技术网

Amazon s3 如何使用特定的referer策略和CloudFront分发来改进S3 bucket的防刮功能

Amazon s3 如何使用特定的referer策略和CloudFront分发来改进S3 bucket的防刮功能,amazon-s3,dns,amazon-cloudfront,http-referer,Amazon S3,Dns,Amazon Cloudfront,Http Referer,目前的情况是,我有一个CloudFront发行版,其中一个OAI指向我的应用程序中提供的图像存储桶。我已经成功地制定了bucket策略,只允许cloudfront发行版的getObject操作,并且只允许使用Referer头从我的应用程序域访问 问题是,如果有人设法从脚本中伪造引用者,他们可以访问这些图像,制作一个抓取机器人并获取我的所有数据。是否有任何方法可以阻止访问,甚至只能从我自己的应用程序访问 应用程序的业务是新闻机构和摄影师之间的照片新闻市场,因此我的目标是为这些限制提供一个廉价且可扩

目前的情况是,我有一个CloudFront发行版,其中一个OAI指向我的应用程序中提供的图像存储桶。我已经成功地制定了bucket策略,只允许cloudfront发行版的getObject操作,并且只允许使用Referer头从我的应用程序域访问

问题是,如果有人设法从脚本中伪造引用者,他们可以访问这些图像,制作一个抓取机器人并获取我的所有数据。是否有任何方法可以阻止访问,甚至只能从我自己的应用程序访问


应用程序的业务是新闻机构和摄影师之间的照片新闻市场,因此我的目标是为这些限制提供一个廉价且可扩展的机制,因为我一次管理大量照片,因此每个照片的预签名请求都是负载密集型的,使用防火墙可能非常昂贵。

如果你不想使用签名URL方法,您可以尝试其他方法-


您可以添加一个自定义标题以及传统标题,如referer等-这将处理99%的刮取,而可能很少有刮取者会复制此标题,对于他们,您可以简单地开始阻止他们。

我想知道是否可以在bucket中添加一个策略,只允许对我的应用程序的lambda中的资源执行操作(以某种方式通过lambda的arn前缀限制访问)。我现在真的不知道该怎么做。我会尝试一些东西,回来时会有关于这件事的最新消息。