Skip to main content

조직 보호

여러 GitHub 기능을 사용하여 조직을 안전하게 유지할 수 있습니다.

이 기능을 사용할 수 있는 사람

Organization owners and security managers can manage security features for an organization.

소개

조직 소유자 또는 보안 관리자는 GitHub의 보안 기능을 사용하여 조직의 코드, 종속성, 비밀을 안전하게 유지할 수 있습니다. 자세한 내용은 "GitHub security features(GitHub 보안 기능)"을(를) 참조하세요.

보안 요구 사항은 조직마다 다릅니다. 조직에서 특정 기능으로 방지할 수 있는 취약성의 영향을 받았거나 조직이 규정 준수 요구 사항을 충족하는 데 도움이 되는 경우 기능을 사용하도록 설정할 수 있습니다.

조직의 여러 리포지토리에서 동시에 보안 기능을 사용하도록 설정할 수 있습니다. 사용하도록 설정할 각 기능에 대해 조직의 리포지토리에서 기능을 롤아웃하는 방법을 결정해야 합니다. 기능마다 조직 및 해당 기여자가 받는 영향이 다르므로 각 기능의 영향을 평가해야 합니다. 예시:

  • 일부 기능은 조직의 구성원에게 특정 취약성을 알리는 알림을 생성할 수 있습니다. 이러한 알림이 대상으로 지정되고 관련성을 유지하도록 기능을 활성화하기 전에 구성원에게 알림 설정을 검사를 요청할 수 있습니다. 자세한 내용은 "알림 구성"을(를) 참조하세요.
  • 일부 기능은 사용하도록 설정된 각 리포지토리에 대해 리소스를 사용할 수 있습니다. 예를 들어 프라이빗 리포지토리에서 code scanning을(를) 사용하도록 설정하면 GitHub Advanced Security 라이선스가 사용되며, 리포지토리에서 code scanning 분석을 실행하면 GitHub Actions 또는 다른 CI 시스템이 사용됩니다.

조직 소유자는 "보안 관리자" 역할을 팀에 할당하여 특정 사용자에게 보안 기능을 활성화 또는 비활성화하는 권한을 부여할 수 있습니다. 보안 관리자는 보안 설정을 구성하고 조직 전체의 보안 기능 사용을 모니터링할 수 있습니다. 자세한 내용은 "조직의 보안 관리자 관리"을(를) 참조하세요.

기능의 필수 구성 요소 정보

일부 보안 기능에는 필수 구성 요소가 있습니다. 예를 들어 Dependabot alerts은(는) 종속성 그래프의 정보를 사용하므로 Dependabot alerts을(를) 사용하도록 설정하면 종속성 그래프가 자동으로 활성화됩니다.

일부 기능은 퍼블릭 리포지토리에서 기본적으로 사용하도록 설정됩니다. 프라이빗 리포지토리에서 일부 기능은 GitHub Advanced Security을(를) 사용하고 Advanced Security을(를) 리포지토리의 기능으로 사용하도록 설정한 엔터프라이즈에서만 사용할 수 있습니다. 자세한 내용은 "GitHub Advanced Security 정보"을 참조하세요.

참고: 엔터프라이즈는 GitHub Advanced Security을(를) 사용하도록 설정할 수 있는 조직을 관리하는 정책을 설정할 수 있습니다. 자세한 내용은 "엔터프라이즈에 대한 코드 보안 및 분석을 위한 정책 적용"을(를) 참조하세요.

일부 기능은 각 리포지토리에 대해 개별적으로 구성해야 합니다. 예를 들어 리포지토리에서 Dependabot version updates을(를) 사용하도록 설정하려면 프로젝트의 종속성 관련 정보를 찾을 위치를 지정하는 dependabot.yml 파일을 추가해야 합니다. 자세한 내용은 "Dependabot 버전 업데이트 구성"을(를) 참조하세요.

조직에서 보안 기능 사용 설정

보안 기능을 사용하도록 결정한 경우 다음 단계는 조직 전체에서 해당 기능을 롤아웃하는 방법을 결정하는 것입니다.

  • 가능한 한 빨리 기능을 롤아웃하려면 모든 적격 리포지토리에 대해 한 번에 사용하도록 설정할 수 있습니다. 자세한 내용은 "모든 리포지토리에서 기능 사용 설정"을 참조하세요.
  • 기능을 롤아웃하는 방법과 리포지토리에서 사용할 수 있는 기능을 제어하려면 일부 리포지토리에서 기능을 사용하도록 설정할 수 있습니다. 자세한 내용은 "일부 리포지토리에서 기능 사용 설정"을 참조하세요.

조직의 기존 리포지토리에서 기능을 사용하도록 설정하는 방법을 결정했다면 나중에 조직에서 만든 새 리포지토리를 처리하는 방법도 결정해야 합니다. 자세한 내용은 "새 리포지토리에서 기능 사용 설정"을 참조하세요.

대규모 조직 또는 기업에서 보안 기능 롤아웃 전략을 만드는 방법에 대한 자세한 내용은 "대규모 GitHub Advanced Security 채택 소개"을 참조하세요.

모든 리포지토리에서 기능 사용 설정

보안 기능을 롤아웃하는 가장 빠른 방법은 조직의 모든 리포지토리에 대한 사용 설정을 한 번에 하는 것입니다. 기능의 필요성을 확인하고 모든 리포지토리에 대해 사용하도록 설정하면 롤아웃 계획을 고안하기 위해 잠시 중단할 필요 없이 전체 조직에서 보호를 받을 수 있습니다.

모든 리포지토리에서 기능을 사용하도록 설정하기 전에 이 작업이 미치는 영향을 고려해야 합니다. 이 기능으로 나타날 영향을 잘 모르겠다면 일부 리포지토리에서만 제한적으로 해당 기능을 사용하도록 설정하고 시작하는 것이 안전합니다. 모든 리포지토리에 대해 한 번에 기능을 사용하도록 설정하는 것은 다음과 같은 경우에 적합합니다.

  • 조직의 모든 리포지토리에 대한 개요를 파악하고 있으며 모든 리포지토리에서 특정 기능으로 이점을 얻을 수 있다고 확신합니다.
  • 해당 기능에서 GitHub Advanced Security 라이선스 또는 GitHub Actions 시간과 같은 리소스가 필요한 경우 필요한 리소스를 평가하고 계속 진행하기로 결정했습니다. GitHub Advanced Security의 무료 평가판에 참여하여 리포지토리 전체에서 GitHub Advanced Security 기능을 테스트할 수 있습니다. 무료 평가판 설정에 대한 자세한 내용은 "GitHub Advanced Security의 평가판 설정"을 참조하세요.
  • 해당 기능이 알림 또는 끌어오기 요청을 생성하는 경우 알림을 받거나 검토해야 하는 구성원을 대상으로 하며 관련성이 있다고 확신합니다.

진행할 준비가 되면 다음 단계에 따라 모든 리포지토리에서 기능을 사용하도록 설정합니다.

  1. GitHub.com에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 설정을 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    조직 프로필에 있는 여러 탭의 스크린샷. "설정" 탭이 진한 주황색으로 표시됩니다.

  3. 왼쪽 사이드바에서 코드 보안 및 분석을 클릭합니다.

  4. 사용하려는 기능을 찾아 관련 확인란을 통해 옵션을 미세 조정합니다.

  5. 해당 기능이 지원되는 조직의 모든 리포지토리에서 기능을 사용하도록 설정하려면 기능 이름 옆에 있는 모두 사용을 클릭합니다.

모두 사용을 클릭하면 선택 사항을 확인하라는 메시지가 표시됩니다. 기능이 다른 기능에 의존하거나 GitHub Advanced Security이(가) 필요한지도 알 수 있습니다. 자세한 내용은 "조직의 보안 및 분석 설정 관리"을(를) 참조하세요.

일부 리포지토리에서 기능 사용 설정

경우에 따라 기능이 필요한 리포지토리를 선택한 다음 해당 리포지토리에서만 기능을 사용하도록 설정하는 것이 좋습니다.

이 기능으로 나타날 영향을 잘 모르겠다면 모든 리포지토리에서 기능을 사용하도록 커밋하기 전에 일부 리포지토리에서만 제한적으로 기능을 테스트하거나 여러 단계에 걸쳐 점진적으로 기능을 롤아웃할 수 있습니다. 조직의 일부 리포지토리에는 다른 기능 집합이 필요하다는 것을 이미 알고 있을 수도 있습니다.

"보안 적용 범위" 보기를 사용하여 특정 기능이 필요한 리포지토리를 식별한 다음 해당 리포지토리에서 기능을 사용하도록 설정할 수 있습니다. 다음 단계에서는 "보안 적용 범위" 보기를 찾는 방법을 설명합니다.

  1. GitHub.com에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름 아래에서 보안을** 클릭합니다**.

    조직의 가로 탐색 모음 스크린샷 방패 아이콘과 "보안"이라는 레이블이 지정된 탭은 진한 주황색으로 표시됩니다.

  3. 사이드바에서 적용 범위를 클릭합니다.

이 보기에서는 확인란을 사용하여 리포지토리를 선택하거나 검색 창을 사용하여 기능을 사용하도록 설정할 리포지토리를 찾을 수 있습니다. 예를 들어 필터를 사용하여 특정 팀이 쓰기 또는 관리자 액세스 권한이 있는 리포지토리를 식별하거나 테스트 리포지토리 또는 내부 문서용 리포지토리와 동일한 수준의 보호가 필요하지 않은 리포지토리를 제외할 수 있습니다. 그런 다음 선택한 모든 리포지토리에 대해 기능을 사용하도록 한 번에 설정할 수 있습니다. 자세한 내용은 "여러 리포지토리에 보안 기능 사용"을(를) 참조하세요.

GitHub Advanced Security의 라이선스 수가 제한된 경우 중요한 프로젝트가 포함되거나 커밋 빈도가 가장 높은 리포지토리의 우선 순위를 지정할 수 있습니다. 자세한 내용은 "GitHub Advanced Security 요금 청구 정보"을(를) 참조하세요. "보안 적용 범위" 보기를 사용하면 선택한 리포지토리의 활성 커밋자 수를 볼 수 있으므로 기능을 활성화하는 데 사용할 GitHub Advanced Security 라이선스의 수를 확인할 수 있습니다.

참고:

  • 참고: 보안 개요를 사용하여 조직의 여러 리포지토리에 대해 code scanning을(를) 사용하도록 설정하면 선택한 리포지토리에 대한 기존 code scanning 구성이 모두 재정의됩니다. 여기에는 이전 쿼리 도구 모음 선택 항목 및 고급 설정에 대한 워크플로가 포함됩니다.
  • secret scanning에 대해 "경고"를 사용하도록 설정하면 신뢰도가 높은 경고를 사용할 수 있습니다. 비공급자 경고를 사용하려면 리포지토리, 조직 또는 엔터프라이즈 설정을 편집해야 합니다. 경고 유형에 대한 자세한 내용은 "지원되는 비밀"을 참조하세요.

새 리포지토리에서 기능 사용 설정

조직에서 만든 모든 새 리포지토리에서 자동으로 보안 기능을 사용하도록 선택할 수 있습니다. 새 리포지토리에서 기능을 사용하도록 설정하면 즉시 보호되고 리포지토리의 취약성을 가능한 한 빨리 식별할 수 있습니다. 그러나 보인 기능의 효율성을 극대화하려면 새 리포지토리를 각각 개별적으로 검토하는 것이 좋습니다.

  1. GitHub.com에서 조직의 기본 페이지로 이동합니다.

  2. 조직 이름에서 설정을 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    조직 프로필에 있는 여러 탭의 스크린샷. "설정" 탭이 진한 주황색으로 표시됩니다.

  3. 왼쪽 사이드바에서 코드 보안 및 분석을 클릭합니다.

  4. 기능 이름 아래에서 해당되는 향후 리포지토리에서 기능을 자동으로 사용하도록 설정하는 옵션을 선택합니다.

    "코드 보안 및 분석" 페이지 스크린샷. "Dependabot 경고" 아래에 향후 리포지토리에서 기능을 사용하도록 설정하기 위한 확인란이 주황색 윤곽선으로 강조 표시됩니다.

보안 기능의 영향 모니터링

기능을 사용하도록 설정한 경우 리포지토리 관리자 및 조직의 기여자와 소통하면서 기능의 영향을 평가해야 합니다. 리포지토리 수준에서 일부 기능의 구성을 조정하거나 조직 전체의 보안 기능 배포를 재평가해야 할 수 있습니다. 또한 기능이 생성하는 보안 경고와 이러한 경고에 대한 구성원의 응답을 모니터링해야 합니다.

You을(를) 사용하는 조직은 보안 개요를 사용하여 보안 경고의 영향을 받는 팀과 리포지토리를 확인하고 경고를 심각도별로 분석할 수 있습니다. 자세한 내용은 GitHub Enterprise Cloud 설명서의 "코드 보안 위험 평가."

보안 개요에는 조직의 보안 환경에 대한 인사이트를 얻기 위해 고급 수준의 추세 및 메트릭을 탐색할 수 있는 대시보드(베타)도 있습니다. 자세한 내용은 "조직의 보안 인사이트 보기"을(를) 참조하세요.

다양한 도구를 사용하여 조직의 구성원이 보안 경고에 대응하여 진행하는 작업을 모니터링할 수 있습니다. 자세한 내용은 "보안 경고 감사"을 참조하세요.

다음 단계

사용자가 보안 취약성을 보고하는 데 도움이 되도록 자체 보안 정책이 없는 조직의 퍼블릭 리포지토리에 표시되는 기본 보안 정책을 만들 수 있습니다. 자세한 내용은 "Creating a default community health file(기본 커뮤니티 상태 파일 만들기)"을(를) 참조하세요.

조직의 보안 설정이 완료되면 사용자가 리포지토리에서 보안 설정을 변경하는 것을 방지해야 합니다. 엔터프라이즈 소유자는 리포지토리 관리자가 리포지토리에서 기능을 사용하거나 사용하지 않도록 설정하는 것을 방지할 수 있습니다. 자세한 내용은 "엔터프라이즈에 대한 코드 보안 및 분석을 위한 정책 적용"을(를) 참조하세요.

추가 참고 자료

"조직에 대한 규정 준수 보고서 액세스"