メインコンテンツへ移動
Security中級優先度 中

Secrets Manager・Parameter Storeの違いを初心者向けに解説

AWSで設定値や機密情報を管理するSecrets ManagerとSystems Manager Parameter Storeの違いを、用途、暗号化、自動ローテーション、コスト、試験ポイントの観点で整理します。

公開日:2026-06-07/更新日:2026-06-07
CLF-C02SAA-C03

比較対象サービス

サービス名をクリックすると、用語詳細ページで復習できます。

結論

Secrets ManagerとSystems Manager Parameter Storeは、どちらもアプリケーションの設定値や秘密情報を管理できます。

ただし、得意分野が違います。

  • DBパスワードやAPIキーなど、ローテーションが必要な秘密情報はSecrets Manager
  • 環境変数、エンドポイントURL、軽量な設定値はParameter Store
  • SecureStringで暗号化した軽量な値を扱うならParameter Storeも候補

AWS試験では、「自動ローテーション」が出てきたらSecrets Managerを優先して考えます。

比較表

項目Secrets ManagerParameter Store
正式名AWS Secrets ManagerAWS Systems Manager Parameter Store
主な用途秘密情報管理設定値管理
代表的な保存内容DBパスワード、APIキー、OAuthトークン環境名、URL、ARN、設定値
暗号化対応SecureStringで対応
自動ローテーション得意主目的ではない
階層管理可能得意
バージョン管理可能可能
コストシークレット単位で課金対象Standard parameterは追加料金なしの範囲がある
試験キーワードsecret, rotation, database credentialsparameter, configuration, SecureString

初学者向け説明

Secrets Managerは、秘密情報を管理するためのサービスです。

Lambda
↓ 実行時に取得
Secrets Manager
↓
DB password / API key

アプリのソースコードにパスワードを書かず、実行時に取得できます。

Parameter Storeは、設定値を管理するための機能です。

Lambda
↓ 実行時に取得
Parameter Store
↓
/prod/api/base-url
/prod/app/log-level

環境ごとの設定値を階層構造で管理できます。

試験で問われるポイント

Secrets Managerが正解になりやすいケース

  • データベース認証情報を保存したい
  • APIキーを安全に保存したい
  • シークレットの自動ローテーションが必要
  • ハードコードされた認証情報をなくしたい
  • Lambda実行時に秘密情報を取得したい

Parameter Storeが正解になりやすいケース

  • アプリケーション設定値を保存したい
  • 環境ごとのパラメータを階層管理したい
  • URL、ARN、環境名などを管理したい
  • SecureStringで軽量な暗号化パラメータを使いたい
  • CloudFormationやLambdaから設定値を参照したい

実務での使い分け

DBパスワードを管理する場合

Secrets Managerを使います。

RDS password
↓
Secrets Manager
↓
Lambda / ECS / EC2

自動ローテーションや監査が必要な機密情報に向いています。

APIのベースURLを管理する場合

Parameter Storeを使います。

/prod/api/base-url = https://api.example.com
/dev/api/base-url = https://api-dev.example.com

秘密情報ではないが、環境ごとに変わる設定値に向いています。

このプロジェクトでの位置づけ

このプロジェクトのMVPでは、秘密情報をコードに直書きしません。

フロントエンドでは .env.local を使いますが、Gitにはコミットしません。

将来的に外部APIキーやJWT_SECRETなどを本番で扱う場合、Secrets ManagerまたはParameter Storeを検討します。

よくある間違い

間違い1:すべてSecrets Managerに入れる

Secrets Managerは秘密情報管理に強いですが、単なる設定値まで全部入れるとコストと管理が重くなります。

設定値はParameter Store、秘密情報はSecrets Managerと分けると整理しやすいです。

間違い2:Parameter Storeなら何でも安全と思う

Parameter StoreのStringやStringListは平文の設定値です。

秘密情報を保存するならSecureStringを使うか、Secrets Managerを検討します。

間違い3:環境変数に秘密情報を直書きする

ローカル開発では .env.local を使うことがあります。

ただし、本番運用では秘密情報をコードやGitHubに出さない設計が必要です。

関連用語

関連問題

まとめ

Secrets ManagerとParameter Storeは、目的で分けると判断しやすいです。

  • Secrets Manager:秘密情報、認証情報、自動ローテーション
  • Parameter Store:設定値、環境変数、軽量なSecureString

SAAでは、セキュリティ設計と運用設計の両方で問われる比較です。

次に学ぶ内容

比較で違いを理解したら、関連用語と模擬問題で知識を確認してください。 資格試験では「似ているサービスの使い分け」が問われます。

関連比較