

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

# 予定されている AWS KMS キーの削除を監視して修正する
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys"></a>

*Amazon Web Services、Mikesh Khanal、Ramya Pulipaka*

## 概要
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-summary"></a>

Amazon Web Services (AWS) クラウドでは、AWS キー管理サービス (AWS KMS) キーを削除するとデータが失われる可能性があります。削除することで、キーマテリアルとAWS KMS キーに関連付けられているすべてのメタデータを削除し、元に戻すことはできません。AWS KMS キーを削除すると、その AWS KMS キーで暗号化されたデータを復号できなくなります。これは、そのデータを回復することがきなくなります。

このパターンは、アプリケーションまたはユーザーが AWS KMS キーの削除をスケジュールしたときに通知するモニタリングを設定します。この通知を受け取った場合は、AWS KMS キーの削除をキャンセルして、削除する決定を検討し直す必要があります。このパターンでは、AWS Systems Manager Automationランブック「[AWSConfigRemediation-CancelKeyDeletion](https://docs.aws.amazon.com/systems-manager-automation-runbooks/latest/userguide/automation-aws-cancel-key-deletion.html)」 を使用して、AWS KMS キーの削除を簡単にキャンセルできます。

**注記**  
パターンの CloudFormation テンプレートは、AWS KMS キーの削除を監視したいすべての AWS リージョンにデプロイする必要があります。

## 前提条件と制限事項
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-prereqs"></a>

**前提条件**
+ アクティブな AWS アカウント。
+ 以下の AWS サービスの理解 
  + Amazon EventBridge
  + AWS KMS
  + Amazon Simple Notiﬁcation Service (Amazon SNS)
  + AWS Systems Manager

**制限事項**
+ ソリューションをカスタマイズするには、AWS CloudFormation テンプレートと、このパターンで使用される AWS サービスに関する知識が必要です。
+ 現在、このソリューションはデフォルトのイベントバスを使用しており、要件に応じてカスタマイズできます。カスタムイベントバスの詳細については、「[AWS ドキュメント](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-bus.html)」を参照してください。

## アーキテクチャ
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-architecture"></a>

**ターゲットテクノロジースタック**
+ Amazon EventBridge
+ AWS KMS
+ Amazon SNS
+ AWS Systems Manager
+ 以下を使用した自動化
  + AWS コマンドラインインターフェイス (AWS CLI)または AWS SDK
  + AWS CloudFormation スタック

**ターゲットアーキテクチャ**

![\[監視、警告、修復プロセスの5つのステップのダイアグラム。\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/patterns/images/pattern-img/56927ebc-bbf7-49cc-9ad2-b2e0dff1201c/images/32537a66-037a-45a1-af19-3bc7bc26eaa6.png)


1. AWS KMS キーの削除が予定されています。

1. 予定削除イベントは、EventBridge ルールによって評価されます。

1. EventBridge ルールは Amazon SNS トピックに関係します。

1. EventBridge ルールは、Systems Manager の自動化とランブックを開始します。

1. Runbook は削除がキャンセルされます。

**自動化とスケール**

CloudFormation スタックは、このソリューションが機能するために必要なすべてのリソースとサービスをデプロイします。このパターンは、単一のアカウントで個別に実行することも、複数の独立したアカウントまたは組織に対して AWS CloudFormation StackSets を使用して実行することもできます。

```
aws cloudformation create-stack --stack-name  <stack-name>\
    --template-body file://<Full-Path-of-file> \
    --parameters ParameterKey=,ParameterValue= \
    --capabilities CAPABILITY_NAMED_IAM
```

## ツール
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-tools"></a>

**ツール**
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/) – AWS CloudFormation は、Amazon Web Servicesリソースのモデル化とセットアップを支援するサービスであるため、これらのリソースの管理に費やす時間を減らし、AWS で実行されるアプリケーションに集中する時間を増やすことができます。CloudFormation テンプレートを使用して、AWS リージョンの AWS アカウントにスタックを作成できます。必要なすべての AWS リソースを説明するテンプレートが、CloudFormation がお客様に代わってこれらのリソースのプロビジョニングや設定を処理します。
+ [AWS CLI](https://docs.aws.amazon.com/cli/?id=docs_gateway) – AWS コマンドラインインターフェイス (AWS CLI)はオープンソースのツールであり、コマンドラインシェルのコマンドを使ってAWSサービスと対話することができます。
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html)— Amazon EventBridgeは、アプリケーションをさまざまなソースからのデータに接続するために使用できるサーバーレスのイベントバスサービスです。EventBridge は、お客様独自のアプリケーション、AWS のサービスからリアルタイムデータのストリームを配信し、そのデータを AWS Lambda などのターゲットにルーティングします。EventBridge は、イベント駆動型アーキテクチャを構築するプロセスを簡素化します。
+ [AWS KMS](https://aws.amazon.com/kms/) — AWS Key Management Service（AWS KMS）は、AWS KMS キー（データの暗号化に使用される暗号化キー）の作成と管理を容易にするマネージドサービスです。
+ [AWS SDK](https://aws.amazon.com/tools/?id=docs_gateway) — AWS ツールには SDK が含まれているため、選択したプログラミング言語で AWS 上のアプリケーションを開発および管理できます。
+ [Amazon SNS](https://aws.amazon.com/sns/) – Amazon Simple Notiﬁcation Service (Amazon SNS) は、パブリッシャーからサブスクライバー (または生産者から消費者) へのメッセージ配信を提供するマネージドサービスです。パブリッシャーは、論理アクセスポイントおよび通信チャネルであるトピックにメッセージを送信することで、受信者と非同期的に通信します。 
+  [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) – AWS Systems Manager は、 AWS でインフラストラクチャの表示と制御に使用できる AWS サービスです。Systems Manager コンソールを使用すると、AWS リソース全体の運用タスクを自動化できます。Systems Manager は、マネージドインスタンスをスキャンし、検出されたポリシー違反を報告（または是正措置を講じる）して、セキュリティとコンプライアンスを維持することができます。 

**コード**
+ プロジェクトの`alerting_ct_logs.yaml` CloudFormation テンプレートが添付されています。

## エピック
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-epics"></a>

### AWS アカウントを準備する
<a name="prepare-the-aws-account"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| AWS CLI をインストールして設定します。 | AWS CLI バージョン 2 をインストールします。次に、アイデンティティ、デフォルトの出力形式、AWS CLI が AWS とのやり取りに使用されるデフォルトの AWS リージョンのセキュリティ認証情報を設定します。アイデンティティーには、タスクを実行するために必要なアクセス許可があることが求められます。 | 開発者、セキュリティエンジニア | 

### AWS CloudFormation テンプレートをデプロイします
<a name="deploy-the-aws-cloudformation-template"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| CloudFormation テンプレートファイルをダウンロードします。 | 添付ファイルをコンピューターのローカルパスにダウンロードし、`alerting_ct_logs.yaml`テンプレートファイルを抽出します。 | 開発者、セキュリティエンジニア | 
| テンプレートをデプロイします。 | AWS アカウントプロファイルが設定されたターミナルウィンドウで、以下のコマンドを実行します。<pre>aws cloudformation create-stack --stack-name <stack_name> \<br />--capabilities <Value>  \<br />--template-body file://<Full_Path> \<br /> --parameters ParameterKey=DestinationEmailAddress,ParameterValue=<Value> \<br />ParameterKey=SNSTopicName,ParameterValue=<Value> \<br />ParameterKey=EnableRemediation ,ParameterValue=<Value> \<br />ParameterKey=AutomationAssumeRole,ParameterValue=<Value></pre>次のステップでは、テンプレートパラメータの値を入力します。 | 開発者、セキュリティエンジニア | 
| テンプレートパラメータを入力します。 | パラメータの必須値を入力します。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/patterns/monitor-and-remediate-scheduled-deletion-of-aws-kms-keys.html) | 開発者、セキュリティエンジニア | 

### サブスクリプションを確認
<a name="confirm-the-subscription"></a>


| タスク | 説明 | 必要なスキル | 
| --- | --- | --- | 
| サブスクリプションを確認します。 | E メールの受信トレイを確認し、Amazon SNS から受信する E メールメッセージで [**サブスクリプションの確認**] を選択します。ウェブブラウザが開き、サブスクリプション ID とともにサブスクリプションの確認を表示します。  | 開発者、セキュリティエンジニア | 

## 関連リソース
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-resources"></a>

**リファレンス**
+ [AWS サービス用のロールを作成する](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-rule.html)
+ [Amazon CloudWatch アラームを作成して、削除保留中の AWS KMS キー の使用を検出する](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys-creating-cloudwatch-alarm.html)

**チュートリアルと動画**
+ [Amazon EventBridge の開始方法](https://www.youtube.com/watch?v=ea9SCYDJIm4)
+ [Amazon EventBridgeのディープ・ダイブ](https://www.youtube.com/watch?v=28B4L1fnnGM)（AWS オンラインテックトーク）

**AWS ワークショップ**
+ [EventBridge ルールの使用](https://event-driven-architecture.workshop.aws/2-event-bridge/2-rules/rules.html)

## 追加情報
<a name="monitor-and-remediate-scheduled-deletion-of-aws-kms-keys-additional"></a>

以下のコードは、あらゆる AWS サービスの変更を監視して通知するようにソリューションを拡張する例を示しています。例には、定義済みのパターンとカスタムパターンが含まれます。詳細については、「[EventBridge でのイベントとイベントパターン」](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)を参照してください。

```
EventPattern:
        source:
        - aws.kms
        detail-type:
        - AWS API Call via CloudTrail
        detail:
          eventSource:
          - kms.amazonaws.com
          eventName:
          - ScheduleKeyDeletion
```

## アタッチメント
<a name="attachments-56927ebc-bbf7-49cc-9ad2-b2e0dff1201c"></a>

このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「[attachment.zip](samples/p-attach/56927ebc-bbf7-49cc-9ad2-b2e0dff1201c/attachments/attachment.zip)」