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

如何配置CSP头部URL白名单以匹配bb*类特定模式?

解决CSP白名单允许所有bb*类URL的问题

嘿,我来帮你搞定这个CSP配置的坑!你遇到的问题是想匹配aa.bb1.dd.com、aa.bb2.dd.com这类以bb开头的子域名对吧?下面给你两种可行的方案,还有要注意的细节:

方案一:使用通配符匹配完整子域名段

CSP里的通配符*只能替换完整的域名标签(也就是两个点之间的部分),所以要覆盖所有aa.bb*.dd.com格式的域名,你可以用:

aa.*.dd.com

这个规则会匹配所有aa.xxx.dd.com格式的域名,自然包含你需要的aa.bb1.dd.com、aa.bb2.dd.com等等。

注意事项:

  • 如果需要限制协议(比如只允许http或https),记得加上协议前缀:
    http://aa.*.dd.com https://aa.*.dd.com
    
  • 这个规则会同时允许其他非bb开头的子域名(比如aa.xyz.dd.com),如果你的业务场景只需要bb前缀的域名,这个方案范围会略宽,但如果是内部可控的域名,这是最方便的实现方式。

方案二:逐个添加已知的bb*域名

如果你的bb*域名是有限且固定的(比如只有bb1、bb2、bb3),那可以直接把它们都加到CSP白名单里:

aa.bb1.dd.com aa.bb2.dd.com aa.bb3.dd.com

这种方式更精确,不会意外允许其他无关域名,适合域名数量少且固定的场景。

常见报错原因排查

你之前配置出现报错,大概率是这几个问题:

  • 用了aa.bb*.dd.com这种中间部分的通配符:CSP不支持在域名标签中间加*(比如bb*),*只能替换整个标签(比如用*代替bb1)。
  • 没加协议前缀导致匹配范围不符合预期:如果你的URL是https开头,但只写了aa.*.dd.com,可能会被浏览器拦截(取决于CSP的严格程度)。
  • 通配符位置错误:比如写了*.aa.bb*.dd.com,这是无效的,CSP只允许最左边的通配符(比如*.dd.com)或者单个标签的通配符(比如aa.*.dd.com)。

完整配置示例

如果是给script-src指令配置允许这些域名,完整的CSP头部可以写成:

Content-Security-Policy: script-src 'self' http://aa.*.dd.com https://aa.*.dd.com;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 09:16:16