AWS HealthScribe の保管中のデータ暗号化 - Amazon Transcribe

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

AWS HealthScribe の保管中のデータ暗号化

AWS HealthScribe は、デフォルトで暗号化を提供し、Amazon S3 マネージドキーを使用して保管中のお客様の機密データを保護します。

  • Amazon S3 マネージドキー (SSE-S3) — AWS HealthScribe はデフォルトで Amazon S3 マネージドキーを使用し、中間ファイルを自動的に暗号化します。Amazon S3 マネージドキーは表示、管理、使用することはできず、その使用を監査することもできません。ただし、データを暗号化するキーを保護するためにアクションを実施したり、プログラムを変更したりする必要はありません。詳細については、「SSE-S3」を参照してください。

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

この暗号化レイヤーを無効にしたり、別の暗号化タイプを選択したりすることはできませんが、AWS HealthScribe でジョブを作成する際にカスタマーマネージドキーを選択することで、既存の Amazon S3 マネージドキーに重ねて 2 番目の暗号化レイヤーを追加できます。

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

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

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

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

    • 暗号化素材のローテーション

    • タグの追加

    • キーエイリアスの作成

    • キー削除のスケジュール設定

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

注記

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

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

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

対称カスタマーマネージドキーを作成するには、AWS Management Console または AWS KMS API を使用します。対称カスタマーマネージドキーを作成するには、「AWS Key Management Service デベロッパーガイド」の「対称カスタマーマネージドキーの作成」の手順に従います。

キーポリシーは、カスタマーマネージドキーへのアクセスを制御します。すべてのカスタマーマネージドキーには、キーポリシーが 1 つだけ必要です。このポリシーには、そのキーを使用できるユーザーとその使用方法を決定するステートメントが含まれています。カスタマーマネージドキーを作成する際に、キーポリシーを指定することができます。詳細については、「AWS Key Management Service デベロッパーガイド」の「カスタマーマネージドキーへのアクセスの管理」を参照してください。

StartMedicalScribeJob リクエストで DataAccessRoleArn として指定した IAM ロールと同じアカウントのキーを使用している場合は、キーポリシーを更新する必要はありません。別のアカウントのカスタマーマネージドキーを DataAccessRole として使用するには、キーポリシーの DataAccessRoleArn を信頼して以下のアクションを実行する必要があります。

  • kms:Encrypt — カスタマーマネージドキーを使用した暗号化を許可します。

  • kms:Decrypt — カスタマーマネージドキーを使用した復号を許可します。

  • kms:DescribeKey — カスタマーマネージドキーの詳細を提供し、AWS HealthScribe でキーを検証できるようにします。

次に示すのは、カスタマーマネージドキーを使用するためのクロスアカウント許可を IAM ロールに付与するために追加できるポリシーステートメントの例です。

"Statement" : [ { "Sid": "Allow access to the DataAcessRole for StartMedicalScribeJob", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/DataAccessRole" }, "Action": [ "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource" : "*" } ]

カスタマーマネージドキーと DataAccessRole が同じアカウントにあるか異なるアカウントにあるかにかかわらず、DataAccessRole にはカスタマーマネージドキーを使用して上記のアクションを実行するアクセス許可が必要です。次に示すのは、DataAccessRole に追加できるポリシーステートメントの例です。

"Statement" : [ { "Sid": "Allow role to perform AWS KMS actions for customer managed key", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:Encrypt", "kms:Decrypt" ], "Resource": "*" } ]

ポリシーでのアクセス許可の指定に関する詳細については、「AWS Key Management Service デベロッパーガイド」を参照してください。キーアクセスのトラブルシューティングに関する詳細については、「AWS Key Management Service デベロッパーガイド」を参照してください。

AWS HealthScribe でのカスタマーマネージドキーの指定

カスタマーマネージドキーを StartMedicalScribeJob リクエストの別の暗号化レイヤーとして指定できます。StartMedicalScribeJob リクエストの作成時に、リクエストに OutputEncryptionKMSKeyId フィールドを含めることで、カスタマーマネージドキーを指定できます。

AWS KMS の暗号化コンテキスト

AWS KMS 暗号化コンテキストは、プレーンテキスト、非シークレットキー: 値ペアのマップです。このマップは、暗号化コンテキストペアと呼ばれる追加の認証データを表し、データのセキュリティレイヤーを追加できます。AWSHealthScribe では、お客様指定の Amazon S3 バケットへの AWS HealthScribe 出力を暗号化するための対称暗号化キーが必要です。詳細については、「AWS KMS の非対称キー」を参照してください

暗号化コンテキストペアを作成するときは、機密情報を含めないでください。暗号化コンテキストはシークレットではなく、CloudTrail ログ内でプレーンテキストで見ることができます (したがって、暗号化操作を特定し分類するために使用できます)。暗号化コンテキストのキーと値には、アンダースコア (_)、ダッシュ (-)、スラッシュ (/\) 、コロン (:) などの特殊文字を含めることができます。

ヒント

暗号化コンテキストペアの値を暗号化されるデータに関連付けると便利です。必須ではありませんが、ファイル名、ヘッダー値、暗号化されていないデータベースフィールドなど、暗号化されたコンテンツに関連する機密性のないメタデータを使用することをお勧めします。

API で出力暗号化を使用するには、StartMedicalScribeJob オペレーションで KMSEncryptionContext パラメータを設定します。出力暗号化オペレーションに暗号化コンテキストを提供するには、OutputEncryptionKMSKeyId パラメータで対称 AWS KMS キー ID を参照する必要があります。

IAM ポリシーで AWS KMS 条件キーを使用すると、暗号化オペレーションのリクエストで使用された暗号化コンテキストに基づいて、対称暗号化 AWS KMS キーへのアクセスを制御できます。暗号化コンテキストポリシーの例については、「AWS KMS 暗号化コンテキストポリシー」を参照してください。

暗号化コンテキストの使用は任意ですが、推奨されています。詳細については、「暗号化コンテキスト」を参照してください。