合规报告

查看有关群组的违反合规和合规框架的报告。

违反合规报告

  • 引入于 12.8 版本,名为合规看板。
  • 重命名为合规报告于 14.2 版本。
  • 替换为合并请求违规于 14.6 版本,功能标志compliance_violations_report。默认禁用。
  • GraphQL API 引入于 14.9 版本。
  • 一般可用于 14.10 版本。删除功能标志 compliance_violations_report
  • 重命名为违反合规报告于 15.9 版本。

通过违反合规报告,您可以查看群组中所有项目的合并请求活动的高级视图。

当您在合规报告中选择一行时,将出现一个折叠菜单,其中包括:

  • 项目名称和合规框架标记
  • 指向引入违规的合并请求的链接。
  • 合并请求的分支路径,格式为 [source] into [target]
  • 对合并请求提交变更的用户列表。
  • 对合并请求发表评论的用户列表。
  • 批准合并请求的用户列表。
  • 合并合并请求的用户。

查看群组的违反合规报告

先决条件:

  • 您必须是管理员或具有该群组的所有者角色。

查看违反合规报告:

  1. 在顶部栏上,选择 主菜单 > 群组 并找到您的群组。
  2. 在左侧边栏中,选择 安全与合规 > 合规报告

您可以对报告进行排序:

  • 严重性级别。
  • 违规类型。
  • 合并请求标题。

选择一行,查看违规的详细信息。

严重性级别

每个违规行为都具有严重性级别,如下表所述。

图标 严重性级别
Critical
High
Medium
Low
Info

违规类型

从 14.10 版本开始,报告包含以下违规类型。

违规行为 严重性级别 类别 描述
作者批准了合并请求 High 职责分离 合并请求的作者批准了他们自己的合并请求。有关详细信息,请参阅阻止作者批准
提交者批准了合并请求 High 职责分离 合并请求的提交者批准了他们贡献的合并请求。有关详细信息,请参阅阻止添加提交的用户进行批准
少于两次批准 High 职责分离 合并请求合并时,获得的批准数少于两个。有关详细信息,请参阅合并请求批准规则

报告不包含以下违规行为:

违规行为 严重性级别 类别 描述
流水线失败 Medium 流水线结果 合并请求流水线失败,合并请求被合并。
流水线通过但有警告 Info 流水线结果 合并请求流水线通过时包含警告,合并请求被合并。
代码覆盖率下降超过 10% High 代码覆盖率 合并请求的代码覆盖率报告表明覆盖率降低了 10% 以上。
代码覆盖率下降 5% 到 10% Medium 代码覆盖率 合并请求的代码覆盖率报告表明覆盖率降低了 5% 到 10%。
代码覆盖率下降 1% 到 5% Low 代码覆盖率 合并请求的代码覆盖率报告表明覆盖率降低了 1% 到 5%。
代码覆盖率下降不到 1% Info 代码覆盖率 合并请求的代码覆盖率报告表明覆盖率下降不到 1%。

职责分离

极狐GitLab 支持创建合并请求的用户,和批准合并请求的用户之间的职责分离策略。职责分离标准是:

监管链报告

  • 引入于 13.3 版本。
  • 使用邮件发送监管链报告功能引入于 15.3 版本,功能标志为 async_chain_of_custody_report。默认禁用。
  • 一般可用于 15.5 版本。删除功能标志 async_chain_of_custody_report
  • 监管链报告包括所有提交(不仅仅是合并提交)引入于 15.9 版本,功能标志为 all_commits_compliance_report。默认禁用。
  • 一般可用于 15.9 版本。删除功能标志 all_commits_compliance_report

监管链报告提供了一个 1 个月的跟踪窗口,其中包含对群组下项目的所有提交。

要为所有提交生成报告,极狐GitLab:

  1. 获取群组下的所有项目。
  2. 对于每个项目,获取最近 1 个月的提交。每个项目的上限为 1024 次提交。如果在 1 个月的窗口中有超过 1024 次提交,它们将被截断。
  3. 将提交写入 CSV 文件。该文件被截断为 15 MB,因为报告是作为电子邮件附件发送的(15.5 及更高版本)。

该报告包括:

  • 提交 SHA
  • 提交作者
  • 提交者
  • 提交日期
  • 群组
  • 项目

如果提交有相关的合并提交,则还包括以下内容:

  • 合并提交 SHA。
  • 合并请求 ID。
  • 合并合并请求的用户。
  • 合并日期。
  • 流水线 ID。
  • 合并请求批准者。

生成监管链报告

要生成监管链报告:

  1. 在顶部栏中,选择 主菜单 > 群组 并找到您的群组。
  2. 在左侧边栏中,选择 安全与合规 > 合规报告
  3. 选择 所有合并提交的列表

根据您的极狐GitLab 版本,监管链报告可以通过电子邮件发送或可供下载。

生成特定提交的监管链报告

  • 引入于 13.6 版本。
  • 对所有提交而不仅仅是合并提交的支持添加于 15.10 版本。

您可以为特定的提交 SHA 生成特定于提交的监管链报告。此报告仅提供提交 SHA 的详细信息。

要生成特定于提交的监管链报告:

  1. 在顶部栏中,选择 主菜单 > 群组 并找到您的群组。
  2. 在左侧边栏中,选择 安全与合规 > 合规报告
  3. 在合规报告的顶部,在 所有提交列表 的右侧,选择向下箭头()。
  4. 输入提交 SHA,然后选择 导出提交监管报告

根据您的极狐GitLab 版本,监管链报告可以通过电子邮件发送或可供下载。

或者,使用直接链接:https://jihulab.com/groups/<group-name>/-/security/merge_commit_reports.csv?commit_sha={optional_commit_sha},将可选值传递给 commit_sha 查询参数。

合规框架报告

引入于 15.10 版本。

通过合规框架报告,您可以查看应用于群组中项目的合规框架。报告的每一行显示:

  • 项目名称。
  • 项目路径。
  • 合规框架标记(如果项目已分配)。

群组的默认框架有一个默认徽章。

查看群组的合规框架报告

先决条件:

  • 您必须是管理员或具有群组的所有者角色。

查看合规框架报告:

  1. 在顶部栏中,选择 主菜单 > 群组 并找到您的群组。
  2. 在左侧边栏中,选择 安全与合规性 > 合规报告
  3. 在页面上,选择 框架 选项卡。