4. 控制映射的基本原理

在GRC平台中,控制映射的本质是建立两个控制集合之间的对应关系。假设左侧是来源框架的控制集合 S(如ISO 27001附录A),右侧是目标框架的控制集合 T(如NIST CSF 2.0或等保2.0),映射就是定义 S 中元素与 T 中元素之间的关联规则。理解映射的四种基本关系,是设计映射表结构和评估映射质量的前提。

四种基本映射关系

一对一(1:1):一个来源控制恰好对应一个目标控制,语义范围基本重合。例如ISO 27001的A.8.2“特权访问权限”与NIST CSF的PR.AA-05“特权账户管理”可建立1:1映射。这类映射最清晰,覆盖度和置信度通常都高,但实际中占比往往不足三成。

一对多(1:N):一个来源控制需要拆解到多个目标控制才能完整表达。例如ISO 27001的A.5.15“访问控制”在NIST 800-53中会分散到AC-2(账户管理)、AC-3(访问执行)、AC-6(最小权限)等多个控制项。映射时需要在映射表中为同一来源控制生成多条记录,每条记录指向一个目标控制,并分别标注该条映射覆盖了来源控制的哪一部分语义。

多对一(N:1):多个来源控制汇聚到同一个目标控制。例如等保2.0中“身份鉴别”“访问控制”“安全审计”三条要求,在ISO 27001中可能都部分支撑A.8.1“用户终端设备”或A.5.15“访问控制”。这类映射容易造成目标控制被重复引用,需要在映射表中通过来源控制ID区分,并在聚合分析时去重。

多对多(N:M):多个来源控制与多个目标控制之间存在交叉关联。这是最复杂也最常见的情况。例如数据安全能力成熟度模型(DSMM)的多个数据安全过程域,与GDPR的若干条款、ISO 27701的多个控制项之间形成网状关系。处理N:M映射时,不能简单用一条记录表达,而应拆解为多条“来源控制—目标控制”对,每对独立评估映射强度和置信度。

四种基本映射关系示意 来源框架 S 目标框架 T 一对一 (1:1) A.8.2 特权访问 PR.AA-05 特权账户 语义重合 · 强度高 · 置信度高 一对多 (1:N) A.5.15 访问控制 AC-2 账户管理 AC-3 访问执行 AC-6 最小权限 需拆解语义 · 每条独立评估 多对一 (N:1) 身份鉴别 访问控制 安全审计 A.5.15 访问控制 汇聚引用 · 聚合时需去重 多对多 (N:M) — 拆解为多条独立映射对 DSMM 过程域A DSMM 过程域B GDPR 第32条 ISO 27701 控制项

映射方向的定义与一致性

映射方向决定了“谁映射到谁”。在GRC平台中,通常约定从来源框架指向目标框架,即 S → T。这个方向不是随意的,它影响后续的覆盖度计算和差距分析逻辑。例如,当我们说“ISO 27001覆盖了NIST CSF的80%”,含义是ISO 27001中的控制能够满足NIST CSF中80%的控制要求,方向是ISO → NIST。如果反过来问“NIST CSF覆盖了ISO 27001的多少”,结果可能完全不同,因为两个框架的控制粒度和范围不对称。

在映射表中,方向通常通过字段 source_framework 和 target_framework 显式声明。同一对框架之间可以存在双向映射记录,但必须分别标注方向,不能混用。实际操作中,建议先确定一个主方向(通常是合规对标方向,如“等保 → ISO”或“内部制度 → 监管要求”),再按需补充反向映射。

映射强度的分级与判定

映射强度描述两个控制之间的语义关联紧密程度。建议采用三级或五级制,三级制更易落地:

  • 强(Strong):目标控制完全覆盖来源控制的核心要求,无需补充措施即可满足。例如ISO 27001 A.8.2与NIST CSF PR.AA-05。
  • 中(Partial):目标控制覆盖来源控制的部分要求,仍需其他控制补充。例如A.5.15与AC-2之间,AC-2覆盖了账户管理部分,但访问执行和最小权限需其他控制补齐。
  • 弱(Weak):目标控制仅与来源控制存在间接或边缘关联,不能作为主要合规依据。例如某审计控制与某物理安全控制之间可能仅因“记录保存”产生弱关联。

判定映射强度时,建议由两名以上控制专家独立评估后取共识值。若分歧超过一级,应回到控制原文逐条比对语义范围,而不是简单取平均。

覆盖度与置信度的定义与计算

覆盖度(Coverage)衡量目标框架中有多少控制被来源框架有效覆盖。计算公式为:

覆盖度 = (被强映射 + 被中映射 × 0.5) / 目标框架控制总数 × 100%

其中弱映射不计入分子,因为弱映射不足以支撑合规结论。例如目标框架有100条控制,其中40条为强映射、30条为中映射、30条为弱映射,则覆盖度 = (40 + 30×0.5) / 100 = 55%。这个数字直接反映“用当前来源框架去满足目标框架,还差多少”。

置信度(Confidence)衡量某条映射本身的可信程度,与覆盖度不同,它作用于单条映射记录。置信度受三个因素影响:控制原文语义比对的充分程度、评估者之间的一致性、以及是否有实际证据支撑。建议用0到1之间的小数表示,并在映射表中作为独立字段存储。例如一条强映射若经过双人独立评审且语义比对充分,置信度可设为0.95;若仅由单人快速判断,置信度应降至0.6以下。

实践建议:在GRC平台中,覆盖度和置信度应分开存储和展示。覆盖度用于回答“够不够”,置信度用于回答“准不准”。两者结合才能判断映射结果是否可用于合规决策。例如覆盖度达到85%但平均置信度仅0.5,说明映射表本身不可靠,需要先做映射质量修复,而不是直接采信覆盖度结论。

映射表的最小字段结构

为支撑上述概念落地,映射表至少应包含以下字段:mapping_id(映射唯一标识)、source_control_id、target_control_id、direction(S→T或T→S)、relation_type(1:1/1:N/N:1/N:M拆解对)、strength(强/中/弱)、confidence(0~1)、rationale(判定理由摘要)、reviewer、review_date。其中relation_type在N:M场景下应记录为“N:M拆解对”,而不是直接写“N:M”,因为每条记录本身仍是一对一的来源—目标对。