View a markdown version of this page

カスタマーマネージドキーによる保管時の暗号化 - AWS レジリエンスハブ

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

カスタマーマネージドキーによる保管時の暗号化

次世代 Resilience Hub は、 を使用して保管中の機密データを保護するために、デフォルトで暗号化を提供します AWS 所有のキー。

  • 次世代 Resilience Hub は、デフォルトでこれらのキーを使用して機密データを自動的に暗号化します。表示、管理、使用 AWS 所有のキー、またはそれらの使用を監査することはできません。ただし、データを暗号化するキーを保護するためにアクションを実施したり、プログラムを変更したりする必要はありません。詳細については、「AWS Key Management Service デベロッパーガイド」の 「https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk」を参照してください。

この暗号化レイヤーを無効にしたり、別の暗号化タイプを選択したりすることはできませんが、サービスリソースの作成時にカスタマーマネージドキーを指定することで、2 番目の暗号化レイヤーを追加できます。

  • カスタマーマネージドキー 次世代 Resilience Hub は、ユーザーが作成、所有、管理する対称暗号化カスタマーマネージドキーの使用をサポートしています。この暗号化層はユーザーが完全に制御できるため、次のようなタスクを実行できます。

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

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

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

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

    • タグを追加する

    • キーエイリアスの作成

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

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

次の表は、次世代 Resilience Hub が機密データを暗号化する方法をまとめたものです。

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

description

サービス、システム、および障害耐性ポリシーの説明。

有効 有効

finding

評価結果の名前、説明、推論、コメント。

有効 有効

recommendation

結果に関連する推奨事項の説明と推奨される変更。

有効 有効

serviceFunction

サービス関数の名前と説明。

有効 有効

assumption

サービス関数に関連付けられた前提条件テキスト。

有効 有効

userJourney

ユーザージャーニーの説明。

有効 有効

event

サービスイベントログの説明。

有効 有効

assessmentData

Amazon S3 に保存されているトポロジ、リソース設定、作業データなど、エージェント評価ワークフローによって生成された中間データ。

有効 有効

リソース識別子

リソース名、ARNs、リソースタイプ、リージョン。リソース名は識別子と暗号化コンテキストで使用され、機密データを含めることはできません。

有効 サポートされていません
注記

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

重要

次世代 Resilience Hub は、対称暗号化 KMS キーのみをサポートします。他のタイプの KMS キーを使用して次世代 Resilience Hub リソースを暗号化することはできません。KMS キーが対称暗号化キーかどうかを判断する方法については、「 AWS Key Management Service デベロッパーガイド」の「対称および非対称 KMS キーの識別」を参照してください。

で次世代 Resilience Hub が許可を使用する方法 AWS KMS

次世代 Resilience Hub では、非同期評価ワークフロー中にカスタマーマネージドキーを使用するための許可が必要です。

カスタマーマネージドキーを使用してサービスを作成すると、次世代 Resilience Hub は CreateGrant リクエストを送信してユーザーに代わって許可を作成します AWS KMS。許可はサービスの暗号化コンテキストに制限され、次のオペレーションのみを許可します。

  • Encrypt – 評価ワークフロー中に生成された結果、推奨事項、前提条件などの機密フィールドを暗号化します。

  • Decrypt – 評価処理中に以前に暗号化されたデータを復号します。

  • GenerateDataKey – Amazon S3 に保存されている中間評価データを暗号化するためのデータキーを生成します。

付与は、サービスを削除すると廃止されます。また、許可へのアクセスを取り消すことも、カスタマーマネージドキーへのサービスのアクセスをいつでも削除することもできます。その場合、次世代 Resilience Hub はカスタマーマネージドキーによって暗号化されたデータにアクセスできず、そのデータに依存する API オペレーションと評価ワークフローに影響します。

同期 API オペレーション (サービスの作成や更新など) の場合、次世代 Resilience Hub は、許可を必要とせずに、KMS キーに対する発信者のアクセス許可を直接使用します。

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

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

対称暗号化カスタマーマネージドキーを作成するには

「AWS Key Management Service デベロッパーガイド」の「対称暗号化 KMS キーの作成」の手順に従ってください。

次世代 Resilience Hub のカスタマーマネージドキーの指定

サービス、システム、または障害耐性ポリシーを作成するときに、カスタマーマネージドキーを指定できます。KMS キー ID を指定すると、次世代 Resilience Hub はそのキーを使用してリソースに関連付けられたすべての機密データを暗号化します。

キーは、次のいずれかのキー識別子を使用して指定できます。

  • キー ID (例: 1234abcd-12ab-34cd-56ef-1234567890ab)

  • キー ARN (例: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab)

  • エイリアス名 (例: alias/my-key)

  • エイリアス ARN (例: arn:aws:kms:us-west-2:111122223333:alias/my-key)

カスタマーマネージドキーを指定するには、CreateService、、CreateSystemまたは CreatePolicy API オペレーションを呼び出すときに kmsKeyIdパラメータを使用します。

キーポリシー

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

次のキーポリシーは、次世代 Resilience Hub にキーの使用を許可します。暗号化コンテキスト条件を使用してキーを特定のリソースにのみ使用できるようにし、Next generation Resilience Hub が必要とするオペレーションのみに各アクセス許可をスコープします。CUSTOMER-ACCOUNT-IDCUSTOMER-ROLE、および REGION を値に置き換えます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowResilienceHubDescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForServices", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:service-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:service/*" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForSystems", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:system-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:system/*" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForPolicies", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:policy-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:policy/*" } } }, { "Sid": "AllowResilienceHubCreateGrantForAsyncWorkflows", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com", "kms:GrantConstraintType": "EncryptionContextSubset" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:service-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:service/*" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Encrypt", "Decrypt", "GenerateDataKey" ] } } } ] }

ポリシーステートメントには、次のアクセス許可があります。

  • AllowResilienceHubDescribeKey – サービスの作成時にキーを指定したときに、次世代 Resilience Hub がキーが存在し、対称暗号化キーであることを検証できるようにします。

  • AllowResilienceHubEncryptDecryptForServices – 同期 API コール中に、次世代 Resilience Hub がサービスレベルのデータ (検出結果、推奨事項、前提条件、サービス関数、イベント、評価データ) を暗号化および復号できるようにします。暗号化コンテキストによってサービスリソースにスコープされます。

  • AllowResilienceHubEncryptDecryptForSystems – 同期 API コール中に、次世代 Resilience Hub がシステムレベルのデータ (システムの説明とユーザージャーニーの説明) を暗号化および復号できるようにします。暗号化コンテキストによってシステムリソースにスコープされます。

  • AllowResilienceHubEncryptDecryptForPolicies – 同期 API コール中に、次世代 Resilience Hub がポリシーレベルのデータ (障害耐性ポリシーの説明) を暗号化および復号できるようにします。暗号化コンテキストによってポリシーリソースにスコープされます。

  • AllowResilienceHubCreateGrantForAsyncWorkflows – 次世代 Resilience Hub が非同期評価ワークフローの許可を作成できるようにします。許可は必要なオペレーション (Encrypt、Decrypt、GenerateDataKey) のみに制限され、サービス ARN にバインドされた暗号化コンテキストのサブセット制約を含める必要があります。

ポリシーでの許可の指定に関する詳細については、「AWS Key Management Service デベロッパーガイド」を参照してください。

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

次世代 Resilience Hub 暗号化コンテキスト

暗号化コンテキストは、データに関する追加のコンテキスト情報を含むキーと値のペアのオプションセットです。

AWS KMS は、追加の認証済みデータとして暗号化コンテキストを使用して、認証済み暗号化をサポートします。データを暗号化するリクエストに暗号化コンテキストを含めると、 は暗号化コンテキストを暗号化されたデータに AWS KMS バインドします。データを復号するには、リクエストに同じ暗号化コンテキストを含める必要があります。

次世代 Resilience Hub 暗号化コンテキスト

次世代 Resilience Hub は、リソースタイプに応じて次の暗号化コンテキストキーを使用します。

暗号化コンテキストキー
暗号化コンテキストキー スコープ 次の用途に使用されます。
aws:resiliencehub:service-arn サービス 結果、推奨事項、前提条件、サービス機能、依存関係、イベント、評価データ
aws:resiliencehub:system-arn システム システムの説明とユーザージャーニーの説明
aws:resiliencehub:policy-arn ポリシー 障害耐性ポリシーの説明

サービスレベルのオペレーションの暗号化コンテキストの例:

"encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123" }

モニタリングに暗号化コンテキストを使用する

対称暗号化カスタマーマネージドキーを使用してデータを暗号化する場合、監査レコードとログの暗号化コンテキストを使用して、カスタマーマネージドキーがどのように使用されているかを特定できます。暗号化コンテキストは、 によって生成されたログに表示されますAWS CloudTrail

暗号化コンテキストを使用したアクセスの制御

キーポリシーと IAM ポリシーで暗号化コンテキストを使用してconditions、対称暗号化カスタマーマネージドキーへのアクセスを制御できます。グラントに暗号化コンテキストの制約を使用することもできます。

次世代 Resilience Hub は、権限の暗号化コンテキストサブセット制約を使用して、非同期ワークフローが権限が作成された特定のサービスに属するデータのみを暗号化および復号できるようにします。

次世代 Resilience Hub の暗号化キーのモニタリング

次世代 Resilience Hub リソースでカスタマーマネージドキーを使用すると、 AWS CloudTrail を使用して、次世代 Resilience Hub が送信するリクエストを追跡できます AWS KMS。

CreateGrant

カスタマーマネージドキーを使用してサービスを作成すると、次世代 Resilience Hub はユーザーに代わってCreateGrantリクエストを送信し、非同期評価ワークフローがキーを使用できるようにします。許可はサービスに固有であり、暗号化コンテキストによって制約されます。次世代 Resilience Hub はRetireGrant、サービスを削除するときに を使用してグラントを削除します。

次に、CreateGrant オペレーションを記録するイベントの例を示します。

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T10:07:22Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "granteePrincipal": "resiliencehub.amazonaws.com", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "retiringPrincipal": "resiliencehub.amazonaws.com", "operations": [ "Decrypt", "GenerateDataKey", "Encrypt" ], "constraints": { "encryptionContextSubset": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123" } } }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "56d4e434-abb6-4dd7-8558-ad38560d03b1", "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" }
GenerateDataKey

次世代 Resilience Hub がカスタマーマネージドキーを使用してデータを暗号化すると、データキーを生成するGenerateDataKeyリクエストを送信します。これは、同期 API コール (説明付きのサービスの作成など) と非同期評価ワークフローの両方で発生します。

次に、GenerateDataKey オペレーションを記録するイベントの例を示します。

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T11:18:36Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "numberOfBytes": 32, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123", "aws-crypto-public-key": "AwAnnorjRE+DFQYIuDKjGEvlXwro5Rdiegk8flmq7m0N..." } }, "responseElements": null, "requestID": "c5bedc9b-e6d6-45f8-b121-c9851a3d718a", "eventID": "e839a7ed-e4a9-32a3-b92a-2c7237a40c82", "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", "eventCategory": "Management" }
Decrypt

API オペレーションを通じてリソースを取得する場合、または評価ワークフローが以前に保存されたデータを処理する場合、次世代 Resilience Hub はデータを復号化するためのDecryptリクエストを送信します。

次に、Decrypt オペレーションを記録するイベントの例を示します。

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T11:27:49Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123", "aws-crypto-public-key": "A/9P3BC05WjeQONZR1fBiEqWKEse/Yk1lMxd2VIh2ED5..." } }, "responseElements": null, "requestID": "30f8e9bc-4e0a-4359-8bc3-8278ef42c206", "eventID": "195ef070-c952-4c28-9883-29bca297a08c", "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", "eventCategory": "Management" }
DescribeKey

次世代 Resilience Hub は、サービスに関連付けられたカスタマーマネージドキーがアカウントとリージョンに存在し、有効な対称暗号化キーであることを確認するDescribeKeyリクエストを送信します。

以下のイベント例では、DescribeKey オペレーションを記録しています。

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T10:07:13Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "responseElements": null, "requestID": "e427932c-448b-49aa-88e1-b311c27ba753", "eventID": "48c596a5-83c7-4603-b0cf-be0ff2548623", "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", "eventCategory": "Management" }

詳細情報

次のリソースは、保管時のデータ暗号化についての詳細を説明しています。