Skip to main content

리포지토리 보안을 위한 빠른 시작

여러 GitHub 기능을 사용하여 리포지토리를 안전하게 유지할 수 있습니다.

누가 이 기능을 사용할 수 있나요?

리포지토리 소유자, 조직 소유자, 보안 관리자 및 관리자 역할이 있는 사용자

소개

이 가이드에서는 리포지토리에 대한 보안 기능을 구성하는 방법을 보여 줍니다. 리포지토리에 대한 보안 설정을 구성하려면 리포지토리 관리자 또는 조직 소유자여야 합니다.

보안 요구 사항은 리포지토리에 고유하므로 리포지토리에 대해 모든 기능을 사용하도록 설정할 필요는 없을 수도 있습니다. 자세한 내용은 GitHub security features(GitHub 보안 기능)을(를) 참조하세요.

일부 기능은 모든 계획의 리포지토리에서 사용할 수 있습니다. GitHub Advanced Security를 사용하는 엔터프라이즈에서는 추가 기능을 사용할 수 있습니다. GitHub Advanced Security 기능은 GitHub의 모든 퍼블릭 리포지토리에서도 사용할 수 있습니다. 자세한 내용은 GitHub Advanced Security 정보을(를) 참조하세요.

리포지토리에 대한 액세스 관리

리포지토리를 보호하는 첫 번째 단계는 코드를 보고 수정할 수 있는 사용자를 설정하는 것입니다. 자세한 내용은 리포지토리의 설정 및 기능 관리을(를) 참조하세요.

리포지토리의 기본 페이지에서 설정을 클릭한 다음, 아래로 스크롤하여 “위험 영역”으로 이동합니다.

종속성 그래프 관리

종속성 그래프는 모든 퍼블릭 리포지토리에 대해 자동으로 생성됩니다. 포크 및 프라이빗 리포지토리에 사용하도록 선택할 수 있습니다. 종속성 그래프는 리포지토리의 매니페스트 및 잠금 파일을 해석하여 종속성을 식별합니다.

  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.
  2. Code security를 클릭합니다.
  3. 종속성 그래프 옆에 있는 사용 또는 사용 안 함을 클릭합니다.

자세한 내용은 리포지토리의 종속성 탐색을(를) 참조하세요.

Dependabot alerts 관리

Dependabot alerts는 GitHub가 취약성이 있는 종속성 그래프의 종속성을 식별할 때 생성됩니다. 모든 리포지토리에 대해 Dependabot alerts를 사용하도록 설정할 수 있습니다.

또한 Dependabot 자동 심사 규칙를 사용하여 대규모로 경고를 관리할 수 있으므로 경고를 자동으로 해제하거나 일시 중지하고 Dependabot에서 끌어오기 요청을 열 경고를 지정할 수 있습니다. 다양한 유형의 자동 분류 규칙과 리포지토리가 적격인지 아닌지 자세한 내용은 "Dependabot 자동 심사 규칙 정보"을 참조하세요.

Dependabot에서 제공하는 다양한 기능에 대한 개요 및 시작하는 방법에 대한 지침은 Dependabot 빠른 시작 가이드을(를) 참조하세요.

  1. 프로필 사진을 클릭한 다음 설정을 클릭합니다.
  2. Code security를 클릭합니다.
  3. Dependabot alerts 옆에 있는 모두 사용을 클릭합니다.

자세한 내용은 Dependabot 경고 정보개인 계정에 대한 보안 및 분석 설정 관리을(를) 참조하세요.

종속성 검토 관리

종속성 검토를 사용하면 끌어오기 요청이 리포지토리에 병합되기 전에 종속성 변경을 시각화할 수 있습니다. 자세한 내용은 종속성 검토 정보을(를) 참조하세요.

종속성 검토는 GitHub Advanced Security 기능입니다. 모든 퍼블릭 리포지토리에 대해 종속성 검토가 이미 사용되고 있습니다. 프라이빗 또는 내부 리포지토리에 대한 종속성 검토를 사용하도록 설정하려면 종속성 그래프를 사용하도록 설정하고 GitHub Advanced Security을(를) 사용하도록 설정합니다.

  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.
  2. Code security를 클릭합니다.
  3. 아직 종속성 그래프를 사용하도록 설정하지 않은 경우 사용을 클릭합니다.
  4. 아직 GitHub Advanced Security를 사용하도록 설정하지 않은 경우 사용을 클릭합니다.

Dependabot security updates 관리

Dependabot alerts를 사용하는 리포지토리의 경우 취약성이 감지되면 Dependabot security updates를 사용하여 보안 업데이트로 끌어오기 요청을 발생하도록 설정할 수 있습니다.

  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.
  2. Code security를 클릭합니다.
  3. Dependabot security updates 옆에 있는 사용을 클릭합니다.

자세한 내용은 Dependabot 보안 업데이트 정보Dependabot 보안 업데이트 구성.을(를) 참조하세요.

Dependabot version updates

관리

Dependabot를 사용하여 자동으로 끌어오기 요청을 발생시켜 종속성을 최신 상태로 유지할 수 있습니다. 자세한 내용은 Dependabot 버전 업데이트 정보을(를) 참조하세요.

  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.
  2. Code security를 클릭합니다.
  3. Dependabot version updates 옆에 있는 사용을 클릭하여 기본 dependabot.yml 구성 파일을 만듭니다.
  4. 종속성을 지정하여 연관된 모든 구성 옵션을 업데이트한 다음 파일을 리포지토리에 커밋합니다. 자세한 내용은 Dependabot 버전 업데이트 구성을(를) 참조하세요.

code scanning 구성

Note

는 모든 퍼블릭 리포지토리에 대해 사용할 수 있으며, GitHub Advanced Security에 대한 라이선스가 있는 엔터프라이즈의 조직이 소유한 개인용 리포지토리에 대해 사용할 수 있습니다.

code scanning를 구성하여 CodeQL 분석 워크플로 또는 타사 도구를 사용하여 리포지토리에 저장된 코드의 취약성 및 오류를 자동으로 식별할 수 있습니다. 리포지토리의 프로그래밍 언어에 따라, GitHub가 자동으로 스캔할 언어, 실행할 쿼리 모음, 새 스캔을 트리거할 이벤트를 결정하는 기본 설정을 사용하여 CodeQL로 code scanning를 구성할 수 있습니다. 자세한 내용은 코드 스캔을 위한 기본 설정 구성을(를) 참조하세요.

  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.
  2. 사이드바의 "Security" 섹션에서 Code security 를 클릭합니다.
  3. "Code scanning" 섹션에서 설정 을 선택한 다음 기본값을 클릭합니다.
  4. 표시되는 팝업 창에서 리포지토리의 기본 구성 설정을 검토한 다음 CodeQL 사용을 클릭합니다.

또는 CodeQL을(를) 사용하여 code scanning을(를) 사용자에 맞춰 편집할 수 있는 워크플로 파일을 생성하는 고급 설정을 사용할 수 있습니다. 자세한 내용은 코드 스캔을 위한 고급 설정 구성을(를) 참조하세요.

secret scanning

구성

Secret scanning은(는) 다음 리포지토리에 사용할 수 있습니다.

  • 퍼블릭 리포지토리(무료)
  • GitHub Advanced Security 지원 GitHub Enterprise Cloud을(를) 사용하는 조직의 개인 및 내부 리포지토리
  • Enterprise Managed Users가 있는 GitHub Enterprise Cloud에 대한 사용자 소유 리포지토리
  1. 리포지토리의 기본 페이지에서 설정을 클릭합니다.

  2. Code security를 클릭합니다.

  3. 아직 GitHub Advanced Security을(를) 사용하도록 설정하지 않은 경우 사용을 클릭합니다.

  4. Secret scanning 옆에 있는 사용을 클릭합니다.

보안 정책 만들기

리포지토리 유지 관리자는 리포지토리에 SECURITY.md(으)로 명명된 파일을 만들어 리포지토리에 대한 보안 정책을 지정하는 것이 좋습니다. 이 파일은 리포지토리에서 보안 취약성을 보고하려는 경우 사용자에게 연락하고 공동 작업하는 최선의 방법을 설명합니다. 리포지토리의 보안 탭에서 리포지토리의 보안 정책을 볼 수 있습니다.

  1. 리포지토리의 기본 페이지에서 보안을 클릭합니다.
  2. 보안 정책을 클릭합니다.
  3. 설치 시작을 클릭합니다.
  4. 지원되는 프로젝트 버전 및 취약성 보고 방법에 대한 정보를 추가합니다.

자세한 내용은 Adding a security policy to your repository(리포지토리에 보안 정책 추가)을(를) 참조하세요.

다음 단계

보안 기능의 경고를 보고 관리하여 코드의 종속성과 취약성을 해결할 수 있습니다. 자세한 내용은 Dependabot 경고 보기 및 업데이트, 종속성 업데이트에 대한 끌어오기 요청 관리, 리포지토리에 대한 코드 검사 경고 평가, 비밀 검사에서 경고 관리을(를) 참조하세요.

GitHub의 도구를 사용하여 보안 경고에 대한 응답을 감사할 수도 있습니다. 자세한 내용은 보안 경고 감사을(를) 참조하세요.

공개 리포지토리에 보안 취약점이 있는 경우 보안 공지를 만들어 비공개로 취약점을 논의하고 수정할 수 있습니다. 자세한 내용은 리포지토리 보안 공지 정보리포지토리 보안 공지 만들기을(를) 참조하세요.

GitHub Actions을(를) 사용하는 경우 GitHub의 보안 기능을 사용하여 워크플로의 보안을 강화할 수 있습니다. 자세한 내용은 GitHub의 보안 기능을 사용하여 안전하게 GitHub Actions 사용을(를) 참조하세요.