Secrets Manager
AWS のシークレット管理サービスで、パスワードや API キーを安全に保存・自動ローテーションする
AWSセキュリティ
Secrets Manager とは
AWS Secrets Manager は、パスワード、API キー、DB 接続情報などのシークレットを安全に保存し、自動ローテーションを提供するマネージドサービスである。Lambda の環境変数にパスワードを平文で設定する代わりに、Secrets Manager から動的に取得する。
環境変数 vs Secrets Manager
| 観点 | 環境変数 | Secrets Manager |
|---|---|---|
| 保存場所 | Lambda の設定 | 暗号化されたストア |
| 暗号化 | KMS (デフォルト) | KMS |
| ローテーション | 手動 | 自動 |
| アクセス制御 | Lambda の IAM ロール | IAM + リソースポリシー |
| 監査 | なし | CloudTrail |
| コスト | 無料 | $0.40/シークレット/月 |
キャッシュ
Lambda の実行環境が再利用される間、シークレットをメモリにキャッシュして API 呼び出しを削減する。
SSM Parameter Store との比較
| 観点 | Secrets Manager | SSM Parameter Store |
|---|---|---|
| 自動ローテーション | ✅ | ❌ |
| コスト | $0.40/シークレット/月 | 無料 (Standard) |
| 用途 | パスワード、API キー | 設定値、フラグ |
パスワードや API キーは Secrets Manager、設定値 (ログレベル、フラグ) は SSM Parameter Store。
体系的に学ぶなら関連書籍を参照してほしい。