AIセキュリティレイヤー:AWS上のネットワーク、ID、データ保護、AI固有の制御
1. AWS上のAIセキュリティ — 概要
AIワークロードには複数レイヤーでのセキュリティが必要です:データ、モデル、インフラストラクチャ、アプリケーション。
AIセキュリティレイヤー:
┌─────────────────────────────────────────┐
│ アプリケーションセキュリティ │
│ Guardrails、入力検証、 │
│ プロンプトインジェクション防止 │
├─────────────────────────────────────────┤
│ モデルセキュリティ │
│ モデルアクセス制御、バージョニング、 │
│ モデルの完全性、敵対的攻撃防御 │
├─────────────────────────────────────────┤
│ データセキュリティ │
│ 暗号化、PII処理、データアクセス │
│ 制御、監査ログ │
├─────────────────────────────────────────┤
│ インフラストラクチャセキュリティ │
│ VPC、セキュリティグループ、エンドポイント、│
│ ネットワーク分離、IAM │
└─────────────────────────────────────────┘
2. AI/MLワークロード用IAM
2.1. Amazon Bedrock用IAM
| 権限 | 制御内容 |
|---|---|
bedrock:InvokeModel | 特定のFMの呼び出し |
bedrock:InvokeModelWithResponseStream | ストリーミングモデル呼び出し |
bedrock:CreateKnowledgeBase | RAGナレッジベースの作成 |
bedrock:CreateGuardrail | 安全ガードレールの作成 |
bedrock:CreateModelCustomizationJob | ファインチューニングジョブの開始 |
2.2. AI用IAMのベストプラクティス
- 最小権限:ロールごとに必要な権限のみを付与
- ロールの分離:データサイエンティスト、MLエンジニア、管理者で異なるロール
- リソースベースポリシー:特定のモデルへのアクセスを制限
- サービスリンクロール:AWSサービスが必要に応じてロールを引き受ける
- 条件キー:IP、VPC、時間、MFAで制限
試験のポイント:「Bedrockでチームが使用できる基盤モデルを制限するには?」→
bedrock:InvokeModelと特定モデルのリソースARNを持つIAMポリシー。
3. データ暗号化
3.1. 保存時の暗号化
| サービス | デフォルト暗号化 | カスタムキー(KMS) |
|---|---|---|
| Amazon Bedrock | AWSマネージドキー | カスタマーマネージドKMSキー |
| SageMakerトレーニング | AWSマネージドキー | カスタマーマネージドKMSキー |
| SageMakerノートブック | AWSマネージドキー | カスタマーマネージドKMSキー |
| S3(トレーニングデータ) | SSE-S3 | SSE-KMS、SSE-C |
| Knowledge Basesベクトル | ベクトルDBに依存 | KMS暗号化対応 |
3.2. 転送時の暗号化
- すべてのAWS API呼び出しはデフォルトでTLS 1.2+を使用
- Bedrock API呼び出しは転送時に暗号化
- SageMakerエンドポイントはHTTPSを使用
- ノード間トレーニング通信:暗号化済み
3.3. AI用AWS KMS
AWS KMSが必要な場合:
✓ 暗号化キーの管理
✓ キーローテーションポリシー
✓ キー使用のCloudTrail監査
✓ クロスアカウントキー共有
✓ コンプライアンス要件(HIPAA、PCI-DSS)
4. ネットワークセキュリティ
4.1. AIサービス用VPCエンドポイント
VPCエンドポイントを使用すると、AWS AIサービスにプライベートにアクセスでき、トラフィックはインターネットを経由しません。
VPCエンドポイントなし:
VPC内のアプリ → インターネットゲートウェイ → パブリックインターネット → Bedrock API
VPCエンドポイント(PrivateLink)あり:
VPC内のアプリ → VPCエンドポイント → AWSプライベートネットワーク → Bedrock API
(インターネットなし!)
| サービス | VPCエンドポイントタイプ |
|---|---|
| Amazon Bedrock | インターフェース(PrivateLink) |
| SageMaker Runtime | インターフェース(PrivateLink) |
| SageMaker API | インターフェース(PrivateLink) |
| Amazon S3 | ゲートウェイまたはインターフェース |
4.2. SageMakerネットワーク分離
- VPCモード:VPC内でトレーニング/推論を実行
- ネットワーク分離:コンテナへのインターネットアクセスなし(EnableNetworkIsolation=true)
- セキュリティグループ:インバウンド/アウトバウンドトラフィックの制御
- プライベートサブネット:直接的なインターネットアクセスなし
試験のポイント:「Bedrock API呼び出しがパブリックインターネットを経由しないようにするには?」→ Amazon Bedrock用VPCエンドポイント(AWS PrivateLink)。
5. PII検出とデータプライバシー
5.1. PII検出サービス
| サービス | PII機能 | データタイプ |
|---|---|---|
| Amazon Comprehend | PIIエンティティの検出と秘匿化 | テキスト |
| Amazon Macie | S3バケット内のPIIの発見 | S3内のファイル |
| Bedrock Guardrails | FM入出力でのPIIのブロック/匿名化 | FMプロンプト/レスポンス |
| AWS Glue DataBrew | データパイプラインでのPII検出 | 構造化データ |
5.2. 試験で出る一般的なPIIタイプ
| PIIタイプ | 例 |
|---|---|
| 直接識別子 | 氏名、SSN、メール、電話、パスポート番号 |
| 金融 | クレジットカード番号、銀行口座、納税者番号 |
| 健康 | 診療記録番号、健康状態(PHI) |
| 位置情報 | 自宅住所、GPS座標 |
| デジタル | IPアドレス、デバイスID、ログイン資格情報 |
6. Amazon Bedrockのセキュリティ
6.1. Bedrockのデータプライバシー
- データ分離:お客様のデータはベースFMのトレーニングに使用されません
- データはリージョン内に保持:選択したAWSリージョンで処理
- カスタムモデル:ファインチューニングしたモデルはアカウントに対してプライベート
- データ共有なし:プロンプト/レスポンスはモデルプロバイダーと共有されません
- 暗号化:すべてのデータが保存時と転送時に暗号化
6.2. 監視とログ
| サービス | ログ内容 |
|---|---|
| AWS CloudTrail | API呼び出し(誰がどのモデルをいつ呼び出したか) |
| Amazon CloudWatch | モデル呼び出しメトリクス(レイテンシー、エラー、トークン) |
| Bedrockモデル呼び出しログ | 完全なプロンプトとレスポンス(S3またはCloudWatchへ) |
試験のポイント:「どのユーザーがBedrockモデルを呼び出しているか監査するには?」→ CloudTrail。「実際のプロンプトとレスポンスをログに記録するには?」→ Bedrockモデル呼び出しログ。
7. コンプライアンスとガバナンス
7.1. AWSコンプライアンスプログラム
| プログラム | 内容 | 関連AIサービス |
|---|---|---|
| SOC 1/2/3 | セキュリティ制御の監査 | Bedrock、SageMaker |
| HIPAA | ヘルスケアデータの保護 | SageMaker、Comprehend Medical |
| GDPR | EUデータプライバシー | すべてのAWSサービス(データレジデンシー) |
| PCI-DSS | 決済カードデータのセキュリティ | SageMaker(制御付き) |
| FedRAMP | 米国政府クラウドセキュリティ | GovCloudリージョン |
| ISO 27001 | 情報セキュリティ管理 | Bedrock、SageMaker |
7.2. AI用共有責任モデル
お客様の責任(「クラウド内のセキュリティ」):
├── トレーニングデータの品質とバイアス
├── モデルの選択と評価
├── プロンプト設計とガードレールの設定
├── IAM権限とアクセス制御
├── PII処理とデータ分類
├── アプリケーションレベルのセキュリティ
└── 業界規制への準拠
AWSの責任(「クラウドのセキュリティ」):
├── 物理インフラストラクチャのセキュリティ
├── ネットワークとハードウェアのセキュリティ
├── ベースFMプロバイダーの管理
├── サービスの可用性と信頼性
├── 暗号化の実装
└── コンプライアンス認証
8. AI用データガバナンス
| プラクティス | AWSサービス |
|---|---|
| データカタログ | AWS Glue Data Catalog |
| データ分類 | Amazon Macie |
| アクセス制御 | AWS Lake Formation |
| データリネージュ | SageMaker MLリネージュトラッキング |
| データ品質 | SageMaker Data Wrangler、Glue DataBrew |
9. 練習問題
Q1:金融サービス企業がAmazon Bedrockを使用したいが、API呼び出しがパブリックインターネットを経由しないことを要求しています。何を設定すべきですか?
- A) AWS Direct Connect
- B) Bedrock用VPCエンドポイント(AWS PrivateLink) ✓
- C) VPN接続
- D) CloudFrontディストリビューション
解説:Amazon Bedrock用のVPCインターフェースエンドポイント(PrivateLink)により、VPC内からインターネットを経由せずにプライベート接続が可能になります。
Q2:AWSの共有責任モデルによると、トレーニングデータにバイアスが含まれないことを保証する責任は誰にありますか?
- A) AWS
- B) 基盤モデルプロバイダー
- C) お客様 ✓
- D) AWSとお客様の両方が均等に
解説:共有責任モデルでは、お客様は「クラウド内のセキュリティ」に責任があります — これにはトレーニングデータの品質、バイアス検出、倫理的なAIプラクティスが含まれます。AWSはインフラストラクチャのセキュリティに責任があります。
Q3:企業がMLトレーニングにデータを使用する前に、どのS3バケットに個人識別情報(PII)が含まれているかを発見する必要があります。どのサービスを使用すべきですか?
- A) Amazon Comprehend
- B) Amazon Macie ✓
- C) Amazon Inspector
- D) AWS Config
解説:Amazon Macieは機械学習を使用して、Amazon S3バケットに保存された機密データ(PIIを含む)を自動的に検出・分類します。ComprehendはテキストのPIIを検出しますが、MacieはS3レベルの発見用に設計されています。