

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

# を削除する AWS KMS key
<a name="deleting-keys"></a>

の削除 AWS KMS key は破壊的であり、潜在的に危険です。これは、キーマテリアルと KMS キーに関連付けられているすべてのメタデータを削除し、元に戻すことはできません。KMS キーを削除すると、その KMS キーで暗号化されたデータを復号できなくなります。これは、そのデータが回復不能になることを意味します。(唯一の例外は、[マルチリージョンのレプリカキー](#deleting-mrks)と、キーマテリアルを含む非対称キーと HMAC KMS キーです。) このリスクは、[暗号化に使用される非対称 KMS キー](#deleting-asymmetric-cmks)では重要です。この場合、警告やエラーなしに、ユーザーはパブリックキーを使用して暗号化テキストを生成し続け、プライベートキーの削除後に復号することはできません AWS KMS。

KMS キーの削除は、そのキーをもう使用しないことが確実である場合にのみ行ってください。不明な場合は、削除するのではなく、[KMS キーを無効化する](enabling-keys.md)ことを検討します。無効にした KMS キーを再度有効にしたり、KMS キーの[削除のスケジュールをキャンセル](deleting-keys-scheduling-key-deletion.md)したりすることは可能ですが、すでに削除した KMS キーを復元することはできません。

スケジュールできるのは、カスタマーマネージドキーの削除のみです。 AWS マネージドキー または は削除できません AWS 所有のキー。

KMS キーを削除する前に、その KMS キーで暗号化された暗号文の数を知りたい場合があります。 AWS KMS はこの情報を保存せず、暗号文も保存しません。この情報を取得するには、KMS キーの過去の使用状況を特定する必要があります。ヘルプについては、[KMS キーの過去の使用状況を確認する](deleting-keys-determining-usage.md) を参照してください。

AWS KMS 削除を明示的にスケジュールし、必須の待機期間が終了しない限り、 は KMS キーを削除しません。

KMS キーを削除する理由には次の 1 つ以上のものが考えられます。
+ 不要になった KMS キーのキーライフサイクルを完了する
+ 使用しない KMS キーの維持に伴う管理オーバーヘッドと[コスト](https://aws.amazon.com/kms/pricing/)を回避する
+ [KMS キーリソースクォータ](resource-limits.md#kms-keys-limit)に対してカウントされる KMS キーの数を減らすには

**注記**  
[を閉じる AWS アカウント](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/close-account.html)と、KMS キーにアクセスできなくなり、課金されなくなります。

AWS KMS は、KMS キー[の削除をスケジュール](ct-schedule-key-deletion.md)したとき、および [KMS キーが実際に削除](ct-delete-key.md)されたときに AWS CloudTrail 、ログにエントリを記録します。

## 待機期間について
<a name="deleting-keys-how-it-works"></a>

KMS キーの削除は破壊的で潜在的に危険であるため、 では 7～30 日間の待機期間を設定 AWS KMS する必要があります。デフォルトの待機時間は、30 日です。

ただし、実際の待機期間は、スケジュールした待機期間よりも最大 24 時間長くなる場合があります。KMS キーが削除される実際の日付と時刻を取得するには、[DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) オペレーションを使用します。または、 AWS KMS コンソール、KMS キーの[詳細ページ](finding-keys.md#viewing-console-details)、[**General configuration**] (一般的な設定) セクションで、**スケジュールされた削除の日付**を参照してください。必ずタイムゾーンをメモしておきます。

削除の待機期間中は、KMS キーステータスおよびキーの状態が**削除保留中**になります。
+ 削除保留中の KMS キーを[暗号化オペレーション](kms-cryptography.md#cryptographic-operations)で使用することはできません。
+ AWS KMS は[、削除保留中の KMS キーのキーマテリアルをローテーション](rotate-keys.md#rotate-keys-how-it-works)しません。

待機期間が終了すると、 は KMS キー、そのエイリアス、および関連するすべての AWS KMS メタデータ AWS KMS を削除します。

KMS キーの削除をスケジュールしても、KMS キーで暗号化されたデータキーに、ただちに影響しない場合もあります。詳細については、「[使用できない KMS キーがデータキーに及ぼす影響](unusable-kms-keys.md)」を参照してください。

待機期間を設定することにより、KMS キーが不要であり、今後も使用することがないことを確認できます。待機期間中にユーザーまたはアプリケーションが KMS キーの使用を試みた場合に警告するように [Amazon CloudWatch アラームを設定](deleting-keys-creating-cloudwatch-alarm.md)できます。KMS キーを復元するには、待機期間の終了前にキーの削除をキャンセルします。待機期間が終了すると、キーの削除をキャンセルできず、 は KMS キー AWS KMS を削除します。

## 特別な考慮事項
<a name="special-considerations-delete"></a>

キー削除をスケジュールする前に、特定用途向けの KMS キーの削除に関する以下の注意事項を確認してください。

** 非対称 KMS キーの削除**  
[認可されたユーザー](deleting-keys-adding-permission.md)は、対称または非対称 KMS キーを削除できます。これらの KMS キーの削除をスケジュールする手順は、どちらの種類のキーも同じです。ただし、[非対称 KMS キーのパブリックキーは の外部でダウンロード](download-public-key.md)して使用できるため AWS KMS、特に暗号化に使用される非対称 KMS キー (キーの用途は ) の場合、オペレーションには大きなリスクが伴います`ENCRYPT_DECRYPT`。  
+ KMS キーの削除をスケジュールすると、KMS キーのキーステータスが**削除保留中**に変わり、KMS キーを[暗号化オペレーション](kms-cryptography.md#cryptographic-operations)で使用できなくなります。ただし、削除をスケジュールしても、 外のパブリックキーには影響しません AWS KMS。パブリックキーを持つユーザーは、引き続きそのパブリックキーを使ってメッセージを暗号化できます。キーの状態が変更されたという通知は受信しません。削除がキャンセルされない限り、パブリックキーで作成された暗号文は復号できません。
+ 削除保留中の KMS キーを使用する試みを検出するアラーム、ログ、その他の戦略では、 AWS KMSの外部でのパブリックキーの使用は検出できません。
+ KMS キーが削除されると、その KMS キーを含むすべての AWS KMS アクションは失敗します。ただし、パブリックキーを持つユーザーは、引き続きそのパブリックキーを使ってメッセージを暗号化できます。これらの暗号文は復号できません。
キーの使用方法が `ENCRYPT_DECRYPT` である非対称 KMS キーを削除する必要がある場合は、CloudTrail ログエントリを使用して、パブリックキーがダウンロードおよび共有されているかどうかを確認します。完了している場合は、パブリックキーが AWS KMSの外部で使用されていないことを確認します。次に、削除するのではなく、[KMS キーを無効にする](enabling-keys.md)ことを検討します。  
非対称 KMS キーの削除によって生じるリスクは、インポートされたキーマテリアルを含む非対称 KMS キーであれば軽減されます。　 詳細については、「[Deleting KMS keys with imported key material](#import-delete-key)」を参照してください。

** マルチリージョンキーの削除**  
プライマリキーを削除するには、すべてのレプリカキーの削除をスケジュールし、レプリカキーが削除されるまで待機する必要があります。プライマリキーの削除に必要な待機時間は、最後のレプリカキーが削除された時点から始まります。レプリカキーを削除せずに特定のリージョンからプライマリキーを削除する必要がある場合は、[プライマリリージョンの更新](multi-region-update.md)を使用して、プライマリキーをレプリカキーに変更します。  
レプリカキーはいつでも削除することができます。これは、他の KMS キーのキーステータスに依存しません。誤ってレプリカキーを削除した場合は、同じリージョンで同じプライマリキーをレプリケートすることで再度作成できます。作成した新しいレプリカキーは、元のレプリカキーと同じ[共有プロパティ](multi-region-keys-overview.md#mrk-sync-properties)を有します。

** インポートされたキーマテリアルを含む KMS キーの削除**  
キーマテリアルがインポートされた KMS キーのキーマテリアルの削除は一時的で、元に戻すことができます。キーを復元するには、キーマテリアルを再インポートします。  
一方、KMS キーの削除は破棄できません。[キーの削除をスケジュール](#deleting-keys-how-it-works)し、必要な待機期間が終了すると、 は KMS キー、そのキーマテリアル、および KMS キーに関連付けられたすべてのメタデータを AWS KMS 永続的および元に戻すことなく削除します。  
ただし、キーマテリアルがインポートされた KMS キーを削除した場合のリスクと結果は、KMS キーのタイプ (「キー仕様」) によって異なります。  
+ 対称暗号化キー – 対称暗号化 KMS キーを削除すると、そのキーで暗号化された残りの暗号文はすべて回復できなくなります。同じキーマテリアルを使用しても、削除された対称暗号化 KMS キーの暗号文を復号できる新しい対称暗号化 KMS キーを作成することはできません。各 KMS キーに固有のメタデータは、各対称暗号文に暗号的にバインドされます。このセキュリティ機能により、対称暗号文を暗号化した KMS キーのみで復号できることが保証されますが、同等の KMS キーを再作成することができなくなっています。
+ 非対称キーと HMAC キー — 元のキーマテリアルがある場合は、削除された非対称キーまたは HMAC KMS キーと同じ暗号化プロパティを持つ新しい KMS キーを作成できます。 は、一意のセキュリティ機能を含まない標準の RSA 暗号文と署名、ECC 署名、および HMAC タグ AWS KMS を生成します。また、HMAC キーまたは非対称キーペアのプライベートキーを AWSの外部で使用できます。

  同じ非対称キーマテリアルまたは HMAC キーマテリアルを使用して作成した新しい KMS キーには、異なるキー識別子が割り当てられます。新しいキーポリシーを作成し、エイリアスをすべて再作成し、新しいキーを参照するように既存の IAM ポリシーとアクセス許可を更新する必要があります。

**キーストアからの KMS AWS CloudHSM キーの削除**  
 AWS CloudHSM キーストアからの KMS キーの削除をスケジュールすると、[そのキーの状態](key-state.md)は**削除保留中**に変わります。KMS キーは、[カスタムキーストアの切断](disconnect-keystore.md)によって KMS キーが使用できなくなった場合でも、待期期間中を通して**削除保留中**ステータスを維持します。これにより、待機期間中はいつでも KMS キーの削除をキャンセルできます。  
待機期間が終了すると、 は KMS キー AWS KMS を削除します AWS KMS。次に AWS KMS 、 は、関連付けられた AWS CloudHSM クラスターからキーマテリアルを削除するために最善を尽くします。キーストアが AWS KMSから切断されるなど、 AWS KMS でキーマテリアルを削除できない場合は、クラスターから手動で[孤立したキーマテリアルを削除](fix-keystore.md#fix-keystore-orphaned-key)できます。  
AWS KMS は、クラスターバックアップからキーマテリアルを削除しません。から KMS キーを削除 AWS KMS し、そのキーマテリアルを AWS CloudHSM クラスターから削除した場合でも、バックアップから作成されたクラスターには削除されたキーマテリアルが含まれている可能性があります。キーマテリアルを恒久的に削除するには、[DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) オペレーションを使用してその KMS キーの作成日を特定します。次に、キーのマテリアルを含む可能性のある [すべてのクラスタバックアップを削除します](https://docs.aws.amazon.com/cloudhsm/latest/userguide/delete-restore-backup.html) 。  
 AWS CloudHSM キーストアからの KMS キーの削除をスケジュールすると、KMS キーはすぐに使用できなくなります (結果整合性の影響を受ける）。ただし、KMS キーで保護された[データキー](data-keys.md)で暗号化されているリソースは、KMS キーが (データキーの復号などで) 再度使用されるまで、その影響を受けません。この問題は AWS のサービスに影響します。その多くは、データキーを使用してリソースを保護します。詳細については、「[使用できない KMS キーがデータキーに及ぼす影響](unusable-kms-keys.md)」を参照してください。

** 外部キーストアからの KMS キーの削除**  
外部キーストアから KMS キーを削除しても、キーマテリアルとして使用されていた[外部キー](keystore-external.md#concept-external-key)には影響しません。  
外部キーストアの KMS キーの削除をスケジュールすると、[キーステータス](key-state.md)が**[Pending deletion]** (削除保留中) に変わります。KMS キーは、[外部キーストアの切断](xks-connect-disconnect.md)によって KMS キーが使用できなくなった場合でも、待期期間中を通して**[Pending deletion]** (削除保留中) ステータスを維持します。これにより、待機期間中はいつでも KMS キーの削除をキャンセルできます。待機期間が終了すると、 は KMS キー AWS KMS を削除します AWS KMS。  
外部キーストアの KMS キーの削除をスケジュールすると、その KMS キーは直ちに使用できなくなります (結果整合性の影響を受けます)。ただし、KMS キーで保護された[データキー](data-keys.md)で暗号化されているリソースは、KMS キーが (データキーの復号などで) 再度使用されるまで、その影響を受けません。この問題は AWS のサービスに影響します。その多くが、リソースを保護するためにデータキーを使用しています。詳細については、「[使用できない KMS キーがデータキーに及ぼす影響](unusable-kms-keys.md)」を参照してください。

# キー削除へのアクセスを制御する
<a name="deleting-keys-adding-permission"></a>

IAM ポリシーを使用して AWS KMS アクセス許可を許可する場合、管理者アクセス (`"Action": "*"`) または AWS KMS フルアクセス (`"Action": "kms:*"`) を持つ AWS IAM アイデンティティは、KMS キーの削除をスケジュールおよびキャンセルすることを既に許可されています。キー管理者がキーポリシーでキーの削除をスケジュールおよびキャンセルできるようにするには、 AWS KMS コンソールまたは AWS KMS API を使用します。

通常、キーの削除をスケジュールおよびキャンセルするための、アクセス許可を持っているのは、キー管理者のみです。ただし、これらのアクセス許可は、`kms:ScheduleKeyDeletion` と `kms:CancelKeyDeletion` のアクセス許可をキーポリシーまたは IAM ポリシーに追加すれば、他の IAM ID に付与することができます。[`kms:ScheduleKeyDeletionPendingWindowInDays`](conditions-kms.md#conditions-kms-schedule-key-deletion-pending-window-in-days)条件キーを使用して、プリンシパルが [ScheduleKeyDeletion](https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html) リクエストの `PendingWindowInDays` パラメータに指定できる値をさらに制限することもできます。

## キー管理者に、キー削除のスケジュールおよびキャンセルを許可する
<a name="allow-key-deletion"></a>

### AWS KMS コンソールの使用
<a name="deleting-keys-adding-permission-console"></a>

キー管理者に、キーの削除をスケジュールおよびキャンセルするためのアクセス許可を付与するには。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) で AWS Key Management Service (AWS KMS) コンソールを開きます。

1. を変更するには AWS リージョン、ページの右上隅にあるリージョンセレクターを使用します。

1. ナビゲーションペインで、**[カスタマーマネージドキー]** を選択します。

1. アクセス許可を変更する KMS キーのエイリアスまたはキー ID を選択します。

1. **[Key policy]** (キーポリシー) タブを選択します。

1. 次のステップは、キーポリシーのデフォルトビューとポリシービューで異なります。既定のビューは、既定のコンソールキーポリシーを使用している場合のみ、使用できます。使用していない場合は、ポリシービューのみを使用できます。

   既定のビューを使用できる場合は、**[Key policy]** (キーポリシー) タブに **[Switch to policy view]** (ポリシービューに切り替え) または **[Switch to default view]** (既定のビューに切り替え) のいずれかのボタンが表示されます。
   + 既定のビュー:

     1. **[Key deletion]** (キーの削除) で、**[Allow key administrators to delete this key]** (キー管理者にこのキーの削除を許可する) を選択します。
   + ポリシービュー:

     1. **[編集]** を選択します。

     1. キー管理者向けのポリシーステートメントで、`Action` 要素に `kms:ScheduleKeyDeletion` と `kms:CancelKeyDeletion` のアクセス許可を追加します。

        ```
        {
          "Sid": "Allow access for Key Administrators",
          "Effect": "Allow",
          "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"},
          "Action": [
            "kms:Create*",
            "kms:Describe*",
            "kms:Enable*",
            "kms:List*",
            "kms:Put*",
            "kms:Update*",
            "kms:Revoke*",
            "kms:Disable*",
            "kms:Get*",
            "kms:Delete*",
            "kms:ScheduleKeyDeletion",
            "kms:CancelKeyDeletion"
          ],
          "Resource": "*"
        }
        ```

     1. **[Save changes]** (変更の保存) をクリックします。

### AWS KMS API の使用
<a name="deleting-keys-adding-permission-cli"></a>

を使用して AWS Command Line Interface 、キーの削除をスケジュールおよびキャンセルするためのアクセス許可を追加できます。

**キーの削除をスケジュールおよびキャンセルするアクセス許可を追加するには**

1.  [https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html) コマンドを使用して、既存のキーポリシーを取得し、ポリシードキュメントをファイルに保存します。

1. 任意のテキストエディタでポリシードキュメントを開きます。キー管理者向けのポリシーステートメントで、`kms:ScheduleKeyDeletion` と `kms:CancelKeyDeletion` のアクセス許可を追加します。次の例は、これらの 2 つのアクセス許可を持つポリシーステートメントを示しています。

   ```
   {
     "Sid": "Allow access for Key Administrators",
     "Effect": "Allow",
     "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"},
     "Action": [
       "kms:Create*",
       "kms:Describe*",
       "kms:Enable*",
       "kms:List*",
       "kms:Put*",
       "kms:Update*",
       "kms:Revoke*",
       "kms:Disable*",
       "kms:Get*",
       "kms:Delete*",
       "kms:ScheduleKeyDeletion",
       "kms:CancelKeyDeletion"
     ],
     "Resource": "*"
   }
   ```

1. [https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html) コマンドを使用して、キーポリシーを KMS キーに適用します。

# キー削除をスケジュールする
<a name="deleting-keys-scheduling-key-deletion"></a>

次の手順では、 および AWS KMS API AWS KMS を使用して、 でキー削除をスケジュール AWS マネジメントコンソール し、 AWS KMS keys (KMS キー) のキー削除をキャンセルする方法について説明します。

**警告**  
KMS キーを削除することは破壊的であり、リスクを伴います。KMS キーが不要であり、今後も使用しないことが確実である場合にのみ実行してください。不明な場合は、削除するのではなく [KMS キーを無効化する](enabling-keys.md)べきです。

KMS キーを削除する前に、削除するための許可を取得する必要があります。これらのアクセス許可をキー管理者に付与する方法の詳細は、「[キー削除へのアクセスを制御する](deleting-keys-adding-permission.md)」を参照してください。[`kms:ScheduleKeyDeletionPendingWindowInDays`](conditions-kms.md#conditions-kms-schedule-key-deletion-pending-window-in-days)条件キーを使用して、最小待機期間を設定するなど、待機期間をさらに制限することもできます。

AWS KMS は、KMS キー[の削除をスケジュール](ct-schedule-key-deletion.md)するとき、および [KMS キーが実際に削除](ct-delete-key.md)されたときに AWS CloudTrail 、ログにエントリを記録します。

## AWS KMS コンソールの使用
<a name="deleting-keys-scheduling-key-deletion-console"></a>

では AWS マネジメントコンソール、複数の KMS キーの削除を一度にスケジュールおよびキャンセルできます。

**キーの削除をスケジュールするには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) で AWS Key Management Service (AWS KMS) コンソールを開きます。

1. を変更するには AWS リージョン、ページの右上隅にあるリージョンセレクターを使用します。

1. ナビゲーションペインで、**[カスタマーマネージドキー]** を選択します。

   [AWS マネージドキー](concepts.md#aws-managed-key) または [AWS 所有のキー](concepts.md#aws-owned-key) の削除をスケジュールすることはできません。

1. 削除する KMS キーの横にあるチェックボックスを選択します。

1. **[Key actions]** (キーのアクション)、**[Schedule key deletion]** (キーの削除をスケジュール) の順に選択します。

1. 待機中に、警告、および削除のキャンセルに関する情報を読み、検討してください。削除をキャンセルする場合はページ下部の [**Cancel (キャンセル)**] を選択します。

1. **[Waiting period (in days)]** (待機期間 (日数)) に、日数として 7～30 の値を入力します。

1. 削除する KMS キーを確認します。

1. **[Confirm you want to schedule this key for deletion in *<number of days>* days]** (このキーを <日数> 日後に削除するスケジュールを確定する) の横にあるチェックボックスをオンにします。

1. **[Schedule deletion]** (削除をスケジュールする) を選択します。

KMS キーのステータスが [**Pending deletion**] (削除保留中) に変わります。

## AWS KMS API の使用
<a name="deleting-keys-scheduling-key-deletion-cli"></a>

次の例のように、[https://docs.aws.amazon.com/cli/latest/reference/kms/schedule-key-deletion.html](https://docs.aws.amazon.com/cli/latest/reference/kms/schedule-key-deletion.html) コマンドを使用して、[カスタマーマネージドキー](concepts.md#customer-mgn-key)からキーの削除をスケジュールします。

 AWS マネージドキー または の削除をスケジュールすることはできません AWS 所有のキー。

```
$ aws kms schedule-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --pending-window-in-days 10
```

正常に使用すると、 は次の例に示す出力のような出力 AWS CLI を返します。

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "DeletionDate": 1598304792.0,
    "KeyState": "PendingDeletion",
    "PendingWindowInDays": 10
}
```

# キー削除をキャンセルする
<a name="deleting-keys-cancelling-key-deletion"></a>

[KMS キーの削除をスケジュール](deleting-keys-scheduling-key-deletion.md)した後、キー削除がまだ[削除待ち](key-state.md)の状態であればキー削除をキャンセルすることができます。キー削除は、 AWS KMS コンソールでキャンセルするか、もしくは [CancelKeyDeletion](https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html) オペレーションを使用してキャンセルできます。削除待ち状態の KMS キーの削除をキャンセルすると、その KMS キーのキー状態は `Disabled` になります。KMS キーの有効化の詳細については、「[キーの有効化と無効化](enabling-keys.md)」を参照してください。

## AWS KMS コンソールの使用
<a name="console-cancel-deletion"></a>

**キーの削除をキャンセルするには**

1. [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) で AWS KMS コンソールを開きます。

1. を変更するには AWS リージョン、ページの右上隅にあるリージョンセレクターを使用します。

1. ナビゲーションペインで、**[カスタマーマネージドキー]** を選択します。

1. 復元する KMS キーの横にあるチェックボックスをオンにします。

1. **[Key actions]** (キーのアクション)、**[Cancel key deletion]** (キーの削除をキャンセル) の順に選択します。

KMS キーのステータスが [**Pending deletion**] (削除保留中) から [**Disabled**] (無効) に変わります。KMS キーを使用するには、[有効化する](enabling-keys.md)必要があります。

## AWS KMS API の使用
<a name="cli-cancel-deletion"></a>

次の例 AWS CLI に示すように、 [https://docs.aws.amazon.com/cli/latest/reference/kms/cancel-key-deletion.html](https://docs.aws.amazon.com/cli/latest/reference/kms/cancel-key-deletion.html) コマンドを使用して からのキーの削除をキャンセルします。

```
$ aws kms cancel-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```

正常に使用すると、 は次の例に示す出力のような出力 AWS CLI を返します。

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
}
```

KMS キーのステータスが [**Pending Deletion**] (削除保留中) から [**Disabled**] (無効) に変わります。KMS キーを使用するには、[有効化する](enabling-keys.md)必要があります。

# 削除待ち状態の KMS キーの使用を検出するアラームの作成
<a name="deleting-keys-creating-cloudwatch-alarm"></a>

 AWS CloudTrail、Amazon CloudWatch Logs、Amazon Simple Notification Service (Amazon SNS) の機能を組み合わせて、アカウント内の誰かが削除保留中の KMS キーを使用しようとしたときに通知する Amazon CloudWatch アラームを作成できます。この通知を受け取った場合は、KMS キーの削除をキャンセルして、削除する決定を検討し直す必要があります。

以下の手順では、「`Key ARN is pending deletion`」エラーメッセージが CloudTrail ログファイルに書き込まれるたびに通知を受信するアラームの作成方法について説明します。このエラーメッセージは、[暗号化オペレーション](kms-cryptography.md#cryptographic-operations)で、ユーザーまたはアプリケーションが KMS キーの使用を試みたことを示します。この通知はエラーメッセージにリンクされているため、`ListKeys`、`CancelKeyDeletion`、`PutKeyPolicy` などの削除保留中の KMS キーで許可される API オペレーションを使用するときにはトリガーされません。このエラーメッセージを返す AWS KMS API オペレーションのリストを確認するには、「」を参照してください[キーの AWS KMS キーステータス](key-state.md)。

受信した E メール通知には、KMS キーや暗号化オペレーションは表示されません。この情報は、[CloudTrail ログ](logging-using-cloudtrail.md)で見つけることができます。その代わりに、アラームの状態が [**OK**] から [**アラーム**] に変わったことが E メールで報告されます。CloudWatch アラームと、状態の変更の詳細については、「Amazon CloudWatch ユーザーガイド」の「[Amazon CloudWatch アラームの使用](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)」を参照してください。

**警告**  
この Amazon CloudWatch アラームは、 AWS KMSの外部にある非対称 KMS キーの公開キーの使用は検出できません。公開キーの暗号化に使用される非対称 KMS キーを削除する際の特別なリスク (復号できない暗号テキストの作成など) の詳細については、[Deleting asymmetric KMS keys](deleting-keys.md#deleting-asymmetric-cmks) を参照してください。

この手順では、削除保留中のインスタンスを検索する CloudWatch ロググループのメトリクススフィルタを作成します。次に、ロググループのメトリクスに基づいて CloudWatch アラームを作成します。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「[フィルターを使用したログイベントからのメトリクスの作成](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html)」を参照してください。

1. CloudTrail ログを解析する CloudWatch メトリクススフィルターを作成します。

   以下の必須値を使用して、「[ロググループのメトリクススフィルターを作成する](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CreateMetricFilterProcedure.html)」の手順に従ってください。他のフィールドについては、デフォルト値を受け入れ、必要に応じて名前を指定します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/kms/latest/developerguide/deleting-keys-creating-cloudwatch-alarm.html)

1. ステップ 1 で作成したメトリクスフィルターに基づいて CloudWatch アラームを作成します。

   以下の必須値を使用して、「[ロググループのメトリクスフィルターに基づく CloudWatch アラームの作成](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Alarm-On-Logs.html)」の手順に従ってください。他のフィールドについては、デフォルト値を受け入れ、必要に応じて名前を指定します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/kms/latest/developerguide/deleting-keys-creating-cloudwatch-alarm.html)

この手順を完了すると、新しい CloudWatch アラームが `ALARM` 状態に入るたびに通知が届きます。このアラームの通知を受信した場合は、データの暗号化または復号化に削除が予定されている KMS キーがまだ必要であることを意味します。その場合は、[KMS キーの削除をキャンセルし](deleting-keys-scheduling-key-deletion.md)、削除する決定を検討し直す必要があります。

# KMS キーの過去の使用状況を確認する
<a name="deleting-keys-determining-usage"></a>

KMS キーを削除する前に、そのキーで暗号化された暗号文の数を知りたい場合があります。 AWS KMS はこの情報を保存せず、暗号文も保存しません。KMS キーの過去の使用状況を把握することで、後で必要になるかどうかを判断できる場合があります。このトピックでは、KMS キーの過去の使用状況の確認に役立つ複数の戦略を示します。

**警告**  
過去および実際の使用状況を判断するためのこれらの戦略は、 AWS ユーザーと AWS KMS オペレーションに対してのみ有効です。 AWS KMSの外部で非対称 KMS キーの公開キーの使用を検出することはできません。公開キーの暗号化に使用される非対称 KMS キーを削除する際の特別なリスク (復号できない暗号テキストの作成など) の詳細については、[Deleting asymmetric KMS keys](deleting-keys.md#deleting-asymmetric-cmks) を参照してください。

**Topics**
+ [KMS キーのアクセス許可内容を確認し、潜在的な使用の範囲を判断する](#deleting-keys-usage-key-permissions)
+ [AWS CloudTrail ログを調べて実際の使用状況を確認する](#deleting-keys-usage-cloudtrail)

## KMS キーのアクセス許可内容を確認し、潜在的な使用の範囲を判断する
<a name="deleting-keys-usage-key-permissions"></a>

現在、KMS キーにアクセスできるユーザーやアプリケーションを明らかにすることで、KMS キーが使用されている範囲や、今後必要かどうかを判断できる場合があります。現在、KMS キーにアクセスできるユーザーやアプリケーションを明らかにする方法については、[へのアクセスの確認 AWS KMS keys](determining-access.md) を参照してください。

## AWS CloudTrail ログを調べて実際の使用状況を確認する
<a name="deleting-keys-usage-cloudtrail"></a>

KMS キーの使用履歴を使用して、特定の KMS キーで暗号化された暗号化テキストがあるかどうかを判断できます。

すべての AWS KMS API アクティビティは AWS CloudTrail ログファイルに記録されます。KMS キーがあるリージョンで [ CloudTrail 証跡を作成](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)した場合は、CloudTrail ログファイルを調べて、特定の KMS キーのすべての AWS KMS API アクティビティの履歴を表示できます。トレイルを持っていない場合でも、 [CloudTrail イベント履歴で最近のイベント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)を表示できます。が CloudTrail AWS KMS を使用する方法の詳細については、「」を参照してください[を使用した AWS KMS API コールのログ記録 AWS CloudTrail](logging-using-cloudtrail.md)。

次の例は、KMS キーを使用して、Amazon Simple Storage Service (Amazon S3) に保存されているオブジェクトを保護するときに生成される CloudTrail ログエントリを示しています。この例では、[KMS キー (SSE-KMS) を使用したサーバー側の暗号化を使用してデータを保護し](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)、オブジェクトを Amazon S3 にアップロードします。SSE-KMS を使用して Amazon S3 にオブジェクトをアップロードする場合は、オブジェクトの保護に使用する KMS キーを指定します。Amazon S3 は AWS KMS [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)オペレーションを使用してオブジェクトの一意のデータキーをリクエストし、このリクエストイベントは CloudTrail に次のようなエントリで記録されます。

```
{
  "eventVersion": "1.02",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user",
    "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user",
    "accountId": "111122223333",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2015-09-10T23:12:48Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AROACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam::111122223333:role/Admins",
        "accountId": "111122223333",
        "userName": "Admins"
      }
    },
    "invokedBy": "internal.amazonaws.com"
  },
  "eventTime": "2015-09-10T23:58:18Z",
  "eventSource": "kms.amazonaws.com",
  "eventName": "GenerateDataKey",
  "awsRegion": "us-west-2",
  "sourceIPAddress": "internal.amazonaws.com",
  "userAgent": "internal.amazonaws.com",
  "requestParameters": {
    "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"},
    "keySpec": "AES_256",
    "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
  },
  "responseElements": null,
  "requestID": "cea04450-5817-11e5-85aa-97ce46071236",
  "eventID": "80721262-21a5-49b9-8b63-28740e7ce9c9",
  "readOnly": true,
  "resources": [{
    "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "accountId": "111122223333"
  }],
  "eventType": "AwsApiCall",
  "recipientAccountId": "111122223333"
}
```

後で Amazon S3 からこのオブジェクトをダウンロードすると、Amazon S3 は指定された KMS キーを使用してオブジェクトのデータキーを復号 AWS KMS する`Decrypt`リクエストを に送信します。これを行うと、CloudTrail ログファイルに次のようなエントリが含まれます。

```
{
  "eventVersion": "1.02",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user",
    "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user",
    "accountId": "111122223333",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2015-09-10T23:12:48Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AROACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam::111122223333:role/Admins",
        "accountId": "111122223333",
        "userName": "Admins"
      }
    },
    "invokedBy": "internal.amazonaws.com"
  },
  "eventTime": "2015-09-10T23:58:39Z",
  "eventSource": "kms.amazonaws.com",
  "eventName": "Decrypt",
  "awsRegion": "us-west-2",
  "sourceIPAddress": "internal.amazonaws.com",
  "userAgent": "internal.amazonaws.com",
  "requestParameters": {
    "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}},
  "responseElements": null,
  "requestID": "db750745-5817-11e5-93a6-5b87e27d91a0",
  "eventID": "ae551b19-8a09-4cfc-a249-205ddba330e3",
  "readOnly": true,
  "resources": [{
    "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "accountId": "111122223333"
  }],
  "eventType": "AwsApiCall",
  "recipientAccountId": "111122223333"
}
```

すべての AWS KMS API アクティビティは CloudTrail によってログに記録されます。これらのログエントリを評価すると、特定の KMS キーの過去の使用状況を明らかにし、その KMS キーを削除する必要があるかどうかを判断できる場合があります。

CloudTrail ログファイルに AWS KMS API アクティビティがどのように表示されるかのその他の例については、「」を参照してください[を使用した AWS KMS API コールのログ記録 AWS CloudTrail](logging-using-cloudtrail.md)。CloudTrail の詳細については、[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)を参照してください。

# インポートされたキーマテリアルを削除する
<a name="importing-keys-delete-key-material"></a>

インポートされたキーマテリアルは、KMS キーからいつでも削除できます。また、インポートされたキーマテリアルの有効期限が切れると、 はキーマテリアル AWS KMS を削除します。どちらの場合も、キーマテリアルが削除されると KMS キーの[キーの状態](key-state.md)が「インポート保留中」に変わり、KMS キーは、暗号化オペレーションで使用することはできなくなります。

対称暗号化キーには、複数のキーマテリアルを関連付けることができます。そのようなキーに対して、KMS は各キーマテリアルに一意の識別子を割り当てます。[ListKeyRotations](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListKeyRotations.html) API を使用して、これらのキーマテリアル識別子と対応するキーマテリアルの状態を表示できます ([RotationsListEntry](https://docs.aws.amazon.com/kms/latest/APIReference/API_RotationsListEntry.html)」を参照）。キーマテリアルの状態が `PENDING_ROTATION`または の場合、キーマテリアルが KMS キーに永続的に関連付けられていない`PENDING_MULTI_REGION_IMPORT_AND_ROTATION`ことを示します。永続的に関連付けられたキーマテリアルの削除または有効期限により、キーの状態が*インポート保留中*に変更されます。[DeleteImportedKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteImportedKeyMaterial.html) API の `key-material-id` パラメータを使用して識別子を指定することで、特定のキーマテリアルを削除できます。

**マルチリージョンキーに関する考慮事項**
+ `PENDING_ROTATION` または `PENDING_MULTI_REGION_IMPORT_AND_ROTATION`状態のプライマリリージョンキーのキーマテリアルを削除すると、レプリカリージョンキーのキーマテリアルも削除されます。
+ プライマリまたはレプリカリージョンキーでキーマテリアルを削除した場合、その特定のキーのみが影響を受け、その他の関連するマルチリージョンキーは変更されません。すべての永続的に関連付けられたキーマテリアルを持つプライマリまたはレプリカリージョンキーは、暗号化オペレーションで引き続き使用できます。

**警告**  
`key-material-id` パラメータはオプションです。指定しない場合、 AWS KMS は現在のキーマテリアルを削除します。

KMS キーの無効化とアクセス許可の取り消しに加えて、キーマテリアルの削除は、KMS キーの使用をすぐに、しかし一時的に停止する戦略として使用できます。これとは対照的に、キーマテリアルがインポートされた KMS キーの削除をスケジュールすることでも、KMS キーの使用をすぐに停止できます。ただし、待機期間中に削除をキャンセルしないと、KMS キー、関連付けられたキーマテリアル、およびすべてのキーメタデータが完全に削除されます。詳細については、「[Deleting KMS keys with imported key material](deleting-keys.md#import-delete-key)」を参照してください。

キーマテリアルを削除するには、 AWS KMS コンソールまたは [DeleteImportedKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteImportedKeyMaterial.html) API オペレーションを使用します。 は、[インポートされたキーマテリアルを削除する](ct-deleteimportedkeymaterial.md)とき、および が[AWS KMS 期限切れのキーマテリアルを削除する](ct-deleteexpiredkeymaterial.md)ときに AWS CloudTrail 、ログにエントリ AWS KMS を記録します。

**キーマテリアルの削除が AWS サービスに与える影響**  
キーマテリアルを削除すると、KMS キーは直ちに使用できなくなります (最終的な一貫性に影響します)。ただし、KMS キーで保護された[データキー](data-keys.md)により暗号化されたリソースは、KMS キーがデータキーの復号化などで再び使用されるまでは影響を受けません。この問題は AWS のサービスに影響します。その多くは、データキーを使用してリソースを保護します。詳細については、「[使用できない KMS キーがデータキーに及ぼす影響](unusable-kms-keys.md)」を参照してください。

## AWS KMS コンソールの使用
<a name="importing-keys-delete-key-material-console"></a>

 AWS KMS コンソールを使用して、キーマテリアルを削除できます。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) で AWS Key Management Service (AWS KMS) コンソールを開きます。

1. を変更するには AWS リージョン、ページの右上隅にあるリージョンセレクターを使用します。

1. ナビゲーションペインで、**[カスタマーマネージドキー]** を選択します。

1. 次のいずれかを行います。
   + キーマテリアルがインポートされた KMS キーのチェックボックスをオンにします。[**キーのアクション**]、[**キーマテリアルの削除**] を選択します。複数のキーマテリアルが関連付けられている対称暗号化キーの場合、現在のキーマテリアルが削除されます。
   + インポートされたキーマテリアルを持つ対称暗号化 KMS キーの場合は、KMS キーのエイリアスまたはキー ID を選択します。**[キーマテリアルとローテーション]** タブを選択します。キーマテリアルテーブルには、キーに関連付けられたすべてのキーマテリアルが一覧表示されます。削除するキーマテリアルに対応する行の **[アクション]** メニューから **[キーマテリアルの削除]** を選択します。

1. キーマテリアルを削除することを確認してから、[**キーマテリアルの削除**] を選択します。KMS キーのステータスに対応するその[キーステータス](key-state.md)は、**インポート保留中**に変わります。削除されたキーマテリアルが `PENDING_ROTATION` 状態の場合、KMS キーのステータスは変更されません。

## AWS KMS API の使用
<a name="importing-keys-delete-key-material-api"></a>

[AWS KMS API](https://docs.aws.amazon.com/kms/latest/APIReference/) を使用して、キーマテリアルを削除するには、[DeleteImportedKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteImportedKeyMaterial.html) リクエストを送信します。次の例では、[AWS CLI](https://aws.amazon.com/cli/) を使用してこのオペレーションを行う方法を示します。

`1234abcd-12ab-34cd-56ef-1234567890ab` を、削除する予定のキーマテリアルを持つ KMS キーのキー ID と置き換えます。KMS キーのキー ID または ARN を使用できますが、このオペレーションにエイリアスを使用することはできません。次のコマンドは、キーに関連付けられた唯一のキーマテリアルである可能性がある現在のキーマテリアルを削除します。

```
$ aws kms delete-imported-key-material --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```

特定のキーマテリアルを削除するには、`key-material-id` パラメータを使用して識別されたキーマテリアルを指定します。削除するキーマテリアルのある識別子を `123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0` で置き換えます。

```
$ aws kms delete-imported-key-material --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --key-material-id 123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0
```