시크릿 참조(Secrets reference)

시크릿 참조(Secrets reference)

GitHub Actions의 시크릿에 대한 기술적 정보를 알려드릴게요. 시크릿을 안전하게 잘 관리하려면 이름 규칙과 한도를 꼭 알아두세요.

출처: 문서

본문

GitHub Actions의 시크릿에 대한 기술적 정보를 확인할 수 있습니다.

시크릿 이름 짓기

[!TIP] GitHub가 시크릿을 로그에서 올바르게 가리도록 하려면 시크릿의 값으로 구조화된 데이터를 사용하지 않는 것이 좋습니다.

시크릿 이름에는 다음 규칙이 적용됩니다:

  • 영숫자 문자([a-z], [A-Z], [0-9])나 밑줄(_)만 포함할 수 있습니다. 공백은 허용되지 않습니다.
  • GITHUB_ 접두사로 시작하면 안 됩니다.
  • 숫자로 시작하면 안 됩니다.
  • 참조할 때 대소문자를 구분하지 않습니다. GitHub는 입력 방식과 관계없이 시크릿 이름을 대문자로 저장합니다.
  • 시크릿이 생성된 저장소, 조직, 엔터프라이즈에서 고유해야 합니다.

같은 이름의 시크릿이 여러 레벨에 존재하면 가장 낮은 레벨의 시크릿이 우선합니다. 예를 들어 조직 레벨 시크릿과 저장소 레벨 시크릿의 이름이 같다면 저장소 레벨 시크릿이 우선합니다. 마찬가지로 조직, 저장소, 환경 모두에 같은 이름의 시크릿이 있으면 환경 레벨 시크릿이 우선합니다.

시크릿 한도

조직 시크릿 최대 1,000개, 저장소 시크릿 100개, 환경 시크릿 100개를 저장할 수 있습니다.

저장소에서 생성된 워크플로는 다음 수의 시크릿에 접근할 수 있습니다:

  • 저장소 시크릿 100개 모두.
  • 저장소가 100개가 넘는 조직 시크릿에 대한 접근 권한을 받은 경우, 워크플로는 처음 100개의 조직 시크릿(시크릿 이름 알파벳순 정렬)만 사용할 수 있습니다.
  • 환경 시크릿 100개 모두.

시크릿은 크기가 48KB로 제한됩니다. 더 큰 시크릿을 저장하려면 Using secrets in GitHub Actions를 참고하세요.

GitHub Actions가 시크릿을 읽는 시점

조직과 저장소 시크릿은 워크플로 실행이 대기열에 배치될 때 읽히고, 환경 시크릿은 환경을 참조하는 잡이 시작될 때 읽힙니다.

자동으로 가려지는 시크릿

GitHub는 다음과 같은 민감한 정보를 워크플로 로그에서 자동으로 가립니다.

[!NOTE] 다른 유형의 민감한 정보도 자동으로 가려지길 원한다면 커뮤니티 토론에서 알려주세요.

  • 32바이트 및 64바이트 Azure 키
  • Azure AD 클라이언트 앱 비밀번호
  • Azure Cache 키
  • Azure Container Registry 키
  • Azure Function 호스트 키
  • Azure Search 키
  • 데이터베이스 연결 문자열
  • HTTP Bearer 토큰 헤더
  • JWT
  • NPM 작성자 토큰
  • NuGet API 키
  • v1 GitHub 설치 토큰
  • v2 GitHub 설치 토큰(ghp, gho, ghu, ghs, ghr)
  • v2 GitHub PAT

보안

시크릿 사용 관련 보안 모범 사례는 Secure use reference를 참고하세요.

더 알아보기 (Learn more)