GitGuardian
Offering: Self-Managed, GitLab Dedicated
- 소개됨 in GitLab 16.9 with a flag named
git_guardian_integration
. 기본적으로 활성화됨. GitLab.com에서 비활성화됨.
git_guardian_integration
feature flag를 비활성화할 것을 요청하십시오.
GitLab.com에서 이 기능을 사용할 수 없습니다. GitLab Dedicated에서는 이 기능을 사용할 수 있습니다.GitGuardian은 API 키나 비밀번호와 같은 민감한 데이터를 소스 코드 리포지터리에서 감지하는 사이버보안 서비스입니다. Git 리포지터리를 스캔하여 정책 위반에 대한 경고를 보내고, 해커들이 악용하기 전에 조직이 보안 문제를 해결하는 데 도움을 줍니다.
GitGuardian 정책에 따라 커밋을 거부하도록 GitLab을 구성할 수 있습니다.
GitGuardian 통합 설정:
GitGuardian API 토큰 생성
전제 조건:
- GitGuardian 계정이 있어야 합니다.
API 토큰 생성 방법:
- GitGuardian 계정에 로그인합니다.
- 사이드바의 API 섹션으로 이동합니다.
- API 섹션 사이드바에서 Personal access tokens 페이지로 이동합니다.
- 토큰 생성을 선택합니다. 토큰 생성 대화 상자가 열립니다.
- 토큰 정보를 제공합니다:
- API 토큰에 목적을 식별할 수 있는 의미 있는 이름을 지정합니다. 예:
GitLab 통합 토큰
. - 적절한 만료 날짜를 선택합니다.
- 스캔 범위 확인란을 선택합니다. 통합에 필요한 유일한 항목입니다.
- API 토큰에 목적을 식별할 수 있는 의미 있는 이름을 지정합니다. 예:
- 토큰 생성을 선택합니다.
- 토큰을 생성한 후 복사합니다. 이 토큰은 민감한 정보이므로 안전하게 보관하십시오.
이제 GitGuardian API 토큰을 성공적으로 생성했습니다. 이를 통합에 사용할 수 있습니다.
프로젝트용 GitGuardian 통합 설정
전제 조건:
- 프로젝트의 유지관리자 역할을 최소한으로 가지고 있어야 합니다.
API 토큰을 생성하고 복사한 후에, 커밋을 거부하도록 GitLab을 구성하세요:
프로젝트용 통합을 활성화하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 프로젝트 또는 그룹을 찾습니다.
- 설정 > 통합을 선택합니다.
- GitGuardian을 선택합니다.
- 통합 활성화에서 활성 확인란을 선택합니다.
- API 토큰에 GitGuardian에서 값을 붙여넣습니다.
- 선택 사항. 설정 테스트를 선택합니다.
- 변경 사항 저장을 선택합니다.
이제 GitLab은 GitGuardian 정책에 따라 커밋을 거부할 준비가 되었습니다.
비밀 감지 건너뛰기
- GitLab 17.0에서 소개됨.
필요한 경우 GitGuardian 비밀 감지를 건너뛸 수 있습니다. 푸시에서 모든 커밋에 대한 비밀 감지 건너뛰기 옵션은 기본 비밀 감지의 옵션과 동일합니다. 두 가지 방법이 있습니다:
- 커밋 메시지 중 하나에
[skip secret detection]
을 추가합니다. -
secret_detection.skip_all
푸시 옵션을 사용합니다.
알려진 문제
- 푸시가 지연되거나 시간 초과될 수 있습니다. GitGuardian 통합에서 푸시는 제3자에게 전송되며, GitLab은 GitGuardian 연결이나 GitGuardian 프로세스에 대해 제어할 수 없습니다.
- GitGuardian API 제한으로 인해 통합은 1MB를 초과하는 파일을 무시합니다. 이러한 파일은 스캔되지 않습니다.
- 푸시된 파일의 이름이 256자를 초과하는 경우 푸시가 이루어지지 않습니다.
- 자세한 정보는 GitGuardian API 문서를 참조하십시오.
다음 단계에서는 이러한 문제 중 일부를 완화하는 방법을 안내합니다.
문제 해결
GitGuardian 통합을 사용하는 중 다음과 같은 문제가 발생할 수 있습니다.
500
HTTP 오류
HTTP 500
오류가 발생할 수 있습니다.
이 문제는 파일이 많이 변경된 커밋의 요청이 시간 초과되었을 때 발생합니다.
이러한 경우 50개 이상의 파일이 있는 커밋에 이 문제가 발생하면 변경 사항을 작은 커밋으로 분할하여 하나씩 푸시하는 방법으로 해결할 수 있습니다.
파일명: 값은 256자를 초과할 수 없도록 구성하세요
파일명: 값은 256자를 초과할 수 없도록 구성하세요
라는 HTTP 400
오류가 발생할 수 있습니다.
이 문제는 푸시 중인 일부 변경된 파일의 파일 이름(경로가 아님)이 256자보다 긴 경우에 발생합니다.
가능하다면 파일 이름을 줄이는 것이 해결책입니다. 예를 들어 파일 이름이 프레임워크에 의해 자동으로 생성되었기 때문에 파일 이름을 줄일 수 없는 경우, 통합을 비활성화한 후 다시 푸시하십시오. 필요한 경우 통합을 다시 활성화하지 않도록 잊지 마십시오.