참고: 이 기능을 사용하려면 사이트 관리자가 GitHub Enterprise Server 인스턴스에 대해 secret scanning을(를) 사용하도록 설정해야 합니다. 자세한 내용은 "어플라이언스에 대한 비밀 검사 구성"을 참조하세요.
참고: 보호 푸시로서의 Secret scanning은(는) 현재 베타 버전이며 변경될 수 있습니다.
비밀에 대한 푸시 보호 정보
지금까지 secret scanning는 푸시 후 비밀을 확인하고 노출된 비밀에 대해 사용자에게 경고합니다. 푸시 보호를 사용하도록 설정하면 secret scanning은 신뢰도가 높은 비밀(낮은 가양성 비율로 식별됨)에 대한 푸시도 확인합니다. Secret scanning은 검색한 비밀을 나열하므로 작성자는 비밀을 검토하고 제거하거나 필요한 경우 해당 비밀을 푸시할 수 있습니다.
참가자가 비밀에 대한 푸시 보호 블록을 바이패스하는 경우 GitHub는 다음을 수행합니다.
- 는 아래 표에 설명 된 상태의 리포지토리 보안 탭에 경고를 만듭니다.
- 감사 로그에 바이패스 이벤트를 추가합니다.
보안 경고를 모니터링하여 사용자가 푸시 보호를 우회하고 경고를 만드는 경우를 검색할 수 있습니다. 자세한 내용은 "Auditing security alerts.
이 표에서는 사용자가 푸시 보호 블록을 우회할 수 있는 각 방법에 대한 경고 동작을 보여 줍니다.
바이패스 이유 | 경고 동작 |
---|---|
테스트에 사용됩니다. | GitHub은(는) "테스트에 사용됨"으로 확인된 닫힌 경고를 만듭니다. |
가양성입니다. | GitHub에서 "가양성"으로 확인된 닫힌 경고를 만듭니다. |
나중에 수정하겠습니다. | GitHub이(가) 열린 경고를 만듭니다. |
푸시 보호에 지원되는 비밀 및 서비스 공급자에 대한 자세한 내용은 "비밀 검사 패턴.
푸시 보호로 secret scanning 사용
secret scanning을(를) 푸시 보호로 사용하려면 조직 또는 리포지토리에 GitHub Advanced Security 및 secret scanning을(를) 모두 사용하도록 설정해야 합니다. 자세한 내용은 "AUTOTITLE", "AUTOTITLE" 및 "리포지토리에 대한 보안 및 분석 설정 관리"을 참조하세요.
조직 소유자, 보안 관리자, 리포지토리 관리자는 UI 및 API를 통해 secret scanning에 대한 푸시 보호를 사용하도록 설정할 수 있습니다. 자세한 내용은 REST API 설명서에서 "리포지토리"을 security_and_analysis
참조하고 "개체의 속성" 섹션을 확장합니다.
조직에 대한 푸시 보호로 secret scanning 사용
-
GitHub Enterprise Server 인스턴스에서 조직의 기본 페이지로 이동합니다. 1. 조직 이름에서 설정을 클릭합니다.
-
사이드바의 "보안" 섹션에서 코드 보안 및 분석을 클릭합니다.
-
“Code security and analysis”(코드 보안 및 분석)에서 “GitHub Advanced Security”를 찾습니다. 1. “Secret scanning”의 “보호 푸시”에서 모두 사용을 클릭합니다.
대해 secret scanning에 대한 푸시 보호를 사용하도록 설정하는 방법을 보여 주는 스크린샷 -
필요에 따라 "secret scanning에 추가된 리포지토리에 대해 자동으로 사용"을 클릭합니다.
리포지토리에 대한 푸시 보호로 secret scanning 사용
-
GitHub Enterprise Server 인스턴스에서 리포지토리의 기본 페이지로 이동합니다. 1. 리포지토리 이름 아래에서 설정을 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.
-
사이드바의 “보안” 섹션에서 코드 보안 및 분석을 클릭합니다.
-
“Code security and analysis”(코드 보안 및 분석)에서 “GitHub Advanced Security”를 찾습니다. 1. “Secret scanning”의 “보호 푸시”에서 사용을 클릭합니다.
명령줄에서 푸시 보호로 비밀 검색 사용
푸시 보호를 사용하도록 설정된 secret scanning을(를) 사용하여 리포지토리 또는 조직에 지원되는 비밀을 푸시하려고 하면 GitHub이(가) 푸시를 차단합니다. 분기에서 비밀을 제거하거나 제공된 URL을 따라 푸시를 허용할 수 있습니다.
검색된 비밀은 명령줄에 한 번에 최대 5개까지 표시됩니다. 리포지토리에서 특정 비밀이 이미 검색되고 경고가 이미 있는 경우 GitHub은(는) 해당 비밀을 차단하지 않습니다.
비밀이 진짜인지 확인한 경우 다시 푸시하기 전에 표시되는 모든 커밋에서 분기에서 비밀을 제거해야 합니다. 차단된 비밀 수정에 대한 자세한 내용은 "푸시 보호로 차단된 분기 푸시"을 참조하세요.
비밀이 진짜임을 확인하고 나중에 수정하려는 경우 가능한 한 빨리 비밀을 수정하는 것을 목표로 해야 합니다. 예를 들어 비밀을 해지하고 리포지토리의 커밋 기록에서 비밀을 제거할 수 있습니다. 무단 액세스를 방지하려면 노출된 실제 비밀을 해지해야 합니다. 비밀을 해지하기 전에 먼저 비밀을 교체하는 것을 고려할 수 있습니다. 자세한 내용은 "리포지토리에서 중요한 데이터 제거"을 참조하세요.
참고:
- git 구성이 현재 분기뿐만 아니라 여러 분기에 대한 푸시를 지원하는 경우 푸시되는 추가 및 의도하지 않은 참조로 인해 푸시가 차단될 수 있습니다. 자세한 내용은 Git 문서의
push.default
옵션을 참조하세요. - 푸시 시 secret scanning이(가) 시간 초과되면 GitHub은(는) 푸시 후에도 커밋에서 비밀을 검사합니다.
차단된 비밀을 푸시할 수 있도록 허용
GitHub이(가) 푸시해도 안전하다고 생각되는 비밀을 차단하는 경우 비밀을 허용하고 이를 허용해야 하는 이유를 지정할 수 있습니다.
비밀을 푸시하도록 허용하면 보안 탭에 경고가 생성됩니다. GitHub은(는) 경고를 닫고 비밀이 가양성이거나 테스트에서만 사용되도록 지정하면 알림을 보내지 않습니다. 비밀이 실제이고 나중에 수정하도록 지정하면 GitHub는 보안 경고를 열어 두고 커밋 작성자와 리포지토리 관리자에게 알림을 보냅니다. 자세한 내용은 "비밀 검사에서 경고 관리"을 참조하세요.
- 푸시가 차단되었을 때 GitHub에서 반환된 URL을 방문합니다.
- 비밀을 푸시할 수 있어야 하는 이유를 가장 잘 설명하는 옵션을 선택합니다.
- 비밀이 테스트에만 사용되고 위협이 되지 않는 경우 테스트에 사용됨을 클릭합니다.
- 검색된 문자열이 비밀이 아니면 가양성임을 클릭합니다.
- 비밀이 진짜이지만 나중에 수정하려는 경우 나중에 수정을 클릭합니다.
- 이 비밀을 푸시하도록 허용을 클릭합니다.
- 3시간 이내에 명령줄에서 푸시를 다시 시도합니다. 3시간 이내에 푸시하지 않은 경우 이 프로세스를 반복해야 합니다.
웹 UI에서 푸시 보호로 비밀 검색 사용
웹 UI를 사용하여 푸시 보호가 사용하도록 설정된 비밀 검사를 사용하는 리포지토리 또는 조직에 지원되는 비밀을 커밋하려고 하면 GitHub이(가) 커밋을 차단합니다.
페이지 상단에 비밀의 위치에 대한 정보가 있는 배너가 표시되며, 파일에도 비밀에 밑줄이 표시되어 쉽게 찾을 수 있습니다.
GitHub은(는) 웹 UI에서 검색된 비밀을 한 번에 하나씩만 표시합니다. 리포지토리에서 특정 비밀이 이미 검색되고 경고가 이미 있는 경우 GitHub은(는) 해당 비밀을 차단하지 않습니다.
웹 UI를 사용하여 파일에서 비밀을 제거할 수 있습니다. 비밀을 제거하면 페이지 상단의 배너가 변경되고 이제 변경 사항을 커밋할 수 있음을 알려줍니다.
비밀에 대한 푸시 보호 무시
비밀이 진짜인지 확인한 경우 다시 푸시하기 전에 표시되는 모든 커밋에서 분기에서 비밀을 제거해야 합니다. 차단된 비밀 수정에 대한 자세한 내용은 "푸시 보호로 차단된 분기 푸시"을 참조하세요.
비밀이 진짜임을 확인하고 나중에 수정하려는 경우 가능한 한 빨리 비밀을 수정하는 것을 목표로 해야 합니다. 자세한 내용은 "리포지토리에서 중요한 데이터 제거"을 참조하세요.
GitHub이(가) 푸시해도 안전하다고 생각되는 비밀을 차단하는 경우 비밀을 허용하고 이를 허용해야 하는 이유를 지정할 수 있습니다.
비밀을 푸시하도록 허용하면 보안 탭에 경고가 생성됩니다. GitHub은(는) 경고를 닫고 비밀이 가양성이거나 테스트에서만 사용되도록 지정하면 알림을 보내지 않습니다. 비밀이 실제이고 나중에 수정하도록 지정하면 GitHub는 보안 경고를 열어 두고 커밋 작성자와 리포지토리 관리자에게 알림을 보냅니다. 자세한 내용은 "비밀 검사에서 경고 관리"을 참조하세요.
비밀이 진짜임을 확인하고 나중에 수정하려는 경우 가능한 한 빨리 비밀을 수정하는 것을 목표로 해야 합니다.
- GitHub이(가) 커밋을 차단했을 때 페이지 상단에 표시된 배너에서 보호 무시를 클릭합니다.
- 비밀을 푸시할 수 있어야 하는 이유를 가장 잘 설명하는 옵션을 선택합니다.
- 비밀이 테스트에만 사용되고 위협이 되지 않는 경우 테스트에 사용됨을 클릭합니다.
- 검색된 문자열이 비밀이 아니면 가양성임을 클릭합니다.
- 비밀이 진짜이지만 나중에 수정하려는 경우 나중에 수정을 클릭합니다.
- 비밀 허용을 클릭합니다.