Skip to content

試験Tips

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

Section titled “SAA(ソリューションアーキテクト アソシエイト)”
出題パターン:
「大容量データを効率的に暗号化したい」
→ エンベロープ暗号化
概念理解:
- CMKでデータキー暗号化
- データキーでデータ暗号化
- 2層構造
- ネットワーク転送量削減
キーワード:
- GenerateDataKey
- エンベロープ暗号化
- データキー
- CMK
シナリオ:
「S3バケットのデータを暗号化したい」
選択肢:
✅ SSE-S3(AWS管理、無料)
✅ SSE-KMS(カスタマー管理キー、監査可能)
✅ SSE-C(クライアント提供キー)
❌ クライアント側暗号化のみ(KMS不使用)
使い分け:
SSE-S3: 基本的な暗号化、コスト重視
SSE-KMS: 監査必要、詳細な制御
SSE-C: 自社キー管理必須
問題:
「特定のIAMロールのみKMSキーを使用させたい」
正解アプローチ:
- キーポリシーで許可
- IAMポリシーで許可
- 両方必要
重要:
キーポリシー = リソースベースポリシー
IAMポリシーだけでは不十分
シナリオ:
「アカウントAのKMSキーをアカウントBで使用」
設定:
アカウントA:
- キーポリシーでアカウントB許可
アカウントB:
- IAMポリシーでキー使用許可
注意点:
- 両方の設定が必要
- キーARN指定必須

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

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

1. マルチリージョン暗号化戦略

Section titled “1. マルチリージョン暗号化戦略”
シナリオ:
「DynamoDB Global Tableを複数リージョンで暗号化。
リージョン間でデータを移動可能にしたい」
設計:
マルチリージョンキー:
- プライマリ: ap-northeast-1
- レプリカ: us-west-2, eu-west-1
特徴:
- 同じキーID
- キーマテリアルは同一
- 各リージョンで独立管理
- キーポリシーは個別
通常のキーとの違い:
通常キー:
- リージョン毎に異なるキーID
- 暗号化データの移動不可
マルチリージョンキー:
- 全リージョンで同じキーID
- 暗号化データの移動可能
要件:
「FIPS 140-2 Level 3準拠が必要」
設計:
CloudHSM:
- 専用HSMクラスター
- マルチAZ構成
KMS:
- カスタムキーストア
- CloudHSM連携
アプリケーション:
- KMS API経由(透過的)
メリット:
- 最高レベルのセキュリティ
- キーマテリアル完全制御
- ハードウェア専有
デメリット:
- 高コスト($1.50/時間/HSM)
- 運用複雑
- 最低2台必要(HA)
選択基準:
✅ 規制要件でLevel 3必須
✅ 完全なキー制御必要
❌ コスト重視(通常KMSで十分)
シナリオ:
「独自のキーマテリアルを使用したい」
実装:
1. キー作成(EXTERNAL origin)
2. 公開キー・インポートトークン取得
3. キーマテリアル暗号化
4. インポート
5. 有効期限設定(オプション)
ユースケース:
- コンプライアンス要件
- 既存キー管理システム統合
- 独自のキー生成プロセス
注意点:
- 自動ローテーション不可
- 手動管理必要
- 有効期限管理
- 削除後は復元不可
要件:
「全暗号化操作の完全な監査証跡」
設計:
CloudTrail:
- 全リージョン有効化
- 組織トレイル設定
- S3バケット暗号化(KMS)
- ログファイル整合性検証
CloudWatch Logs:
- リアルタイム分析
- メトリクスフィルタ
- アラーム設定
S3:
- ログ長期保管
- Glacier移行
- MFA Delete有効化
監視項目:
- Decrypt操作頻度
- 失敗した暗号化操作
- キー設定変更
- クロスアカウントアクセス
- 異常なアクセスパターン
EventBridge統合:
- DisableKey イベント → SNS通知
- ScheduleKeyDeletion → 承認フロー
シナリオ:
「数千のアプリケーション、複数環境でのキー管理」
戦略:
階層構造:
- 環境別(dev/staging/prod)
- サービス別
- 用途別
命名規則:
- alias/{env}/{service}/{purpose}
- : alias/prod/webapp/database
タグ戦略:
Environment: Production
Service: WebApp
Owner: team-security
CostCenter: CC-1234
IAMポリシー(タグベース):
{
"Effect": "Allow",
"Action": ["kms:Decrypt", "kms:GenerateDataKey"],
"Resource": "*",
"Condition": {
"StringEquals": {
"kms:ResourceTag/Environment": "Production",
"kms:ResourceTag/Service": "WebApp"
}
}
}
自動化:
- CloudFormation / Terraform
- キー作成の標準化
- ポリシーテンプレート
- 定期的な権限レビュー
❌ 誤り:
「KMSで暗号化すればネットワーク通信も暗号化される」
✅ 正解:
- KMSは保管時暗号化
- 転送中はTLS/SSL別途必要
- KMSは鍵管理サービス
❌ 誤り:
「IAMポリシーだけでKMSアクセス制御可能」
✅ 正解:
- キーポリシーが基本
- IAMポリシーは追加
- キーポリシーでIAM許可必要
- 両方の設定が必要
❌ 誤り:
「大容量データも直接KMSで暗号化」
✅ 正解:
- KMS Encrypt は4KB以下
- 大容量はエンベロープ暗号化
- GenerateDataKey使用
- データキーでローカル暗号化
❌ 誤り:
「KMSキーは全リージョンで使用可能」
✅ 正解:
通常キー:
- リージョン固有
- 他リージョンで使用不可
マルチリージョンキー:
- 同じキーID
- レプリカ作成必要
- 各リージョンで管理
❌ 誤り:
「キー削除は即座に実行される」
✅ 正解:
- 待機期間必須(7-30日)
- 期間中はPendingDeletion状態
- キャンセル可能
- 削除後は復元不可
- 暗号化データも復号不可
❌ 誤り:
「KMS使用は無料」
✅ 正解:
AWS管理キー:
- 無料
- 自動作成
カスタマー管理キー:
- $1.00/月/キー
- API呼び出し課金
注意:
- 多数のキーはコスト増
- API呼び出し頻度重要
  • エンベロープ暗号化の理解
  • CMK vs データキー
  • キータイプ(対称/非対称)
  • キーポリシーとIAMポリシー
  • S3暗号化(SSE-S3/KMS/C)
  • EBS暗号化
  • RDS暗号化
  • Lambda環境変数暗号化
  • キーポリシー設計
  • クロスアカウントアクセス
  • VPCエンドポイント
  • CloudTrail監査
  • マルチリージョンキー
  • CloudHSM統合
  • カスタムキーストア
  • キーマテリアルインポート
  • キーローテーション
  • エイリアス活用
  • グラント管理
  • コスト最適化

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

SAA:

  • エンベロープ暗号化の仕組み理解
  • S3/EBS/RDS等との統合
  • キーポリシーとIAMポリシーの関係
  • クロスアカウントアクセス設定
  • 自動ローテーション

SAP:

  • マルチリージョンキー設計
  • CloudHSM統合とFIPS準拠
  • 大規模環境でのキー管理戦略
  • 詳細な監査設計
  • コンプライアンス要件対応
  • カスタムキーストアの理解