mcpField
C
compliance-engineering

compliance-engineering

github.com/travisjneuman安全10697 次安装1 天前更新
代码仓库

关于 compliance-engineering

面向开发者的合规工程参考,涵盖 SOC 2、HIPAA、GDPR、PCI-DSS 和 FedRAMP 等框架。内容包括代码层控制、消费级 Web 应用默认做法及合规自动化。

主要功能

  1. 01SOC 2 审计日志与访问控制
  2. 02HIPAA 技术保障措施
  3. 03GDPR 同意管理与数据最小化
  4. 04PCI-DSS 控制建议
  5. 05合规即代码示例

适用场景

  1. 01规划处理 PHI 的应用保障措施
  2. 02审查同意与数据保留做法
  3. 03为支付卡数据应用控制措施
  4. 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