Skills DirectorySearch all skills ↗

AI agent skill · by @cas-bigdatalab

Data Masking

数据脱敏工具。对结构化数据中的敏感字段进行字符遮蔽脱敏,保留字段位置并用遮蔽字符替换手机号、身份证、姓名、邮箱、银行卡等内容。 当用户提到数据脱敏、隐私保护、敏感字段遮蔽、PII 处理等需求时使用此 skill。 与 privacy_token_remover 区分开:本 skill 负责字段级遮蔽,不负责删除文本中的隐私标识,也不负责生成假数据。

Archived 2026-10-23 · Source updated 2026-09-22. Check the original repository for the latest version.

SKILL.md instructions

# Data Masking 数据脱敏 Skill

## 功能概述

本 skill 用于对结构化数据中的敏感信息进行脱敏处理,使用字符遮蔽模式(如 `138****5678`)。
如需用假数据替换敏感信息,请使用 data_faker。

## 触发条件

当用户请求以下任务时,应使用此 skill:
- 数据脱敏
- 隐私保护
- 敏感信息处理
- 数据匿名化
- PII(个人可识别信息)处理

## 核心参数说明

### 必需参数
- `--input`:输入文件路径
- `--output`:输出文件路径
- `--masking_rules`:脱敏规则,格式为 `字段名:脱敏类型`

### 可选参数
- `--mask_char`:脱敏替换字符,默认 `*`

## 输入文件格式

支持 CSV、TSV、Excel 等结构化数据。

## 使用方法

```bash
python scripts/run_data_masking.py \
  --input data.csv \
  --output masked.csv \
  --masking_rules "phone:phone,idcard:idcard,name:name"
```

```bash
python scripts/run_data_masking.py \
  --input data.csv \
  --output masked.csv \
  --masking_rules "email:email" \
  --mask_char "#"
```

## 输出示例

```
[OK] Data masking completed!
   Input file: data.csv
   Output file: masked.csv
   Total rows: 1000
   Masking rules applied:
     - phone: phone (1000 values masked)
     - idcard: idcard (1000 values masked)
     - name: name (1000 values masked)
   Mode: mask (char: *)
```

## 脱敏效果示例

| 原始值 | 脱敏后 |
|--------|--------|
| `13812345678` | `138****5678` |
| `110101199001011234` | `110101********1234` |
| `张三` | `张*` |
| `test@example.com` | `te**@example.com` |
| `user@example.com` | `us**@example.com` |

## 环境要求

```bash
pip install pandas openpyxl
```

## 注意事项

1. 脱敏规则格式必须正确:`字段名:脱敏类型`
2. 字段名必须存在于数据中
3. 脱敏后的数据不可逆,请备份原始数据
4. 建议在测试环境验证脱敏效果后再处理生产数据

Related skills