背景与价值
base标签可影响相对URL解析与外跳路径,存在被注入篡改的风险。设置base-uri可限制基础URL来源。
统一规范
- 默认限制:`base-uri 'self'`。
- 例外:仅白名单域允许变更。
核心实现
头设置
```ts
type Res = { setHeader: (k: string, v: string) => void }
function setBaseUri(res: Res, allow: string[] = []) {
const v = [`base-uri 'self'`, ...allow].join(' ')
res.setHeader('Content-Security-Policy', v)
}
```
落地建议
- 对全站设置 `base-uri 'self'` 并最小化例外域,防止解析与外跳被篡改。
验证清单
- 是否统一下发 `base-uri 'self'`;例外域是否最小化并受控。

发表评论 取消回复