Amazon Lattice VPC でのデータ保護 - Amazon VPC Lattice

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

Amazon Lattice VPC でのデータ保護

責任 AWS 共有モデル、Amazon Lattice VPC でのデータ保護に適用されます。このモデルで説明されているように、 AWS は、すべての を実行するグローバルインフラストラクチャを保護する責任があります AWS クラウド。お客様は、このインフラストラクチャでホストされているコンテンツに対する管理を維持する責任があります。このコンテンツには、使用される AWS のサービス のセキュリティ設定と管理タスクが含まれます。データプライバシーの詳細については、「データプライバシーFAQ」を参照してください。欧州でのデータ保護の詳細については、AWS 「セキュリティブログ」のAWS 「責任共有モデル」とGDPR「ブログ記事」を参照してください。

転送中の暗号化

VPC Lattice は、コントロールプレーンとデータプレーンで構成されるフルマネージドサービスです。各プレーンはサービスにおいて異なる目的を担っています。コントロールプレーンは、 (CRUDL) リソース ( CreateServiceや など) の作成、読み取り/説明、更新、削除、一覧表示APIsに使用される管理を提供しますUpdateService。Lattice VPC コントロールプレーンへの通信は、転送中に によって保護されますTLS。データプレーンは VPC Lattice Invoke でありAPI、サービス間の相互接続を提供します。TLS は、 HTTPSまたは を使用するときに VPC Lattice データプレーンへの通信を暗号化しますTLS。暗号スイートとプロトコルバージョンは Lattice VPC が提供するデフォルトを使用し、設定できません。詳細については、「HTTPS Lattice VPC サービスのリスナー」を参照してください。

保管中の暗号化

デフォルトでは、保管中のデータの暗号化により、機密データの保護に伴う運用上のオーバーヘッドと複雑さの軽減につながります。同時に、安全なアプリケーションを構築して、厳格な暗号化のコンプライアンスと規制要件に対応できます。

Amazon S3 マネージドキーによるサーバー側の暗号化 (SSE-S3)

Amazon S3 マネージドキー (SSE-S3) でサーバー側の暗号化を使用する場合、各オブジェクトは一意のキーで暗号化されます。追加の保護策として、定期的にローテーションするルートキーを使用してキー自体を暗号化します。Amazon S3 サーバー側の暗号化では、利用可能な最も強力なブロック暗号の 1 つGCMである 256 ビットの Advanced Encryption Standard (AES-256) を使用してデータを暗号化します。AES- より前に暗号化されたオブジェクトの場合GCM、 AES-CBC はそれらのオブジェクトを復号化するために引き続きサポートされます。詳細については、「Amazon S3-managedSSE-S3」を参照してください。

Lattice アクセスログの S3-managed暗号化キー (SSE-S3) VPC を使用してサーバー側の暗号化を有効にすると、S3 バケットに保存される前に、各アクセスログファイルが自動的に暗号化されます。 S3 詳細については、Amazon S3に送信されたログ」を参照してください。 CloudWatch

AWS KMS (SSE-KMS) に保存されている AWS KMS キーによるサーバー側の暗号化

AWS KMS キー (SSE-KMS) によるサーバー側の暗号化は SSE-S3 に似ていますが、このサービスの使用には追加のメリットと料金がかかります。Amazon S3 のオブジェクトへの不正アクセスに対する保護を強化する、 AWS KMS キーに対する個別のアクセス許可があります。SSE-KMS AWS KMS キーがいつ誰によって使用されたかを示す監査証跡も提供します。詳細については、AWS Key Management Service 「 (SSE-KMS) を使用したサーバー側の暗号化の使用」を参照してください。

証明書のプライベートキーの暗号化と復号化

ACM 証明書とプライベートキーは、エイリアス aws/acm を持つ AWS マネージドKMSキーを使用して暗号化されます。このエイリアスを持つキー ID は、 AWS KMS AWS マネージドキー のコンソールで表示できます。

VPC Lattice はACMリソースに直接アクセスしません。Connection Manager を使用して AWS TLS、証明書のプライベートキーを保護し、アクセスします。ACM 証明書を使用して Lattice VPC サービスを作成すると、Lattice VPC は証明書を AWS TLS Connection Manager に関連付けます。これは、プレフィックス aws/acm を使用して、マネージドキー AWS KMS に対して AWS で許可を作成することで行われます。グラントは、TLSConnection Manager が暗号化オペレーションでKMSキーを使用できるようにするポリシーツールです。グラントにより、被付与者プリンシパル (TLS Connection Manager) は、 KMSキーで指定されたグラントオペレーションを呼び出して、証明書のプライベートキーを復号できます。TLS 次に、Connection Manager は証明書と復号化された (プレーンテキスト) プライベートキーを使用して、Lattice サービスのクライアントとの安全な接続 (SSL/TLS セッション) VPC を確立します。証明書が Lattice VPC サービスとの関連付けが解除されると、グラントは廃止されます。

KMS キーへのアクセスを削除する場合は、 または の update-service コマンドを使用して、 サービスから証明書を置き換え AWS Management Console または削除することをお勧めします AWS CLI。

Lattice VPC の暗号化コンテキスト

暗号化コンテキストは、プライベートキーが何に使用されるかに関するコンテキスト情報を含むキーと値のペアのオプションセットです。 は暗号化コンテキストを暗号化されたデータに AWS KMS バインドし、認証された暗号化をサポートするために追加の認証されたデータとして使用します。

TLS キーを Lattice VPC および TLS Connection Manager VPC で使用すると、保管中のキーの暗号化に使用される暗号化コンテキストに Lattice サービスの名前が含まれます。証明書とプライベートキーが使用されている VPC Lattice サービスを確認するには、次のセクションに示すように CloudTrail ログの暗号化コンテキストを表示するか、ACMコンソールの 関連リソースタブを参照してください。

データを復号化するには、そのリクエストに同じ暗号化コンテキストを含めます。VPC Lattice はすべての AWS KMS暗号化オペレーションで同じ暗号化コンテキストを使用します。キーは aws:vpc-lattice:arnで、値は Lattice サービスの Amazon リソースネーム (ARN) VPC です。

次の例は、 などのオペレーションの出力の暗号化コンテキストを示していますCreateGrant

"encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" }

Lattice VPC の暗号化キーのモニタリング

VPC Lattice サービスで AWS マネージドキーを使用する場合、 AWS CloudTrailを使用して、Lattice VPC が に送信するリクエストを追跡できます AWS KMS。

CreateGrant

ACM 証明書を Lattice VPC サービスに追加すると、TLSConnection Manager がACM証明書に関連付けられたプライベートキーを復号できるように、ユーザーに代わってCreateGrantリクエストが送信されます。

CreateGrant オペレーションは、、イベント履歴 CloudTrail、 でイベントとして表示できますCreateGrant

以下は、CreateGrantオペレーションのイベント履歴の CloudTrail イベントレコードの例です。

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "accessKeyId": "EXAMPLE_KEY_ID", "sessionContext": { "sessionIssuer": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "userName": "Alice" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-02-06T23:30:50Z", "mfaAuthenticated": "false" } }, "invokedBy": "acm.amazonaws.com" }, "eventTime": "2023-02-07T00:07:18Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "acm.amazonaws.com", "userAgent": "acm.amazonaws.com", "requestParameters": { "granteePrincipal": "tlsconnectionmanager.amazonaws.com", "keyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "operations": [ "Decrypt" ], "constraints": { "encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" } }, "retiringPrincipal": "acm.us-west-2.amazonaws.com" }, "responseElements": { "grantId": "f020fe75197b93991dc8491d6f19dd3cebb24ee62277a05914386724f3d48758", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "requestID": "ba178361-8ab6-4bdd-9aa2-0d1a44b2974a", "eventID": "8d449963-1120-4d0c-9479-f76de11ce609", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

上記のCreateGrant例では、被付与者のプリンシパルは TLS Connection Manager であり、暗号化コンテキストには Lattice VPC サービス がありますARN。

ListGrants

KMS キー ID とアカウント ID ListGrants を使用して を呼び出すことができますAPI。これにより、指定されたKMSキーのすべての許可のリストが表示されます。詳細については、「」を参照してくださいListGrants

で次のListGrantsコマンド AWS CLI を使用して、すべての許可の詳細を確認します。

aws kms list-grants —key-id your-kms-key-id

以下は出力例です。

{ "Grants": [ { "Operations": [ "Decrypt" ], "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Name": "IssuedThroughACM", "RetiringPrincipal": "acm.us-west-2.amazonaws.com", "GranteePrincipal": "tlsconnectionmanager.amazonaws.com", "GrantId": "f020fe75197b93991dc8491d6f19dd3cebb24ee62277a05914386724f3d48758", "IssuingAccount": "arn:aws:iam::111122223333:root", "CreationDate": "2023-02-06T23:30:50Z", "Constraints": { "encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" } } } ] }

上記のListGrants例では、被付与者のプリンシパルは TLS Connection Manager であり、暗号化コンテキストには Lattice VPC サービス がありますARN。

Decrypt

VPC Lattice は TLS Connection Manager VPC を使用して Decryptオペレーションを呼び出し、Lattice サービスでTLS接続を提供するためにプライベートキーを復号化します。Decrypt オペレーションは、イベント履歴 復号 CloudTrailイベントとして表示できます。

以下は、Decryptオペレーションのイベント履歴の CloudTrail イベントレコードの例です。

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "tlsconnectionmanager.amazonaws.com" }, "eventTime": "2023-02-07T00:07:23Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "tlsconnectionmanager.amazonaws.com", "userAgent": "tlsconnectionmanager.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "12345126-30d5-4b28-98b9-9153da559963", "eventID": "abcde202-ba1a-467c-b4ba-f729d45ae521", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "sharedEventID": "abcde202-ba1a-467c-b4ba-f729d45ae521", "eventCategory": "Management" }