Skip to content

試験Tips

SAA(ソリューションアーキテクト アソシエイト)

Section titled “SAA(ソリューションアーキテクト アソシエイト)”
出題パターン:
「データベースパスワードを安全に管理し、定期的に自動ローテーションしたい」
→ Secrets Manager
「設定値を一元管理したいが、自動ローテーションは不要」
→ Parameter Store(コスト効率)
キーワード:
Secrets Manager:
- 自動ローテーション
- RDS統合
- バージョン管理
- クロスリージョンレプリケーション
Parameter Store:
- 無料枠
- シンプルな設定管理
- Systems Manager統合
シナリオ:
「RDSデータベースの認証情報を安全に管理したい」
正解アプローチ:
- Secrets Managerでシークレット作成
- 自動ローテーション有効化
- Lambda / EC2 からSDK経由で取得
- VPCエンドポイント経由でアクセス
よくある間違い:
❌ 環境変数にハードコード
❌ S3バケットに保存
❌ Parameter Storeで自動ローテーション(機能なし)
出題内容:
「特定のLambda関数のみシークレットアクセスを許可」
正解:
IAMロールポリシー:
- secretsmanager:GetSecretValue
- シークレットARN指定
- 最小権限の原則
選択肢の見分け方:
✅ IAMポリシーで制御
❌ セキュリティグループで制御(不可)
❌ NACLで制御(不可)
問題:
「Secrets Managerのシークレットはどのように暗号化される?」
回答:
- AWS KMSで暗号化
- デフォルトKMSキーまたはカスタムKMSキー
- 保管時・転送時ともに暗号化
関連問題:
「カスタムKMSキーを使用するメリットは?」
→ 詳細なアクセス制御
→ 監査証跡
→ コンプライアンス要件対応

SAP(ソリューションアーキテクト プロフェッショナル)

Section titled “SAP(ソリューションアーキテクト プロフェッショナル)”
シナリオ:
「グローバルアプリケーションで全リージョンで同じシークレットを使用したい。
プライマリリージョンでローテーション時、自動的に他リージョンにも反映させたい」
設計:
Secrets Manager:
- プライマリシークレット: ap-northeast-1
- レプリカ: us-east-1, eu-west-1
- 自動ローテーション有効化
特徴:
- ローテーションは自動同期
- リージョン毎に異なるKMSキー使用可能
- レプリカは読み取り専用
ポイント:
✅ レプリケーション機能使用
❌ 各リージョンで個別管理(運用負荷大)
❌ DynamoDB Global Tablesで管理(非推奨)
シナリオ:
「セキュリティアカウントでシークレットを一元管理し、
複数の本番アカウントから安全にアクセスさせたい」
設計:
セキュリティアカウント:
リソースポリシー:
- 本番アカウントのロール許可
- VPCエンドポイント制限
- 特定アクションのみ許可
本番アカウント:
IAMロール:
- AssumeRole権限
- シークレットARN指定
VPCエンドポイント:
- Secrets Manager用
- プライベート接続
監査:
- CloudTrail(両アカウント)
- クロスアカウントアクセスログ
シナリオ:
「サードパーティAPIのキーを定期的にローテーションしたい」
実装:
Lambda関数:
- CreateSecret: 新キー生成(API呼び出し)
- SetSecret: 新キー設定(API更新)
- TestSecret: 新キーテスト
- FinishSecret: バージョン切り替え
VPC設定:
- インターネット接続必要な場合
- NATゲートウェイ
- または VPCエンドポイント
エラーハンドリング:
- リトライロジック
- CloudWatch通知
- ロールバック機能
ポイント:
- ステートマシン理解
- べき等性の確保
- エラー時の対応
要件:
- 監査証跡の完全性
- アクセスログの長期保管
- シークレットの定期ローテーション
- 暗号化キーの管理
設計:
CloudTrail:
- 全APIコール記録
- S3バケット(MFA Delete有効化)
- ログファイル暗号化
- ログファイル整合性検証
Secrets Manager:
- カスタムKMSキー
- 自動ローテーション(30日)
- バージョン履歴保持
監視:
- Config Rules
- ローテーション設定確認
- 暗号化確認
- GuardDuty
- 異常アクセス検知

間違い 1: 自動ローテーション対応の誤解

Section titled “間違い 1: 自動ローテーション対応の誤解”
❌ 誤り:
「Parameter Storeでも自動ローテーション可能」
✅ 正解:
- Secrets Managerのみ自動ローテーション対応
- Parameter Storeは手動更新のみ
- RDS等の統合ローテーションはSecrets Manager専用
❌ 誤り:
「Secrets Managerは無料」
✅ 正解:
- シークレット毎に課金($0.40/月)
- APIコール課金あり
- 最初の30日は無料(試用)
- 大量の非機密情報はParameter Store推奨
❌ 誤り:
「セキュリティグループでSecrets Managerアクセス制御」
✅ 正解:
- IAMポリシーで制御
- リソースポリシーも使用可能
- VPCエンドポイントでネットワーク制御
- セキュリティグループはVPCエンドポイントに適用

間違い 4: ローテーション仕組みの誤解

Section titled “間違い 4: ローテーション仕組みの誤解”
❌ 誤り:
「ローテーション時はアプリケーション再起動が必要」
✅ 正解:
- アプリケーション再起動不要
- バージョン管理で段階的切り替え
- AWSPENDING → AWSCURRENT → AWSPREVIOUS
- アプリケーションは常に最新バージョン取得

間違い 5: レプリケーションの誤解

Section titled “間違い 5: レプリケーションの誤解”
❌ 誤り:
「レプリカシークレットは個別にローテーション設定が必要」
✅ 正解:
- プライマリシークレットのローテーションが自動同期
- レプリカは読み取り専用
- 各リージョンで個別のKMSキー使用可能
  • Secrets Manager の主要機能理解
  • Parameter Store との違い明確化
  • 自動ローテーションの仕組み理解
  • 暗号化方式(KMS)理解
  • RDS統合パターン
  • Lambda/ECS統合パターン
  • クロスアカウントアクセス
  • マルチリージョン構成
  • IAMポリシー設計
  • リソースポリシー理解
  • VPCエンドポイント活用
  • 監査・ログ設計
  • 課金体系理解
  • Parameter Store との使い分け
  • APIコール削減手法
  • キャッシング戦略
  • ローテーション設定
  • モニタリング設計
  • トラブルシューティング
  • バージョン管理

試験で押さえるべき重要ポイント:

SAA:

  • Secrets Manager vs Parameter Store の使い分け
  • RDS統合と自動ローテーション
  • IAMポリシーによるアクセス制御
  • VPCエンドポイント活用

SAP:

  • マルチリージョンレプリケーション
  • クロスアカウント戦略
  • カスタムローテーション実装
  • コンプライアンス対応設計
  • 大規模環境でのコスト最適化