CI/CD에서 외부 시크릿 사용하기

CI/CD에서 외부 시크릿 사용하기

CI/CD 작업이 작업을 완료하기 위해 필요로 하는 민감 정보, 즉 시크릿(secret)에 대해 설명하는 문서예요. API 토큰, 데이터베이스 자격 증명, 개인 키 같은 것들이 시크릿에 해당해요.

CI/CD 변수와 달리 시크릿은 작업이 명시적으로 요청해야 하며, 여러 시크릿 관리 제공자를 지원한다는 점을 옆에서 설명해 주는 방식으로 정리했어요.

출처: 문서

본문

CI/CD 작업은 작업을 완료하기 위해 시크릿(secret)이라고 하는 민감 정보가 필요할 수 있어요. 이 민감 정보는 API 토큰, 데이터베이스 자격 증명, 또는 개인 키 같은 것들일 수 있어요. 시크릿은 시크릿 제공자(secrets provider)에서 가져와요.

항상 작업에서 사용할 수 있는 CI/CD 변수와 달리, 시크릿은 작업이 반드시 명시적으로 요청해야 해요.

GitLab은 다음을 포함한 여러 시크릿 관리 제공자를 지원해요.

  1. HashiCorp Vault
  2. Google Cloud Secret Manager
  3. Azure Key Vault
  4. AWS Secrets Manager

이 통합들은 인증에 ID 토큰을 사용해요. JSON 웹 토큰(JWT)과 함께 OIDC 인증을 지원하는 시크릿 제공자와는 ID 토큰을 사용해 수동으로 인증할 수도 있어요.

더 알아보기

시크릿 인증의 핵심이 되는 ID 토큰 인증 문서를 먼저 살펴보고, 사용하려는 시크릿 관리자 문서(HashiCorp Vault, GCP Secret Manager, Azure Key Vault, AWS Secrets Manager)를 함께 읽어보시면 좋아요.