피드로 돌아가기
One year of Envilder: from a CLI script to SDKs, push mode, and a website
Dev.toDev.to
Infrastructure

선언적 Map 파일 기반의 Secret Provider 추상화 및 Multi-SDK 구축

One year of Envilder: from a CLI script to SDKs, push mode, and a website

Marçal Albert2026년 5월 7일7intermediate

Context

AWS SSM 기반의 CLI 도구가 단순 읽기 전용으로 작동하여 Secret 추가 시 콘솔/CLI 도구 간의 잦은 컨텍스트 스위칭 발생. .env 파일 기반의 Secret 관리 방식이 디스크 노출 및 버전 관리 부재로 인한 보안 취약점과 동기화 문제 유발.

Technical Solution

  • envilder.json을 통한 선언적 Contract 정의로 애플리케이션과 Secret Provider 간의 의존성 분리
  • ISecretProvider 인터페이스 추상화를 통해 AWS SSM에서 Azure Key Vault로의 Provider 교체 시 코드 수정 없는 확장 구조 설계
  • .env 파일을 입력값으로 받아 Map 파일의 경로에 따라 클라우드에 동기화하는 Push Mode 구현으로 워크플로우 단일화
  • 디스크 쓰기 과정을 제거하고 런타임에 Secret을 주입하는 Python, .NET, TypeScript Multi-SDK 제공으로 보안성 강화
  • .NET Standard 2.0 타겟팅 및 IConfiguration 통합을 통한 프레임워크 버전 호환성 및 네이티브 통합성 확보
  • LocalStack 기반의 에뮬레이션 테스트 스위트 구축을 통한 인프라 의존성 없는 검증 환경 마련

1. Secret 관리 도구 설계 시 Provider Interface를 통해 벤더 종속성 제거 여부 확인

2. 보안 강화를 위해 파일 기반 설정에서 런타임 주입 방식으로 전환 검토

3. 개발자 경험 향상을 위해 읽기/쓰기 워크플로우를 단일 CLI로 통합하는 방안 고려

원문 읽기