🛡️ HIPAA 美国医疗健康护栏 (hipaa-guard) v1.0.0
概述
hipaa-guard 是面向出海美国、处理健康数据的医疗科技产品(远程医疗 / 医疗 SaaS / 健康 App / 患者门户)的合规护栏。它在文案、隐私政策、产品描述发布前,实时检测 其中触发 HIPAA 适用的表述与医疗隐私违规用语,并按风险等级输出命中与整改建议。
HIPAA(Health Insurance Portability and Accountability Act)由美国 HHS 执法,核心是: 任何触及"受保护健康信息"(PHI) 的 covered entity(医疗机构、健康计划、清算中心)或其 business associate,必须签 BAA、落实管理/物理/技术三层安全防护、保障个人访问权, 并在 PHI 泄露时履行通知义务。违规可由 HHS OCR 处以高额罚款。
与"事后深度审计"类工具不同,护栏解决的是事前问题:发布前这段文案会不会把产品 带进 HIPAA 适用范围、有没有踩到"明文存 PHI""无 BAA 即共享"的硬红线。二者互补—— 护栏做日常高频拦截,深度审计做上线前全面体检。
本护栏免费使用,纯本地运行,零网络请求,文本输入即可评估。
快速开始
# 检测一段文案(默认文本格式)
python3 scripts/guard.py --text "We store PHI unencrypted and share health records with third parties"
# 从标准输入读取(适合管道 / Agent 调用)
echo "patient data without BAA" | python3 scripts/guard.py --stdin
# 结构化 JSON 输出(Agent 消费)
python3 scripts/guard.py --text "..." --format json
# 列出触发/违规类别与依据
python3 scripts/guard.py --list-categories
Agent 调用约定
护栏设计为 Agent 主动调用的检测工具,典型接法:
发布前护栏(文案 → 发布):把待发布文案交给护栏,发现 high 级命中(如 PHI 未加密、 无 BAA 即共享 PHI)则拦截修改;medium 级提示人工确认(如"处理 PHI"触发 HIPAA 适用, 需确认是否已签 BAA、落实加密与个人访问权)。
护栏返回结构化裁决(--format json),关键字段:
| 字段 | 含义 |
|---|---|
decision |
clean(无命中)/ flagged(有命中) |
risk_level |
本次最高风险等级 high/medium/low/none |
finding_count |
命中条数(已去重) |
findings[] |
每条命中的术语、类别、等级、整改建议与位置 |
检测范围(术语规则包 v1.0.0)
| 类别 | 风险 | 典型触发/违规表述 | 主要依据 |
|---|---|---|---|
| 处理受保护健康信息(PHI) | high | protected health information、PHI、patient data、medical records、患者健康数据、病历信息 | HIPAA 适用前提 |
| 缺少商业伙伴协议(BAA) | high | no business associate agreement、without BAA、无商业伙伴协议、未签BAA | 隐私规则 § 164.504(e) |
| PHI 未加密 | high | store PHI unencrypted、plaintext health records、明文存储病历 | 安全规则 § 164.312(a) |
| 第三方披露 PHI | medium | sell patient data、向第三方共享病历 | 隐私规则 § 164.502 |
| 缺失泄露通知 | medium | no breach notification、未通知数据泄露 | 泄露通知规则 § 164.400 |
| 限制个人访问权 | medium | deny patient access、拒绝患者访问 | 隐私规则 § 164.524 |
规则与内核分离:检测内核(scripts/guard.py)不含任何行业规则;规则集中在
scripts/rules/terms.py。新增触发词/违规词只需在 TERMS 中追加一行,内核逻辑完全复用。
安全与约束
- 纯本地运行,无任何网络请求、遥测或回调
- 无
eval/exec/ 动态 import;规则通过显式列表加载,便于审计 - 不写入用户指定之外的文件;不修改自身代码
- 全部为可读 Python,无混淆、无二进制依赖
⚠️ 法律声明
免责条款
使用本 hipaa-guard 护栏前请仔细阅读以下条款:
- 非法律建议:本工具提供的检测与建议仅供参考,不构成法律建议或合规证明,不具备法律效力。
- 无绝对保证:医疗隐私表述形态多样,基于词表的检测无法保证 100% 识别,可能存在漏报或误报。 用户不应将其作为唯一或最终的合规保障手段。
- 按原样提供:本工具按"原样"(AS IS)提供,不作任何明示或暗示的保证。
- 责任限制:在法律允许的最大范围内,开发者对使用或无法使用本工具产生的任何损失不承担责任。
- 用户责任:用户对其产品的医疗隐私合规性负全责,重大合规决策应咨询具备美国法执业资格的法律顾问。
- 数据安全:本工具本地运行,处理数据留在用户设备上。
知识产权
本工具基于 MIT 许可证开源。所引用的法律法规原文属政府公开信息,不受著作权法保护,引用仅供对照,请以官方发布版本为准。
使用限制
- ✅ 允许:作为出海医疗产品发布前的辅助检测手段、合规体系的一环
- ❌ 禁止:作为法律证据或合规证明提交监管部门、替代专业法律咨询、用于规避法律义务、移除本声明后分发
管辖法律
本声明受中华人民共和国法律管辖。因本工具引发的争议,应先友好协商;协商不成的,提交开发者所在地有管辖权的法院解决。
Skill 自身合规声明(自身合规检查)
作为一款合规护栏工具,我们自身的合规与安全姿态同样接受审视:
| # | 要求 | 本 skill 的自身姿态 | 结论 |
|---|---|---|---|
| 1 | 权限管理 | 不请求任何系统 / 文件 / 网络权限,纯本地只读解析文本 | ✅ 最小权限 |
| 2 | 工具调用 | 零外部调用、零 API 请求,无 MCP / 函数调用依赖 | ✅ 白名单即"零调用" |
| 3 | 数据使用 | 输入文本仅驻留内存,不落盘、不上传、不持久化;无任何遥测 | ✅ 数据最小化 |
| 4 | 高风险动作 | 不执行任何动作,仅输出评估报告,无自主行为 | ✅ 无自主动作 |
| 5 | 行为监测 | 纯函数式检测,无副作用、无后台进程,输入输出可复现 | ✅ 可观测 |
| 6 | 异常阻断 | 无外部依赖,不触碰用户运行时,不会越界或失控 | ✅ 边界封闭 |
| 7 | 紧急关停 | 单次进程执行,进程结束即完全停止,无残留 | ✅ 即刻停止 |
平台发布合规自查(SkillHub 审核视角)
- 无硬编码 IP / 域名:脚本仅使用 Python 标准库,不发起任何网络请求,规避此前审核驳回的
socket/ssl类风险。 - 逻辑透明:全部检测规则为声明式词表(
scripts/rules/terms.py),可读可审,无混淆、无隐藏行为。 - 零依赖:
requirements.txt为空,仅依赖 Python 标准库,不安装任何第三方包。 - 无持久化 / 无遥测:不写外部日志、不采集任何使用数据。
边界重申
本 skill 做医疗隐私触发/违规表述的实时检测,是"发布前核对清单",不声称对 HIPAA 全部要求做穷尽审查, 也不替代专业法律意见或完整的 HIPAA 合规审计。
版本
当前版本:v1.0.0
