PII 检测与脱敏
PII 安全护栏会检测请求和响应文本中的敏感数据。它可以将每个命中内容替换为脱敏占位符并继续处理,也可以阻断请求或响应。
PII 检测完全在网关内执行,不会调用外部审核服务。命中的原始值不会写入网关日志、用量记录或错误响应。
本指南将创建一个 PII 安全护栏,用于脱敏内置检测器命中的内容;随后添加自定义模式,并验证脱敏与阻断行为。
准备工作
请先准备以下内容:
- 阅读安全护栏行为,了解钩子点和执行模式。
- 以下配置路径之一:
- AISIX Cloud,其中包含环境、已接入的网关和具有写权限范围的 Admin Token。对于 On-Premises,请按照 AISIX Cloud 快速入门操作。如需申请混合云访问权限,请联系 API7。
- 加载声明式
resources.yaml文件的开源 AISIX 网关。
- 可以发送 Chat Completions 请求的模型别名和调用方 API Key。
curl。AISIX Cloud 路径还会使用jq。
内置检测器
在 detectors 中列出检测器的 type 即可启用。其中 china_id_card 和 bank_card 这两个检测器会在匹配前验证校验和,避免随机数字串被误判并脱敏。
type | 匹配内容 |
|---|---|
email | 邮箱地址 |
china_mobile | 中国大陆手机号码 |
china_id_card | 中国大陆居民身份证号码(ISO 7064 校验和) |
bank_card | 银行卡号(Luhn 校验和) |
us_ssn | 美国社会安全号码 |
ip_address | IPv4 地址 |
api_key | API Key 和 Token(OpenAI、AWS、GitHub、Slack、Google 签名) |
jwt | JSON Web Token |
private_key | PEM 私钥块 |
命中动作
每次命中都会解析为以下动作之一:
mask:将命中的文本片段替换为[EMAIL_REDACTED]等脱敏占位符。输入脱敏后继续调用上游模型,输出脱敏后继续返回调用方。block:以422 Unprocessable Entity拒绝请求或响应。
default_action 会设置所有检测器和自定义模式的默认动作。也可以在单个检测器或自定义模式上设置 action 覆盖默认动作。