파이프라인 보안
비밀 관리
비밀 관리는 개발자가 엄격한 액세스 제어로 민감한 데이터를 안전하게 저장하는 시스템입니다. 비밀은 기밀로 유지해야 하는 민감한 자격 증명입니다. 비밀의 예시:
- 비밀번호
- SSH 키
- 액세스 토큰
- 조직에 해로운 노출을 초래할 수 있는 기타 유형의 자격 증명
비밀 저장
비밀 관리 제공업체
가장 민감하고 엄격한 정책하에서의 비밀은 비밀 관리자에 저장되어야 합니다. 비밀 관리자 솔루션을 사용할 때 비밀은 GitLab 인스턴스 외부에 저장됩니다. 이 공간에는 HashiCorp의 Vault, Azure Key Vault, Google Cloud Secret Manager를 포함한 여러 제공업체가 있습니다.
필요할 때 CI/CD 파이프라인에서 이러한 비밀을 검색하기 위해 특정 외부 비밀 관리 제공업체에 대한 GitLab 내 연동을 사용할 수 있습니다.
CI/CD 변수
CI/CD 변수는 CI/CD 파이프라인에서 데이터를 저장하고 재사용하기 위한 편리한 방법입니다. 그러나 변수는 비밀 관리 제공업체보다 보안성이 낮습니다. 변수 값:
- GitLab 프로젝트, 그룹 또는 인스턴스 설정에 저장됩니다. 설정에 액세스 권한이 있는 사용자는 변수에 액세스할 수 있습니다.
- 재정의될 수 있어 사용된 값을 파악하기 어렵습니다.
- 실수로 파이프라인 구성이 노출될 수 있습니다.
변수에 저장할 수 있는 정보는 악용의 위험이 없는 데이터(비민감한 데이터)여야 합니다.
민감한 데이터는 비밀 관리 솔루션에 저장해야 합니다. 만약 CI/CD 변수에 저장하려는 낮은 민감도의 데이터가 있다면 항상: