Skip to main content

Secrets Manager 및 KMS 서비스 출시 안내

· 4 min read
Miguel (김현덕)
Service Manager
security-release

클라우드 기반 서비스가 확산되면서 운영 효율성과 확장성은 크게 향상됐지만, 그만큼 보안에 대한 요구도 더욱 정교해지고 있습니다. 특히 인증 정보나 자격 증명처럼 시스템 내부에서 필수로 사용되지만 외부 노출 시 보안 사고로 직결되는 민감 정보는, 단순히 숨기는 것만으로는 더 이상 안전하다고 할 수 없습니다. 어떻게 저장하고, 누가 접근하며, 어떤 방식으로 갱신, 폐기되는지까지 체계적으로 관리되어야 하죠.

또한, 암호화된 데이터를 보호하는 암호화 키(Key) 역시 별도로 안전하게 관리되어야 합니다. 키 하나만 유출되어도 모든 보안의 의미가 사라질 수 있기 때문입니다.

이런 보안 니즈에 대응하기 위해, 카카오클라우드는 두 가지 신규 보안 서비스를 출시했습니다. 바로 Secrets ManagerKMS(Key Management Service) 입니다.
이 포스트에서는 두 서비스를 통해 시크릿과 키를 어떻게 안전하게 분리·관리하고, 보안과 운영 효율을 동시에 높일 수 있는지 소개합니다.

🔐 시크릿을 안전하게 관리하는 방법, Secrets Manager

서비스를 운영하다 보면 반드시 보호해야 할 정보들이 존재합니다. 예를 들어, 데이터베이스의 사용자 이름과 비밀번호, 외부 API의 인증 키, 서비스 간 통신에 사용되는 토큰 등이죠. 이러한 정보는 일반적으로 시크릿(Secret) 이라고 하며, 애플리케이션이 외부 또는 내부 시스템과 안전하게 통신하기 위해 필요한 보안 자격 증명(Security Credentials) 입니다. 이러한 시크릿이 노출되면 무단 접근이나 데이터 탈취 같은 심각한 보안 사고로 이어질 수 있습니다.

카카오클라우드의 Secrets Manager는 시크릿을 암호화된 상태로 안전하게 저장하고, 필요한 시점에만 안전하게 꺼내 쓸 수 있도록 도와주는 서비스입니다. 기존처럼 코드에 하드코딩하거나 운영 서버의 환경변수로 설정하는 방식은 보안에 취약하고 변경 이력을 추적하기 어렵습니다.

하지만 Secrets Manager를 이용하면 시크릿을 중앙 저장소에서 통합 관리할 수 있고, 변경 시마다 자동으로 버전이 생성되어 변경 이력을 체계적으로 추적할 수 있습니다. 예를 들어, 실수로 잘못된 값을 저장했더라도 이전 버전으로 간단히 롤백할 수 있으며, 필요시 특정 버전만 정지(Deactivated)하거나 폐기(Destroyed)하는 것도 가능합니다. 현재 활성화된 시크릿은 운영(Active) 상태로 유지되며, 상태에 따라 사용 가능 여부가 명확히 구분됩니다.

또한 IAM 서비스와 연동해 시크릿 접근 권한을 사용자 또는 서비스 계정 단위로 세밀하게 제어할 수 있습니다.
예를 들어,

  • Secrets Manager 프로젝트 매니저(Manager)는 시크릿 생성, 수정, 삭제 등 모든 관리 작업이 가능하고,
  • Secrets Manager 프로젝트 뷰어(Viewer)는 시크릿 목록과 버전, 상태를 조회만 가능하도록 설정할 수 있습니다.

이처럼 권한 분리를 통해 보다 안전하고 유연한 시크릿 운영이 가능합니다.

🔑 데이터를 암호화하고 키를 안전하게 다루는 법, KMS

데이터의 암호화만큼 그 데이터를 복호화할 수 있는 ‘키’를 얼마나 안전하게 관리하느냐도 중요합니다. 고객 정보가 담긴 DB, 민감한 로그, 클라우드 스토리지의 파일 등은 모두 암호화를 통해 보호되어야 하며, 이를 위한 암호화 키의 생성과 운영은 체계적인 방식으로 이루어져야 합니다.

카카오클라우드의 KMS(Key Management Service) 는 데이터를 암호화하거나 디지털 서명을 만들 때 사용하는 '암호화 키'를 생성하고, 안전하게 저장하며, 필요에 따라 순환시키거나 폐기할 수 있도록 도와주는 서비스입니다.

KMS에서 생성한 키는 주기적으로 자동 순환(Rotation) 되도록 설정할 수 있으며, 보안 이벤트 발생 시 즉시 비활성화하거나 폐기(Destroyed)할 수 있습니다. 하나의 키는 여러 버전으로 관리되며, 새로운 버전이 생성되더라도 이전 버전은 그대로 유지되어 과거 데이터 복호화에도 문제없이 대응할 수 있습니다.

KMS는 AES, RSA 등 업계 표준 알고리즘을 지원하며, 생성한 키는 활성(Active), 정지(Deactivated), 폐기(Destroyed) 상태를 기반으로 사용 가능 여부를 명확히 구분할 수 있습니다. 또한, 카카오클라우드의 IAM 서비스와 연동되어 누가 어떤 키에 접근할 수 있는지를 사용자나 서비스 계정 단위로 세밀하게 제어할 수 있습니다.
부여된 역할에 따라,

  • KMS 프로젝트 매니저(Manager)는 키의 생성, 상태 변경, 정책 설정 등 전체 관리 권한을 가지며,
  • KMS 프로젝트 뷰어(Viewer)는 키의 메타데이터나 상태 정보를 조회할 수 있는 권한을 갖습니다.

이처럼 역할 기반으로 권한을 나누어 설정할 수 있어, 운영 안정성과 보안 통제력을 동시에 확보할 수 있습니다. 또한, 키의 생성, 사용, 폐기 이력은 Cloud Trail을 통해 자동 기록되어, 보안 감사와 컴플라이언스 대응에도 유용하게 활용할 수 있습니다.

✅ 보안 수준을 한 단계 높여보세요

Secrets Manager와 KMS는 기존 Security 카테고리에 새롭게 추가된 서비스로, 시크릿과 암호화 키를 통합적으로 관리하고 IAM과의 연계를 통해 보다 정교한 권한 제어를 구현할 수 있는 보안 체계를 제공합니다.

이제 카카오클라우드 콘솔에서 몇 번의 클릭만으로 민감 정보를 보호하고 키 관리 체계를 구축해보세요.
카카오클라우드는 앞으로도 고객의 보안 요구에 발맞춰 지속적으로 기능을 강화하고, 다양한 서비스의 연동을 통해 통합된 보안 운영 환경을 제공해 나가겠습니다.

Secrets Manager와 KMS의 자세한 설명과 API 가이드는 아래 기술문서를 참고해 주세요.
감사합니다.

👉 Secrets Manager 문서 보기
👉 KMS 문서 보기