关于 compliance-engineering
面向开发者的合规工程参考,涵盖 SOC 2、HIPAA、GDPR、PCI-DSS 和 FedRAMP 等框架。内容包括代码层控制、消费级 Web 应用默认做法及合规自动化。
主要功能
- 01SOC 2 审计日志与访问控制
- 02HIPAA 技术保障措施
- 03GDPR 同意管理与数据最小化
- 04PCI-DSS 控制建议
- 05合规即代码示例
适用场景
- 01规划处理 PHI 的应用保障措施
- 02审查同意与数据保留做法
- 03为支付卡数据应用控制措施
- 04自动收集合规基础设施证据
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ travisjneuman/ .claude --skill compliance-engineering安装后在 Claude Code 中输入/compliance-engineering确认已加载。
详细介绍
合规工程
框架概览
| 框架 | 适用范围 | 主要要求 |
|---|---|---|
| SOC 2 | 服务组织 | 安全性、可用性、保密性、隐私性、处理完整性 |
| HIPAA | 医疗保健数据(PHI) | 加密、访问控制、审计日志、BAA |
| GDPR | 欧盟个人数据 | 同意、数据最小化、删除权、DPIA |
| PCI-DSS | 支付卡数据 | 网络分段、加密、访问控制、日志记录 |
| FedRAMP | 美国政府云 | NIST 800-53 控制措施、持续监控、授权 |
在代码中实现 SOC 2 控制措施
审计日志
interface AuditEvent {
timestamp: string;
actor: { id: string; role: string; ip: string };
action: string;
resource: { type: string; id: string };
outcome: 'success' | 'failure';
metadata: Record<string, unknown>;
}
async function auditLog(event: AuditEvent): Promise<void> {
// Write-once, append-only storage (immutable)
await auditStore.append({
...event,
timestamp: new Date().toISOString(),
hash: computeChainHash(event), // tamper detection
});
}
访问控制
// RBAC with principle of least privilege
const permissions = {
admin: ['read', 'write', 'delete', 'manage_users'],
editor: ['read', 'write'],
viewer: ['read'],
} as const;
function authorize(user: User, action: string, resource: Resource): boolean {
const allowed = permissions[user.role];
if (!allowed?.includes(action)) {
auditLog({ action, outcome: 'failure', actor: user, resource });
return false;
}
return true;
}
HIPAA 技术保障措施
- 静态加密: 使用 AES-256 加密 PHI 存储,使用 AWS KMS / GCP KMS 管理密钥
- 传输加密: 必须使用 TLS 1.2+,移动端采用证书固定
- 访问控制: 用户 ID 唯一、自动注销、必须启用 MFA
- 审计控制: 记录所有 PHI 访问,日志至少保留 6 年,并确保防篡改
- 数据备份: 加密备份、经过测试的恢复流程、地理冗余
GDPR 实施
同意管理
interface ConsentRecord {
userId: string;
purpose: string;
granted: boolean;
timestamp: string;
source: 'explicit' | 'legitimate_interest';
withdrawable: boolean;
}
// Data Subject Access Request (DSAR)
async function handleDSAR(userId: string, type: 'access' | 'erasure' | 'portability') {
switch (type) {
case 'access': return await exportUserData(userId); // JSON/CSV
case 'erasure': return await deleteUserData(userId); // Right to be forgotten
case 'portability': return await exportPortableData(userId); // Machine-readable
}
}
数据最小化
- 仅收集实现声明用途所需的数据
- 设置保留策略并自动删除数据
- 尽可能进行假名化处理(将 PII 替换为令牌)
- 对分析数据进行匿名化处理(k-匿名性、差分隐私)
面向消费者的 Web 应用默认设置
- 自托管字体、CSS 和 JS(
next/font、@fontsource/*);页面浏览时不加载fonts.googleapis.com(GDPR IP 泄露;慕尼黑法院,2022 年) - 未获同意前关闭会话回放(Sentry Replay、PostHog、Hotjar、Clarity、LogRocket、FullStory),并屏蔽输入内容(加州 CIPA 窃听索赔)
- 营销邮件:包含退订链接、List-Unsubscribe 标头和实体邮寄地址(CAN-SPAM)
- 订阅:在按钮旁注明续订条款、获取明确同意、支持在线取消(加州 ARL、FTC ROSCA)
- 年龄政策:不得面向儿童,或在收集 13 岁以下用户的数据前取得可验证的家长同意(COPPA)
- 用户公开上传内容:向版权局注册指定 DMCA 代理(每 3 年续期),并提供通知与移除页面(17 U.S.C. 512(c))
PCI-DSS 关键控制措施
- 绝不存储 CVV/CVC——任何时候、以任何形式都不行
- 对卡号进行令牌化——使用 Stripe/Braintree 令牌,而非原始 PAN
- 网络分段——隔离持卡人数据环境(CDE)
- 每季度进行漏洞扫描——由 ASV 批准的外部扫描
- 渗透测试——至少每年一次,并在重大变更后进行
合规即代码
- 策略即代码: Open Policy Agent(OPA)、AWS Config Rules、Azure Policy
- 基础设施合规: Terraform Sentinel、Checkov、tfsec
- 运行时合规: 使用 Falco 监控容器,使用 AWS GuardDuty
- 证据收集: 自动收集截图和日志作为审计证据
评论
支持 Markdown