GitHub

다운로드 28
업데이트 2024. 10. 5.

설치 매뉴얼

GitHub 엔터프라이즈 계정 확인

GitHub 감사 로그 API는 Organization 수준에서도 지원이 되지만 이 경우에는 행위자 IP가 조회되지 않습니다. 설정을 변경하거나 코드를 다운로드 한 실제 IP 주소를 확인하지 못하면 의미가 없으므로, 로그프레소는 GitHub Enterprise Cloud 계정을 사용하시는 것을 권장합니다. GitHub Enterprise Cloud는 Invoice 기반 연간 결제가 요구되므로 계정 전환은 GitHub Sales와 논의하시기 바랍니다.

아래와 같이 우측 상단의 GitHub 프로필을 클릭했을 때 표시되는 패널 메뉴에 Your Enterprises가 있으면 Enterprise Cloud 플랜이 활성화된 것입니다.

Enterprise 계정 확인

GitHub 엔터프라이즈 감사 로그 설정

Settings > Audit log > Settings 또는 https://github.com/enterprises/ENTERPRISE_ID/settings/audit-log/event_settings(ENTERPRISE_ID는 엔터프라이즈 계정 ID)에서 아래와 같이 IP 주소 수집 허용을 활성화할 수 있습니다.

행위자 IP 수집 허용

GitHub 개인용 액세스 토큰 생성

GitHub 앱이 GitHub와 통신하려면 개인용 액세스 토큰이 필요합니다.

  1. 우측 상단의 GitHub 프로필을 클릭하고, 팝업 메뉴에서 Settings > Developer Settings > Personal access tokens로, 또는 링크를 클릭해서 이동하세요.

  2. Generate new token (classic) 버튼을 클릭하세요.

    GitHub 개인용 액세스 토큰 추가

  3. New personal access token (classic) 화면에서 액세스 토큰에 부여할 권한을 설정하세요. 권한을 부여한 후에 Generate token 버튼을 클릭하면 토큰이 생성됩니다.

    범위권한
    reposecurity_events
    admin:orgread:org
    userread:user
    useruser:email
    audit_logread:audit_log
    • 최소한의 권한으로 구성하려면 read:audit log 권한만 부여해 토큰을 생성하세요. 최소한의 권한만 부여되어 있을 경우, github-dependabot-alerts 확장 명령어를 사용할 수 없습니다.

    • Expiration은 조직의 보안 정책에 따라 지정하세요.

      Caution
      액세스 토큰의 기한이 만료되면 GitHub 앱이 정상적으로 동작하지 않으므로 기한이 만료되기 전에 토큰을 갱신해서 사용하세요.
  4. 이제 ghp_로 시작하는 액세스 토큰이 생성되어 화면에 표시됩니다. 클립보드에 복사하고 안전한 곳에 키를 보관하세요.

    GitHub 개인용 액세스 토큰 확인

로그프레소 접속 프로파일 설정

이 문서를 참고해 접속 프로파일을 추가하세요.

GitHub 접속 프로파일 추가

다음은 접속 프로파일 설정 중 필수 입력 항목입니다.

  • 이름: 접속 프로파일을 식별할 고유한 이름
  • 식별자: 로그프레소 쿼리 등에서 사용할 접속 프로파일의 고유 식별자
  • 유형: GitHub 선택
  • 엔터프라이즈 ID: Github 엔터프라이즈 계정 ID
  • 개인용 액세스 토큰: GitHub 개인용 액세스 토큰

로그프레소 수집기 설정

수집기 문서를 참고해 수집기를 추가하세요.

GitHub 수집기 설정

다음은 수집기 설정 중 필수 입력 항목입니다.

  • 이름: 수집기를 식별할 고유한 이름
  • 주기: 기본값 5초. 필요에 따라 변경해서 사용
  • 적재 위치/수집 위치: 로그프레소 플랫폼 구성에 따라 적합한 노드 선택
  • 수집 모델: GitHub 감사 로그 선택
  • 테이블: GITHUB 입력
  • 접속 프로파일: 접속 프로파일 구성 시 입력한 식별자

그 외에 다음 속성을 변경해 사용할 수 있습니다.

  • 이벤트 유형(기본값: all)
    • all: 모든 감사 로그
    • git: Git 클라이언트 감사 로그만 수집
    • web: Git 클라이언트 이외의 감사 로그를 수집

이제 수집기를 활성화하고 대시보드로 이동하면 GitHub 사용 내역을 모니터링할 수 있습니다.