

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Image Builder でのデータ保護と責任 AWS 共有モデル
<a name="data-protection"></a>

責任 AWS [共有モデル](https://aws.amazon.com/compliance/shared-responsibility-model/)、EC2 Image Builder でのデータ保護に適用されます。このモデルで説明されているように、 AWS はすべての を実行するグローバルインフラストラクチャを保護する責任があります AWS クラウド。ユーザーは、このインフラストラクチャでホストされるコンテンツに対する管理を維持する責任があります。また、使用する「 AWS のサービス 」のセキュリティ設定と管理タスクもユーザーの責任となります。データプライバシーの詳細については、[データプライバシーに関するよくある質問](https://aws.amazon.com/compliance/data-privacy-faq/)を参照してください。欧州でのデータ保護の詳細については、*AWS セキュリティブログ*に投稿された「[AWS 責任共有モデルおよび GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/)」のブログ記事を参照してください。

データ保護の目的で、認証情報を保護し AWS アカウント 、 AWS IAM アイデンティティセンター または AWS Identity and Access Management (IAM) を使用して個々のユーザーを設定することをお勧めします。この方法により、それぞれのジョブを遂行するために必要な権限のみが各ユーザーに付与されます。また、次の方法でデータを保護することもお勧めします:
+ 各アカウントで多要素認証 (MFA) を使用します。
+ SSL/TLS を使用して AWS リソースと通信します。TLS 1.2 は必須ですが、TLS 1.3 を推奨します。
+ で API とユーザーアクティビティのログ記録を設定します AWS CloudTrail。CloudTrail 証跡を使用して AWS アクティビティをキャプチャする方法については、「 *AWS CloudTrail ユーザーガイド*」の[CloudTrail 証跡の使用](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)」を参照してください。
+  AWS 暗号化ソリューションと、その中のすべてのデフォルトのセキュリティコントロールを使用します AWS のサービス。
+ Amazon Macie などの高度な管理されたセキュリティサービスを使用します。これらは、Amazon S3 に保存されている機密データの検出と保護を支援します。
+ コマンドラインインターフェイスまたは API AWS を介して にアクセスするときに FIPS 140-3 検証済み暗号化モジュールが必要な場合は、FIPS エンドポイントを使用します。利用可能な FIPS エンドポイントの詳細については、「[連邦情報処理規格 (FIPS) 140-3](https://aws.amazon.com/compliance/fips/)」を参照してください。

お客様の E メールアドレスなどの極秘または機密情報を、タグ、または **[名前]** フィールドなどの自由形式のテキストフィールドに含めないことを強くお勧めします。これは、コンソール、API、または SDK を使用して Image Builder AWS CLIまたは他の AWS のサービス を操作する場合も同様です。 AWS SDKs タグ、または名前に使用される自由記述のテキストフィールドに入力したデータは、請求または診断ログに使用される場合があります。外部サーバーに URL を提供する場合、そのサーバーへのリクエストを検証できるように、認証情報を URL に含めないことを強くお勧めします。

## Image Builder での暗号化とキーの管理
<a name="ib-encryption"></a>

Image Builder は、以下を除き、デフォルトでサービス所有の KMS キーを使用して転送中および保存中のデータを暗号化します。
+ **カスタムコンポーネント** — Image Builder は、デフォルトの KMS キーまたはサービス所有の KMS キーを使用してカスタムコンポーネントを暗号化します。
+ **イメージワークフロー** – Image Builder は、ワークフローの作成時にカスタマーマネージドキーを指定すると、イメージワークフローをそのキーで暗号化できます。Image Builder は、キーを使用して暗号化と復号化を処理し、画像に設定したワークフローを実行します。

を使用して独自のキーを管理できます AWS KMS。ただし、Image Builder が所有するImage Builder KMS キーを管理する権限はありません。で KMS キーを管理する方法の詳細については AWS Key Management Service、「 AWS Key Management Service デベロッパーガイド」の「開始方法[https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html](https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html)」を参照してください。

**暗号化コンテキスト**  
暗号化されたデータの整合性と信頼性をさらに確認するために、データを暗号化するときに[暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context)を含めることもできます。リソースが暗号化コンテキストで暗号化されると、 AWS KMS は暗号化コンテキストを暗号化テキストに暗号化バインドします。リソースを復号化できるのは、リクエスタがコンテキストと完全に一致させ、大文字と小文字を区別して一致させた場合のみです。

このセクションでのポリシー例では、Image Builder ワークフローリソースの Amazon リソースネーム (ARN) に似た暗号化コンテキストを使用しています。

### カスタマーマネージドキーを使用してイメージワークフローを暗号化する
<a name="ib-workflow-encrypt-cmk"></a>

保護を強化するために、Image Builder ワークフローリソースを独自のカスタマーマネージドキーで暗号化できます。カスタマーマネージドキーを使用して作成した Image Builder ワークフローを暗号化する場合、Image Builder がワークフローリソースを暗号化および復号化するときにそのキーを使用するように、キーポリシーでアクセス権を付与する必要があります。アクセスはいつでも取り消すことができます。ただし、キーへのアクセス権を取り消すと、Image Builder はすでに暗号化されているワークフローにアクセスできなくなります。

Image Builder にカスタマーマネージドキーを使用するアクセス権を付与するプロセスには、次の 2 つのステップがあります。

**ステップ 1: Image Builder ワークフローにキーポリシー権限を追加する**  
Image Builder がワークフローを作成または使用するときにワークフローリソースを暗号化および復号化できるようにするには、KMS キーポリシーで権限を指定する必要があります。

このサンプルキーポリシーは、Image Builder パイプラインにアクセス権を付与して、作成プロセス中にワークフローリソースを暗号化し、ワークフローリソースを復号化して使用できるようにします。このポリシーでは、キー管理者にもアクセス権限が付与されます。暗号化コンテキストとリソース仕様では、ワークフローリソースがあるすべてのリージョンを対象にワイルドカードを使用しています。

イメージワークフローを使用するための前提条件として、Image Builder にワークフローアクションを実行する権限を付与する IAM ワークフロー実行ロールを作成しました。このキーポリシーの例で示した最初のステートメントのプリンシパルは、IAM ワークフロー実行ロールを指定する必要があります。

カスタマーマネージドキーの詳細については、「AWS Key Management Service デベロッパーガイド」の「[カスタマーマネージドキーへのアクセスを管理する](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)」を参照してください。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "Allow access to build images with encrypted workflow",
			"Effect": "Allow",
			"Principal": {
				"AWS": "arn:aws:iam::111122223333:role/YourImageBuilderExecutionRole"
			},
			"Action": [
				"kms:Decrypt",
				"kms:GenerateDataKey"
			],
			"Resource": "*",
			"Condition": {
				"StringLike": {
					"kms:EncryptionContext:aws:imagebuilder:arn": "arn:aws:imagebuilder:*:111122223333:workflow/*"
				}
			}
		},
		{
			"Sid": "Allow access for key administrators",
			"Effect": "Allow",
			"Principal": {
				"AWS": "arn:aws:iam::111122223333:root"
			},
			"Action": [
				"kms:*"
			],
			"Resource": "arn:aws:kms:*:111122223333:key/*"
		}
	]
}
```

------

**ステップ 2: ワークフロー実行ロールへのキーアクセス権を付与する**  
Image Builder がワークフローを実行するために引き受ける IAM ロールには、カスタマーマネージドキーを使用する権限が必要です。キーにアクセスできないと、Image Builder はキーを使用してワークフローリソースを暗号化または復号化できません。

ワークフロー実行ロールのポリシーを編集して、次のポリシーステートメントを追加します。

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "AllowAccessToWorkflowKey",
			"Effect": "Allow",
			"Action": [
				"kms:Decrypt",
				"kms:GenerateDataKey"
			],
			"Resource": "arn:aws:kms:us-west-2:111122223333:key/key_ID",
			"Condition": {
				"StringLike": {
					"kms:EncryptionContext:aws:imagebuilder:arn": "arn:aws:imagebuilder:*:111122223333:workflow/*"
				}
			}
		}
	]
}
```

------

### AWS CloudTrail イメージワークフローの イベント
<a name="ib-workflow-cloudtrail-examples"></a>

次の例は、カスタマーマネージドキーに保存されているイメージワークフローを暗号化および復号するための一般的な AWS CloudTrail エントリを示しています。

**例: GenerateDataKey**  
この例では、Image Builder が Image Builder API アクションから API **CreateWorkflow**アクションを AWS KMS **GenerateDataKey**呼び出すと、CloudTrail イベントがどのようになるかを示します。Image Builder は、ワークフローリソースを作成する前に新しいワークフローを暗号化する必要があります。

```
{
	"eventVersion": "1.08",
	"userIdentity": {
		"type": "AssumedRole",
		"principalId": "PRINCIPALID1234567890:workflow-role-name",
		"arn": "arn:aws:sts::111122223333:assumed-role/Admin/workflow-role-name",
		"accountId": "111122223333",
		"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
		"sessionContext": {
			"sessionIssuer": {
				"type": "Role",
				"principalId": "PRINCIPALID1234567890",
				"arn": "arn:aws:iam::111122223333:role/Admin",
				"accountId": "111122223333",
				"userName": "Admin"
			},
			"webIdFederationData": {},
			"attributes": {
				"creationDate": "2023-11-21T20:29:31Z",
				"mfaAuthenticated": "false"
			}
		},
		"invokedBy": "imagebuilder.amazonaws.com"
	},
	"eventTime": "2023-11-21T20:31:03Z",
	"eventSource": "kms.amazonaws.com",
	"eventName": "GenerateDataKey",
	"awsRegion": "us-west-2",
	"sourceIPAddress": "imagebuilder.amazonaws.com",
	"userAgent": "imagebuilder.amazonaws.com",
	"requestParameters": {
		"encryptionContext": {
			"aws:imagebuilder:arn": "arn:aws:imagebuilder:us-west-2:111122223333:workflow/build/sample-encrypted-workflow/1.0.0/*",
			"aws-crypto-public-key": "key value"
		},
		"keyId": "arn:aws:kms:us-west-2:111122223333:alias/ExampleKMSKey",
		"numberOfBytes": 32
	},
	"responseElements": null,
	"requestID": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa",
	"eventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
	"readOnly": true,
	"resources": [
		{
			"accountId": "111122223333",
			"type": "AWS::KMS::Key",
			"ARN": "arn:aws:kms:us-west-2:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEzzzzz"
		}
	],
	"eventType": "AwsApiCall",
	"managementEvent": true,
	"recipientAccountId": "111122223333",
	"eventCategory": "Management"
}
```

**例: Decrypt**  
この例では、Image Builder が Image Builder API アクションから API **GetWorkflow**アクションを AWS KMS **Decrypt**呼び出すと、CloudTrail イベントがどのようになるかを示します。Image Builder パイプラインは、ワークフローリソースを使用する前に復号化する必要があります。

```
{
	"eventVersion": "1.08",
	"userIdentity": {
		"type": "AssumedRole",
		"principalId": "PRINCIPALID1234567890:workflow-role-name",
		"arn": "arn:aws:sts::111122223333:assumed-role/Admin/workflow-role-name",
		"accountId": "111122223333",
		"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
		"sessionContext": {
			"sessionIssuer": {
				"type": "Role",
				"principalId": "PRINCIPALID1234567890",
				"arn": "arn:aws:iam::111122223333:role/Admin",
				"accountId": "111122223333",
				"userName": "Admin"
			},
			"webIdFederationData": {},
			"attributes": {
				"creationDate": "2023-11-21T20:29:31Z",
				"mfaAuthenticated": "false"
			}
		},
		"invokedBy": "imagebuilder.amazonaws.com"
	},
	"eventTime": "2023-11-21T20:34:25Z",
	"eventSource": "kms.amazonaws.com",
	"eventName": "Decrypt",
	"awsRegion": "us-west-2",
	"sourceIPAddress": "imagebuilder.amazonaws.com",
	"userAgent": "imagebuilder.amazonaws.com",
	"requestParameters": {
		"keyId": "arn:aws:kms:us-west-2:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEzzzzz",
		"encryptionAlgorithm": "SYMMETRIC_DEFAULT",
		"encryptionContext": {
			"aws:imagebuilder:arn": "arn:aws:imagebuilder:us-west-2:111122223333:workflow/build/sample-encrypted-workflow/1.0.0/*",
			"aws-crypto-public-key": "ABC123def4567890abc12345678/90dE/F123abcDEF+4567890abc123D+ef1=="
		}
	},
	"responseElements": null,
	"requestID": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb",
	"eventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
	"readOnly": true,
	"resources": [
		{
			"accountId": "111122223333",
			"type": "AWS::KMS::Key",
			"ARN": "arn:aws:kms:us-west-2:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLEzzzzz"
		}
	],
	"eventType": "AwsApiCall",
	"managementEvent": true,
	"recipientAccountId": "111122223333",
	"eventCategory": "Management"
}
```

## Image Builder のデータストレージ
<a name="ib-data-storage"></a>

Image Builder はログをサービスに保存しません。すべてのログは、イメージの構築に使用される Amazon EC2 インスタンス、または Systems Manager 自動化ログに保存されます。

## Image Builder でのネットワーク内のトラフィックプライバシー
<a name="image-builder-internetwork"></a>

接続は、Image Builder とオンプレミスの場所間、 AWS リージョン内の AZs 間、および HTTPS 経由で AWS リージョン間で保護されます。アカウント間には直接接続はありません。