소개
이 가이드에서는 리포지토리에 대한 보안 기능을 구성하는 방법을 보여 줍니다. 리포지토리에 대한 보안 설정을 구성하려면 리포지토리 관리자 또는 조직 소유자여야 합니다.
보안 요구 사항은 리포지토리에 고유하므로 리포지토리에 대해 모든 기능을 사용하도록 설정할 필요는 없을 수도 있습니다. 자세한 내용은 "GitHub security features(GitHub 보안 기능)"을 참조하세요.
일부 기능은 모든 계획의 리포지토리에서 사용할 수 있습니다. GitHub Advanced Security를 사용하는 엔터프라이즈에서는 추가 기능을 사용할 수 있습니다. GitHub Advanced Security 기능은 GitHub.com의 모든 퍼블릭 리포지토리에도 사용할 수 있습니다. 자세한 내용은 "GitHub Advanced Security 정보"을 참조하세요.
리포지토리에 대한 액세스 관리
리포지토리를 보호하는 첫 번째 단계는 코드를 보고 수정할 수 있는 사용자를 설정하는 것입니다. 자세한 내용은 "리포지토리의 설정 및 기능 관리"을 참조하세요.
리포지토리의 기본 페이지에서 설정을 클릭한 다음 아래로 스크롤하여 "위험 영역"으로 스크롤합니다.
- 리포지토리를 볼 수 있는 사용자를 변경하려면 표시 여부 변경을 클릭합니다. 자세한 내용은 "리포지토리 표시 유형 설정"을 참조하세요.
- 리포지토리에 액세스하고 권한을 조정할 수 있는 사용자를 변경하려면 액세스 관리를 클릭합니다. 자세한 내용은 "리포지토리에 액세스할 수 있는 팀 및 사용자 관리.
종속성 그래프 관리
종속성 그래프는 모든 퍼블릭 리포지토리에 대해 자동으로 생성됩니다. 포크 및 프라이빗 리포지토리에 사용하도록 선택할 수 있습니다. 종속성 그래프 리포지토리의 매니페스트 및 잠금 파일을 해석하여 종속성을 식별합니다.
- 리포지토리의 기본 페이지에서 설정을 클릭합니다.
- 보안 및 분석을 클릭합니다.
- 종속성 그래프 옆에 있는 사용 또는 사용 안 함을 클릭합니다.
자세한 내용은 "리포지토리의 종속성 탐색"을 참조하세요.
Dependabot alerts 관리
Dependabot alerts는 GitHub가 취약성이 있는 종속성 그래프의 종속성을 식별할 때 생성됩니다. 모든 리포지토리에 대해 Dependabot alerts를 사용하도록 설정할 수 있습니다.
- 프로필 사진을 클릭한 다음 설정을 클릭합니다.
- 보안 및 분석을 클릭합니다.
- Dependabot alerts 옆에 있는 모두 사용을 클릭합니다.
자세한 내용은 "Dependabot 경고 정보" 및 "개인 계정에 대한 보안 및 분석 설정 관리"을 참조하세요.
종속성 검토 관리
종속성 검토를 사용하면 끌어오기 요청이 리포지토리에 병합되기 전에 종속성 변경을 시각화할 수 있습니다. 자세한 내용은 "종속성 검토 정보"을 참조하세요.
종속성 검토는 GitHub Advanced Security 기능입니다. 모든 퍼블릭 리포지토리에 대해 종속성 검토가 이미 사용되고 있습니다. Advanced Security와 함께 GitHub Enterprise Cloud를 사용하는 조직은 프라이빗 및 내부 리포지토리에 대한 종속성 검토를 추가로 사용할 수 있습니다. 자세한 내용은 GitHub Enterprise Cloud 설명서를 참조하세요.
Dependabot security updates 관리
Dependabot alerts를 사용하는 리포지토리의 경우 취약성이 감지되면 Dependabot security updates를 사용하여 보안 업데이트로 끌어오기 요청을 발생하도록 설정할 수 있습니다.
- 리포지토리의 기본 페이지에서 설정을 클릭합니다.
- 보안 및 분석을 클릭합니다.
- Dependabot security updates 옆에 있는 사용을 클릭합니다.
자세한 내용은 "Dependabot 보안 업데이트 정보" 및 "Dependabot 보안 업데이트 구성..
Dependabot version updates 관리
Dependabot를 사용하여 자동으로 끌어오기 요청을 발생시켜 종속성을 최신 상태로 유지할 수 있습니다. 자세한 내용은 "Dependabot 버전 업데이트 정보"을 참조하세요.
- 리포지토리의 기본 페이지에서 설정을 클릭합니다.
- 보안 및 분석을 클릭합니다.
- Dependabot version updates 옆에 있는 사용을 클릭하여 기본 dependabot.yml 구성 파일을 만듭니다.
- 종속성을 지정하여 파일을 업데이트하고 리포지토리에 커밋합니다. 자세한 내용은 "Dependabot 버전 업데이트 구성"을 참조하세요.
code scanning 구성
CodeQL 분석 워크플로 또는 타사 도구를 사용하여 리포지토리에 저장된 코드의 취약성 및 오류를 자동으로 식별하도록 code scanning을 구성할 수 있습니다. 리포지토리의 프로그래밍 언어에 따라 기본 설정을 사용하여 CodeQL로 code scanning를 구성할 수 있습니다. 이 설정에서는 GitHub에서 검색할 언어, 실행할 쿼리 도구 모음 및 새 검사를 트리거하는 이벤트를 자동으로 결정합니다.
- 리포지토리의 기본 페이지에서 설정을 클릭합니다.
- 사이드바의 "보안" 섹션에서 코드 보안 및 분석을 클릭합니다.
- "Code scanning" 섹션에서 설정을 선택한 다음 기본값을 클릭합니다.
- 표시되는 팝업 창에서 리포지토리의 기본 구성 설정을 검토한 다음 CodeQL 사용을 클릭합니다.
또는 CodeQL을(를) 사용하여 code scanning을(를) 사용자 지정하기 위해 편집할 수 있는 워크플로 파일을 생성하는 고급 설정을 사용할 수 있습니다. 자세한 내용은 "리포지토리에 대한 코드 검사 구성"을 참조하세요.
Code scanning은(는) 모든 퍼블릭 리포지토리에 대해 를 사용할 수 있으며, 엔터프라이즈에서 GitHub Advanced Security를 사용하는 경우 organization 소유 리포지토리에 대한 라이선스가 있는 엔터프라이즈의 일부인 조직이 소유한 프라이빗 리포지토리에 사용할 수 있습니다.
secret scanning 구성
파트너에 대한 비밀 검사 경고는 퍼블릭 리포지토리 및 퍼블릭 npm 패키지에서 자동으로 실행되어 GitHub.com에서 유출된 비밀에 대해 서비스 공급자에게 알립니다.
사용자에 대한 비밀 검사 경고은(는) 모든 퍼블릭 리포지토리에서 무료로 사용할 수 있습니다. GitHub Advanced Security에 대한 라이선스가 있는 GitHub Enterprise Cloud를 사용하는 조직은 프라이빗 및 내부 리포지토리에서 사용자에 대한 비밀 검사 경고를 사용하도록 설정할 수도 있습니다. 자세한 내용은 "비밀 검사 정보" 및 "GitHub Advanced Security 정보"을 참조하세요.
-
리포지토리의 기본 페이지에서 설정을 클릭합니다.
-
코드 보안 & 분석을 클릭합니다.
-
Secret scanning 옆에 있는 사용을 클릭합니다.
보안 정책 만들기
리포지토리 유지 관리자 경우 리포지토리에 SECURITY.md 이라는 파일을 만들어 리포지토리에 대한 보안 정책을 지정하는 것이 좋습니다. 이 파일은 리포지토리에서 보안 취약성을 보고하려는 경우 사용자에게 가장 잘 연락하고 공동 작업하는 방법을 설명합니다. 리포지토리의 보안 탭에서 리포지토리의 보안 정책을 볼 수 있습니다.
- 리포지토리의 기본 페이지에서 보안을 클릭합니다.
- 보안 정책을 클릭합니다.
- 설치 시작을 클릭합니다.
- 지원되는 프로젝트 버전 및 취약성 보고 방법에 대한 정보를 추가합니다.
자세한 내용은 "Adding a security policy to your repository(리포지토리에 보안 정책 추가)"을 참조하세요.
다음 단계
보안 기능의 경고를 보고 관리하여 코드의 종속성과 취약성을 해결할 수 있습니다. 자세한 내용은 "Dependabot 경고 보기 및 업데이트" "종속성 업데이트에 대한 끌어오기 요청 관리,""리포지토리에 대한 코드 검사 경고 관리" 및 "비밀 검사에서 경고 관리"을 참조하세요.
GitHub의 도구를 사용하여 보안 경고에 대한 응답을 감사할 수도 있습니다. 자세한 내용은 "보안 경고 감사.
보안 취약성이 있는 경우 보안 공지를 만들어서 비공개로 취약성에 대해 논의하고 이를 수정할 수 있습니다. 자세한 내용은 "리포지토리 보안 권고 정보" 및 "리포지토리 보안 공지 만들기.