diff --git a/docs/source/zh-cn/basics/middleware.md b/docs/source/zh-cn/basics/middleware.md index 1fa41ff0ff..b210bc65ff 100644 --- a/docs/source/zh-cn/basics/middleware.md +++ b/docs/source/zh-cn/basics/middleware.md @@ -173,7 +173,7 @@ module.exports = { }; ``` -### match & ignore +### match 和 ignore match 和 ignore 支持的参数都一样,只是作用完全相反,match 和 ignore 不允许同时配置。 diff --git a/docs/source/zh-cn/core/security.md b/docs/source/zh-cn/core/security.md index c9c0206f1e..62471729d3 100644 --- a/docs/source/zh-cn/core/security.md +++ b/docs/source/zh-cn/core/security.md @@ -39,7 +39,9 @@ exports.security = { ### match 和 ignore -如果只想开启针对某一路径,则配置 match 选项,例如只针对 `/example` 开启 CSP +match 和 ignore 使用方法和格式与[中间件通用配置](../basics/middleware.md#match和ignore)一致。 + +如果只想开启针对某一路径,则配置 match 选项,例如只针对 `/example` 开启 CSP: ```js exports.security = { @@ -50,7 +52,6 @@ exports.security = { }, }, }; - ``` 如果需要针对某一路径忽略某安全选项,则配置 ignore 选项,例如针对 `/example` 关闭 xframe,以便合作商户能够嵌入我们的页面: @@ -64,10 +65,18 @@ exports.security = { }, }, }; - ``` -**注意:不能同时存在 match 和 ignore ,否则会报错。** +如果要针对内部 ip 关闭部分安全防范: + +```js +exports.security = { + csrf: { + // 判断是否需要 ignore 的方法,请求上下文 context 作为第一个参数 + ignore: ctx => isInnerIp(ctx.ip), + }, +} +``` 下面我们会针对具体的场景,来讲解如何使用框架提供的安全方案进行 Web 安全防范。