View a markdown version of this page

でのデータの暗号化 AWS Transform - AWS 変換

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

でのデータの暗号化 AWS Transform

このトピックでは、転送中の暗号化と保管中の暗号化 AWS Transform について固有の情報を提供します。

AWS Transform はデフォルトで暗号化を提供し、 AWS 所有キーを使用した暗号化で保管中の機密データを保護します。

暗号化タイプ

転送中の暗号化

顧客間 AWS Transform 、および AWS Transform とダウンストリームの依存関係間の通信は、TLS 1.2 以降の接続を使用して保護されます。

重要

検出アカウントを接続すると、 AWS Transform はそのアカウントでユーザーに代わって Amazon S3 バケットを作成します。そのバケットはデフォルトではSecureTransport有効になっていません。バケットポリシーに安全なトランスポートを含める場合は、ポリシーを更新する必要があります。詳細については、Amazon S3のセキュリティのベストプラクティス」を参照してください。

保管中の暗号化

AWS Transform は、Amazon DynamoDB と Amazon Simple Storage Service (Amazon S3) を使用して保管中のデータを保存します。保管中のデータは、デフォルトで AWS 暗号化ソリューションを使用して暗号化されます。 は、 AWS Key Management Service (AWS KMS) の AWS 所有キーを使用した暗号化でデータを AWS Transform 暗号化します。データを暗号化する AWS マネージドキーを保護するためのアクションを実行する必要はありません。詳細については、「AWS Key Management Service デベロッパーガイド」の「AWS 所有キー」を参照してください。

データ型 AWS所有のキー暗号化 カスタマーマネージドキーの暗号化 (オプション)

カスタマーバケットデータ

Amazon S3 バケットに保存されているコードやドキュメントなどの顧客の入出力

有効

有効

アーティファクトストア

S3 バケットに保存されているコード変換の一環としての中間アーティファクト

有効

有効

ジョブの目標

Amazon S3 バケットに保存されているジョブに対する顧客のインテント

有効

有効

チャットメッセージ

Amazon S3 バケットに保存 AWS Transform されている顧客と の間のメッセージ Amazon S3

有効

有効

チャットナレッジベース

Amazon OpenSearch に保存され、 AWS Bedrock を介して処理される AWS Transform およびカスタマーチャットに関連するインデックス化されたデータ

有効

有効

注: お客様は、上記のすべてのデータ型の暗号化に使用する独自のカスタマーマネージドキー (CMK) を登録できます。

カスタマーマネージドキーは、KMS キーへのアクセスを制御することでデータへのアクセスを直接制御するために作成、所有、管理する AWS アカウントの KMS キーです。対称キーのみがサポートされます。独自の KMS キーの作成については、「 デベロッパーガイド」の「キーの作成」を参照してください。 AWS Key Management Service

カスタマーマネージドキーを使用する場合、 AWS Transform は KMS 許可を使用し、承認されたユーザー、ロール、またはアプリケーションが KMS キーを使用できるようにします。 AWS Transform 管理者が設定中に暗号化にカスタマーマネージドキーを使用することを選択すると、権限が作成されます。この権限は、エンドユーザーが保管中のデータ暗号化に暗号化キーを使用できるようにするものです。権限の詳細については、「Grants in AWS KMS」を参照してください。

AWS 所有キー (デフォルト)

注記

AWS 所有キー — デフォルトでこれらのキー AWS Transform を使用して、個人を特定できるデータを自動的に暗号化します。 AWS 所有キーを表示、管理、使用したり、その使用を監査したりすることはできません。ただし、データを暗号化するキーを保護するためのアクションの実施やプログラムの変更を行う必要はありません。詳細については、「 Key Management Service デベロッパーガイド」の「 AWS 所有 AWSキー」を参照してください。

デフォルトでは、保管中のデータを暗号化することで、機密データの保護に伴う運用のオーバーヘッドと複雑な作業を軽減できます。同時に、セキュリティを重視したアプリケーションを構築することで、暗号化のコンプライアンスと規制の厳格な要件を満たすことができます。

この暗号化レイヤーを無効にしたり、別の暗号化タイプを選択したりすることはできませんが、変換の作成時にカスタマーマネージドキーを選択することで、既存の AWS 所有暗号化キーに 2 番目の暗号化レイヤーを追加できます。

カスタマーマネージドキー (オプション)

カスタマーマネージドキー — 作成、所有、管理する対称カスタマーマネージドキーの使用 AWS Transform をサポートし、 AWS 所有キーを使用して既存の暗号化に 2 番目の暗号化レイヤーを追加します。この暗号化層はユーザーが完全に制御できるため、次のようなタスクを実行できます。

  • キーポリシーの策定と維持

  • IAM ポリシーとグラントの策定と維持

  • キーポリシーの有効化と無効化

  • キー暗号化マテリアルのローテーション

  • タグを追加する

  • キーエイリアスの作成

  • キー暗号化マテリアルのローテーション

  • タグを追加する

  • キーエイリアスの作成

  • 削除のためのキースケジューリング

  • 詳細については、「AWS Key Management Service デベロッパーガイド」の「カスタマーマネージドキー」を参照してください。

注記

AWS Transform は、 AWS 所有キーを使用した保管時の暗号化を自動的に有効にし、個人を特定できるデータを無償で保護します。ただし、カスタマーマネージドキーの使用には AWS KMS 料金が適用されます。料金の詳細については、「AWS Key Management Service 料金」を参照してください。

詳細については AWS KMS、「 とは」を参照してください AWS Key Management Service。

で 許可 AWS Transform を使用する方法 AWS Key Management Service

AWS Transform には、カスタマーマネージドキーを使用するための許可が必要です。

カスタマーマネージドキーで暗号化された [リソース名] を作成すると、 AWS Transform は CreateGrant リクエストを送信してユーザーに代わって許可を作成します AWS Key Management Service。の権限 AWS Key Management Service は、カスタマーアカウントの KMS キー AWS Transform へのアクセスを許可するために使用されます。

AWS Transform では、次の内部オペレーションにカスタマーマネージドキーを使用する権限が必要です。

  • [KMS API] リクエストを に送信 AWS KMS して、〔リソース名] の作成時に入力された対称カスタマーマネージド KMS キー ID が有効であることを確認します。

  • [KMS API] リクエストを に送信 AWS KMS して、カスタマーマネージドキーによって暗号化されたデータキーを生成します。

  • [KMS API] リクエストを AWS KMS に送信して、暗号化されたデータキーを復号し、データの暗号化に使用できます。

グラントへのアクセスの取り消しや、カスタマーマネージドキーに対するサービスのアクセスの取り消しは、いつでもできます。その場合、カスタマーマネージドキーによって暗号化されたデータにはアクセス AWS Transform できず、そのデータに依存するオペレーションに影響します。たとえば、アクセス AWS Transform できない暗号化された [リソース名] から [リソース名] を取得しようとすると、オペレーションは AccessDeniedException エラーを返します。

カスタマーマネージドキーを作成する

対称カスタマーマネージドキーは、 AWS マネジメントコンソールまたは AWS Key Management Service APIs を使用して作成できます。

対称カスタマーマネージドキーを作成するには、AWS Key Management Service デベロッパーガイドの「対称暗号化 KMS キーの作成」のステップに従います。

AWS Transform リソースでカスタマーマネージドキーを使用するには、キーポリシーで次の API オペレーションを許可する必要があります。

kms:CreateGrant – カスタマーマネージドキーに権限を追加します。指定された KMS キーへのアクセスを制御する権限を付与します。これにより、 AWS Transform 必要な権限付与オペレーションへのアクセスが可能になります。詳細については、「AWS Key Management Service デベロッパーガイド」の「AWS KMS でのグラント」を参照してください。

これにより、 AWS Transform は以下を実行できます。

  • [KMS API (GenerateDataKeyWithoutPlainText/GenerateDatakey) を呼び出して暗号化されたデータキーを生成し、保存します。これは、データキーがすぐに暗号化に使用されるわけではないためです。

  • [KMS API (Decrypt)] を呼び出して、保存された暗号化されたデータキーを使用して暗号化されたデータにアクセスします。

  • サービスに RetireGrant を許可するには、リタイアプリンシパルを設定します。

  • kms:DescribeKey – [サービス名] がキーを検証できるようにするカスタマーマネージドキーの詳細を提供します。

SQL モダナイゼーションの暗号化

SQL Server のモダナイゼーションプロセス中に、EC2 インスタンス、ECS クラスター、ECR イメージ、S3 オブジェクトなどのリソースがアカウントに AWS Transform 作成されます。アカウント内のデータを暗号化するためのカスタマーマネージドキーを提供するオプションがあります。KMS キーに CreatedFor キーと値 AWSTransform でタグ付けする必要があります。このポリシーの例では、デフォルトのキーポリシーがない場合に、キーポリシーに必要な最小限のアクセス許可を一覧表示します。デフォルトのキーポリシーがある場合でも、ECS がキーを使用できるように、デフォルトのキーポリシーに加えて KMS キーを手動で更新する必要があります。

"Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "s3.*.amazonaws.com", "kms:EncryptionContext:aws-transform": "*" }, "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/*AWSTransform*" } } }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "ec2.*.amazonaws.com" }, "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/*AWSTransform*" } } }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "ec2.*.amazonaws.com", "ecr.*.amazonaws.com" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" }, "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/*AWSTransform*" } } }, { "Effect": "Allow", "Principal": { "Service": "fargate.amazonaws.com" }, "Action": "kms:GenerateDataKeyWithoutPlaintext", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:ecs:clusterName": "AWSTransform*" } } }, { "Effect": "Allow", "Principal": { "Service": "fargate.amazonaws.com" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:ecs:clusterName": "AWSTransform*" }, "ForAllValues:StringEquals": { "kms:GrantOperations": "Decrypt" } } } ]

データベース移行の暗号化

データベース移行プロセス中に、 は AWS Database Migration Service (DMS) AWS Transform を使用してデータベースデータを移行します。オプションでカスタマーマネージドキーを指定して、移行中にデータベースデータを暗号化できます。

次のポリシーには 3 つのステートメントが含まれています。最初のステートメントは AWS KMS 、キーのアクセス許可をルートアカウントに付与します。2 番目のステートメントでは、コネクタロールが検出中にキーを検証できるようにします。3 番目のステートメントでは、コネクタロールが DMS オペレーションに キーを使用することを許可します。

"Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow connector role to validate key during discovery", "Effect": "Allow", "Principal": { "AWS": "connector-role-arn" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "Allow connector role to use key via DMS", "Effect": "Allow", "Principal": { "AWS": "connector-role-arn" }, "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "dms.us-east-1.amazonaws.com" } } } ]

カスタマーマネージド KMS キーの使用

カスタマーマネージド KMS キーを作成した後、 AWS Transform 管理者は AWS Transform コンソールでキーを指定して、それを使用してデータを暗号化する必要があります。

でデータを暗号化するようにカスタマーマネージドキーを設定するには AWS Transform、管理者が を使用するためのアクセス許可が必要です AWS KMS。

カスタマーマネージドキーで暗号化された機能を使用するには、 AWS Transform がカスタマーマネージドキーにアクセスできるようにするアクセス許可が必要です。

の使用中に KMS 許可に関連するエラーが表示された場合は AWS Transform、許可を更新して AWS Transform が許可を作成できるようにする必要があります。必要なアクセス許可を自動的に設定するには、 AWS Transform コンソールに移動し、ページ上部のバナーでアクセス許可の更新を選択します。が AWS Transform 許可を作成できるようにするには、 AWS Transform コンソールページのアクセス許可を更新する必要があります。

カスタマーマネージドキー AWS Transform へのアクセスを許可する

次のポリシーステートメントの例では、 キーへのアクセスを許可することで、カスタマーマネージドキーで暗号化された機能 AWS Transform にアクセスするためのアクセス許可をユーザーに付与します。このポリシーは、管理者が暗号化用にカスタマーマネージドキーをセットアップ AWS Transform している場合に使用する必要があります。

注記

この情報は、CMK を使用した SQL Server モダナイゼーションデプロイワークフローには適用されません。

"Statement": [ { "Sid": "QKMSDecryptGenerateDataKeyPermissions", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:ReEncryptFrom", "kms:ReEncryptTo" ], "Resource": [ "arn:aws:kms:arn:aws::111122223333:key/[[key_id]]" ], "Condition": { "StringLike": { "kms:ViaService": [ "q.us-east-1.amazonaws.com" ] } } } ]