合规中心
从合规报告更名为合规中心于 16.3 版本。
查看报告并管理群组的合规情况、违规行为和合规框架。
符合标准仪表盘
compliance_adherence_report
和 adherence_report_ui
的功能标志。在 JihuLab.com 上,此功能可用。符合标准仪表盘列出了符合极狐GitLab 标准的项目的遵守状态。
查看符合标准仪表盘
先决条件:
- 您必须具有该群组的管理员或所有者角色。
要查看群组的符合标准仪表盘:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
极狐GitLab 标准
极狐GitLab 标准由三个规则组成:
- 作者不可以是批准人。
- 提交者不可以是批准人。
- 需要至少两个批准。
禁止作者成为批准人
为了符合极狐GitLab 标准,用户不可以批准自己的合并请求。有关详细信息,请参阅禁止作者批准。
在私有化部署的极狐GitLab 上,当更新禁止作者批准的实例级别设置时,实例上所有项目的遵守状态不会自动更新。 要更新这些项目的遵守状态,必须更新群组级别或项目级别的设置。
禁止提交者成为批准人
为了符合极狐GitLab 标准,用户不可以批准已添加提交的合并请求。有关更多信息,请参阅禁止添加提交的用户批准。
在私有化部署的极狐GitLab 上,当更新禁止添加提交的用户批准的实例级别设置时,实例上所有项目的遵守状态不会自动更新。 要更新这些项目的遵守状态,必须更新群组级别或项目级别的设置。
需要至少两个批准
为了符合极狐GitLab 标准,合并请求必须经过至少两个人的批准才能合并。更多信息请参见合并请求批准规则。
违反合规报告
- 引入于极狐GitLab 13.10,当时名称为合规仪表盘。
- 违反合规抽屉引入于极狐GitLab 14.1。
- 重命名为合规报告于极狐GitLab 14.2。
- 替换为合并请求违规于极狐GitLab 14.6,功能标志为
compliance_violations_report
。默认禁用。- GraphQL API 引入于极狐GitLab 14.9。
- 普遍可用于极狐GitLab 14.10。移除功能标志
compliance_violations_report
。- 重命名为违反合规报告于极狐GitLab 15.9。
- 创建和编辑合规框架引入于极狐GitLab 16.0。
通过违反合规报告,您可以查看群组中所有项目的合并请求活动的高级视图。
当您在合规报告中选择一行时,将出现一个折叠菜单,其中包括:
- 项目名称和合规框架标记。
- 指向引入违规的合并请求的链接。
- 合并请求的分支路径,格式为
[source] into [target]
。 - 对合并请求提交变更的用户列表。
- 对合并请求发表评论的用户列表。
- 批准合并请求的用户列表。
- 合并合并请求的用户。
查看群组的违反合规报告
目标分支搜索功能引入于 16.0 版本。
先决条件:
- 您必须是该群组的管理员或拥有所有者角色。
查看违反合规报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
您可以对报告进行排序:
- 严重性级别
- 违规类型
- 合并请求标题
您可以根据以下内容过滤违规报告:
- 项目
- 合并的日期范围
- 目标分支
选择一行,查看违规的详细信息。
严重性级别
每个违规行为都具有严重性级别,如下表所述。
图标 | 严重性级别 |
---|---|
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 支持创建合并请求的用户,和批准合并请求的用户之间的职责分离策略。职责分离标准是:
导出群组中项目的合并请求违规报告
- 引入于极狐GitLab 16.4,功能标志为
compliance_violation_csv_export
。默认禁用。- 在 JihuLab.com 和私有化部署上启用于极狐GitLab 16.5。
compliance_violation_csv_export
的功能标志。
在 JihuLab.com 上,此功能可用。导出群组中项目的合并请求的违规报告。报告需要:
- 不要对违规报告使用过滤器。
- 被截断为 15 MB,因此电子邮件附件不会太大。
先决条件:
- 您必须是该群组的管理员或拥有所有者角色。
要导出群组中项目的合并请求违规报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 违规 选项卡。
- 在 违规 选项卡中,选择右上角的 将完整报告导出为 CSV。
报告将被编译并作为附件发送到您的电子邮件收件箱。
监管链报告
- 引入于极狐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 个月的提交。每个项目的上限为 1024 次提交。如果在 1 个月的窗口中有超过 1024 次提交,它们将被截断。
- 将提交写入 CSV 文件。该文件被截断为 15 MB,因为报告是作为电子邮件附件发送的(15.5 及更高版本)。
该报告包括:
- 提交 SHA
- 提交作者
- 提交者
- 提交日期
- 群组
- 项目
如果提交有相关的合并提交,则还包括以下内容:
- 合并提交 SHA。
- 合并请求 ID。
- 合并合并请求的用户。
- 合并日期。
- 流水线 ID。
- 合并请求批准者。
生成监管链报告
要生成监管链报告:
- 在左侧边栏的顶部,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 选择 所有合并提交的列表。
根据您的极狐GitLab 版本,监管链报告可以通过电子邮件发送或可供下载。
生成特定提交的监管链报告
- 引入于极狐GitLab 13.6。
- 对所有提交而不仅仅是合并提交的支持添加于 15.10 版本。
您可以为特定的提交 SHA 生成特定于提交的监管链报告。此报告仅提供提交 SHA 的详细信息。
要生成特定于提交的监管链报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在合规报告的顶部,在 所有提交列表 的右侧,选择向下箭头()。
- 输入提交 SHA,然后选择 导出提交监管报告。
根据您的极狐GitLab 版本,监管链报告可以通过电子邮件发送或可供下载。
或者,使用直接链接:https://jihulab.com/groups/<group-name>/-/security/merge_commit_reports.csv?commit_sha={optional_commit_sha}
,将可选值传递给 commit_sha
查询参数。
合规项目报告
- 引入于 15.10 版本。
- 从 合规框架报告 重命名为 合规项目报告 于极狐GitLab 16.5。
通过合规项目报告,您可以查看应用于群组中项目的合规框架。报告的每一行显示:
- 项目名称。
- 项目路径。
- 合规框架标记(如果项目已分配)。
群组的默认框架有一个默认徽章。
查看群组的合规项目报告
先决条件:
- 您必须是管理员或具有群组的所有者角色。
查看合规项目报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
将合规框架应用于群组中的项目
- 使用批量操作添加合规框架的功能引入于 15.11 版本。
- 在不使用批量操作的情况下添加合规框架的功能引入于 16.0 版本。
您可以将合规框架应用于群组中的项目。
先决条件:
- 您必须具有群组的所有者角色。
将合规框架应用于群组中的一个项目:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 在您要添加合规框架的项目旁边,选择 添加框架。
- 选择一个现有的合规框架或创建一个新的合规框架。
将合规性框架应用于群组中的多个项目:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 选择多个项目。
- 从 选择一个批量操作 下拉列表中,选择 将框架应用到所选项目。
- 选择要应用的框架。
- 选择 应用。
从群组的项目中删除合规框架
- 使用批量操作删除合规框架的功能引入于 15.11 版本。
- 在不使用批量操作的情况下删除合规框架的功能引入于 16.0 版本。
您可以从群组的项目中删除合规框架。
先决条件:
- 您必须具有群组的所有者角色。
从群组的一个项目中删除合规框架:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 在要从项目中删除的合规框架旁边,选择框架标签上的 。
从群组的多个项目中删除合规框架:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 选择多个项目。
- 从 选择一个批量操作 下拉列表中,选择 从所选项目中删除框架。
- 选择 删除。
导出群组中项目的合规框架报告
引入于 16.0 版本。
导出适用于群组中项目的合规项目报告。
- 框架报告不使用过滤器。
- 报告被截断为 15 MB,以防电子邮件附件过大。
先决条件:
- 您必须是管理员或具有群组的所有者角色。
要导出群组中项目的合规项目报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 在 框架 选项卡上,选择右上角的 导出为 CSV 操作。
报告将被编译并作为附件发送到您的电子邮件收件箱。
过滤合规项目报告
引入于 15.11 版本。
要过滤合规框架列表:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 项目 选项卡。
- 在搜索栏中:
- 选择您要过滤的属性。
- 选择一个操作符。
- 从选项列表中选择或输入搜索文本。
- 选择 搜索()。
重复此过程,可以按多个属性进行过滤。
合规框架报告
- 引入于极狐GitLab 16.5,功能标志为
compliance_framework_report_ui
。默认禁用。- 在极狐GitLab 16.4 及更早版本中,合规框架报告 指的是现在的 合规项目报告。在 16.5 中,以前的 合规框架报告 已经被重命名为 合规项目报告。
compliance_framework_report_ui
的功能标志。
在 JihuLab.com 上,此功能不可用。该功能尚未准备好用于生产用途。通过合规框架报告,您可以查看群组中的所有合规框架。报告的每一行显示:
- 框架名称。
群组的默认框架拥有一个 默认 徽章。
查看群组的合规框架报告
先决条件:
- 您必须是该群组的管理员或拥有所有者角色。
查看合规项目报告:
- 在左侧边栏中,选择 搜索或转到 并找到您的群组。
- 在左侧边栏中,选择 安全 > 合规中心。
- 在页面中,选择 框架 选项卡。