Git 남용 속도 제한

Tier: Ultimate Offering: GitLab.com, Self-Managed
  • GitLab 15.2에 도입limit_unique_project_downloads_per_namespace_user라는 플래그와 함께. 기본으로 비활성화됨.

플래그: Self-Managed형 GitLab에서는 기본적으로 이 기능을 사용할 수 없습니다. 사용하려면 관리자가 limit_unique_project_downloads_per_namespace_user라는 피처 플래그를 활성화할 수 있습니다. GitLab.com에서는 이 기능을 사용할 수 있습니다. GitLab Dedicated에서는 이 기능을 사용할 수 없습니다.

이것은 그룹 수준의 문서입니다. Self-Managed형 인스턴스의 경우 관리 문서를 참조하세요.

Git 남용 속도 제한은 특정 시간 프레임 내에 그룹의 특정 수의 리포지터리를 다운로드, 클론, 풀, 가져오기 또는 포크하는 사용자를 자동으로 차단하는 기능입니다. 차단된 사용자는 HTTP 또는 SSH를 통해 최상위 그룹 또는 해당 비공개 하위 그룹에 액세스할 수 없습니다. 이 속도 제한은 또한 개인 또는 그룹 액세스 토큰, 그리고 CI/CD 작업 토큰으로 인증하는 사용자뿐만 아니라 관련 없는 그룹에 대한 액세스에도 적용됩니다.

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

GitLab이 사용자의 속도 제한을 어떻게 결정하는지는 개발 중입니다. GitLab 팀 멤버는 이 비밀 에픽에서 더 많은 정보를 볼 수 있습니다: https://gitlab.com/groups/gitlab-org/modelops/anti-abuse/-/epics/14.

자동 차단 알림

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. 변경 사항 저장을 선택합니다.

관련 주제