CI/CD pipeline은 build와 deploy를 위해 secret(API key, deploy 자격 증명, 데이터베이스 비밀번호, token)이 필요합니다 — 하지만 이를 안전하지 않게 다루는 것은 심각한 위험입니다. 적절한 secret 관리는 pipeline 전체에서 자격 증명을 안전하게 유지합니다.
문제: secret은 절대 노출되어서는 안 됨
pipeline은 자격 증명이 필요하지만, secret은 잘못 다루면 주요 보안 위험:
⚠️ secret을 코드, pipeline config 파일에 하드코딩하거나 Git에 commit하지 말 것
(commit된 secret은 이력에 노출됨 — 나중에 "제거"해도)
⚠️ secret을 로그에 출력하지 말 것 (pipeline 로그는 보이거나 저장될 수 있음)
→ 유출된 CI/CD secret(deploy key, 클라우드 자격 증명)은 전체 시스템을 손상시킬 수 있음.
적절한 secret 처리
✓ CI/CD 플랫폼의 SECRETS STORE 사용 — 암호화된 secret을 런타임에 env var로 주입
(GitHub Actions Secrets, GitLab CI variables 등) — config 파일이 아님
✓ 전용 SECRETS MANAGER 사용 — HashiCorp Vault, AWS Secrets Manager 등
(런타임에 secret을 가져옴; 중앙화, 감사, 회전 가능)
✓ pipeline에서 secret을 이름으로 참조; 플랫폼이 값을 안전하게 주입:
