블로그 릴레이 - SSM Parameter Store 와 Secrets Manager 의 비교

블로그 릴레이 - SSM Parameter Store 와 Secrets Manager 의 비교

Clock Icon2025.03.06

안녕하세요 클래스메소드의 서은우입니다.

본 블로그는 당사의 한국어 블로그 릴레이의 2025년 여섯 번째 블로그입니다.
이번 블로그의 주제는 「SSM Parameter Store 와 Secrets Manager 의 비교」 입니다.

RDS의 비밀번호 처럼 AWS 환경에서 사용할 비밀번호와 같은 정보를 관리하기 위해서
SSM Parameter Store 와 Secrets Manager를 떠올릴 수 있을 것입니다.

이 두 서비스가 정확이 어떤 점이 다른지 어떤 서비스를 사용하는 것이 좋은지
본 블로그를 통해 알아보고자 합니다.

두 서비스에 대해

Parameter Store 란

AWS Systems Manager의 기능인 Parameter Store는 구성 데이터 관리 및 암호 관리를 위한 안전한 계층적 스토리지를 제공합니다. 암호, 데이터베이스 문자열, Amazon Machine Image(AMI) ID, 라이선스 코드와 같은 데이터를 파라미터 값으로 저장할 수 있습니다. 값을 일반 텍스트 또는 암호화된 데이터로 저장할 수 있습니다. 파라미터를 생성할 때 지정한 고유 이름을 사용하여 스크립트, 명령, SSM 문서, 구성 및 자동화 워크플로에서 Systems Manager 파라미터를 참조할 수 있습니다.

출처: AWS 공식문서

AWS 공식문서에서 설명하고 있는 Parameter Store는 AWS SSM(Systems Manager)의 기능 중 하나로, 비밀번호, AMI ID와 같은 문자열의 데이터를 일반 문자열이나 암호화시켜 저장시킬 수 있습니다.

AWS 콘솔 화면에서 확인해보면 Parameter Store를 이용해서 문자열 데이터를 일반 문자열 유형인 String과 암호화하는 SecureString 유형로 저장하고 할 수 있는 것을 확인하실 수 있습니다.

1

각 유형의 파라미터를 클릭해 그 상세 정보를 확인해보면 String 유형의 파라미터는 어떤 값이 저장되어 있는지 그대로 노출되지만, SecureString 유형의 경우 **** 과 같이 값이 노출되지 않습니다.

3

2

이렇게 Parameter Store를 활용하여 비밀번호와 같이 중요한 문자열 정보들은 암호화하여 사용하는 것이 가능합니다.

Secrets Manager 란

AWS Secrets Manager을(를) 사용하면 수명 주기 동안 데이터베이스 보안 인증, 애플리케이션 보안 인증, OAuth 토큰, API 키 및 기타 암호를 관리, 검색, 교체할 수 있습니다. 다수의 AWS 서비스는 Secrets Manager에 보안 암호를 저장하고 사용합니다.

출처: AWS 공식문서

Secrets Manager는 간단하게 말하면 여러 민감한 정보들을 저장하고 교체하는 등의 관리를 위한 AWS 서비스입니다.

AWS 콘솔을 통해 Secrets Manager를 자세히 보니 보안 암호를 key-value의 형태로 저장하고 있는 것을 확인할 수 있습니다.

4

이 외에도 Secrets Manager를 통해서 저장 중인 보안 정보를 교체(로테이션)하거나 버전 관리, 복제 등을 관리할 수 있습니다.
또한 리소스 권한을 설정하여 해당 보안 암호에 액세스를 제한하는 설정도 가능합니다.

두 서비스의 비교

아래의 표를 통해 각 서비스가 가지는 특징을 정리해보았습니다.

Secrets Manager Parameter Store
저장 가능한 용량 최대 64KB 표준 4KB, 고급 8KB
랜덤 암호 생성 무작위 암호 생성 가능 무작위 생성 불가, 직접 지정해야함
자동 로테이션 주기에 따라 암호를 자동 교체 가능 불가
요금 보안정보당 $ 0.4,
API 호출 1만 건당 $0.05
표준: 무료
고급: 파라미터당 $0.05, API 호출 1만 개당 $0.05

Parameter Store의 파라미터를 생성할 때, 표준 계층과 고급 계층의 계층을 설정할 수 있습니다. 고급 계층의 파라미터를 생성할 경우, 요금이 발생하지만 더 큰 크기의 값을 저장하거나 더 많은 수의 파라미터를 생성하는 것이 가능합니다.

저장 가능한 용량

Secrets Manager는 최대 64KB의 데이터를 저장할 수 있습니다. Parameter Store의 최대 용량인 8KB 보다 많은 데이터의 저장이 필요할 경우 Secrets Manager를 사용할 수 있습니다.

랜덤 암호 생성

Secrets Manager는 무작위로 암호를 생성하는 것이 가능합니다. 예를 들어 CloudFormation 코드 작성시 암호를 할당이 필요한 경우, Secrets Manager로 암호를 무작위로 생성하고 바로 할당하는 것이 가능합니다.

자동 로테이션

Secrets Manager는 설정한 주기에 따라 암호를 자동으로 교체하는 것이 가능합니다. Parameter Store의 경우, 암호를 교체하기 위해 수동 교체 작업이 필요합니다.

비용

비용은 Secrets Manager와 Parameter Store 중 어떤 서비스를 사용할지의 선택에 있어 가장 큰 기준이 되는 부분이될 수도 있다고 생각합니다.

Secrets Manager의 경우 생성한 보안 정보 1개당 $0.4의 비용이 발생합니다.
Parameter Store의 표준 계층의 경우 무료로 이용 가능하다는 차이가 있습니다. 고급 계층의 경우 파라미터당 $0.05의 비용이 발생하지만 이마저도 Secrets Manager과는 차이가 있습니다.

API 호출 비용을 제외하고 비교하더라도 Secrets Manager의 비용이 많이 발생하기 때문에, 비용을 가장 중요하게 고려해야하는 경우 Parameter Store의 사용을 검토할 수 있을 것 같습니다.

끝으로

Secrets Manager와 Parameter Store 이용하면 비밀정보를 하드코딩할 필요 없으며 안전하게 관리할 수 있기 때문에 보안을 강화할 수 있습니다.

두 서비스 중 어떤 서비스를 선택하는 지에 있어, 큰 사이즈의 데이터를 저장하거나 자동 로테이션 등 Secrets Manager 고유의 기능이 필요한 경우가 아닌 이상, 비용적인 측면을 고려하여 Parameter Store의 사용을 우선적으로 생각해볼 수 있을 것 같습니다.

이상, 한국어 블로그 릴레이의 2025년 여섯 번째 블로그 「SSM Parameter Store 와 Secrets Manger 의 비교」였습니다.
다음 일곱 번째 블로그 릴레이는 3월 둘째 주에 공개됩니다.

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.