감사 이벤트 보고서
보안 감사는 인프라의 철저한 분석 및 검토로, 우려되는 영역과 잠재적으로 위험한 관행을 보여주기 위해 사용됩니다. 감사 프로세스를 지원하기 위해 GitLab은 다양한 다른 작업을 추적할 수 있게 해주는 감사 이벤트를 제공합니다. GitLab은 소유자 및 관리자가 포괄적인 보고서를 생성하여 감사자에게 응답할 수 있도록 도와줄 수 있습니다. 이러한 감사 보고서는 필요에 따라 범위가 다양합니다.
예를 들어, 감사 이벤트를 사용하여 다음을 추적할 수 있습니다:
- 특정 사용자의 GitLab 프로젝트의 권한 수준을 누가 언제 변경했는지.
- 새로운 사용자를 추가하거나 사용자를 제거한 사람 및 시기.
이러한 이벤트들은 위험을 평가하고 보안 조치를 강화하며 사건에 대응하고 규정을 준수하는 데 사용될 수 있습니다. GitLab이 제공하는 모든 감사 이벤트 목록은 감사 이벤트 유형을 참조하십시오. 예를 들어:
- 일부 로깅 기능의 증명을 요청하는 외부 감사인에게 제공할 감사 이벤트 보고서를 생성합니다.
- 감사자가 조직의 액세스 관리 정책을 준수하는 것을 검증하기 위해 분기별 액세스 검토를 위해 그룹 및 프로젝트 멤버십을 보여주는 모든 사용자의 보고서를 제공합니다.
사전 조건
특정 유형의 감사 이벤트를 보려면 최소한의 역할이 필요합니다.
- 그룹 내 모든 사용자의 그룹 감사 이벤트를 보려면 그룹의 소유자 역할이 있어야 합니다.
- 프로젝트 내 모든 사용자의 프로젝트 감사 이벤트를 보려면 프로젝트의 적어도 관리자 역할이 있어야 합니다.
- 그룹 또는 프로젝트에서 사용자의 작업을 기반으로 하는 그룹 및 프로젝트 감사 이벤트를 보려면 그룹 또는 프로젝트의 적어도 개발자 역할이 있어야 합니다.
Auditor 액세스 레벨을 가진 사용자는 그룹 및 프로젝트 이벤트를 볼 수 있습니다.
감사 이벤트 보기
감사 이벤트는 그룹, 프로젝트, 인스턴스 및 로그인 수준에서 볼 수 있습니다. 각 수준마다 로깅하는 다양한 감사 이벤트가 있습니다.
그룹 감사 이벤트
그룹의 감사 이벤트를 보려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 프로젝트 멤버(사용자)에 의해 수행된 작업 및 날짜 범위로 감사 이벤트를 필터링합니다.
그룹 감사 이벤트는 그룹 감사 이벤트 API를 사용하여 액세스할 수 있습니다. 그룹 감사 이벤트 쿼리 created_after
및 created_before
매개변수는 날짜 간의 최대 30일 차이로 제한됩니다.
프로젝트 감사 이벤트
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 보안 > 감사 이벤트를 선택합니다.
- 프로젝트 멤버(사용자)에 의해 수행된 작업 및 날짜 범위로 감사 이벤트를 필터링합니다.
프로젝트 감사 이벤트는 프로젝트 감사 이벤트 API를 사용하여 액세스할 수 있습니다. 프로젝트 감사 이벤트 쿼리 created_after
및 created_before
매개변수는 날짜 간의 최대 30일 차이로 제한됩니다.
인스턴스 감사 이벤트
GitLab 인스턴스 전체에서 사용자 작업에 대한 감사 이벤트를 볼 수 있습니다. 인스턴스 감사 이벤트를 보려면:
- 왼쪽 사이드바의 맨 아래에서 관리 영역을 선택합니다.
- Monitoring > 감사 이벤트를 선택합니다.
- 다음으로 필터링합니다:
- 작업을 수행한 프로젝트 멤버(사용자)
- 그룹
- 프로젝트
- 날짜 범위
인스턴스 감사 이벤트는 인스턴스 감사 이벤트 API를 사용하여 액세스할 수 있습니다. 인스턴스 감사 이벤트 쿼리는 최대 30일로 제한됩니다.
로그인 감사 이벤트
성공적인 로그인 이벤트는 모든 티어에서 사용할 수 있는 유일한 감사 이벤트입니다. 성공한 로그인 이벤트를 보려면:
- 왼쪽 사이드바에서 아바타를 선택합니다.
- 프로필 편집 > 인증 로그를 선택합니다.
유료 티어로 업그레이드한 후에는 감사 이벤트 페이지에서 성공적인 로그인 이벤트를 볼 수도 있습니다.
감사 이벤트 내보내기
- GitLab 13.4에 도입됨.
- GitLab 13.7에 기능 플래그가 제거됨.
- 인스턴스 감사 이벤트를 위한 Entity 유형
Gitlab::Audit::InstanceScope
은 GitLab 16.2에 도입되었습니다.
현재 보고서(필터 포함)를 CSV(쉼표로 구분된 값) 파일로 내보낼 수 있습니다. 인스턴스 감사 이벤트를 CSV로 내보내려면:
- 왼쪽 사이드바에서 아래쪽에 관리 영역을 선택합니다.
- Monitoring > 감사 이벤트를 선택합니다.
- 사용 가능한 검색 필터를 선택합니다.
- CSV로 내보내기를 선택합니다.
그럼 CSV 파일을 다운로드하는 확인 대화 상자가 나타납니다. 내보낸 CSV는 최대 100,000개 이벤트로 제한됩니다. 이 한도에 도달하면 나머지 레코드는 줄여집니다.
감사 이벤트 CSV 인코딩
내보낸 CSV 파일은 다음과 같이 인코딩됩니다.
-
,
는 열 구분자로 사용됩니다. - 필요한 경우 필드를 인용하기 위해
"
가 사용됩니다. - 행을 분리하기 위해
\n
이 사용됩니다.
첫 번째 행에는 헤더가 포함되어 있으며, 여기에는 다음 표에 나열된 헤더 및 값 설명이 포함됩니다:
열 | 설명 |
---|---|
ID | 감사 이벤트 id .
|
Author ID | 작성자의 ID. |
Author Name | 작성자의 전체 이름. |
Entity ID | 범위의 ID. |
Entity Type | 범위의 유형(프로젝트 , 그룹 , 사용자 , 또는 Gitlab::Audit::InstanceScope ).
|
Entity Path | 범위의 경로. |
Target ID | 대상의 ID. |
Target Type | 대상의 유형. |
Target Details | 대상의 세부 정보. |
Action | 동작 설명. |
IP Address | 동작을 수행한 작성자의 IP 주소. |
Created At (UTC) |
YYYY-MM-DD HH:MM:SS 형식으로 포맷됨.
|
모든 항목은 created_at
를 기준으로 오름차순으로 정렬됩니다.
사용자 표현
자세한 내용: Tier: Premium, Ultimate Offering: Self-managed
- GitLab 13.0에서 도입됨.
- GitLab 14.8에서 그룹 감사 이벤트에 표시된 사용자 표현 세션 이벤트가 포함됨.
사용자가 표현된 경우, 해당 사용자의 작업은 다음과 같은 추가 세부 정보와 함께 감사 이벤트로 로깅됩니다.
- 감사 이벤트에는 표현하는 관리자에 대한 정보가 포함됩니다.
- 관리자의 표현 세션 시작 및 종료에 대한 추가 감사 이벤트가 기록됩니다.
시간대
- GitLab 15.7에서 도입됨](https://gitlab.com/gitlab-org/gitlab/-/issues/242014). GitLab UI에서는 UTC 대신 사용자의 로컬 시간대에 따라 날짜와 시간이 표시됩니다.
감사 이벤트에 사용되는 시간대는 해당 이벤트를 보는 위치에 따라 다릅니다.
- GitLab UI에서는 자신의 로컬 시간대(GitLab 15.7 이상) 또는 UTC(GitLab 15.6 이하)가 사용됩니다.
- Audit Events API는 기본적으로 날짜와 시간을 UTC로 반환하거나, Self-managed GitLab 인스턴스의 구성된 시간대로 반환합니다.
- CSV 내보내기에서는 UTC가 사용됩니다.
감사 이벤트에 기여하기
에픽에서 원하는 이벤트가 표시되지 않으면, 다음 중 하나를 수행할 수 있습니다: