我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

此版本的 GitHub Enterprise 已停止服务 2020-11-12. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

Reviewing the audit log for your organization

The audit log allows organization admins to quickly review the actions performed by members of your organization. It includes details such as who performed the action, what the action was, and when it was performed.

本文内容

Accessing the audit log

The audit log lists actions performed within the last 90 days. Only owners can access an organization's audit log.

  1. 在 GitHub Enterprise Server 的右上角,单击您的个人资料照片,然后单击 Your profile(您的个人资料)
    Profile photo
  2. 在您的个人资料页面左侧的“Organizations(组织)”下,单击组织的图标。
    组织图标
  3. 在组织名称下,单击 Settings(设置)
    组织设置按钮
  4. 在 Setting(设置)边栏中,单击 Audit log(审核日志)
    边栏中的组织审核日志设置

Searching the audit log

日志列出每个操作的以下信息:

  • 执行操作的仓库
  • 执行操作的用户
  • 执行的操作内容
  • 发生操作的国家/地区
  • 操作发生的日期和时间

请注意,无法使用文本搜索条目。 但是,您可以使用各种过滤器构建搜索查询。 查询日志时使用的许多运算符,如 -><,与在 GitHub Enterprise Server 上搜索时的格式相同。 更多信息请参阅“在 GitHub 上搜索”。

基于操作搜索

使用操作限定符将操作限于特定类型的操作。 例如:

  • operation:access 查找其中资源被访问过的所有事件。
  • operation:authentication 查找其中执行了身份验证事件的所有事件。
  • operation:create 查找在其中创建了资源的所有事件。
  • operation:modify 查找在其中修改了现有资源的所有事件。
  • operation:remove 查找在其中删除的现有资源的所有事件。
  • operation:restore 查找在其中恢复了现有资源的所有事件。
  • operation:transfer 查找在其中转移了现有资源的所有事件。

基于仓库搜索

使用 repo 限定符将操作限于特定仓库。 例如:

  • repo:my-org/our-repo 会找到在 my-org 组织的 our-repo 仓库中发生的所有事件。
  • repo:my-org/our-repo repo:my-org/another-repo 会找到在 my-org 组织的 our-repoanother-repo 仓库中发生的所有事件。
  • -repo:my-org/not-this-repo 会排除在 my-org 组织的 not-this-repo 仓库中发生的所有事件。

请注意,您必须在 repo 限定符中包含帐户名称;仅搜索 repo:our-repo 将不起作用。

基于用户搜索

actor 限定符可将事件范围限于执行操作的人员。 例如:

  • actor:octocat 会找到 octocat 执行的所有事件。
  • actor:octocat actor:hubot 会找到 octocathubot 执行的所有事件。
  • -actor:hubot 会排除 hubot 执行的所有事件。

请注意,只能使用 GitHub Enterprise Server 用户名,而不是个人的真实姓名。

Search based on the action performed

To search for specific events, use the action qualifier in your query. Actions listed in the audit log are grouped within the following categories:

Category NameDescription
discussion_postContains all activities related to discussions posted to a team page.
discussion_post_replyContains all activities related to replies to discussions posted to a team page.
hookContains all activities related to webhooks.
integration_installation_requestContains all activities related to organization member requests for owners to approve integrations for use in the organization.
orgContains all activities related to organization membership
profile_pictureContains all activities related to your organization's profile picture.
projectContains all activities related to project boards.
protected_branchContains all activities related to protected branches.
repoContains all activities related to the repositories owned by your organization.
repository_vulnerability_alertContains all activities related to security alerts for vulnerable dependencies.
teamContains all activities related to teams in your organization.
team_discussionsContains activities related to managing team discussions for an organization.

You can search for specific sets of actions using these terms. For example:

  • action:team finds all events grouped within the team category.
  • -action:hook excludes all events in the webhook category.

Each category has a set of associated events that you can filter on. For example:

  • action:team.create finds all events where a team was created.
  • -action:hook.events_changed excludes all events where the events on a webhook have been altered.

This list describes the available categories and associated events:

The discussion_post category
ActionDescription
updateTriggered when a team discussion post is edited.
destroyTriggered when a team discussion post is deleted.
The discussion_post_reply category
ActionDescription
updateTriggered when a reply to a team discussion post is edited.
destroyTriggered when a reply to a team discussion post is deleted.
The hook category
ActionDescription
createTriggered when a new hook was added to a repository owned by your organization.
config_changedTriggered when an existing hook has its configuration altered.
destroyTriggered when an existing hook was removed from a repository.
events_changedTriggered when the events on a hook have been altered.
The integration_installation_request category
ActionDescription
createTriggered when an organization member requests that an organization owner install an integration for use in the organization.
closeTriggered when a request to install an integration for use in an organization is either approved or denied by an organization owner, or canceled by the organization member who opened the request.
The issue category
ActionDescription
destroyTriggered when an organization owner or someone with admin permissions in a repository deletes an issue from an organization-owned repository.
The org category
ActionDescription
disable_member_team_creation_permissionTriggered when an organization owner limits team creation to owners. For more information, see "Setting team creation permissions in your organization."
disable_two_factor_requirementTriggered when an owner disables a two-factor authentication requirement for all members and outside collaborators in an organization.
enable_member_team_creation_permissionTriggered when an organization owner allows members to create teams. For more information, see "Setting team creation permissions in your organization."
enable_two_factor_requirementTriggered when an owner requires two-factor authentication for all members and outside collaborators in an organization.
invite_memberTriggered when a new user was invited to join your organization.
remove_memberTriggered when an owner removes a member from an organization or when two-factor authentication is required in an organization and an organization member doesn't use 2FA or disables 2FA. Also triggered when an organization member removes themselves from an organization.
remove_outside_collaboratorTriggered when an owner removes an outside collaborator from an organization or when two-factor authentication is required in an organization and an outside collaborator does not use 2FA or disables 2FA.
update_default_repository_permissionTriggered when an owner changes the default repository permission level for organization members.
update_memberTriggered when an owner changes a person's role from owner to member or member to owner.
update_member_repository_creation_permissionTriggered when an owner changes the create repository permission for organization members.
The oauth_application category
ActionDescription
createTriggered when a new OAuth 应用程序 is created.
destroyTriggered when an existing OAuth 应用程序 is deleted.
reset_secretTriggered when an OAuth 应用程序's client secret is reset.
revoke_tokensTriggered when an OAuth 应用程序's user tokens are revoked.
transferTriggered when an existing OAuth 应用程序 is transferred to a new organization.
The profile_picture category
ActionDescription
updateTriggered when you set or update your organization's profile picture.
The project category
ActionDescription
createTriggered when a project board is created.
linkTriggered when a repository is linked to a project board.
renameTriggered when a project board is renamed.
updateTriggered when a project board is updated.
deleteTriggered when a project board is deleted.
unlinkTriggered when a repository is unlinked from a project board.
update_org_permissionTriggered when the base-level permission for all organization members is changed or removed.
update_team_permissionTriggered when a team's project board permission level is changed or when a team is added or removed from a project board.
update_user_permissionTriggered when an organization member or outside collaborator is added to or removed from a project board or has their permission level changed.
The protected_branch category
ActionDescription
create Triggered when branch protection is enabled on a branch.
destroyTriggered when branch protection is disabled on a branch.
update_admin_enforced Triggered when branch protection is enforced for repository administrators.
update_require_code_owner_review Triggered when enforcement of required Code Owner review is updated on a branch.
dismiss_stale_reviews Triggered when enforcement of dismissing stale pull requests is updated on a branch.
update_signature_requirement_enforcement_level Triggered when enforcement of required commit signing is updated on a branch.
update_pull_request_reviews_enforcement_level Triggered when enforcement of required pull request reviews is updated on a branch.
update_required_status_checks_enforcement_level Triggered when enforcement of required status checks is updated on a branch.
update_strict_required_status_checks_policyTriggered when the requirement for a branch to be up to date before merging is changed.
rejected_ref_update Triggered when a branch update attempt is rejected.
policy_override Triggered when a branch protection requirement is overridden by a repository administrator.
The repo category
ActionDescription
accessTriggered when a repository owned by an organization is switched from "private" to "public" (or vice versa).
add_memberTriggered when a user accepts an invitation to have collaboration access to a repository.
add_topicTriggered when a repository admin adds a topic to a repository.
archivedTriggered when a repository admin archives a repository.
config.disable_anonymous_git_accessTriggered when anonymous Git read access is disabled in a public repository.
config.enable_anonymous_git_accessTriggered when anonymous Git read access is enabled in a public repository.
config.lock_anonymous_git_accessTriggered when a repository's anonymous Git read access setting is locked.
config.unlock_anonymous_git_accessTriggered when a repository's anonymous Git read access setting is unlocked.
createTriggered when a new repository is created.
destroyTriggered when a repository is deleted.
enableTriggered when a repository is reenabled.
remove_memberTriggered when a user is removed from a repository as a collaborator.
remove_topicTriggered when a repository admin removes a topic from a repository.
renameTriggered when a repository is renamed.
transferTriggered when a repository is transferred.
transfer_startTriggered when a repository transfer is about to occur.
unarchivedTriggered when a repository admin unarchives a repository.
The repository_vulnerability_alert category
ActionDescription
createTriggered when GitHub Enterprise Server creates a security alert for a vulnerable dependency in a particular repository.
resolveTriggered when someone with write access to a repository pushes changes to update and resolve a vulnerability in a project dependency.
dismissTriggered when an organization owner or person with admin access to the repository dismisses a security alert about a vulnerable dependency.
The team category
ActionDescription
add_memberTriggered when a member of an organization is added to a team.
add_repositoryTriggered when a team is given control of a repository.
change_parent_teamTriggered when a child team is created or a child team's parent is changed.
change_privacyTriggered when a team's privacy level is changed.
createTriggered when a new team is created.
destroyTriggered when a team is deleted from the organization.
remove_memberTriggered when a member of an organization is removed from a team.
remove_repositoryTriggered when a repository is no longer under a team's control.
The team_discussions category
ActionDescription
disableTriggered when an organization owner disables team discussions for an organization. For more information, see "Disabling team discussions for your organization."
enableTriggered when an organization owner enables team discussions for an organization.

Search based on time of action

Use the created qualifier to filter actions in the audit log based on when they occurred. 日期格式必须遵循 ISO8601标准,即 YYYY-MM-DD(年-月-日)。 您也可以在日期后添加可选的时间信息 THH:MM:SS+00:00,以便按小时、分钟和秒进行搜索。 这是 T,随后是 HH:MM:SS(时-分-秒)和 UTC 偏移 (+00:00)。

日期支持大于、小于和范围限定符。 For example:

  • created:2014-07-08 finds all events that occurred on July 8th, 2014.
  • created:>=2014-07-08 finds all events that occurred on or after July 8th, 2014.
  • created:<=2014-07-08 finds all events that occurred on or before July 8th, 2014.
  • created:2014-07-01..2014-07-31 finds all events that occurred in the month of July 2014.

The audit log contains data for the past 90 days, but you can use the created qualifier to search for events earlier than that.

Search based on location

Using the qualifier country, you can filter actions in the audit log based on the originating country. You can use a country's two-letter short code or its full name. Keep in mind that countries with spaces in their name will need to be wrapped in quotation marks. For example:

  • country:de finds all events that occurred in Germany.
  • country:Mexico finds all events that occurred in Mexico.
  • country:"United States" all finds events that occurred in the United States.

Using the Audit log API

Note: The Audit log API is available for organizations using GitHub Enterprise.

To ensure a secure IP and maintain compliance for your organization, you can use the Audit log API to keep copies of your audit log data and monitor:

  • Access to your organization or repository settings.
  • Changes in permissions.
  • Added or removed users in an organization, repository, or team.
  • Users being promoted to admin.
  • Changes to permissions of a GitHub App.

The GraphQL response can include data for up to 90 to 120 days.

For example, you can make a GraphQL request to see all the new organization members added to your organization. For more information, see the "GraphQL API Audit Log."

Further reading