Skip to main content

조직의 감사 로그 검토

감사 로그를 사용하면 조직 관리자가 조직 구성원이 수행한 작업을 신속하게 검토할 수 있습니다. 여기에는 작업을 수행한 사람, 작업 유형, 작업이 수행된 시기 같은 세부 정보가 포함됩니다.

감사 로그 액세스

참고

웹후크는 특정 사용 사례에 대한 감사 로그 또는 API 폴링의 좋은 대안이 될 수 있습니다. 웹후크는 리포지토리, 조직 또는 기업에 대해 특정 이벤트가 발생할 때 GitHub에서 서버에 알리는 방법입니다. 기업, 조직 또는 리포지토리에서 특정 이벤트가 발생할 때 이를 탐지하고 기록하려는 경우 API 또는 감사 로그 검색보다 웹후크가 더 효율적일 수 있습니다. 웹후크 설명서을(를) 참조하세요.

감사 로그에는 지난 180일 이내에 조직에 영향을 주는 활동으로 트리거된 이벤트가 나열됩니다. 소유자만 조직의 감사 로그에 액세스할 수 있습니다.

기본적으로 지난 3개월의 이벤트만 표시됩니다. 이전 이벤트를 보려면 created 매개 변수를 사용하여 날짜 범위를 지정해야 합니다. 검색 구문 이해을(를) 참조하세요.

  1. GitHub의 오른쪽 위 모서리에서 프로필 사진을 클릭한 다음, Your organizations를 클릭합니다.

  2. 조직을 클릭하여 선택합니다.

  3. 조직 이름에서 설정을 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    조직 프로필에 있는 여러 탭의 스크린샷. "설정" 탭이 진한 주황색으로 표시됩니다.

  4. 사이드바의 "Archive" 섹션에서 Logs를 클릭한 다음 Audit log를 클릭합니다.

감사 로그 검색

각 감사 로그 항목의 이름은 이벤트 범주, 작업 유형으로 구성됩니다. 예를 들어 repo.create 항목은 repo 범주에 대한 create 작업을 참조합니다.

각 감사 로그 항목에는 다음과 같은 이벤트에 대한 적용 가능한 정보가 표시됩니다.

  • 작업이 수행된 enterprise 또는 조직
  • 작업을 수행한 사용자(행위자)
  • 작업의 영향을 받는 사용자
  • 작업이 수행된 리포지토리
  • 수행된 작업
  • 작업이 수행된 국가
  • 작업이 발생한 날짜와 시간
  • 작업을 수행한 사용자(작업자)의 SAML SSO 및 SCIM ID
  • 웹 UI 외부 작업의 경우 사용자(행위자)가

텍스트를 사용하여 항목을 검색할 수 없습니다. 그러나 다양한 필터를 사용하여 검색 쿼리를 생성할 수 있습니다. -, > 또는 <과 같이 로그를 쿼리할 때 사용되는 많은 연산자는 GitHub에서 검색하는 것과 동일한 형식입니다. 자세한 내용은 GitHub 검색 정보을(를) 참조하세요.

작업에 따라 검색

operation 한정자를 사용하여 특정 유형의 작업으로 동작을 제한합니다. 예시:

  • 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 또는 repo:my-org/our-repo만을 검색하면 작동하지 않습니다.

행위자를 기반으로 검색

한정자는 actor 작업을 수행한 사용자 또는 에이전트에 따라 이벤트의 범위를 지정할 수 있습니다. 예시:

  • actor:octocatoctocat에서 수행하는 모든 이벤트를 찾습니다.
  • actor:octocat actor:Copilotoctocat 또는 Copilot에서 수행하는 모든 이벤트를 찾습니다.
  • -actor:CopilotCopilot에서 수행하는 모든 이벤트를 제외합니다.

GitHub 사용자 이름만 사용할 수 있으며 개인의 실명은 사용할 수 없습니다.

수행된 작업을 기반으로 검색

특정 이벤트를 검색하려면 쿼리에서 action 한정자를 사용합니다. 감사 로그에 나열된 작업은 다양한 범주 내에서 그룹화됩니다. 각 범주의 전체 이벤트 목록은 조직의 감사 로그 이벤트을(를) 참조하세요.

범주 이름설명
auto_approve_personal_access_token_requestsfine-grained personal access token에 대한 조직의 승인 정책과 관련된 활동을 포함합니다. 자세한 내용은 조직의 개인용 액세스 토큰 정책 설정을(를) 참조하세요.
code-scanning조직의 코드 스캔 경고와 관련된 모든 활동이 포함됩니다.
dependabot_alerts기존 리포지토리의 Dependabot alerts에 대한 조직 수준 구성 활동을 포함합니다. 자세한 내용은 Dependabot 경고 정보을(를) 참조하세요.
dependabot_alerts_new_repos조직에서 만든 새 리포지토리의 Dependabot alerts에 대한 조직 수준 구성 활동을 포함합니다.
dependabot_security_updates기존 리포지토리의 Dependabot security updates에 대한 조직 수준 구성 활동을 포함합니다. 자세한 내용은 Dependabot 보안 업데이트 구성을(를) 참조하세요.
dependabot_security_updates_new_repos조직에서 만든 새 리포지토리의 Dependabot security updates에 대한 조직 수준 구성 활동을 포함합니다.
discussion_post팀 페이지에 게시된 토론과 관련된 모든 활동을 포함합니다.
discussion_post_reply팀 페이지에 게시된 토론에 대한 응답과 관련된 모든 활동을 포함합니다.
enterprise엔터프라이즈 설정과 관련된 활동을 포함합니다.
hook웹후크와 관련된 모든 작업을 포함합니다.
integration_installation계정에 설치된 통합과 관련된 활동을 포함합니다.
integration_installation_request소유자가 조직에서 사용할 통합을 승인하도록 조직 구성원 요청과 관련된 모든 활동을 포함합니다.
issue문제 삭제와 관련된 활동을 포함합니다.
members_can_create_pages조직의 리포지토리에 대한 GitHub Pages 사이트의 게시 관리와 관련된 모든 활동을 포함합니다. 자세한 내용은 조직을 위한 GitHub Pages 사이트 게시 관리을(를) 참조하세요.
org조직 멤버 자격과 관련된 활동을 포함합니다.
org_secret_scanning_automatic_validity_checkssecret scanning에 대한 자동 유효성 검사 사용 및 사용 중지와 관련된 조직 수준 활동을 포함합니다. 자세한 내용은 조직의 보안 및 분석 설정 관리을(를) 참조하세요.
org_secret_scanning_custom_patternsecret scanning 사용자 지정 패턴과 관련된 조직 수준 활동을 포함합니다. 자세한 내용은 비밀 검사를 위한 사용자 지정 패턴 정의을(를) 참조하세요.
organization_default_label조직의 리포지토리에 대한 기본 레이블과 관련된 모든 활동을 포함합니다.
oauth_applicationOAuth apps에 관한 모든 활동을 포함합니다.
packagesGitHub Packages에 관한 모든 활동을 포함합니다.
personal_access_token조직의 fine-grained personal access token와 관련된 활동을 포함합니다. 자세한 내용은 개인용 액세스 토큰 관리을(를) 참조하세요.
profile_picture조직의 프로필 사진과 관련된 모든 활동을 포함합니다.
project프로젝트에 관한 모든 활동을 포함합니다.
protected_branch보호된 브랜치와 관련된 모든 활동을 포함합니다.
repo조직에서 소유한 리포지토리와 관련된 활동을 포함합니다.
repository_secret_scanningsecret scanning과(와) 관련된 리포지토리 수준 활동을 포함합니다. 자세한 내용은 비밀 검사 정보을(를) 참조하세요.
repository_secret_scanning_automatic_validity_checks리포지토리에서 secret scanning에 대한 자동 유효성 검사 사용 및 사용 안 함과 관련된 리포지토리 수준 활동을 포함합니다. 자세한 내용은 리포지토리의 비밀 스캔 활성화을(를) 참조하세요.
repository_secret_scanning_custom_patternsecret scanning 사용자 지정 패턴과 관련된 리포지토리 수준 활동을 포함합니다. 자세한 내용은 비밀 검사를 위한 사용자 지정 패턴 정의을(를) 참조하세요.
repository_secret_scanning_custom_pattern_push_protectionsecret scanning에 대한 사용자 지정 패턴의 돌려주기 보호와 관련된 리포지토리 수준 활동을 포함합니다. 자세한 내용은 비밀 검사를 위한 사용자 지정 패턴 정의을(를) 참조하세요.
repository_secret_scanning_push_protectionsecret scanning 푸시 보호와 관련된 리포지토리 수준의 활동을 포함합니다. 자세한 내용은 푸시 보호에 대해을(를) 참조하세요.
repository_vulnerability_alert
          [Dependabot alerts](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)에 관한 모든 활동을 포함합니다.

| | | | | role | 사용자 지정 리포지토리 역할과 관련된 모든 활동을 포함합니다. | | | | | secret_scanning | 기존 리포지토리의 secret scanning에 대한 조직 수준 구성 활동을 포함합니다. 자세한 내용은 비밀 검사 정보을(를) 참조하세요. | secret_scanning_new_repos | 조직에서 만든 새 리포지토리의 secret scanning에 대한 조직 수준 구성 활동을 포함합니다. | | | | | team | 조직의 팀과 관련된 모든 활동을 포함합니다. | workflows | GitHub Actions 워크플로와 관련된 활동을 포함합니다.

이러한 용어를 사용하여 특정 작업 세트를 검색할 수 있습니다. 예시:

  • action:team은 팀 범주 내에서 그룹화된 모든 이벤트를 찾습니다.
  • -action:hook는 웹후크 카테고리의 모든 이벤트를 제외합니다.

각 범주에는 필터링할 수 있는 연결된 작업 집합이 있습니다. 예시:

  • action:team.create는 팀이 만들어진 모든 이벤트를 찾습니다.
  • -action:hook.events_changed 는 웹후크의 이벤트가 변경된 모든 이벤트를 제외합니다.

작업 시간을 기준으로 검색

          `created` 한정자를 사용하여 발생한 시기에 따라 감사 로그에서 이벤트를 필터링합니다. 날짜 형식은 [ISO8601](http://en.wikipedia.org/wiki/ISO_8601) 표준인 `YYYY-MM-DD`(년-월-일)를 따라야 합니다. 날짜 뒤에 선택적 시간 정보 `THH:MM:SS+00:00`을 추가하여 시, 분, 초로 검색할 수도 있습니다. 이것은 `T`이며 그 다음은 `HH:MM:SS`(시-분-초)와 UTC 오프셋(`+00:00`)입니다.

날짜를 검색할 때 보다 큼, 보다 작음, 범위 한정자를 사용하여 결과를 추가로 필터링할 수 있습니다. 자세한 내용은 검색 구문 이해을(를) 참조하세요.

예시:

  • created:2014-07-08은 2014년 7월 8일에 발생한 모든 이벤트를 찾습니다.
  • created:>=2014-07-08은 2014년 7월 8일에 발생하거나 그 이후에 발생한 모든 이벤트를 찾습니다.
  • created:<=2014-07-08은 2014년 7월 8일에 발생하거나 그 이전에 발생한 모든 이벤트를 찾습니다.
  • created:2014-07-01..2014-07-31은 2014년 7월에 발생한 모든 이벤트를 찾습니다.

참고

감사 로그에는 지난 180일 동안의 데이터가 포함됩니다.

위치를 기반으로 검색

한정자 country를 사용하여 원래 국가를 기반으로 감사 로그의 이벤트를 필터링할 수 있습니다. 국가의 두 글자 짧은 코드 또는 전체 이름을 사용할 수 있습니다. 이름에 공백이 있는 국가는 따옴표로 묶어야 합니다. 예시:

  • country:de는 독일에서 발생한 모든 이벤트를 찾습니다.
  • country:Mexico는 멕시코에서 발생한 모든 이벤트를 찾습니다.
  • country:"United States" 은 미국 내에서 발생한 모든 이벤트를 검색합니다.

감사 로그 API 사용

GraphQL API를 사용하여 감사 로그와 상호 작용할 수 있습니다. read:audit_log 범위를 사용하여 API를 통해 감사 로그에 액세스할 수 있습니다.

지적 재산권의 안전을 보장하고 조직에 대한 규정 준수를 유지하기 위해 감사 로그 GraphQL API를 사용하여 감사 로그 데이터의 복사본을 유지하고 모니터링할 수 있습니다. * 조직 또는 리포지토리 설정에 대한 액세스

  • 권한의 변경 내용
  • 조직, 리포지토리 또는 팀에서 추가 또는 제거된 사용자
  • 관리자로 승격된 사용자
  • GitHub App

GraphQL 응답에는 최대 90~120일 동안의 데이터가 포함될 수 있습니다.

예를 들어 GraphQL을 요청하여 조직에 추가된 새 조직 구성원을 모두 볼 수 있습니다. 자세한 내용은 인터페이스을 참조하세요.

추가 참고 자료