Skip to main content

GitHub UI에서 푸시 보호 작업

secret scanning이(가) 변경 내용에서 비밀을 감지할 때 커밋을 차단 해제하는 옵션을 알아봅니다.

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

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

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

GitHub Advanced Security을(를) 무료로 사용해 보는 방법에 대한 자세한 내용은 "Setting up a trial of GitHub Advanced Security"을 참조하세요.

GitHub UI의 푸시 보호 정보

GitHub UI에서 파일을 만들고 편집할 때 푸시 보호는 지원되는 비밀이 포함된 커밋을 차단하여 실수로 리포지토리에 비밀을 커밋하는 것을 방지합니다.

GitHub에서는 지원되는 비밀이 포함된 파일을 업로드하려고 하면 커밋을 차단합니다.

Note

웹 UI에서 파일 업로드에 대한 푸시 보호는 현재 beta 버전이며 변경될 수 있습니다.

다음 중 하나를 수행해야 합니다.

GitHub은(는) 웹 UI에서 검색된 비밀을 한 번에 하나씩만 표시합니다. 리포지토리에서 특정 비밀이 이미 검색되고 경고가 이미 있는 경우 GitHub은(는) 해당 비밀을 차단하지 않습니다.

조직 소유자는 푸시가 차단될 때 표시되는 사용자 지정 링크를 제공할 수 있습니다. 이 사용자 지정 링크에는 조직과 관련된 리소스 및 조언이 포함될 수 있습니다. 예를 들어 사용자 지정 링크는 조직의 비밀 자격 증명 모음에 대한 정보, 질문을 에스컬레이션할 팀과 개인 또는 비밀 사용 및 커밋 기록을 다시 쓰기에 대해 승인된 조직 정책이 들어 있는 추가 정보 파일을 가리킬 수 있습니다.

차단된 커밋 해결

웹 UI를 사용하여 푸시 보호로 안전하게 보호되는 리포지토리에 지원되는 비밀을 커밋하려 하면 GitHub이(가) 해당 커밋을 차단합니다.

비밀의 위치에 대한 정보와 비밀을 푸시할 수 있는 옵션이 포함된 대화 상자가 표시됩니다. 또한 비밀은 파일에서 밑줄로 표시되므로 쉽게 찾을 수 있습니다.

웹 UI에서 차단된 커밋을 해결하려면 파일에서 비밀을 제거해야 합니다. 비밀을 제거하면 변경 내용을 커밋할 수 있습니다.

Note

명령줄에서 차단된 푸시를 확인하는 방법을 알아보려면 "명령줄에서 푸시 보호 작업" 항목을 참조하세요.

푸시 보호 바이패스

GitHub에서 커밋해도 안전하다고 생각되는 비밀을 차단하면 에서 비밀을 허용하는 이유를 지정하여 블록을 바이패스할 수 있습니다.

비밀을 푸시하도록 허용하면 보안 탭에 경고가 생성됩니다. GitHub은(는) 경고를 닫고 비밀이 가양성이거나 테스트에서만 사용되도록 지정하는 경우 알림을 보내지 않습니다. 비밀이 실제이고 나중에 수정하도록 지정하면 GitHub는 보안 경고를 열어 두고 커밋 작성자와 리포지토리 관리자에게 알림을 보냅니다. 자세한 내용은 "비밀 검사에서 경고 관리"을(를) 참조하세요.

기여자가 비밀에 대한 푸시 보호 블록을 바이패스하면 GitHub는 메일 알림을 옵트인한 조직 소유자, 보안 관리자 및 리포지토리 관리자에게 메일 경고를 보냅니다.

  1. GitHub이(가) 커밋을 차단했을 때 나타나는 대화 상자에서 비밀의 이름과 위치를 검토합니다.

  2. 비밀을 푸시할 수 있어야 하는 이유를 가장 잘 설명하는 옵션을 선택합니다.

    • 비밀이 테스트에만 사용되고 위협이 되지 않는 경우 테스트에 사용됨을 클릭합니다.
    • 검색된 문자열이 비밀이 아니면 가양성임을 클릭합니다.
    • 비밀이 진짜이지만 나중에 수정하려는 경우 나중에 수정을 클릭합니다.

    참고: 리포지토리에서 비밀 스캔이 사용 설정된 경우, 푸시 보호를 바이패스하는 이유를 지정해야 합니다.

    비밀 스캔을 사용 설정하지 않은 퍼블릭 리포지토리에 대하여 푸시하는 경우에도, 사용자 계정에 기본적으로 ON으로 설정된 사용자에 대한 푸시 보호 덕분에 우발적으로 비밀을 푸시하지 않도록 보호됩니다.

    사용자에 대한 푸시 보호를 사용하면 GitHub가 퍼블릭 리포지토리에 대한 푸시에 지원되는 비밀이 포함된 경우 해당 푸시를 자동으로 차단하지만, 비밀을 허용하는 이유를 지정하지 않아도 되고, GitHub이(가) 경고를 생성하지도 않습니다. 자세한 내용은 "사용자에 대한 푸시 보호"을(를) 참조하세요.

  3. 비밀 허용을 클릭합니다.

블록을 바이패스하는 옵션이 표시되지 않으면 리포지토리 관리자 또는 조직 소유자가 푸시 보호에 대한 보다 엄격한 제어를 구성합니다. 대신 커밋에서 비밀을 제거하거나 차단된 비밀을 푸시하기 위해 "권한 바이패스" 요청을 제출해야 합니다. 자세한 내용은 "바이패스 권한 요청" 항목을 참조하세요.

바이패스 권한 요청

Note

푸시 보호에 대한 위임된 바이패스는 현재 beta 버전이며 변경될 수 있습니다.

푸시 보호에 의해 커밋이 차단된 경우, 차단을 바이패스할 수 있는 권한을 요청할 수 있습니다. 요청이 지정된 검토자 그룹으로 전송되며, 검토자는 요청을 승인하거나 거부합니다.

요청은 7일 후에 만료됩니다.

  1. GitHub이(가) 커밋을 차단했을 때 나타나는 대화 상자에서 비밀의 이름과 위치를 검토합니다.
  2. 요청 시작을 클릭합니다. 요청이 새 탭에서 열립니다. 1. "또는 권한 무시 요청"에 설명을 추가합니다. 예를 들어 비밀이 돌려주는 것이 안전하다고 생각하는 이유를 설명하거나 차단을 무시하기 위한 요청의 컨텍스트를 제공할 수 있습니다.
  3. 요청 제출을 클릭합니다.
  4. 메일 알림 요청에 대한 응답을 확인하세요.

요청이 검토되고 나면 결정 내용을 알리는 이메일을 받게 됩니다.

요청이 승인되면 파일에 비밀을 포함하는 변경 내용을 커밋할 수 있습니다. 동일한 비밀을 포함하는 향후 변경 내용을 커밋할 수도 있습니다.

요청이 거부된 경우 변경 내용을 커밋하기 전에 파일에서 비밀을 제거해야 합니다.

추가 참고 자료