Compliance violations report

Tier: Ultimate Offering: GitLab.com, 자체 관리, GitLab 전용

컴플라이언스 위반 보고서를 사용하면 그룹의 모든 프로젝트에 대한 병합 요청 활동의 고수준 개요를 볼 수 있습니다.

컴플라이언스 위반 보고서에서 행을 선택하면 다음이 제공되는 드로어가 나타납니다:

  • 프로젝트 이름 및 컴플라이언스 프레임워크 레이블 (프로젝트에 할당된 경우).
  • 위반 사항을 도입한 병합 요청에 대한 링크.
  • 병합 요청의 브랜치 경로(형식: [소스]에서 [대상]).
  • 병합 요청에 변경을 적용한 사용자 목록.
  • 병합 요청에 댓글을 남긴 사용자 목록.
  • 병합 요청을 승인한 사용자 목록.
  • 병합 요청을 병합한 사용자.

그룹의 컴플라이언스 위반 보고서 보기

필수 조건:

  • 그룹의 관리자이거나 소유자 역할이어야 합니다.

컴플라이언스 위반 보고서를 보려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. Secure > Compliance center를 선택합니다.

컴플라이언스 보고서를 다음에 대해 정렬할 수 있습니다:

  • 심각도 수준.
  • 위반 유형.
  • 병합 요청 제목.

컴플라이언스 위반 보고서를 다음에 대해 필터링할 수 있습니다:

  • 위반을 발견한 프로젝트.
  • 위반의 날짜 범위.
  • 위반 대상 브랜치.

행을 선택하여 컴플라이언스 위반의 세부 정보를 확인할 수 있습니다.

심각도 수준

각 컴플라이언스 위반에는 다음 중 하나의 심각도가 있습니다.

아이콘 심각도 수준
심각한
높은
중간
낮은
정보

위반 유형

GitLab 14.10부터, 다음과 같은 사용 가능한 컴플라이언스 위반이 있습니다.

위반 심각도 수준 카테고리 설명
저자 승인 병합 요청 높은 업무 분리 병합 요청의 저자가 자신의 병합 요청을 승인했습니다. 자세한 내용은 저자에 의한 승인 방지을 참조하십시오.
커미터가 승인한 병합 요청 높은 업무 분리 병합 요청에 기여한 사용자가 해당 병합 요청을 승인했습니다. 자세한 내용은 커밋을 추가한 사용자에 의한 승인 방지을 참조하십시오.
두 개보다 적은 승인 높은 업무 분리 병합 요청이 두 개보다 적은 승인으로 병합되었습니다. 자세한 내용은 병합 요청 승인 규칙을 참조하십시오.

권한 분리

GitLab은 병합 요청을 생성하고 승인하는 사용자 간의 권한 분리 정책을 지원합니다. 권한 분리 기준은 다음과 같습니다.

그룹 내 프로젝트에 대한 병합 요청 준수 위반 보고서 내보내기

  • GitLab 16.4에서 도입, compliance_violation_csv_export라는 플래그로 사용 가능. 기본적으로 비활성화됨.
  • GitLab 16.5에서 GitLab.com 및 온프레미스에서 활성화됨.
  • GitLab 16.9에서 compliance_violation_csv_export 기능 플래그가 제거됨(https://gitlab.com/gitlab-org/gitlab/-/merge_requests/142568).

그룹 내 프로젝트에 속한 병합 요청의 준수 위반에 대한 보고서를 내보냅니다. 보고서는 다음과 같습니다.

  • 준수 위반 보고서에는 필터를 사용하지 마세요.
  • 이메일 첨부 파일이 너무 크지 않도록 15MB로 보고서를 축소합니다.

전제 조건:

  • 그룹의 관리자이거나 소유자 역할을 가져야 합니다.

그룹 내 프로젝트에 대한 병합 요청 준수 위반 보고서를 내보내려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 보안 > 준수 센터를 선택합니다.
  3. 오른쪽 상단에서 내보내기를 선택합니다.
  4. 위반 사항 보고서 내보내기를 선택합니다.

보고서가 컴파일되어 이메일로 첨부 파일로 전달됩니다.

책임 연쇄 보고서

  • GitLab 13.3에서 도입.
  • 이메일을 통해 전송하는 책임 연쇄 보고서는 GitLab 15.3에서 async_chain_of_custody_report라는 플래그로 도입되었으며 기본적으로 비활성화되어 있습니다.
  • GitLab 15.5에서 일반적으로 사용 가능. async_chain_of_custody_report 기능 플래그가 제거됨.
  • 책임 연쇄 보고서에는 모든 커밋(병합 커밋만이 아니라)가 포함됩니다. 이 기능은 GitLab 15.9에서 all_commits_compliance_report라는 플래그로 도입되었으며 기본적으로 비활성화되어 있습니다.
  • GitLab 15.9에서 일반적으로 사용 가능. all_commits_compliance_report 기능 플래그가 제거됨.

책임 연쇄 보고서는 그룹의 프로젝트에 대한 1개월 이동 윈도우의 모든 커밋을 제공합니다.

모든 커밋을 위한 보고서를 생성하려면 GitLab은 다음을 수행합니다.

  1. 그룹 내의 모든 프로젝트를 가져옵니다.
  2. 각 프로젝트에 대해 지난 1개월 동안의 커밋을 가져옵니다. 각 프로젝트는 1024개의 커밋으로 제한됩니다. 1개월 윈도우에 1024개보다 더 많은 커밋이 있는 경우 잘립니다.
  3. 커밋을 CSV 파일에 기록합니다. 보고서가 이메일로 첨부 파일로 전송되므로 파일은 15MB로 제한됩니다(GitLab 15.5 이후).

보고서에는 다음이 포함됩니다.

  • 커밋 SHA.
  • 커밋 작성자.
  • 커미터.
  • 커밋된 날짜.
  • 그룹.
  • 프로젝트.

커밋에 관련된 병합 커밋이 있는 경우 다음이 포함됩니다.

  • 병합 커밋 SHA.
  • 병합 요청 ID.
  • 병합 요청을 병합한 사용자.
  • 병합 날짜.
  • 파이프라인 ID.
  • 병합 요청 승인자.

책임 연쇄 보고서 생성

책임 연쇄 보고서를 생성하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 보안 > 준수 센터를 선택합니다.
  3. 오른쪽 상단에서 내보내기를 선택합니다.
  4. 책임 연쇄 보고서 내보내기를 선택합니다.

사용 중인 GitLab 버전에 따라 책임 연쇄 보고서가 이메일로 전송되거나 다운로드할 수 있습니다.

커밋별 책임 연쇄 보고서 생성

  • GitLab 13.6에서 도입.
  • 병합 커밋만이 아니라 모든 커밋을 포함하는 지원은 GitLab 15.10에서 추가됨(https://gitlab.com/gitlab-org/gitlab/-/issues/393446).

주어진 커밋 SHA에 대한 커밋별 책임 연쇄 보고서를 생성할 수 있습니다. 이 보고서는 제공된 커밋 SHA에 대한 세부 정보만 제공합니다.

커밋별 책임 연쇄 보고서를 생성하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 보안 > 준수 센터를 선택합니다.
  3. 오른쪽 상단에서 내보내기를 선택합니다.
  4. 특정 커밋에 대한 책임 보고서 내보내기를 선택합니다.
  5. 커밋 SHA를 입력하고 책임 보고서 내보내기를 선택합니다.

사용 중인 GitLab 버전에 따라 책임 연쇄 보고서가 이메일로 전송되거나 다운로드할 수 있습니다.

또는 직접 링크를 사용하세요: https://gitlab.com/groups/<group-name>/-/security/merge_commit_reports.csv?commit_sha={optional_commit_sha}, commit_sha 쿼리 매개변수에 추가 정보를 전달합니다.