You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置AWS S3 Bucket仅允许自定义域名(WordPress站点)访问?

配置AWS S3 Bucket仅允许WordPress网站访问的解决方案

直接用Referer限制S3访问时容易踩细节坑,以下是经过验证的配置步骤和问题排查点:

一、修正S3 Bucket访问策略

替换以下策略中的your-bucket-name、your-wordpress-domain.com和你的IAM用户ARN,这是核心配置:

{
    "Version": "2012-10-17",
    "Id": "RestrictBucketToWordPress",
    "Statement": [
        {
            "Sid": "AllowWordPressReferer",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::your-bucket-name/*",
            "Condition": {
                "StringLike": {
                    "aws:Referer": [
                        "https://your-wordpress-domain.com/*",
                        "https://www.your-wordpress-domain.com/*"
                    ]
                }
            }
        },
        {
            "Sid": "AllowIAMAccess",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:user/your-admin-iam-user"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::your-bucket-name",
                "arn:aws:s3:::your-bucket-name/*"
            ]
        }
    ]
}
  • 第一个规则:仅允许携带你的WordPress域名Referer的请求读取Bucket内文件,通配符*匹配所有子页面路径,同时覆盖www和非www域名(根据你的实际情况调整)。
  • 第二个规则:保留你的IAM账号对Bucket的完全管理权限,避免配置后自己无法上传/修改文件。

二、WordPress侧配置与排查

  • 确认WordPress中引用S3资源的链接是直接指向S3(或关联的CloudFront)的,且请求会正确携带域名Referer。
  • 如果使用了CDN(如CloudFront),需在CDN配置中开启转发Referer请求头到S3,否则S3无法获取Referer信息导致策略失效。

三、常见踩坑点

  • 协议匹配:策略中的Referer要和你的网站协议一致(http/https),比如网站用https就不能只写http域名。
  • 浏览器Referer限制:部分用户浏览器或隐私插件会阻止发送Referer,这种场景下访问会被拒绝,若需兼容可考虑使用CloudFront签名URL,但仅域名限制场景下Referer是最优方案。
  • 资源范围:策略中的Resource必须包含/*(即Bucket下所有对象),仅写Bucket ARN无法限制文件访问。
  • 测试验证:用浏览器开发者工具查看Network请求的Referer头,确认是否和策略中的规则匹配,这是快速定位问题的关键。

内容的提问来源于stack exchange,提问作者Kumar Kelash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 17:52:12