Skip to main content

리포지토리에 대한 비밀 검사 구성

GitHub이(가) 리포지토리에서 유출된 비밀을 검색하고 경고를 생성하는 방법을 구성할 수 있습니다.

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

People with admin permissions to a public repository can enable secret scanning for the repository.

파트너에 대한 비밀 검사 경고은(는) 공용 리포지토리 및 공용 npm 패키지에서 자동으로 실행되어 GitHub에서 비밀이 유출된 것을 서비스 공급자에게 알립니다.

사용자에 대한 비밀 검사 경고은(는) 퍼블릭 리포지토리에서 무료로 제공됩니다. GitHub Enterprise Cloud를 사용하면서 GitHub Advanced Security 라이선스가 있는 조직은 또한 프라이빗 리포지토리와 내부 리포지토리에서 사용자에 대한 비밀 검사 경고을(를) 사용하도록 설정할 수 있습니다. 자세한 내용은 "비밀 검사 정보" 및 "GitHub Advanced Security 정보"을 참조하세요.

GitHub Enterprise 및 GitHub Advanced Security을(를) 무료로 사용해 보는 방법에 대한 자세한 내용은 GitHub Enterprise Cloud 설명서에서 "GitHub Enterprise Cloud 평가판 설치" 및 "GitHub Advanced Security의 평가판 설정"을 참조하세요.

사용자에 대한 비밀 검사 경고 사용

모든 (으)로 GitHub Enterprise Cloud을(를) 사용할 때 소유한 무료 공용 리포지토리. 사용하도록 설정되면 secret scanning은 GitHub 리포지토리에 있는 모든 분기에서 전체 Git 기록의 비밀을 검색합니다. 또한 secret scanning은(는) 다음을 검사합니다.

  • 문제의 설명 및 주석
  • 과거 미결 및 종결 문제의 제목, 설명 및 주석
  • 끌어오기 요청의 제목, 설명 및 주석
  • GitHub Discussions의 제목, 설명 및 메모
  • Wiki

이 추가 scan은 퍼블릭 리포지토리에 대해 무료입니다.

노트: 끌어오기 요청, GitHub Discussions, Wiki의 콘텐츠 검사는 현재 베타로 제공되며 변경 대상이 될 수 있습니다.

조직의 여러 리포지토리에 대해 secret scanning을(를) 동시에 사용하도록 설정할 수도 있습니다. 자세한 내용은 "조직 보안을 위한 빠른 시작"을(를) 참조하세요.

리포지토리 관리자는 언제든지 리포지토리에 대해 secret scanning을(를) 사용하지 않도록 선택할 수 있습니다. 자세한 내용은 "리포지토리에 대한 보안 및 분석 설정 관리"을(를) 참조하세요.

  1. GitHub.com에서 리포지토리의 기본 페이지로 이동합니다.

  2. 리포지토리 이름 아래에서 Settings(설정)를 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    탭을 보여 주는 리포지토리 헤더의 스크린샷. "설정" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.

  3. 사이드바의 "보안" 섹션에서 코드 보안 및 분석을 클릭합니다.

  4. 페이지 아래쪽으로 스크롤하고 secret scanning에 대해 사용을 클릭합니다. 사용 안 함 단추가 표시되면 해당 리포지토리에 대해 secret scanning이(가) 이미 사용하도록 설정된 것입니다.

    "사용" 단추가 진한 주황색 윤곽선으로 강조 표시된 "코드 보안 및 분석" 페이지의 "Secret scanning" 섹션 스크린샷

사용자에 대한 비밀 검사 경고에 대한 추가 기능 사용

리포지토리의 "코드 보안 및 분석" 설정을 통해 다음 추가 secret scanning 기능을 사용하도록 설정할 수 있습니다.

모든 퍼블릭 리포지토리에 대하여 사용자에 대한 비밀 검사 경고 사용 설정

개인 계정 설정을 통해 모든 기존 퍼블릭 리포지토리에 대하여 secret scanning을(를) 사용 설정할 수 있습니다.

참고: 2024년 3월 11일부터 사용자가 생성하는 모든 신규 퍼블릭 리포지토리에 대하여 기본적으로 secret scanning 및 푸시 보호가 사용 설정됩니다. 종전처럼 각 리포지토리에서 이러한 기능을 사용하지 않으려면 리포지토리의 "코드 보안 및 분석" 설정 페이지를 이용하면 됩니다. 자세한 내용은 "리포지토리에 대한 보안 및 분석 설정 관리"을 참조하세요.

  1. GitHub의 페이지 오른쪽 상단에서 프로필 사진을 클릭한 다음, 설정을 클릭합니다.

  2. 사이드바의 "보안" 섹션에서 코드 보안 및 분석을 클릭합니다.

  3. "코드 보안 및 분석"의 "Dependabot alerts" 오른쪽에서 모두 사용 안 함 또는 모두 사용을 클릭합니다.

  4. 필요에 따라 푸시 보호를 활성화하려면 "푸시 보호" 오른쪽에 있는 활성화를 클릭합니다. 조직 또는 리포지토리에 대하여 푸시 보호를 사용 설정하면 secret scanning이(가) 지원되는 비밀에 대한 푸시도 검사합니다. Secret scanning은 검색한 비밀을 나열하므로 작성자는 비밀을 검토하고 제거하거나 필요한 경우 해당 비밀을 돌려주기할 수 있습니다. 자세한 내용은 "리포지토리 및 조직에 대한 푸시 보호"을(를) 참조하세요.

    "Secret scanning" 섹션의 스크린샷 "푸시 보호" 섹션에 "사용" 버튼이 진한 주황색 윤곽선으로 강조 표시됩니다.

사용자에 대한 비밀 검사 경고에서 디렉터리 제외

푸시 보호를 사용하는 경우를 포함하여secret scanning에서 디렉터리를 제외하도록 secret_scanning.yml 파일을 구성할 수 있습니다. 예를 들어 테스트 또는 임의로 생성된 콘텐츠가 포함된 디렉터리를 제외할 수 있습니다.

  1. GitHub.com에서 리포지토리의 기본 페이지로 이동합니다.

  2. 파일 목록 위에서 파일 추가 드롭다운 메뉴를 선택하고 새 파일 만들기를 클릭합니다.

    또는 왼쪽의 파일 트리 보기에서 을(를) 클릭합니다.

     리포지토리의 기본 페이지 스크린샷입니다. 파일 목록 위에 "파일 추가" 레이블의 단추가 진한 주황색으로 표시됩니다. 리포지토리의 파일 트리 보기에서 더하기 기호 아이콘이 있는 단추도 진한 주황색으로 표시됩니다.

  3. 파일 이름 필드에 _.github/secret_scanning.yml_을 입력합니다.

  4. 새 파일 편집에서 paths-ignore:를 입력하고 secret scanning에서 제외할 경로를 입력합니다.

    paths-ignore:
      - "foo/bar/*.js"
    

    *와 같은 특수 문자를 사용하여 경로를 필터링할 수 있습니다. 필터 패턴에 대한 자세한 내용은 “GitHub Actions에 대한 워크플로 구문”을 참조하세요.

    참고:

    • paths-ignore에 1,000개가 넘는 항목이 있는 경우 secret scanning은 검사에서 처음 1,000개의 디렉터리만 제외합니다.
    • secret_scanning.yml이(가) 1 MB보다 크면 secret scanning은(는) 전체 파일을 무시합니다.

secret scanning에서 개별 경고를 무시할 수도 있습니다. 자세한 내용은 "비밀 검사에서 경고 관리"을(를) 참조하세요.