Audit Events

原文:https://docs.gitlab.com/ee/administration/audit_events.html

Audit Events

GitLab 为拥有者和管理员提供了一种在付费计划中查看 GitLab 服务器中所做的更改的方法.

GitLab 系统管理员还可以利用文件系统上的日志. 有关更多详细信息,请参见日志系统文档 .

Overview

审核事件是 GitLab 所有者和管理员用于跟踪重要事件的工具,例如谁执行了某些操作及其发生的时间. 例如,这些操作可以是更改用户权限级别,添加新用户或删除用户.

Use cases

  • 检查谁更改了 GitLab 项目的特定用户的权限级别.
  • 跟踪哪些用户有权访问 GitLab 中的特定项目组,以及谁授予他们该权限级别.

List of events

记录了两种事件:

  • 事件范围为组或项目,组和项目经理使用这些事件来查找谁进行了更改.
  • 实例事件的范围涵盖整个 GitLab 实例,由合规团队用于执行正式审核.

Impersonation data

Introduced in GitLab Premium 13.0.

模拟是管理员使用凭据以其他用户身份执行操作的地方.

Group events

注意:您需要拥有者权限才能查看组”审核事件”页面.

要查看组的审核事件,请导航至组>设置>审核事件 . 从那里,您可以看到以下操作:

  • 组名或路径已更改
  • 组存储库大小限制已更改
  • 创建或删除组
  • 组更改可见性
  • 用户已添加到组中并具有哪些权限
  • 用户通过组 SAML登录
  • 分配给组的用户的权限更改
  • 从群组中删除了用户
  • 项目存储库已导入组
  • 与组共享并具有权限的项目
  • 删除项目中先前共享的组
  • 启用或禁用 LFS
  • 共享跑步者的分钟数限制已更改
  • 启用或禁用会员锁定
  • 请求访问已启用或已禁用
  • 2FA 执行或宽限期已更改
  • 允许创建项目的角色已更改

组事件也可以通过组审核事件 API访问

Project events

注意:您需要维护者权限或更高权限才能查看项目”审核事件”页面.

要查看项目的审核事件,请导航至项目>设置>审核事件 . 从那里,您可以看到以下操作:

  • 添加或删除了部署密钥
  • 创建,删除,重命名,移动(转移),更改路径的项目
  • 项目更改的可见性级别
  • 用户已添加到项目中并具有哪些权限
  • 分配给项目的用户的权限更改
  • 用户已从项目中删除
  • 已下载项目导出
  • 项目资源库已下载
  • 项目已存档
  • 项目未归档
  • 添加,删除或更新的受保护分支
  • 版本已添加到项目
  • 版本已更新
  • 发布里程碑关联已更改
  • 更新了批准提交者合并请求的权限(在 GitLab 12.9 中引入
  • 更新了批准作者合并请求的权限(在 GitLab 12.9 中引入
  • 更新了所需的批准数量(在 GitLab 12.9 中引入
  • 在项目批准组中添加或删除用户和组(在 GitLab 13.2 中引入

也可以通过Project Audit Events API访问项目事件

Instance events

Introduced in GitLab Premium 9.3.

服务器范围的审核日志记录引入了在 GitLab 服务器的整个实例中观察用户操作的功能,从而易于了解谁为审核目的以及何时更改了内容.

要查看服务器范围的管理日志,请访问管理区域>监视>审核日志 .

除了组和项目事件,还记录以下用户操作:

  • 登录失败
  • 登录事件和身份验证类型(例如标准,LDAP 或 OmniAuth)
  • 添加了 SSH 密钥
  • 添加或删除电子邮件
  • 修改密码
  • 要求重设密码
  • 授予 OAuth 访问权限
  • 开始或停止模拟用户
  • 更改的用户名(在 GitLab 12.8 中引入
  • 用户已删除(在 GitLab 12.8 中引入
  • 添加了用户(在 GitLab 12.8 中引入
  • 通过管理区(在 GitLab 12.8 中引入 )阻止了用户
  • 通过 API(在 GitLab 12.9 中引入 )阻止了用户

通过从过滤器下拉框中选择审核数据类型,可以过滤特定的操作. 您可以进一步按特定的组,项目或用户筛选(用于身份验证事件).

audit log

实例事件也可以通过Instance Audit Events API访问

Missing events

在审核事件中未跟踪某些事件. 有关未跟踪哪些事件的更多详细信息,以及将这些事件添加到 GitLab 中的进展,请参见以下史诗:

Disabled events

Repository push

当前的审计事件体系结构不准备接收大量记录. 这可能会使您的项目或审核日志的用户界面非常繁忙,并且audit_events PostgreSQL 表占用的磁盘空间将大大增加. 默认情况下禁用它,以防止 GitLab 实例具有很高的 Git 写入流量时性能降低.

在即将发布的版本中,默认情况下将启用 Git 推送事件的审核日志. 请按照#7865进行更新.

如果您仍然希望在实例中启用存储库推送事件,请执行以下步骤.

在所有安装中;

  1. 进入 Rails 控制台:

    1. sudo gitlab-rails console
  2. Flip the switch and enable the feature flag:

    1. Feature.enable(:repository_push_audit_event)