Git 남용률 제한

Tier: Ultimate Offering: GitLab.com, Self-managed
  • GitLab 15.2에 도입되었으며 기본적으로 limit_unique_project_downloads_per_namespace_user라는 플래그와 함께 제공됩니다.

플래그: GitLab의 경우 기본적으로 이 기능은 사용할 수 없습니다. 관리자는 limit_unique_project_downloads_per_namespace_user이라는 기능 플래그를 활성화하여 사용할 수 있습니다. GitLab.com의 경우 이 기능을 사용할 수 있습니다. GitLab Dedicated의 경우 이 기능을 사용할 수 없습니다.

이 문서는 그룹 수준의 문서입니다. Self-managed 인스턴스의 경우, 관리 문서를 참조하십시오.

Git 남용 제한은 주어진 시간 프레임 내에 그룹의 지정된 수의 저장소를 다운로드, 클론, 풀, 페치 또는 포크하는 사용자를 자동으로 차단하는 기능입니다. 차단된 사용자는 HTTP 또는 SSH를 통해 최상위 그룹 또는 해당 비공개 서브그룹에 액세스할 수 없습니다. 인증하는 사용자, 개인 액세스 토큰, 그룹 액세스 토큰, 그리고 CI/CD 작업 토큰에도 속합니다. 관련 없는 그룹에 대한 액세스는 영향을 받지 않습니다.

Git 남용 제한은 최상위 그룹 소유자, 배포 토큰, 또는 배포 키에는 적용되지 않습니다.

GitLab이 사용자의 제한 속도를 어떻게 결정하는지에 대한 부분은 아직 개발 중입니다. GitLab 팀 멤버들은 이 비밀로된 epic에서 더 많은 정보를 확인할 수 있습니다.

자동 차단 알림

limit_unique_project_downloads_per_namespace_user 기능 플래그가 활성화되면, 선택한 사용자들은 사용자가 차단될 때 이메일을 받게 됩니다.

자동 차단이 비활성화된 경우 사용자는 제한을 초과하면 자동으로 차단되지 않습니다. 그러나 여전히 알림이 전송됩니다. 자동 차단을 활성화하기 전에 제대로된 제한 설정 값을 확인하기 위해 이 설정을 사용할 수 있습니다.

자동 차단이 활성화된 경우, 사용자가 차단되기 직전에 이메일 알림이 전송되며 사용자는 자동으로 그룹 및 해당 서브그룹에서 차단됩니다.

Git 남용 제한 구성

  1. 왼쪽 사이드바에서 설정 > 보고서를 선택합니다.
  2. Git 남용 제한 설정을 업데이트합니다:
    1. 저장소 수 필드에 0보다 크거나 같고 10,000보다 작거나 같은 숫자를 입력합니다. 이 숫자는 사용자가 차단되기 전에 지정된 시간 동안 다운로드할 수 있는 최대 고유 저장소의 양을 지정합니다. 0으로 설정하면 Git 남용 제한이 비활성화됩니다.
    2. 보고 시간 기간(초) 필드에 0보다 크거나 같고 86,400(10일)보다 작거나 같은 숫자를 입력합니다. 이 숫자는 사용자가 차단되기 전에 저장소를 최대한 다운로드할 수 있는 시간(초)을 지정합니다. 0으로 설정하면 Git 남용 제한이 비활성화됩니다.
    3. 선택 사항입니다. 제외할 사용자 필드에 최대 100명의 사용자를 추가하여 제외시킵니다. 제외된 사용자는 자동으로 차단되지 않습니다.
    4. 다음 사용자에게 알림 보내기 필드에 최대 100명의 사용자를 추가합니다. 최소한 한 명의 사용자를 선택해야 합니다. 메인 그룹의 소유자 역할을 가진 모든 사용자가 기본적으로 선택됩니다.
    5. 선택 사항입니다. 지정된 제한을 초과하는 경우 이 네임스페이스의 사용자를 자동으로 차단하도록 설정 토글을 켜면 자동 차단을 활성화할 수 있습니다.
  3. 변경 사항 저장을 선택합니다.

관련 주제