@umacloud/knowledge 1.0.15 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/00-governance/governance-capabilities.md +1 -1
- package/00-governance/knowledge-map.md +4 -6
- package/agentic-delivery/01-standards/context-engineering-for-delivery.md +94 -0
- package/agentic-delivery/01-standards/eval-driven-delivery.md +90 -0
- package/agentic-delivery/01-standards/generated-code-failure-modes.md +91 -0
- package/agentic-delivery/01-standards/production-readiness-scorecard.md +79 -0
- package/agentic-delivery/01-standards/self-improving-memory-and-regression-sets.md +80 -0
- package/agentic-delivery/01-standards/spec-as-contract.md +88 -0
- package/agentic-delivery/01-standards/test-discipline-for-generated-code.md +94 -0
- package/agentic-delivery/01-standards/test-integrity-and-anti-gaming.md +92 -0
- package/agentic-delivery/01-standards/verifier-critic-pattern.md +89 -0
- package/ai/01-standards/app-runtime-model-configurable.md +76 -0
- package/ai/agent-evaluation-benchmark.md +4 -6
- package/ai/ai-agent-memory-context-management.md +4 -6
- package/ai/ai-cost-capacity-optimization-playbook.md +4 -6
- package/ai/ai-data-security-and-compliance-playbook.md +4 -6
- package/ai/ai-domain-index-and-checklist.md +4 -6
- package/ai/ai-governance-maturity-model.md +4 -6
- package/ai/ai-model-selection-and-routing-strategy.md +4 -6
- package/ai/ai-observability-and-oncall-runbook.md +4 -6
- package/ai/ai-rag-engineering-playbook.md +4 -6
- package/ai/ai-red-team-and-safety-evaluation.md +4 -6
- package/ai/ai-release-readiness-and-rollback-gate.md +4 -6
- package/ai/llm-agent-engineering-deep-dive.md +4 -6
- package/ai/prompt-and-tool-guardrails.md +4 -6
- package/api/01-standards/api-versioning-and-deprecation-policy.md +100 -0
- package/architecture/01-standards/configuration-and-environment-management.md +104 -0
- package/architecture/01-standards/domain-driven-design-complete.md +105 -0
- package/architecture/02-playbooks/migration-playbook.md +1 -5
- package/architecture/02-playbooks/system-design-playbook.md +1 -5
- package/architecture/adr-template-and-examples.md +4 -6
- package/architecture/api-gateway-deep-dive.md +1 -1
- package/architecture/configuration-management.md +95 -1158
- package/architecture/distributed-transactions.md +1 -1
- package/architecture/microservices-complete.md +1 -1
- package/architecture/resilience-and-disaster-patterns.md +87 -27
- package/architecture/service-governance.md +1 -1
- package/architecture/system-architecture-deep-dive.md +4 -6
- package/backend/01-standards/cjk-in-exports-and-documents.md +107 -0
- package/backend/01-standards/dependency-and-supply-chain-hygiene.md +90 -0
- package/backend/01-standards/django-complete.md +2 -2
- package/backend/01-standards/error-handling-taxonomy.md +88 -0
- package/backend/01-standards/idempotency-and-safe-retries.md +101 -0
- package/backend/01-standards/message-queue-patterns.md +96 -374
- package/backend/01-standards/nestjs-complete.md +23 -23
- package/backend/01-standards/queue-and-consumer-reliability.md +98 -0
- package/backend/01-standards/resilience-and-fault-tolerance.md +101 -0
- package/backend/01-standards/transactions-and-concurrency-control.md +92 -0
- package/cicd/cicd-blueprint-deep-dive.md +4 -6
- package/cicd/release-readiness-gate.md +78 -27
- package/cloud-native/01-standards/container-security.md +1 -5
- package/cloud-native/01-standards/kubernetes-complete.md +1 -5
- package/cloud-native/02-playbooks/gitops-with-argocd.md +1 -5
- package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +3 -7
- package/cloud-native/02-playbooks/multicloud-governance.md +1 -5
- package/cloud-native/02-playbooks/serverless-patterns.md +1 -5
- package/cloud-native/02-playbooks/service-mesh-playbook.md +1 -5
- package/cloud-native/03-checklists/container-security-checklist.md +1 -5
- package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +1 -5
- package/cloud-native/04-antipatterns/container-antipatterns.md +1 -5
- package/cloud-native/04-antipatterns/k8s-antipatterns.md +1 -5
- package/cloud-native/05-cases/case-k8s-migration.md +1 -5
- package/cloud-native/05-cases/case-k8s-scaling.md +1 -5
- package/cloud-native/05-cases/case-k8s-security-incident.md +1 -5
- package/cloud-native/06-glossary/cloud-native-glossary.md +1 -5
- package/compliance/01-standards/audit-logging-and-evidence.md +111 -0
- package/compliance/01-standards/privacy-and-compliance-readiness.md +119 -0
- package/data/01-standards/elasticsearch-complete.md +2 -2
- package/data/01-standards/postgresql-complete.md +8 -8
- package/data/01-standards/redis-complete.md +11 -11
- package/data/data-governance-and-modeling-deep-dive.md +4 -6
- package/data-engineering/01-standards/kafka-complete.md +22 -22
- package/design/ui-full-lifecycle-cross-platform-playbook.md +1 -1
- package/design/ux-system-deep-dive.md +4 -6
- package/design-systems/00-craft-rules.md +1 -1
- package/design-systems/bold-geometric.md +1 -1
- package/design-systems/brutalist-bold.md +1 -1
- package/design-systems/editorial-clean.md +1 -1
- package/design-systems/glass-aurora.md +1 -1
- package/design-systems/modern-minimal.md +1 -1
- package/design-systems/premium-luxury.md +1 -1
- package/design-systems/soft-warm.md +1 -1
- package/design-systems/tech-utility.md +1 -1
- package/development/00-governance/document-template.md +3 -3
- package/development/01-standards/code-review-and-pr-hygiene.md +85 -0
- package/development/01-standards/golang-complete.md +2 -2
- package/development/01-standards/python-design-patterns.md +2 -2
- package/development/01-standards/typescript-advanced-types.md +2 -2
- package/development/03-checklists/production-readiness-checklist.md +6 -6
- package/development/09-maturity/quarterly-audit-template.md +3 -5
- package/development/11-ui-excellence/ui-aesthetic-system.md +3 -5
- package/development/13-implementation-assets/knowledge-gates-execution.md +3 -5
- package/development/api-contract-and-versioning-guide.md +4 -6
- package/development/api-governance-complete.md +4 -6
- package/development/backend-engineering-complete.md +4 -6
- package/development/code-review-quality-complete.md +11 -34
- package/development/concurrency-reliability-complete.md +4 -6
- package/development/database-engineering-complete.md +4 -6
- package/development/engineering-effectiveness-complete.md +4 -6
- package/development/engineering-standards-deep-dive.md +4 -6
- package/development/frontend-engineering-complete.md +4 -6
- package/development/performance-capacity-complete.md +4 -6
- package/development/refactor-migration-complete.md +4 -6
- package/development/refactoring-and-techdebt-playbook.md +4 -6
- package/development/security-in-development-complete.md +4 -6
- package/devops/01-standards/docker-complete.md +2 -2
- package/devops/01-standards/terraform-complete.md +3 -3
- package/experts/architect/contract-first-api-design.md +140 -0
- package/experts/product-manager/prd-template-and-structure.md +144 -0
- package/experts/product-manager/requirements-engineering-ears.md +133 -0
- package/experts/qa-lead/test-plan-template.md +127 -0
- package/frontend/01-standards/accessibility-acceptance-gate.md +91 -0
- package/frontend/01-standards/accessibility-complete.md +3 -3
- package/frontend/01-standards/i18n-and-localization.md +1 -1
- package/frontend/01-standards/react-hooks-complete.md +33 -33
- package/frontend/01-standards/ui-states-and-resilient-data-fetching.md +97 -0
- package/frontend/01-standards/vue3-complete.md +2 -2
- package/high-quality-engineering-playbook.md +4 -6
- package/incident/02-playbooks/chaos-engineering-playbook.md +1 -5
- package/incident/postmortem-and-response-deep-dive.md +4 -6
- package/mobile/01-standards/flutter-complete.md +3 -8
- package/mobile/01-standards/react-native-complete.md +3 -8
- package/mobile/02-playbooks/mobile-performance.md +3 -9
- package/mobile/03-checklists/mobile-release-checklist.md +3 -5
- package/mobile/04-antipatterns/mobile-antipatterns.md +3 -5
- package/observability/01-standards/observability-and-slo-operations.md +88 -0
- package/observability/01-standards/observability-standards.md +2 -0
- package/operations/01-standards/cost-and-finops-engineering.md +84 -0
- package/operations/01-standards/production-readiness-review.md +103 -0
- package/operations/01-standards/prometheus-monitoring-complete.md +2 -2
- package/operations/aiops-anomaly-detection.md +4 -8
- package/operations/capacity-planning.md +4 -8
- package/operations/chaos-engineering.md +4 -8
- package/operations/incident-command-system.md +4 -6
- package/operations/observability-complete.md +4 -8
- package/operations/slo-sli-playbook.md +4 -8
- package/operations/sre-operations-deep-dive.md +4 -6
- package/package.json +1 -1
- package/performance/01-standards/performance-budgets-and-load-testing.md +91 -0
- package/product/feature-prioritization-framework.md +97 -35
- package/product/kpi-and-metric-tree.md +69 -26
- package/product/product-discovery-and-prd-deep-dive.md +4 -6
- package/release-engineering/01-standards/feature-flag-lifecycle.md +92 -0
- package/release-engineering/01-standards/progressive-delivery-and-release.md +92 -0
- package/release-engineering/02-playbooks/release-rollback-and-recovery-playbook.md +99 -0
- package/release-engineering/03-checklists/release-rollback-readiness-checklist.md +61 -0
- package/release-engineering/04-antipatterns/release-antipatterns.md +63 -0
- package/security/01-standards/authorization-and-access-control.md +94 -0
- package/security/01-standards/owasp-top10-complete.md +2 -2
- package/security/02-playbooks/incident-response-security-playbook.md +1 -5
- package/security/02-playbooks/penetration-testing-playbook.md +1 -5
- package/security/compliance-automation.md +1 -1
- package/security/container-security.md +1 -1
- package/security/devsecops-complete.md +1 -1
- package/security/sast-dast-sca.md +1 -1
- package/security/secrets-management.md +1 -1
- package/security/security-architecture-deep-dive.md +4 -6
- package/security/threat-modeling-stride-playbook.md +4 -6
- package/seed-templates/auth-system.md +1 -1
- package/seed-templates/blog-content.md +1 -1
- package/seed-templates/dashboard.md +1 -1
- package/seed-templates/docs-site.md +1 -1
- package/seed-templates/e-commerce.md +1 -1
- package/seed-templates/saas-landing.md +1 -1
- package/seed-templates/settings-page.md +1 -1
- package/testing/01-standards/ci-test-gates-and-coverage.md +93 -0
- package/testing/01-standards/contract-testing-and-api-contracts.md +102 -0
- package/testing/01-standards/test-data-and-ephemeral-environments.md +105 -0
- package/testing/02-playbooks/e2e-testing-playbook.md +1 -5
- package/testing/risk-based-test-matrix.md +75 -25
- package/testing/testing-strategy-deep-dive.md +4 -6
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: audit-logging-and-evidence
|
|
3
|
+
title: 审计日志与合规证据规范(商业级必读)
|
|
4
|
+
domain: compliance
|
|
5
|
+
category: 01-standards
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [audit-log, audit-trail, evidence, tamper-evident, accountability, who-did-what, retention, compliance, 审计日志, 审计追踪, 合规证据, 防篡改, 商业级]
|
|
8
|
+
quality_score: 95
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
|
+
---
|
|
11
|
+
# 审计日志与合规证据规范(商业级必读)
|
|
12
|
+
|
|
13
|
+
> 普通日志回答"系统发生了什么",审计日志回答"**谁**在**何时**对**什么**做了**什么**、结果如何"。
|
|
14
|
+
> 当出现纠纷、越权、数据泄露、监管问询时,审计日志是你唯一能自证清白或定位责任的证据。
|
|
15
|
+
> 它和应用日志是两套东西:审计日志要**防篡改、可追溯、长期保留、独立于业务日志**。事后补不出来——必须从一开始就记。
|
|
16
|
+
|
|
17
|
+
## 1. 审计日志 ≠ 应用日志
|
|
18
|
+
|
|
19
|
+
| 维度 | 应用日志 | 审计日志 |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| 目的 | 排障、可观测 | 问责、合规、取证 |
|
|
22
|
+
| 内容 | 系统行为、调用链 | 主体对客体的安全相关操作 |
|
|
23
|
+
| 可改 | 可轮转、可删 | 防篡改、不可改、定期保留 |
|
|
24
|
+
| 读者 | 工程师 | 审计员、安全、监管、法务 |
|
|
25
|
+
| 保留 | 几天~几周 | 数月~数年(按合规要求)|
|
|
26
|
+
|
|
27
|
+
两者**分开存储**:审计事件可以同时进可观测体系,但合规证据要有独立、受控、防篡改的留存。
|
|
28
|
+
|
|
29
|
+
## 2. 必须记录的事件
|
|
30
|
+
|
|
31
|
+
凡是"安全相关、合规相关、影响他人数据/权限"的操作都要记:
|
|
32
|
+
|
|
33
|
+
- **认证**:登录成功/失败、登出、MFA 校验、会话创建/失效、密码/密钥变更。
|
|
34
|
+
- **授权**:权限/角色变更、提权、访问被拒、敏感资源访问。
|
|
35
|
+
- **数据**:对个人/敏感数据的访问、导出、修改、删除(尤其批量与跨用户操作)。
|
|
36
|
+
- **配置/管理**:安全配置变更、功能开关变更(尤其 kill-switch)、用户/账号增删、密钥轮换。
|
|
37
|
+
- **特权操作**:管理员/运维的高权限动作、以他人身份操作(impersonation)、数据库直连改数。
|
|
38
|
+
- **合规动作**:数据主体请求(导出/删除/更正)的受理与完成。
|
|
39
|
+
|
|
40
|
+
## 3. 每条审计记录的必备字段(5W)
|
|
41
|
+
|
|
42
|
+
| 字段 | 含义 |
|
|
43
|
+
|---|---|
|
|
44
|
+
| who(主体)| 操作者身份:用户/服务账号ID、角色;以他人身份操作时记**真实操作者 + 被代理者** |
|
|
45
|
+
| when(时间)| 高精度、可信时间源、统一时区(UTC),不可被客户端伪造 |
|
|
46
|
+
| what(动作 + 客体)| 做了什么操作、对哪个资源(资源类型 + ID),变更前后值(敏感值脱敏/只记引用)|
|
|
47
|
+
| where(来源)| 来源 IP、设备、会话ID、请求ID(贯穿应用日志便于关联)|
|
|
48
|
+
| result(结果)| 成功/失败/被拒;失败也要记(被拒的越权尝试本身就是关键信号)|
|
|
49
|
+
|
|
50
|
+
补充:记录**关联ID**(request_id / trace_id)把审计事件和应用链路打通;失败的敏感操作**和成功的一样重要**。
|
|
51
|
+
|
|
52
|
+
## 4. 防篡改与完整性
|
|
53
|
+
|
|
54
|
+
审计日志的价值全在"没被改过"。要做到:
|
|
55
|
+
|
|
56
|
+
- **只追加(append-only)**:审计日志只写不改不删;应用账号对审计存储**没有**修改/删除权限。
|
|
57
|
+
- **权限隔离**:写审计的身份 ≠ 能读全部审计的身份 ≠ 能管理留存的身份;管理员也不能悄悄删自己的痕迹。
|
|
58
|
+
- **完整性校验**:用哈希链/链式校验/独立签名等手段,使任何删改可被检出(tamper-evident)。
|
|
59
|
+
- **外移**:审计日志尽快写到独立、受控的存储(与被审计系统不同的信任域),防止入侵者就地销毁证据。
|
|
60
|
+
- **时间可信**:用可信时间源,防止时间戳被回拨伪造。
|
|
61
|
+
|
|
62
|
+
## 5. 审计日志本身要合规
|
|
63
|
+
|
|
64
|
+
- **脱敏**:审计记录里**不存**密码、token、卡号明文;记录"改了哪个字段"而非把敏感值原样落进审计。
|
|
65
|
+
- **最小必要**:记录足够定位责任,但不把敏感数据复制进审计造成二次暴露面。
|
|
66
|
+
- **访问受控**:谁能查审计日志本身要受控、要留痕(查审计的动作也是审计事件)。
|
|
67
|
+
- **保留期**:按合规要求定保留期限(常以年计),到期前不可删,到期后按策略处理。
|
|
68
|
+
|
|
69
|
+
## 6. 合规证据(不只是日志)
|
|
70
|
+
|
|
71
|
+
认证审计(SOC2 / ISO 27001 / 行业监管等)要的是"能证明你确实做了控制"的**证据**,审计日志是其中一类。还要留:
|
|
72
|
+
|
|
73
|
+
| 证据类型 | 内容 |
|
|
74
|
+
|---|---|
|
|
75
|
+
| 操作审计 | who-did-what 审计日志(本规范主体)|
|
|
76
|
+
| 同意记录 | 用户同意:谁、何时、对哪版条款、通过什么方式(见 `privacy-and-compliance-readiness`)|
|
|
77
|
+
| 数据主体请求 | 导出/删除/更正请求的受理与**完成**记录 |
|
|
78
|
+
| 访问评审 | 定期"谁有权访问敏感资源、是否仍需要"的评审记录 |
|
|
79
|
+
| 变更/发布 | 谁、何时、发了什么版本、对应 commit(见 `release-engineering/`)|
|
|
80
|
+
| 控制落实 | 安全扫描、权限配置、加密配置等控制项的执行证据 |
|
|
81
|
+
|
|
82
|
+
证据要**可检索、可导出、带时间线**——审计员问"给我看 X 时间 Y 操作的记录",你要能立刻调出。
|
|
83
|
+
|
|
84
|
+
## 7. 与其他规范的关系
|
|
85
|
+
|
|
86
|
+
- 隐私/数据主体权利的工程化见 `compliance/01-standards/privacy-and-compliance-readiness`。
|
|
87
|
+
- 谁能做什么(授权模型)见 `security/01-standards/authorization-and-access-control`。
|
|
88
|
+
- 应用侧可观测/结构化日志见 `observability/`(审计是其特殊子集,但留存与防篡改要求更高)。
|
|
89
|
+
- 数据泄露响应见 `incident/` 与 `security/02-playbooks/incident-response-security-playbook`。
|
|
90
|
+
|
|
91
|
+
## 8. 反模式(出现即不合格)
|
|
92
|
+
|
|
93
|
+
1. **不记或漏记**:敏感操作(删数据、提权、导出)没有审计,事后查无可查。
|
|
94
|
+
2. **审计可被改/可被删**:应用账号能改写审计日志,入侵者一进来就抹痕迹。
|
|
95
|
+
3. **只记成功不记失败**:被拒的越权尝试(最该警觉的信号)没留下。
|
|
96
|
+
4. **审计混进应用日志**:跟着业务日志几天就轮转没了,达不到保留要求。
|
|
97
|
+
5. **审计里存明文敏感值**:把密码/卡号/token 原样落进审计,制造新暴露面。
|
|
98
|
+
6. **没有"谁操作的"**:只记"某记录被删",记不出是谁删的。
|
|
99
|
+
7. **代理操作不记真实人**:以他人身份操作只记被代理者,查不到真正动手的人。
|
|
100
|
+
8. **合规当临上线补文档**:平时不留证据,审计前临时编造,经不起追溯。
|
|
101
|
+
|
|
102
|
+
## 9. 最低交付 checklist
|
|
103
|
+
|
|
104
|
+
- [ ] 审计日志与应用日志分离,独立、受控、长期保留。
|
|
105
|
+
- [ ] 认证/授权/数据/配置/特权/合规等安全相关操作全部记审计。
|
|
106
|
+
- [ ] 每条记录含 who/when/what/where/result,失败操作同样记录。
|
|
107
|
+
- [ ] 代理操作记录真实操作者 + 被代理者;带关联ID可与应用链路打通。
|
|
108
|
+
- [ ] 审计只追加、应用账号无删改权、有完整性校验、尽快外移到独立信任域。
|
|
109
|
+
- [ ] 审计记录脱敏,不存明文敏感值;查审计本身也受控并留痕。
|
|
110
|
+
- [ ] 审计保留期按合规要求设定,到期前不可删。
|
|
111
|
+
- [ ] 同意记录、数据主体请求、访问评审、变更发布等合规证据可检索可导出。
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: privacy-and-compliance-readiness
|
|
3
|
+
title: 隐私与合规就绪规范(商业级必读)
|
|
4
|
+
domain: compliance
|
|
5
|
+
category: 01-standards
|
|
6
|
+
difficulty: intermediate
|
|
7
|
+
tags: [privacy, pii, data-classification, consent, retention, audit, data-residency, dsar, 合规, 隐私, 商业级]
|
|
8
|
+
quality_score: 95
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
|
+
---
|
|
11
|
+
# 隐私与合规就绪规范(商业级必读)
|
|
12
|
+
|
|
13
|
+
> 处理用户数据就要承担法律与信任责任。商业级产品在写第一行处理个人数据的代码之前,
|
|
14
|
+
> 就要把"收集什么、为什么、存多久、谁能看、用户能不能删"想清楚并落到工程里。
|
|
15
|
+
> 合规不是上线前补的文档,而是从数据模型就内建的能力(privacy by design)。
|
|
16
|
+
|
|
17
|
+
## 1. 核心原则
|
|
18
|
+
|
|
19
|
+
- **数据最小化**:只收集达成目的**必需**的数据,不"先存着以后也许有用"。字段越少,风险越小。
|
|
20
|
+
- **目的限定**:数据只能用于收集时声明的目的;换用途要重新取得依据/同意。
|
|
21
|
+
- **默认隐私(privacy by default)**:默认采集最少、默认最严权限、默认不共享;让用户主动开启而非默认开启。
|
|
22
|
+
- **可问责**:能证明你做了合规(记录、审计、控制映射),而不只是声称。
|
|
23
|
+
- **设计即合规**:在数据模型、接口、日志设计阶段就考虑分类、保留、删除、最小化,而非事后补。
|
|
24
|
+
|
|
25
|
+
## 2. 数据分类与盘点
|
|
26
|
+
|
|
27
|
+
先盘清"系统里有哪些数据、敏感度多高",否则无从保护。
|
|
28
|
+
|
|
29
|
+
| 分级 | 示例 | 处理要求 |
|
|
30
|
+
|---|---|---|
|
|
31
|
+
| 公开 | 营销文案、公开文档 | 无特殊要求 |
|
|
32
|
+
| 内部 | 业务配置、聚合统计 | 访问控制 |
|
|
33
|
+
| 个人数据(PII)| 姓名、邮箱、手机、地址、设备/账号标识 | 加密、最小化、可删除、可导出 |
|
|
34
|
+
| 敏感个人数据 | 支付卡、健康、生物特征、精确位置、身份证件、未成年人数据 | 强化加密、严格最小授权、单独同意、更短保留 |
|
|
35
|
+
| 凭据/密钥 | 密码、token、API key | 单向哈希/密管,绝不明文、绝不入日志 |
|
|
36
|
+
|
|
37
|
+
要点:维护**数据盘点(哪些字段属于哪级、存在哪、流向哪)**;新增字段时定级。**绝不**记录密码/卡号/token 明文;日志/报错里对 PII 脱敏。
|
|
38
|
+
|
|
39
|
+
## 3. 同意与合法依据
|
|
40
|
+
|
|
41
|
+
- 收集个人数据要有**合法依据**(用户同意、履行合同所必需、法定义务等),并能说明是哪一种。
|
|
42
|
+
- 同意要**明确、可知情、可撤回**:默认不勾选、分用途细分、撤回和给予一样容易。
|
|
43
|
+
- 记录同意:谁、何时、对什么版本的条款、通过什么方式同意——可审计。
|
|
44
|
+
- 对未成年人、敏感数据有更严格的同意与年龄校验要求。
|
|
45
|
+
|
|
46
|
+
## 4. 数据主体权利(必须工程化实现)
|
|
47
|
+
|
|
48
|
+
用户对自己的数据有这些权利,产品要有**真实可执行的流程**,而非客服手动翻库:
|
|
49
|
+
|
|
50
|
+
| 权利 | 工程实现 |
|
|
51
|
+
|---|---|
|
|
52
|
+
| 访问/导出 | 能按用户聚合其所有个人数据并以通用格式导出(数据可携带) |
|
|
53
|
+
| 更正 | 用户可更新其数据,且更新传播到副本/缓存 |
|
|
54
|
+
| 删除(被遗忘)| 能定位某用户的所有数据(含备份、日志、下游、缓存)并删除/匿名化;记录删除完成 |
|
|
55
|
+
| 限制/反对 | 能停止特定处理(如停止精准营销)而不删账号 |
|
|
56
|
+
| 撤回同意 | 撤回后停止相应处理 |
|
|
57
|
+
|
|
58
|
+
难点:删除要覆盖**所有副本**(备份、数据仓库、日志、第三方)。设计阶段就要让"按用户删除"可行——用户ID贯穿、可定位、可级联,而不是数据散落无法回收。
|
|
59
|
+
|
|
60
|
+
## 5. 保留与生命周期
|
|
61
|
+
|
|
62
|
+
- 每类数据定**保留期限**,到期自动删除或匿名化,**不无限留存**。
|
|
63
|
+
- 实现 TTL/定期清理任务;备份也要遵守保留策略(不能"主库删了备份留十年")。
|
|
64
|
+
- 区分"删除"与"匿名化":统计需要保留时,做**不可逆匿名化/去标识**(去掉可识别字段,确保不能反推个人)。
|
|
65
|
+
- 账号注销要触发其个人数据的删除/匿名化流程,并给用户确认。
|
|
66
|
+
|
|
67
|
+
## 6. 安全与加密
|
|
68
|
+
|
|
69
|
+
- **传输加密**:所有个人数据传输用 TLS。
|
|
70
|
+
- **静态加密**:个人/敏感数据落库加密;敏感字段做字段级加密或令牌化(tokenization),密钥与数据分离托管。
|
|
71
|
+
- **最小授权**:按角色/属性最小授权访问个人数据;访问要鉴权、要留痕。
|
|
72
|
+
- **脱敏**:日志、报错、分析、测试数据中对 PII 脱敏/掩码;测试环境绝不用真实个人数据。
|
|
73
|
+
- 与安全基线协同:见 `security/01-standards/secure-coding-baseline`、`security/01-standards/data-protection-gdpr`。
|
|
74
|
+
|
|
75
|
+
## 7. 数据驻留与跨境
|
|
76
|
+
|
|
77
|
+
- 明确数据**存储与处理的地理位置**;某些数据有"必须留在特定地区"的驻留要求。
|
|
78
|
+
- 跨境传输个人数据要有合法机制与记录;选择第三方/云区域时考虑数据驻留。
|
|
79
|
+
- 维护**数据流向图**:数据从哪进、存哪、流向哪些第三方/区域——出事和审计都要它。
|
|
80
|
+
|
|
81
|
+
## 8. 审计与可追溯
|
|
82
|
+
|
|
83
|
+
- 对敏感操作(访问/导出/修改/删除个人数据、权限变更、登录)记**审计日志**:谁、何时、对什么、从哪、结果。
|
|
84
|
+
- 审计日志要**防篡改、可追溯、有保留期**;审计日志本身也要对 PII 脱敏。
|
|
85
|
+
- 保留**合规证据**:数据盘点、同意记录、删除完成记录、访问评审记录、控制落实证据——可应对认证审计与监管问询。
|
|
86
|
+
- 定期做**访问评审**(谁有权访问敏感数据,是否仍需要)。
|
|
87
|
+
|
|
88
|
+
## 9. 第三方与供应链
|
|
89
|
+
|
|
90
|
+
- 引入处理个人数据的第三方(分析、支付、云、SaaS)前评估其安全与合规,签订数据处理约定,明确各自责任。
|
|
91
|
+
- 维护第三方数据处理清单(处理什么、为什么、在哪)。
|
|
92
|
+
- 第三方也要遵守你的保留/删除/驻留要求;用户删除要能传导到下游。
|
|
93
|
+
|
|
94
|
+
## 10. 事件响应
|
|
95
|
+
|
|
96
|
+
- 个人数据泄露要有**响应预案**:发现→遏制→评估影响范围→按法定时限通知监管/用户→复盘整改。
|
|
97
|
+
- 明确"什么算可上报的泄露"、通知时限、责任人;提前演练(见 `incident/` 与 `security/02-playbooks/incident-response-security-playbook`)。
|
|
98
|
+
|
|
99
|
+
## 11. 反模式(出现即不合格)
|
|
100
|
+
|
|
101
|
+
1. **过度采集**:能要的全要、留着以后也许有用。
|
|
102
|
+
2. **删不掉**:数据散落各处,"按用户删除"做不到。
|
|
103
|
+
3. **PII 入日志/明文存储**:密码/卡号/token 明文,日志含个人数据。
|
|
104
|
+
4. **无保留策略**:所有数据永久留存。
|
|
105
|
+
5. **同意走过场**:默认勾选、不可撤回、不记录。
|
|
106
|
+
6. **合规当文档补**:上线前补 PDF,工程里没有任何对应能力。
|
|
107
|
+
7. **忽略数据驻留/第三方**:把个人数据随手发给未评估的第三方/任意区域。
|
|
108
|
+
|
|
109
|
+
## 12. 最低交付 checklist
|
|
110
|
+
|
|
111
|
+
- [ ] 有数据分类与盘点;每个字段定级,新增字段定级。
|
|
112
|
+
- [ ] 只采集必需数据;同意明确、可撤回、可审计。
|
|
113
|
+
- [ ] 访问/导出/更正/删除/限制等数据主体权利有可执行的工程实现。
|
|
114
|
+
- [ ] 删除能覆盖所有副本(备份/日志/下游/缓存)。
|
|
115
|
+
- [ ] 每类数据有保留期与自动清理;统计数据做不可逆匿名化。
|
|
116
|
+
- [ ] 个人/敏感数据传输与静态加密,最小授权,日志脱敏。
|
|
117
|
+
- [ ] 明确数据驻留与跨境,维护数据流向图与第三方清单。
|
|
118
|
+
- [ ] 敏感操作有防篡改审计日志;保留合规证据。
|
|
119
|
+
- [ ] 有数据泄露响应预案与通知时限。
|
|
@@ -5,8 +5,8 @@ domain: data
|
|
|
5
5
|
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [complete, data, elasticsearch, mapping, 性能优化, 查询, 核心概念, 概述]
|
|
8
|
-
quality_score:
|
|
9
|
-
last_updated: 2026-06-
|
|
8
|
+
quality_score: 90
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
10
|
---
|
|
11
11
|
# Elasticsearch 数据领域完整指南
|
|
12
12
|
|
|
@@ -5,8 +5,8 @@ domain: data
|
|
|
5
5
|
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [complete, data, postgresql, 备份与恢复, 安全, 数据建模, 查询优化, 核心概念]
|
|
8
|
-
quality_score:
|
|
9
|
-
last_updated: 2026-06-
|
|
8
|
+
quality_score: 92
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
10
|
---
|
|
11
11
|
# PostgreSQL 数据工程完整指南
|
|
12
12
|
|
|
@@ -20,12 +20,12 @@ PostgreSQL 是世界上最先进的开源关系型数据库管理系统,具备
|
|
|
20
20
|
|
|
21
21
|
| 场景 | 推荐度 | 说明 |
|
|
22
22
|
|------|--------|------|
|
|
23
|
-
| OLTP 业务系统 |
|
|
24
|
-
| JSONB 文档存储 |
|
|
25
|
-
| 地理信息系统 |
|
|
26
|
-
| 全文搜索 |
|
|
27
|
-
| 大规模 OLAP |
|
|
28
|
-
| 时序数据 |
|
|
23
|
+
| OLTP 业务系统 | 5/5 | 事务完整性、行级锁、外键约束 |
|
|
24
|
+
| JSONB 文档存储 | 4/5 | 替代部分 MongoDB 场景 |
|
|
25
|
+
| 地理信息系统 | 5/5 | PostGIS 扩展 |
|
|
26
|
+
| 全文搜索 | 4/5 | tsvector/tsquery,中小规模可替代 ES |
|
|
27
|
+
| 大规模 OLAP | 3/5 | 需配合 Citus / TimescaleDB 或分区表 |
|
|
28
|
+
| 时序数据 | 4/5 | TimescaleDB 扩展 |
|
|
29
29
|
|
|
30
30
|
### 1.2 版本选择
|
|
31
31
|
|
|
@@ -5,8 +5,8 @@ domain: data
|
|
|
5
5
|
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [complete, data, redis, 分布式锁, 持久化, 核心数据结构, 概述, 消息队列]
|
|
8
|
-
quality_score:
|
|
9
|
-
last_updated: 2026-06-
|
|
8
|
+
quality_score: 89
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
10
|
---
|
|
11
11
|
# Redis 数据领域完整指南
|
|
12
12
|
|
|
@@ -1419,8 +1419,8 @@ def check_fragmentation():
|
|
|
1419
1419
|
|
|
1420
1420
|
```python
|
|
1421
1421
|
# 1. KEYS 命令(生产禁用,用 SCAN 替代)
|
|
1422
|
-
#
|
|
1423
|
-
#
|
|
1422
|
+
# [避免] KEYS user:* # O(N) 全量扫描,阻塞
|
|
1423
|
+
# [推荐] SCAN 0 MATCH user:* COUNT 100
|
|
1424
1424
|
|
|
1425
1425
|
def scan_keys(pattern: str, count: int = 100):
|
|
1426
1426
|
"""安全扫描 key"""
|
|
@@ -1434,10 +1434,10 @@ def scan_keys(pattern: str, count: int = 100):
|
|
|
1434
1434
|
return keys
|
|
1435
1435
|
|
|
1436
1436
|
# 2. 连接泄漏(务必使用连接池)
|
|
1437
|
-
#
|
|
1437
|
+
# [避免]
|
|
1438
1438
|
r = redis.Redis(host="localhost") # 每次新建连接
|
|
1439
1439
|
|
|
1440
|
-
#
|
|
1440
|
+
# [推荐]
|
|
1441
1441
|
pool = redis.ConnectionPool(host="localhost", port=6379, max_connections=50)
|
|
1442
1442
|
r = redis.Redis(connection_pool=pool)
|
|
1443
1443
|
|
|
@@ -1445,20 +1445,20 @@ r = redis.Redis(connection_pool=pool)
|
|
|
1445
1445
|
import json
|
|
1446
1446
|
import pickle
|
|
1447
1447
|
|
|
1448
|
-
#
|
|
1448
|
+
# [避免] pickle(安全风险 + 不可跨语言)
|
|
1449
1449
|
r.set("data", pickle.dumps(obj))
|
|
1450
1450
|
|
|
1451
|
-
#
|
|
1451
|
+
# [推荐] JSON(安全 + 可跨语言)
|
|
1452
1452
|
r.set("data", json.dumps(obj))
|
|
1453
1453
|
|
|
1454
|
-
#
|
|
1454
|
+
# [推荐] msgpack(更紧凑)
|
|
1455
1455
|
import msgpack
|
|
1456
1456
|
r.set("data", msgpack.packb(obj))
|
|
1457
1457
|
|
|
1458
1458
|
# 4. 过期时间丢失
|
|
1459
1459
|
r.set("key", "value", ex=3600)
|
|
1460
|
-
r.set("key", "new_value") #
|
|
1461
|
-
r.set("key", "new_value", keepttl=True) #
|
|
1460
|
+
r.set("key", "new_value") # [注意] TTL 被清除!
|
|
1461
|
+
r.set("key", "new_value", keepttl=True) # [推荐] 保留 TTL (Redis 6.0+)
|
|
1462
1462
|
```
|
|
1463
1463
|
|
|
1464
1464
|
---
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: data-governance-and-modeling-deep-dive
|
|
3
|
-
title:
|
|
3
|
+
title: 数据环节深度知识库
|
|
4
4
|
domain: data
|
|
5
|
-
category:
|
|
5
|
+
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
|
-
tags: [
|
|
7
|
+
tags: [数据治理, data-governance, 数据建模, modeling, 数据质量, 元数据, data]
|
|
8
8
|
quality_score: 70
|
|
9
9
|
last_updated: 2026-06-15
|
|
10
10
|
---
|
|
11
|
-
#
|
|
12
|
-
|
|
13
|
-
## 数据环节深度知识库
|
|
11
|
+
# 数据环节深度知识库
|
|
14
12
|
|
|
15
13
|
### 目标
|
|
16
14
|
- 构建从数据采集、建模、质量、消费到治理的闭环体系。
|
|
@@ -5,8 +5,8 @@ domain: data-engineering
|
|
|
5
5
|
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [complete, connect, data-engineering, kafka, schema管理, streams, 核心概念, 概述]
|
|
8
|
-
quality_score:
|
|
9
|
-
last_updated: 2026-06-
|
|
8
|
+
quality_score: 90
|
|
9
|
+
last_updated: 2026-06-29
|
|
10
10
|
---
|
|
11
11
|
# Apache Kafka完整指南
|
|
12
12
|
|
|
@@ -672,12 +672,12 @@ message OrderEvent {
|
|
|
672
672
|
└──────────────────┴──────────────────────────────────────────┘
|
|
673
673
|
|
|
674
674
|
安全的Schema演进操作:
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
675
|
+
[推荐] 添加带默认值的字段(BACKWARD兼容)
|
|
676
|
+
[推荐] 删除带默认值的字段(FORWARD兼容)
|
|
677
|
+
[推荐] 添加可选字段(FULL兼容)
|
|
678
|
+
[避免] 删除必需字段(破坏BACKWARD)
|
|
679
|
+
[避免] 修改字段类型(破坏所有兼容性)
|
|
680
|
+
[避免] 重命名字段(破坏所有兼容性)
|
|
681
681
|
```
|
|
682
682
|
|
|
683
683
|
```bash
|
|
@@ -1339,11 +1339,11 @@ kafka-reassign-partitions.sh --bootstrap-server localhost:9092 \
|
|
|
1339
1339
|
4. 检查下游依赖(DB/缓存/HTTP)的响应时间
|
|
1340
1340
|
|
|
1341
1341
|
解决方案:
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1342
|
+
[推荐] 增加消费者实例(不超过分区数)
|
|
1343
|
+
[推荐] 减小max.poll.records, 增大max.poll.interval.ms
|
|
1344
|
+
[推荐] 异步处理: poll后放入本地队列, 多线程处理
|
|
1345
|
+
[推荐] 优化下游调用(批量写DB/连接池/缓存)
|
|
1346
|
+
[避免] 盲目增加分区数(需要同时增加消费者才有效)
|
|
1347
1347
|
```
|
|
1348
1348
|
|
|
1349
1349
|
### 2. Rebalance风暴
|
|
@@ -1357,11 +1357,11 @@ kafka-reassign-partitions.sh --bootstrap-server localhost:9092 \
|
|
|
1357
1357
|
- GC暂停超过session.timeout.ms
|
|
1358
1358
|
|
|
1359
1359
|
解决方案:
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1360
|
+
[推荐] 使用CooperativeStickyAssignor(增量Rebalance)
|
|
1361
|
+
[推荐] 增大session.timeout.ms(30-60s)
|
|
1362
|
+
[推荐] 增大max.poll.interval.ms(5-10min)
|
|
1363
|
+
[推荐] 减小max.poll.records, 确保处理时间可控
|
|
1364
|
+
[推荐] 设置group.instance.id启用静态成员(避免重启触发Rebalance)
|
|
1365
1365
|
|
|
1366
1366
|
# 静态成员配置(Kafka 2.3+)
|
|
1367
1367
|
group.instance.id=consumer-host-1 # 每个实例唯一
|
|
@@ -1381,10 +1381,10 @@ session.timeout.ms=60000 # 可以设更长(静态成员离开不立即
|
|
|
1381
1381
|
- 生产者内存增加(每分区一个RecordBatch缓冲)
|
|
1382
1382
|
|
|
1383
1383
|
建议:
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1384
|
+
[推荐] 单集群分区总数 < 200,000(KRaft模式可更多)
|
|
1385
|
+
[推荐] 单Broker分区数 < 4,000
|
|
1386
|
+
[推荐] 根据实际吞吐需求规划, 预留20-30%余量
|
|
1387
|
+
[避免] 不要盲目设置大量分区(分区数只增不减)
|
|
1388
1388
|
```
|
|
1389
1389
|
|
|
1390
1390
|
### 4. 消息丢失
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: ui-full-lifecycle-cross-platform-playbook
|
|
3
3
|
title: UI 全生命周期跨平台设计手册(商业级)
|
|
4
4
|
domain: design
|
|
5
|
-
category:
|
|
5
|
+
category: 02-playbooks
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [cross, design, full, lifecycle, platform, playbook, token, 官方优先来源]
|
|
8
8
|
quality_score: 70
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: ux-system-deep-dive
|
|
3
|
-
title:
|
|
3
|
+
title: 设计环节深度知识库
|
|
4
4
|
domain: design
|
|
5
|
-
category:
|
|
5
|
+
category: 01-standards
|
|
6
6
|
difficulty: intermediate
|
|
7
|
-
tags: [
|
|
7
|
+
tags: [ux, 用户体验, 交互设计, 设计流程, 可用性, design]
|
|
8
8
|
quality_score: 70
|
|
9
9
|
last_updated: 2026-06-15
|
|
10
10
|
---
|
|
11
|
-
#
|
|
12
|
-
|
|
13
|
-
## 设计环节深度知识库
|
|
11
|
+
# 设计环节深度知识库
|
|
14
12
|
|
|
15
13
|
### 目标
|
|
16
14
|
- 建立可扩展、可复用、可验证的交互与视觉规范体系。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: 00-craft-rules
|
|
3
3
|
title: Craft Rules — Universal Visual Quality Standards
|
|
4
4
|
domain: design-systems
|
|
5
|
-
category:
|
|
5
|
+
category: design-systems
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [auto-checked, cardinal, catch, craft, design-systems, governance, reviewer, rules]
|
|
8
8
|
quality_score: 70
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: brutalist-bold
|
|
3
3
|
title: Brutalist Bold
|
|
4
4
|
domain: design-systems
|
|
5
|
-
category:
|
|
5
|
+
category: design-systems
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [brutalist, swiss, editorial, mono, high-contrast, oversized-type, design-systems, palette, patterns]
|
|
8
8
|
quality_score: 72
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: glass-aurora
|
|
3
3
|
title: Glass Aurora
|
|
4
4
|
domain: design-systems
|
|
5
|
-
category:
|
|
5
|
+
category: design-systems
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [glassmorphism, aurora, frosted, depth, ai, modern, gradient-controlled, design-systems, palette, patterns]
|
|
8
8
|
quality_score: 72
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: premium-luxury
|
|
3
3
|
title: Premium Luxury
|
|
4
4
|
domain: design-systems
|
|
5
|
-
category:
|
|
5
|
+
category: design-systems
|
|
6
6
|
difficulty: intermediate
|
|
7
7
|
tags: [luxury, premium, refined, elegant, serif, dark, single-accent, generous-space, design-systems, palette, patterns]
|
|
8
8
|
quality_score: 72
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: document-template
|
|
3
|
-
title:
|
|
3
|
+
title: 知识库标准文档模板
|
|
4
4
|
domain: development
|
|
5
5
|
category: 00-governance
|
|
6
6
|
difficulty: intermediate
|
|
7
|
-
tags: [
|
|
7
|
+
tags: [文档模板, template, 知识库, 写作规范, standard, governance, development]
|
|
8
8
|
quality_score: 70
|
|
9
9
|
last_updated: 2026-06-15
|
|
10
10
|
---
|
|
11
|
-
#
|
|
11
|
+
# 知识库标准文档模板
|
|
12
12
|
|
|
13
13
|
```yaml
|
|
14
14
|
id: KB-DEV-XXXX
|