

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

# ロググループとログストリームの操作
<a name="Working-with-log-groups-and-streams"></a>

 ログストリームは、同じソースを共有する一連のログイベントです。CloudWatch Logs でのログの各ソースで各ログストリームが構成されます。

 ロググループは、保持、モニタリング、アクセス制御について同じ設定を共有するログストリームのグループです。ロググループを定義して、各グループに入れるストリームを指定できます。1 つのロググループに属することができるログストリーミングの数に制限はありません。

複数のアカウントとリージョンのログデータを統合する必要がある組織の場合、CloudWatch Logs Centralization を使用して、ロググループを中央アカウントに自動的にレプリケートできます。詳細については、「[クロスアカウントクロスリージョンログの一元化](CloudWatchLogs_Centralization.md)」を参照してください。

 このセクションの手順を使用して、ロググループおよびログストリームを処理できます。

## CloudWatch Logs にロググループを作成します。
<a name="Create-Log-Group"></a>

Amazon CloudWatch Logs ユーザーガイドで前のセクションに記載されている手順を使用して、CloudWatch Logs エージェントを Amazon EC2 インスタンスにインストールすると、そのプロセスの一環としてロググループが作成されます。CloudWatch コンソールで、直接ロググループを作成することもできます。

**ロググループを作成するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1.  ナビゲーションペインで、**ログ管理**を選択します。

1.  [**Actions (アクション)**] を選択し、[**Create log group (ロググループの作成)**] を選択します。

1.  ロググループの名前を入力し、[**Create log group (ロググループの作成)**] を選択します。

**ヒント**  
 ロググループ、ダッシュボード、アラームは、ナビゲーションペインの [***お気に入りと最近使ったコンテンツ***] メニューからお気に入りに登録できます。[***最近アクセスしたサービス***] 列で、お気に入りに登録するロググループにカーソルを合わせ、その横にある星の記号を選択します。

## ロググループへのログの送信
<a name="SendingLogData"></a>

CloudWatch Logs は、複数の AWS サービスからログイベントを自動的に受信します。次のいずれかの方法を使用して、CloudWatch Logs に他のログイベントを送信することもできます。
+ **CloudWatch エージェント** — 統合された CloudWatch エージェントは、メトリックとログの両方を CloudWatch Logs に送信できます。CloudWatch エージェントのインストールと使用については、「*Amazon CloudWatch ユーザーガイド*」の「[CloudWatch エージェントを使用して Amazon EC2 インスタンスとオンプレミスサーバーからメトリックとログを収集する](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)」を参照してください。
+ **AWS CLI** － [put-log-events](https://docs.aws.amazon.com/cli/latest/reference/logs/put-log-events.html) は、ログイベントのバッチを CloudWatch Logs にアップロードします。
+ **プログラムによる** – [PutLogEvents](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutLogEvents.html) API を使用して、ログイベントのバッチをプログラムにより CloudWatch Logs にアップロードできます。

## CloudWatch Logs に送信されたログデータを表示する
<a name="ViewingLogData"></a>

CloudWatch Logs エージェントによって CloudWatch Logs に送信されたログデータは、ストリームごとに表示およびスクロールできます。表示するログデータの時間範囲を指定できます。

**ログデータを表示するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**ログ管理**を選択します。

1. [**Log Groups**] で、ストリームを表示するロググループを選択します。

1. ロググループのリストで、表示するロググループの名前を選択します。

1. ログストリームのリストで、表示するログストリームの名前を選択します。

1. ログデータの表示方法を変更するには、次のいずれかを実行します。
   + 1 つのログイベントを展開するには、そのログイベントの横にある矢印を選択します。
   + すべてのログイベントを展開してプレーンテキストとして表示するには、ログイベントのリストの上で、[**Text**] を選択します。
   + ログイベントをフィルターするには、検索フィールドに目的の検索フィルターを入力します。詳細については、「[フィルターを使用したログイベントからのメトリクスの作成](MonitoringLogData.md)」を参照してください。
   + 指定した日時範囲のログデータを表示するには、検索フィルターの隣の日付と時刻の横にある矢印を選択します。日付と時間の範囲を指定するには、[**Absolute (絶対)**] を選択します。事前定義された分、時間、日数、または週数を選択するには、[**Relative (相対)**] を選択します。UTC とローカルタイムゾーンを切り替えることもできます。

# フィルターパターンを使用してログデータを検索する
<a name="SearchDataFilterPattern"></a>

ログデータは、[メトリクスフィルター、サブスクリプションフィルター、フィルターログイベント、およびライブテールのフィルターパターン構文](FilterAndPatternSyntax.md) を使用して検索できます。ロググループ内のすべてのログストリームを検索するか、 を使用して特定のログストリームを検索 AWS CLI することもできます。各検索を実行すると、最大で、見つかったデータの最初のページと、データの次のページを取得するか検索を続行するためのトークンが返されます。結果が返されない場合は、検索を続行できます。

クエリを実行する時間範囲を設定し、検索範囲を制限することができます。広い範囲から開始して関心のあるログ行が収まっている場所を確認した後、時間範囲を短縮し、関心のある時間範囲のログまでビューを絞り込みます。

ログから抽出したメトリクスを直接、対応するログに移動することもできます。

CloudWatch のクロスアカウントオブザーバビリティでモニタリングアカウントとして設定されたアカウントにサインインしている場合、このモニタリングアカウントにリンクされているソースアカウントのログイベントを検索してフィルタリングできます。詳細については、「[CloudWatch のクロスアカウントオブザーバビリティ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html)」を参照してください。

## コンソールを使用してログエントリを検索する
<a name="search-log-entries"></a>

コンソールを使用して、指定した基準を満たすログエントリを検索することができます。

**コンソールを使用してログを検索するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**ログ管理**を選択します。

1. [**ロググループ**] で、検索するログストリームを含むロググループの名前を選択します。

1. [**ログストリーム**] で、検索するログストリームの名前を選択します。

1. [**Log Events (ログイベント)**] で、使用するフィルター構文を入力します。

**コンソールを使用してすべてのログエントリで時間範囲を検索するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**ログ管理**を選択します。

1. [**ロググループ**] で、検索するログストリームを含むロググループの名前を選択します。

1. **[ロググループの検索]** を選択します。

1. [**Log Events (ログイベント)**] で、日付と時刻の範囲を選択し、フィルター構文を入力します。

## を使用してログエントリを検索する AWS CLI
<a name="search-log-entries-cli"></a>

を使用して、指定された条件を満たすログエントリを検索できます AWS CLI。

**を使用してログエントリを検索するには AWS CLI**  
コマンドプロンプトで、次の [filter-log-events](https://docs.aws.amazon.com/cli/latest/reference/logs/filter-log-events.html) コマンドを実行します。結果を指定したフィルターパターンに限定するには `--filter-pattern` を使用し、結果を指定したログストリームに限定するには `--log-stream-names` を使用します。

```
aws logs filter-log-events --log-group-name my-group [--log-stream-names LIST_OF_STREAMS_TO_SEARCH] [--filter-pattern VALID_METRIC_FILTER_PATTERN]
```

**を使用して特定の時間範囲のログエントリを検索するには AWS CLI**  
コマンドプロンプトで、次の [filter-log-events](https://docs.aws.amazon.com/cli/latest/reference/logs/filter-log-events.html) コマンドを実行します。

```
aws logs filter-log-events --log-group-name my-group [--log-stream-names LIST_OF_STREAMS_TO_SEARCH] [--start-time 1482197400000] [--end-time 1482217558365] [--filter-pattern VALID_METRIC_FILTER_PATTERN]
```

## メトリクスからログへのピボット
<a name="pivot-metrics-logs"></a>

コンソールの他の部分から、特定のログエントリに移動することができます。

**ダッシュボードウィジェットからログに移動するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**ダッシュボード**を選択します。

1. ダッシュボードを選択します。

1. ウィジェットで [**View logs**] アイコンを選択し、[**View logs in this time range**] を選択します。メトリクスフィルターが複数ある場合は、リストから 1 つ選択します。メトリクスフィルターをリストに表示しきれない場合は、[**More metric filters**] を選択し、メトリクスフィルターを選択するか検索します。

**メトリクスからログに移動するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで [**Metrics (メトリクス)**] を選択してください。

1. [**All metrics**] タブの検索フィールドに、メトリクスの名前を入力して Enter キーを押します。

1. 検索結果から 1 つ以上のメトリクスを選択します。

1. [**Actions**]、[**View logs**] の順に選択します。メトリクスフィルターが複数ある場合は、リストから 1 つ選択します。メトリクスフィルターをリストに表示しきれない場合は、[**More metric filters**] を選択し、メトリクスフィルターを選択するか検索します。

## トラブルシューティング
<a name="search-filter-troubleshooting"></a>

[**Search takes too long to complete**]

ログデータが多い場合、検索の完了に時間がかかる場合があります。検索の速度を上げるには、次を実行します:
+ を使用している場合は AWS CLI、検索を目的のログストリームのみに制限できます。例えば、ロググループに 1000 個のログストリームがあり、関連性があることがわかっているログストリームを 3 つだけ表示する場合は、 AWS CLI を使用して、ロググループ内のこれら 3 つのログストリームのみに検索を制限できます。
+ 時間範囲を短く、細かくして検索対象のデータ量を減らし、クエリの速度を上げます。

## Change log data retention in CloudWatch Logs
<a name="SttingLogRetention"></a>

デフォルトでは、ログデータは CloudWatch Logs に無期限に保存されます。ただし、ロググループにログデータを保存する期間を設定できます。現在の保持設定より古いデータはすべて削除されます。各ロググループのログの保持期間は、いつでも変更できます。

**注記**  
CloudWatch Logs は、保持設定に達したログイベントをすぐに削除しません。通常、ログイベントが削除されるまでに最大 72 時間かかりますが、まれにそれ以上かかる場合もあります。  
つまり、有効期限を過ぎているが実際には削除されていないログイベントが含まれている場合に、ロググループを長い保持設定に変更すると、新しい保持期間に達してからこれらのログイベントが削除されるまでに最大 72 時間かかります。ログデータを完全に削除するには、前の保持期間が終了してから 72 時間が経過するか、古いログイベントが削除されることを確認するまで、ロググループを低い保持設定にしておきます。  
ログイベントが保持設定に達すると、削除対象としてマークされます。削除対象としてマークされた後は、後で実際に削除されない場合でも、アーカイブストレージのコストが追加されることはありません。また、削除対象としてマークされたこれらのログイベントは、API を使用して `storedBytes` の値を取得し、ロググループが保存しているバイト数を確認する場合にも含まれません。

**ログの保持設定を変更するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**[ログ]**、**[ロググループ]** の順に選択します。

1. 更新するロググループを見つけます。

1. そのロググループの [**保持**] 列で、現在の保持設定 (例: **[失効しない]**) を選択します。

1. **[保持期間の設定]** の **[次の期間経過後にイベントを失効]** で、ログ保持値を選択し、**[保存]** を選択します。

## ロググループの削除からの保護
<a name="protecting-log-groups-from-deletion-overview"></a>

オプションで削除保護を有効にして、重要なロググループが誤って削除されるのを防ぐことができます。削除保護の詳細については、「」を参照してください[ロググループの削除からの保護](protecting-log-groups-from-deletion.md)。

# ロググループの削除からの保護
<a name="protecting-log-groups-from-deletion"></a>

## 削除保護の有効化
<a name="enabling-deletion-protection"></a>

新しいロググループを作成するとき、または既存のロググループで削除保護を有効にすることができます。ロググループの作成時に、「削除保護を有効にする」を選択するか、パラメータ を渡します`--deletion-protection-enabled`。デフォルトでは、削除保護は有効になっていません。

**既存のロググループの削除保護を有効または無効にするには (コンソール)**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1. ナビゲーションペインで、**ログ管理**を選択します。

1. 保護するロググループを選択します。

1. **アクション**、**削除保護の編集**を選択します。

1. ダイアログボックスで、変更を確認して送信します。

を使用している場合 AWS CLI、既存のロググループで削除保護を有効にするには:

```
aws logs put-log-group-deletion-protection \
--log-group-identifier "/my-application/logs" \
--deletion-protection-enabled
```

既存のロググループの削除保護を削除するには:

```
aws logs put-log-group-deletion-protection \
--log-group-identifier "/my-application/logs" \
--no-deletion-protection-enabled
```

### エラー処理
<a name="deletion-protection-error-handling"></a>

削除保護が有効になっているロググループを削除しようとすると、「削除保護が有効になっているロググループは削除できません`ValidationException`」というメッセージが表示されます。削除保護を最初に無効にします。」

## Amazon CloudWatch Logs のロググループにタグを付ける
<a name="log-group-tagging"></a>

Amazon CloudWatch Logs で作成したロググループに、独自のメタデータを*タグ*形式で割り当てることができます。タグは、ロググループに対して定義するキーと値のペアです。タグを使用することは、 AWS リソースを管理し、請求データを含むデータを整理するためのシンプルで強力な方法です。

**注記**  
ロググループや送信先などの CloudWatch Logs のリソースへのアクセスを制御するには、タグを使用します。ロググループとログストリームの間には階層的な関係があるため、ログストリームへのアクセスはロググループレベルで制御されます。リソースへのアクセスを制御するタグの使用の詳細については、[タグを使用した Amazon Web Services のリソースへのアクセスの制御](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)を参照してください。

**Topics**
+ [タグの基本](#tagging-basics)
+ [タグ付けを使用したコストの追跡](#tagging-billing)
+ [タグの制限](#tagging-restrictions)
+ [を使用したロググループのタグ付け AWS CLI](#log-group-tagging-cli)
+ [CloudWatch Logs API を使用したロググループのタグ付け](#log-group-tagging-api)

### タグの基本
<a name="tagging-basics"></a>

 AWS CloudFormation AWS CLIまたは CloudWatch Logs API を使用して、次のタスクを完了します。
+ ロググループの作成時にタグを追加する
+ 既存のロググループにタグを追加する
+ ロググループのタグを一覧表示する
+ ロググループからタグを削除する

タグを使用すると、ロググループを分類できます。たとえば、目的、所有者、環境などに基づいて分類できます。タグごとにキーと値を定義するため、特定のニーズに合わせてカテゴリのカスタムセットを作成できます。たとえば、所有者と、関連するアプリケーションに基づいてロググループを追跡するのに役立つタグのセットを定義できます。次にいくつかのタグの例を示します。
+ プロジェクト: プロジェクト名
+ 所有者: 名前
+ 目的: 負荷テスト
+ アプリケーション: アプリケーション名
+ 環境:本稼働

### タグ付けを使用したコストの追跡
<a name="tagging-billing"></a>

タグを使用して、 AWS コストを分類および追跡できます。ロググループを含む AWS リソースにタグを適用すると、 AWS コスト配分レポートにはタグ別に集計された使用量とコストが含まれます。自社のカテゴリ、たとえばコストセンター、アプリケーション名、所有者を表すタグを適用すると、複数のサービスにわたってコストを分類することができます。詳細については、*AWS Billing ユーザーガイド*の[コスト配分タグを使用したカスタム請求レポート](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)を参照してください。

### タグの制限
<a name="tagging-restrictions"></a>

タグには次の制限があります。

**基本制限**
+ タグの最大数はロググループごとに 50 です。
+ タグのキーと値では、大文字と小文字が区別されます。
+ 削除されたロググループのタグを変更または編集することはできません。

**タグキーの制限**
+ 各タグキーは一意である必要があります。既に使用されているキーを持つタグを追加すると、新しいタグによって既存のキーと値のペアが上書きされます。
+ このプレフィックスはユーザーに代わって`aws:`このプレフィックスで始まるタグ AWS AWS を作成するため、 でタグキーを開始することはできませんが、編集または削除することはできません。
+ タグキーの長さは 1～128 文字 (Unicode) にする必要があります。
+ タグキーは、次の文字で構成する必要があります。Unicode 文字、数字、空白、特殊文字 (`_ . / = + - @`)。

**タグ値の制限**
+ タグ値の長さは 0～255 文字 (Unicode) にする必要があります。
+ タグ値は空白にすることができます。空白にしない場合は、次の文字で構成する必要があります。Unicode 文字、数字、空白、特殊文字 (`_ . / = + - @`)。

### を使用したロググループのタグ付け AWS CLI
<a name="log-group-tagging-cli"></a>

 AWS CLIを使用してタグの追加、一覧表示、および削除を行うことができます 例については、次のドキュメントを参照してください。

[create-log-group](https://docs.aws.amazon.com/cli/latest/reference/logs/create-log-group.html)  
ロググループを作成します。ロググループの作成時に、オプションでタグを追加できます。

[tag-resource](https://docs.aws.amazon.com/cli/latest/reference/logs/tag-resource.html)  
指定された CloudWatch Logs リソースに 1 つまたは複数のタグ (キーと値のペア) を割り当てます。

[list-tags-for-resource](https://docs.aws.amazon.com/cli/latest/reference/logs/list-tags-for-resource.html)  
CloudWatch Logs リソースに関連付けられているタグを表示します。

[untag-resource](https://docs.aws.amazon.com/cli/latest/reference/logs/untag-log-group.html)  
指定された CloudWatch Logs リソースから 1 つまたは複数のタグを削除します。

### CloudWatch Logs API を使用したロググループのタグ付け
<a name="log-group-tagging-api"></a>

CloudWatch Logs API を使用してタグの追加、一覧表示、および削除を行うことができます。例については、次のドキュメントを参照してください。

[CreateLogGroup](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html)  
ロググループを作成します。ロググループの作成時に、オプションでタグを追加できます。

[TagResource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_TagResource.html)  
指定された CloudWatch Logs リソースに 1 つまたは複数のタグ (キーと値のペア) を割り当てます。

[ListTagsForResource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListTagsForResource.html)  
CloudWatch Logs リソースに関連付けられているタグを表示します。

[UntagResource](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UntagLogGroup.html)  
指定された CloudWatch Logs リソースから 1 つまたは複数のタグを削除します。

# を使用して CloudWatch Logs のログデータを暗号化する AWS Key Management Service
<a name="encrypt-log-data-kms"></a>

ロググループのデータは常に CloudWatch Logs で暗号化されます。デフォルトでは、CloudWatch Logs は 256 ビットの Advanced Encryption Standard Galois/Counter Mode (AES-GCM) によるサーバー側の暗号化を使用して、保管中のログデータを暗号化します。別の方法として、この暗号化には AWS Key Management Service を使用できます。その場合、暗号化は AWS KMS キーを使用して行われます。を使用した暗号化 AWS KMS は、ロググループの作成時または作成後に、KMS キーをロググループに関連付けることで、ロググループレベルで有効になります。

**重要**  
CloudWatch Logs は、`kms:EncryptionContext:aws:logs:arn` をキーとして使用し、ロググループの ARN をそのキーの値として使用して、暗号化コンテキストをサポートするようになりました。KMS キーで暗号化したロググループがあり、そのキーが 1 つのアカウントとロググループで使用されるように制限する場合は、新しい KMS キーを割り当て、そのための条件を IAM ポリシーに含める必要があります。詳細については、「[AWS KMS キーと暗号化コンテキスト](#encrypt-log-data-kms-policy)」を参照してください。

**重要**  
CloudWatch Logs で がサポートされるようになりました。`kms:ViaService`これにより、ログはユーザーに代わって AWS KMS 呼び出しを行うことができます。これを、キーポリシーまたは IAM で CloudWatch Logs を呼び出すロールに追加する必要があります。詳細については、「[kms:ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-via-service)」を参照してください。

KMS キーをロググループと関連付けると、ロググループの新たに取り込まれたすべてのデータは、このキーを使用して暗号化されます。このデータは、保持期間を通じて暗号化形式で保存されます。CloudWatch Logs は、リクエストがあればいつでもこのデータを復号化します。暗号化されたデータがリクエストされた場合、CloudWatch Logs に KMS キーのアクセス許可が必要です。

後でロググループから KMS キーの関連付けを解除すると、CloudWatch Logs は CloudWatch Logs デフォルトの暗号化方法を使用して、新たに取り込まれたデータを暗号化します。以前に取り込まれたデータのうち KMS キーで暗号化されたものは、すべて KMS キーで暗号化されたままになります。CloudWatch Logs は引き続きキーを参照できるため、KMS キーの関連付けが解除された後も、CloudWatch Logs はそのデータを返すことができます。ただし、キーを後で無効にすると、CloudWatch Logs はそのキーで暗号化されたログを読み取ることができなくなります。

**重要**  
CloudWatch Logs は、対称 KMS キーのみをサポートします。非対称キーを使用してロググループのデータを暗号化しないでください。詳細については、「[対称キーと非対称キーの使用](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)」を参照してください。

## 制限
<a name="encryption-limits"></a>
+ 以下の手順を実行するには、`kms:CreateKey`、`kms:GetKeyPolicy`、および `kms:PutKeyPolicy` アクセス許可が必要です。
+ キーとロググループを関連付けまたは関連付け解除すると、オペレーションが有効になるまで最大 5 分かかることがあります。
+ 関連付けられたキーへの CloudWatch Logs のアクセスを取り消したり、関連付けられた KMS キーを削除した場合、CloudWatch Logs 内の暗号化されたデータを取得できなくなります。
+ CloudWatch コンソールを使用して KMS キーを既存のロググループと関連付けることはできません。

## ステップ 1: AWS KMS キーを作成する
<a name="create-cmk"></a>

KMS キーを作成するには、次の [create-key](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html) コマンドを使用します。

```
aws kms create-key
```

出力には、キーのキー ID と Amazon リソースネーム (ARN) が含まれます。出力例を次に示します。

```
{
    "KeyMetadata": {
        "Origin": "AWS_KMS",
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "Description": "",
        "KeyManager": "CUSTOMER",
        "Enabled": true,
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "KeyState": "Enabled",
        "CreationDate": 1478910250.94,
        "Arn": "arn:aws:kms:us-west-2:123456789012:key/6f815f63-e628-448c-8251-e40cb0d29f59",
        "AWSAccountId": "123456789012",
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ]
    }
}
```

## ステップ 2: KMS キーでアクセス許可を設定する
<a name="cmk-permissions-lg"></a>

デフォルトでは、すべての AWS KMS キーはプライベートです。リソースの所有者のみがその CMK を使用してデータを暗号化および復号できます。ただし、リソース所有者は、他のユーザーとリソースに KMS キーへのアクセス許可を付与することができます。このステップでは、このキーを使用するための CloudWatch Logs サービスプリンシパルと呼び出し元ロール権限を付与します。このサービスプリンシパルは、KMS キーが保存されているリージョンと同じ AWS リージョンにある必要があります。

ベストプラクティスとして、KMS キーの使用を、指定した AWS アカウントまたはロググループのみに制限することをお勧めします。

まず、[get-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html) コマンドを使用して、KMS キーのデフォルトポリシーを `policy.json` として保存します。

```
aws kms get-key-policy --key-id key-id --policy-name default --output text > ./policy.json
```

テキストエディタで `policy.json` ファイルを開き、以下のいずれかのステートメントから太字のセクションを追加します。既存のステートメントと新しいステートメントをカンマで区切ります。これらのステートメントでは、 `Condition`セクションを使用して AWS KMS キーのセキュリティを強化します。詳細については、「[AWS KMS キーと暗号化コンテキスト](#encrypt-log-data-kms-policy)」を参照してください。

この例の `Condition` セクションでは、キーを 1 つのロググループ ARN に制限しています。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-default-1",
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::123456789012:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "logs.us-east-1.amazonaws.com"
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:Describe*"
            ],
            "Resource": "*",
            "Condition": {
                "ArnEquals": {
                "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:us-east-1:111122223333:log-group:log-group-name"
                }
            }
        }
    ]
}
```

------

この例の `Condition` セクションは AWS KMS キーの使用を指定したアカウントに制限しますが、これを使用できるロググループに制限はありません。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-default-1",
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::123456789012:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Principal": {
            "Service": "logs.us-east-1.amazonaws.com"
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:Describe*"
            ],
            "Resource": "*",
            "Condition": {
                "ArnLike": {
                "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:us-east-1:123456789012:*"
                }
            }
        }
    ]
}
```

------

次に、CloudWatch Logs を呼び出すロールにアクセス許可を追加します。これを行うには、 AWS KMS キーポリシーにステートメントを追加するか、ロール自体の IAM を使用します。CloudWatch Logs は を使用して`kms:ViaService`、お客様に代わって を呼び出し AWS KMS ます。詳細については、「[kms:ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-via-service)」を参照してください。

 AWS KMS キーポリシーでアクセス許可を追加するには、キーポリシーに次のステートメントを追加します。この方法を使用する場合は、ベストプラクティスとして、 AWS KMS 暗号化されたロググループとやり取りするロールのみにポリシーの範囲を設定します。

```
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::account_id:role/role_name"
  },
  "Action": [
    "kms:Encrypt",
    "kms:ReEncrypt*",
    "kms:Decrypt",
    "kms:GenerateDataKey*",
    "kms:Describe*"
  ],
  "Resource": "*",
  "Condition": {
    "StringEquals": {
      "kms:ViaService": [
        "logs.region.amazonaws.com"
      ]
    }
  }
}
```

または、IAM でロールのアクセス許可を管理する場合は、次のポリシーを使用して同等のアクセス権限を追加できます。これは、既存のロールポリシーに追加することも、追加の個別のポリシーとしてロールにアタッチすることもできます。この方法を使用する場合は、ベストプラクティスとして、ログ暗号化に使用される AWS KMS キーのみにポリシーの範囲を設定します。詳細については、[「IAM ポリシーの編集」](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-edit.html)を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:Encrypt",
                "kms:ReEncrypt*",
                "kms:Decrypt",
                "kms:GenerateDataKey*",
                "kms:Describe*"
            ],
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": [
                        "logs.us-east-1.amazonaws.com"
                    ]
                }
            },
            "Resource": "arn:aws:kms:us-east-1:444455556666:key/key_id"
        }
    ]
}
```

------

最後に、次の [put-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html) コマンドを使用して更新されたポリシーを追加します。

```
aws kms put-key-policy --key-id key-id --policy-name default --policy file://policy.json
```

## ステップ 3: KMS キーをログ グループに関連付ける
<a name="associate-cmk"></a>

KMS キーとロググループは、ロググループの作成時または作成後に関連付けることができます。

ロググループに KMS キーがすでに関連付けられているかどうかを確認するには、次の [describe-log-groups](https://docs.aws.amazon.com/cli/latest/reference/logs/describe-log-groups.html) コマンドを使用します。

```
aws logs describe-log-groups --log-group-name-prefix "log-group-name-prefix"
```

出力に `kmsKeyId` フィールドが含まれている場合、ロググループはそのフィールドの値に対して表示されるキーに関連付けられます。

**ロググループの作成時に KMS キーをロググループに関連付けるには**  
次のように、[create-log-group](https://docs.aws.amazon.com/cli/latest/reference/logs/create-log-group.html) コマンドを使用します。

```
aws logs create-log-group --log-group-name my-log-group --kms-key-id "key-arn"
```

**KMS キーを既存のロググループに関連付けるには**  
次のように、[associate-kms-key](https://docs.aws.amazon.com/cli/latest/reference/logs/associate-kms-key.html) コマンドを使用します。

```
aws logs associate-kms-key --log-group-name my-log-group --kms-key-id "key-arn"
```

## ステップ 4: キーをロググループの関連付けから解除する
<a name="disassociate-cmk"></a>

ロググループに関連付けられた KMS キーの関連付けを解除するには、次の [disassociate-kms-key](https://docs.aws.amazon.com/cli/latest/reference/logs/disassociate-kms-key.html) コマンドを使用します。

```
aws logs disassociate-kms-key --log-group-name my-log-group
```

## AWS KMS キーと暗号化コンテキスト
<a name="encrypt-log-data-kms-policy"></a>

 AWS Key Management Service キーと暗号化されたロググループのセキュリティを強化するために、CloudWatch Logs はロググループの ARNs をログデータの暗号化に使用される*暗号化コンテキスト*の一部として配置するようになりました。暗号化コンテキストは、追加の認証済みデータとして使用されるキーと値のペアのセットです。暗号化コンテキストを使用すると、IAM ポリシー条件を使用して、アカウントとロググループごとに AWS KMS AWS キーへのアクセスを制限できます。詳細については、[暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context)および [IAM JSON ポリシー要素: 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)を参照してください。

暗号化されたロググループごとに異なる KMS キーを使用することをお勧めします。

前に暗号化したロググループがあり、そのロググループを変更して、そのグループでのみ機能する新しい KMS キーを使用する場合は、次の手順に従います。

**暗号化されたロググループを変更して、KMS キーの使用をそのグループのみに制限するには**

1. 次のコマンドを入力して、ロググループの現在のキーの ARN を見つけます。

   ```
   aws logs describe-log-groups
   ```

   出力には以下の行が含まれます。ARN を書きとめておきます。ステップ 7 で使用する必要があります。

   ```
   ...
   "kmsKeyId": "arn:aws:kms:us-west-2:123456789012:key/01234567-89ab-cdef-0123-456789abcdef"
   ...
   ```

1. 以下のコマンドを入力して、新しい KMS キーを作成します。

   ```
   aws kms create-key
   ```

1. 以下のコマンドを入力して、新しいキーのポリシーを `policy.json` ファイルに保存します。

   ```
   aws kms get-key-policy --key-id new-key-id --policy-name default --output text > ./policy.json
   ```

1. テキストエディタを使用して `policy.json` を開き、`Condition` 式をポリシーに追加します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "key-default-1",
       "Statement": [
           {
               "Sid": "Enable IAM User Permissions",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root"
               },
               "Action": "kms:*",
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Principal": {
               "Service": "logs.us-east-1.amazonaws.com"
               },
               "Action": [
                   "kms:Encrypt",
                   "kms:Decrypt",
                   "kms:ReEncrypt*",
                   "kms:GenerateDataKey*",
                   "kms:Describe*"
               ],
               "Resource": "*",
               "Condition": {
                   "ArnLike": {
                   "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:us-east-1:111122223333:log-group:LOG-GROUP-NAME"
                   }
               }
           }
       ]
   }
   ```

------

1. 次のコマンドを入力して、更新されたポリシーを新しい KMS キーに追加します。

   ```
   aws kms put-key-policy --key-id new-key-ARN --policy-name default --policy file://policy.json
   ```

1. 以下のコマンドを入力して、そのポリシーをロググループに関連付けます。

   ```
   aws logs associate-kms-key --log-group-name my-log-group --kms-key-id new-key-ARN
   ```

   CloudWatch Logs で、すべての新しいデータが新しいキーを使用して暗号化されるようになりました。

1. 次に、`Decrypt` を除くすべてのアクセス許可を古いキーから取り消します。まず、以下のコマンドを入力して古いポリシーを取得します。

   ```
   aws kms get-key-policy --key-id old-key-ARN --policy-name default --output text > ./policy.json
   ```

1. テキストエディタを使用して `policy.json` を開き、`Action` リストから `kms:Decrypt` を除くすべての値を削除します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "key-default-1",
       "Statement": [
           {
               "Sid": "Enable IAM User Permissions",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root"
               },
               "Action": "kms:*",
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "logs.region.amazonaws.com"
               },
               "Action": [
                   "kms:Decrypt"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. 次のコマンドを入力して、更新されたポリシーを古いキーに追加します。

   ```
   aws kms put-key-policy --key-id old-key-ARN --policy-name default --policy file://policy.json
   ```

# 機密性の高いログデータをマスキングで保護する
<a name="mask-sensitive-log-data"></a>

ロググループの*データ保護ポリシー*を使用することで、CloudWatch Logs に取り込まれた機密データを保護できます。これらのポリシーを使うことで、アカウントのロググループが取り込んだログイベントに表示される機密データを、監査およびマスクできます。

データ保護ポリシーを作成すると、デフォルトでは、ユーザーの選択したデータ識別子に一致する機密データがすべての出力ポイント (CloudWatch Logs Insights、メトリクスフィルター、サブスクリプションフィルターなど) でマスクされます。マスクされていないデータを閲覧できるのは、`logs:Unmask` IAMアクセス許可を持つユーザーのみです。

アカウントのすべてのロググループに対してデータ保護ポリシーを作成できます。また、個々のロググループのデータ保護ポリシーも作成できます。アカウント全体に対するポリシーを作成すると、既存のロググループと今後作成するロググループの両方に、ポリシーが適用されます。

アカウント全体に対するデータ保護ポリシーを作成し、1 つのロググループに対するポリシーも作成すると、そのロググループには両方のポリシーが適用されます。いずれかのポリシーで指定されたマネージドデータ識別子は、すべてそのロググループで監査およびマスクされます。

**注記**  
機密データのマスキングは、標準ログクラスと低頻度アクセスログクラスの両方のロググループでサポートされています。ログクラスの詳細については、「[ログクラス](CloudWatch_Logs_Log_Classes.md)」を参照してください。

各ロググループで設定できるロググループレベルのデータ保護ポリシーは 1 つのみです。ただしそのポリシーでは、監査およびマスキングの対象となるマネージドデータ識別子を複数指定できます。データ保護ポリシーの文字数の上限は、30,720 文字です。

**重要**  
機密データは、ロググループに取り込まれるときに検出され、マスクされます。データ保護ポリシーを設定しても、それ以前にロググループに取り込まれたログイベントはマスクされません。

CloudWatch Logs は多くの*マネージドデータ識別子*をサポートしており、財務データ、個人健康情報 (PHI)、個人を特定できる情報 (PII) を保護するために選択できる事前設定されたデータタイプを提供しています。CloudWatch Logs のデータ保護では、パターンマッチングと機械学習モデルを活用して機密データを検出できます。マネージドデータ識別子の種類によっては、検出は、機密データに密接に関連する特定のキーワードの検出結果にも依存します。また、カスタムデータ識別子を使用して、特定のユースケースに合わせたデータ識別子を作成することもできます。

選択されたデータ識別子に一致する機密データが検出されると、CloudWatch にメトリクスが発行されます。これは **LogEventsWithFindings** メトリクスで、**AWS/Logs** 名前空間で発行されます。このメトリクスは CloudWatch アラームを作成するために使用でき、グラフやダッシュボードで視覚化できます。データ保護によって発行されたメトリクスは無料で提供されるメトリクスなので、料金はかかりません。CloudWatch Logs が CloudWatch に送信するメトリクスの詳細については、「[CloudWatch メトリクスによるモニタリング](CloudWatch-Logs-Monitoring-CloudWatch-Metrics.md)」を参照してください。

各マネージドデータ識別子は、特定の国またはリージョンのクレジットカード番号、 AWS シークレットアクセスキー、パスポート番号など、特定のタイプの機密データを検出するように設計されています。データ保護ポリシーを作成する際に、これらの識別子を使用してロググループが取り込んだログを分析し、検出された場合にアクションを実行するように設定できます。

CloudWatch Logs データ保護では、マネージドデータ識別子を使用して、次のカテゴリの機密データを検出できます。
+ プライベートキーや AWS シークレットアクセスキーなどの認証情報 
+ クレジットカード番号などの財務情報
+ 運転免許証や社会保障番号などの個人を特定できる情報 (PII)
+ 健康保険または医療識別番号などの保護対象保健情報 (PHI)
+ IP アドレスや MAC アドレスなどのデバイス識別子

保護できるデータの種類の詳細については、「[保護できるデータの種類](protect-sensitive-log-data-types.md)」を参照してください。

**Contents**
+ [データ保護ポリシーを理解する](cloudwatch-logs-data-protection-policies.md)
  + [データ保護ポリシーとは](cloudwatch-logs-data-protection-policies.md#what-are-data-protection-policies)
  + [データ保護ポリシーの構成の仕組み](cloudwatch-logs-data-protection-policies.md#overview-of-data-protection-policies)
    + [データ保護ポリシーの JSON プロパティ](cloudwatch-logs-data-protection-policies.md#data-protection-policy-json-properties)
    + [ポリシーステートメントの JSON プロパティ](cloudwatch-logs-data-protection-policies.md#policy-statement-json-properties)
    + [ポリシーステートメントオペレーションの JSON プロパティ](cloudwatch-logs-data-protection-policies.md#statement-operation-json-properties)
+ [データ保護ポリシーの作成または操作に必要な IAM 権限](data-protection-policy-permissions.md)
  + [アカウントレベルのデータ保護ポリシーに必要なアクセス権限](data-protection-policy-permissions.md#data-protection-policy-permissions-accountlevel)
  + [1 つのロググループのデータ保護ポリシーに必要なアクセス権限](data-protection-policy-permissions.md#data-protection-policy-permissions-loggroup)
  + [データ保護ポリシーのサンプル](data-protection-policy-permissions.md#data-protection-policy-sample)
+ [アカウント全体のデータ保護ポリシーを作成する](mask-sensitive-log-data-accountlevel.md)
  + [コンソール](mask-sensitive-log-data-accountlevel.md#mask-sensitive-log-data-accountlevel-console)
  + [AWS CLI](mask-sensitive-log-data-accountlevel.md#mask-sensitive-log-data-accountlevel-cli)
    + [AWS CLI または API オペレーションのデータ保護ポリシー構文](mask-sensitive-log-data-accountlevel.md#mask-sensitive-log-data-policysyntax-account)
+ [1 つのロググループ用のデータ保護ポリシーを作成する](mask-sensitive-log-data-start.md)
  + [コンソール](mask-sensitive-log-data-start.md#mask-sensitive-log-data-start-console)
  + [AWS CLI](mask-sensitive-log-data-start.md#mask-sensitive-log-data-start-cli)
    + [AWS CLI または API オペレーションのデータ保護ポリシー構文](mask-sensitive-log-data-start.md#mask-sensitive-log-data-policysyntax)
+ [データをマスクせずに表示する](mask-sensitive-log-data-viewunmasked.md)
+ [監査結果レポート](mask-sensitive-log-data-audit-findings.md)
  + [で保護された バケットに監査結果を送信するために必要なキーポリシー AWS KMS](mask-sensitive-log-data-audit-findings.md#mask-sensitive-log-data-audit-findings-kms)
+ [保護できるデータの種類](protect-sensitive-log-data-types.md)
  + [機密データの種類についての CloudWatch Logs マネージドデータ識別子](CWL-managed-data-identifiers.md)
    + [認証情報](protect-sensitive-log-data-types-credentials.md)
      + [認証情報データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-credentials.md#cwl-data-protection-credentials-arns)
    + [デバイス識別子](protect-sensitive-log-data-types-device.md)
      + [デバイスデータタイプのデータ識別子 ARN](protect-sensitive-log-data-types-device.md#cwl-data-protection-devices-arns)
    + [財務情報](protect-sensitive-log-data-types-financial.md)
      + [財務データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-financial.md#cwl-data-protection-financial-arns)
    + [保護対象保健情報 (PHI)](protect-sensitive-log-data-types-health.md)
      + [保護対象の医療情報 (PHI) データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-health.md#cwl-data-protection-phi-arns)
    + [個人を特定できる情報 (PII)](protect-sensitive-log-data-types-pii.md)
      + [運転免許証識別番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-dl-keywords)
      + [国民識別番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-natlid-keywords)
      + [パスポート番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-passport-keywords)
      + [納税者識別と参照番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-financial-tin-keywords)
      + [個人を特定できる情報 (PII) のデータ識別子 ARN](protect-sensitive-log-data-types-pii.md#CWL-data-protection-pii-arns)
  + [カスタムデータ識別子](CWL-custom-data-identifiers.md)
    + [SNS カスタムデータ識別子とは](CWL-custom-data-identifiers.md#what-are-custom-data-identifiers)
    + [カスタムデータ識別子の制約](CWL-custom-data-identifiers.md#custom-data-identifiers-constraints)
    + [コンソールでのカスタムデータ識別子の使用](CWL-custom-data-identifiers.md#using-custom-data-identifiers-console)
    + [データ保護ポリシーでカスタムデータ識別子を使用する](CWL-custom-data-identifiers.md#using-custom-data-identifiers)

# データ保護ポリシーを理解する
<a name="cloudwatch-logs-data-protection-policies"></a>

**Topics**
+ [データ保護ポリシーとは](#what-are-data-protection-policies)
+ [データ保護ポリシーの構成の仕組み](#overview-of-data-protection-policies)

## データ保護ポリシーとは
<a name="what-are-data-protection-policies"></a>

CloudWatch は**データ保護ポリシー**を使用して、スキャンする機密データと、そのデータを保護するために実行するアクションを選択します。目的の機密データを選択するには、[データ識別子](CWL-managed-data-identifiers.md)を使用します。そうすることで、CloudWatch Logs データ保護が機械学習とパターンマッチングを使用して機密データを検出するようになります。検出されたデータ識別子に基づいてアクションを実行するには、**Audit** (監査) および **De-identify** (匿名化) 操作を定義できます。これらの操作は、検出された (または検出されなかった) 機密データをログに記録し、ログイベントが表示されるときに機密データをマスクすることを可能にします。

## データ保護ポリシーの構成の仕組み
<a name="overview-of-data-protection-policies"></a>

次の図に示すように、データ保護ポリシードキュメントには次の要素が含まれています。
+ ドキュメントの最上部に記載されるポリシー全体の情報 (任意)
+ 監査および匿名化アクションを定義する 1 つのステートメント

CloudWatch Logs ロググループごとに定義できるデータ保護ポリシーは 1 つだけです。データ保護ポリシーには、1 つまたは複数の拒否または識別解除ステートメントと 1 つの監査ステートメントのみを含めることができます。

### データ保護ポリシーの JSON プロパティ
<a name="data-protection-policy-json-properties"></a>

データ保護ポリシーでは、識別のために以下の基本ポリシー情報が必要です。
+ **Name** – ポリシーの名前｡
+ **Description** (オプション) – ポリシーの説明。
+ **Version** – ポリシー言語のバージョン。現在のバージョンは 2021-06-01. です。
+ **Statement** – データ保護ポリシーアクションを指定するステートメントのリスト。

```
{
  "Name": "CloudWatchLogs-PersonalInformation-Protection",
  "Description": "Protect basic types of sensitive data",
  "Version": "2021-06-01",
  "Statement": [
        ...
  ]
}
```

### ポリシーステートメントの JSON プロパティ
<a name="policy-statement-json-properties"></a>

ポリシーステートメントは、データ保護オペレーションの検出コンテキストを設定します。
+ **Sid** (オプション) – ステートメント識別子。
+ **DataIdentifier** - CloudWatch ログがスキャンする必要がある機密データ。名前、住所、電話番号などです。
+ **Operation** – 後続アクション (**Audit** または **De-identify** のいずれか)。CloudWatch Logs は、機密データが検出されたときにこれらのアクションを実行します。

```
{
  ...
  "Statement": [
    {
      "Sid": "audit-policy",
      "DataIdentifier": [
        "arn:aws:dataprotection::aws:data-identifier/Address"
      ],
      "Operation": {
        "Audit": {
          "FindingsDestination": {}
        }
      }
    },
```

### ポリシーステートメントオペレーションの JSON プロパティ
<a name="statement-operation-json-properties"></a>

ポリシーステートメントは、次のデータ保護オペレーションのいずれかを設定します。
+ **Audit** – ロギングを中断することなく、メトリクスと結果レポートを発行します。一致する文字列は、CloudWatch Logs が CloudWatch の **AWS/Logs** 名前空間に発行する **LogEventsWithFindings** メトリクスをインクリメントします。これらのメトリクスは、アラームを作成するために使用できます。

  結果レポートの例については、「[監査結果レポート](mask-sensitive-log-data-audit-findings.md)」を参照してください。

  CloudWatch Logs が CloudWatch に送信するメトリクスの詳細については、「[CloudWatch メトリクスによるモニタリング](CloudWatch-Logs-Monitoring-CloudWatch-Metrics.md)」を参照してください。
+ **De-identify** – ロギングを中断することなく機密データをマスクします。

# データ保護ポリシーの作成または操作に必要な IAM 権限
<a name="data-protection-policy-permissions"></a>

ロググループのデータ保護ポリシーにアクセスできるようにするには、次の表で表示されている特定のアクセス権限を持っている必要があります。アクセス権限は、アカウント全体のデータ保護ポリシーと、単一のロググループに適用されるデータ保護ポリシーとで異なります。

## アカウントレベルのデータ保護ポリシーに必要なアクセス権限
<a name="data-protection-policy-permissions-accountlevel"></a>

**注記**  
Lambda 関数内でこれらの操作のいずれかを実行する場合、Lambda 実行ロールとアクセス許可の境界には次の権限も含める必要があります。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/logs/data-protection-policy-permissions.html)

いずれかのデータ保護監査ログがすでに宛先に送信されている場合、同じ宛先にログを送信する他のポリシーに必要なのは `logs:PutDataProtectionPolicy` および `logs:CreateLogDelivery` 権限のみです。

## 1 つのロググループのデータ保護ポリシーに必要なアクセス権限
<a name="data-protection-policy-permissions-loggroup"></a>

**注記**  
Lambda 関数内でこれらの操作のいずれかを実行する場合、Lambda 実行ロールとアクセス許可の境界には次の権限も含める必要があります。


| 運用 | IAM 権限が必要です | [リソース]  | 
| --- | --- | --- | 
|  監査先を指定しないデータ保護ポリシーを作成する  |  `logs:PutDataProtectionPolicy`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*`  | 
|  監査先として CloudWatch Logs を使用してデータ保護ポリシーを作成する  |  `logs:PutDataProtectionPolicy` `logs:CreateLogDelivery` `logs:PutResourcePolicy` `logs:DescribeResourcePolicies` `logs:DescribeLogGroups`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*` `*` `*` `*` `*`  | 
|  監査先として Firehose を使用してデータ保護ポリシーを作成する  |  `logs:PutDataProtectionPolicy` `logs:CreateLogDelivery` `firehose:TagDeliveryStream`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*` `*` `arn:aws:logs:::deliverystream/YOUR_DELIVERY_STREAM`  | 
|  監査先として Amazon S3 を使用してデータ保護ポリシーを作成する  |  `logs:PutDataProtectionPolicy` `logs:CreateLogDelivery` `s3:GetBucketPolicy` `s3:PutBucketPolicy`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*` `*` `arn:aws:s3:::YOUR_BUCKET` `arn:aws:s3:::YOUR_BUCKET`  | 
|  マスクされたログイベントをマスク解除する  |  `logs:Unmask`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*`  | 
|  既存のデータ保護ポリシーを表示する  |  `logs:GetDataProtectionPolicy`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*`  | 
|  データ保護ポリシーを削除する  |  `logs:DeleteDataProtectionPolicy`  |  `arn:aws:logs:::log-group:YOUR_LOG_GROUP:*`  | 

いずれかのデータ保護監査ログがすでに宛先に送信されている場合、同じ宛先にログを送信する他のポリシーに必要なのは `logs:PutDataProtectionPolicy` および `logs:CreateLogDelivery` 権限のみです。

## データ保護ポリシーのサンプル
<a name="data-protection-policy-sample"></a>

次のサンプルポリシーにより、3 種類の監査先すべてに監査結果を送信できるデータ保護ポリシーを、ユーザーが作成、表示、削除できます。ユーザーはマスクされていないデータを確認することはできません。

------
#### [ JSON ]

****  

```
 
    {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowLogDeliveryConfiguration",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogDelivery",
                "logs:PutResourcePolicy",
                "logs:DescribeLogGroups",
                "logs:DescribeResourcePolicies"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowDataProtectionAndBucketConfiguration",
            "Effect": "Allow",
            "Action": [
                "logs:GetDataProtectionPolicy",
                "logs:DeleteDataProtectionPolicy",
                "logs:PutDataProtectionPolicy",
                "s3:PutBucketPolicy",
                "firehose:TagDeliveryStream",
                "s3:GetBucketPolicy"
            ],
            "Resource": [
            "arn:aws:firehose:us-east-1:111122223333:deliverystream/delivery-stream-name",
            "arn:aws:s3:::amzn-s3-demo-destination-bucket",
            "arn:aws:logs:us-east-1:111122223333:log-group:log-group-name:*"
            ]
        }
    ]
}
```

------

# アカウント全体のデータ保護ポリシーを作成する
<a name="mask-sensitive-log-data-accountlevel"></a>

CloudWatch Logs コンソールまたは AWS CLI コマンドを使用して、アカウント内のすべてのロググループの機密データをマスクするデータ保護ポリシーを作成できます。作成すると、現在のロググループと今後作成するロググループの両方に影響します。

**重要**  
機密データは、ロググループに取り込まれるときに検出され、マスクされます。データ保護ポリシーを設定しても、それ以前にロググループに取り込まれたログイベントはマスクされません。

**Topics**
+ [コンソール](#mask-sensitive-log-data-accountlevel-console)
+ [AWS CLI](#mask-sensitive-log-data-accountlevel-cli)

## コンソール
<a name="mask-sensitive-log-data-accountlevel-console"></a>

**コンソールを使用してアカウント全体のデータ保護ポリシーを作成するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1.  ナビゲーションペインで **[設定]** を選択します。リストの一番下付近にあります。

1. [**ログ**] タブを選択します。

1. [**設定**] を選択します。

1. **[マネージドデータ識別子]** で、使用しているすべてのロググループで監査およびマスクするデータの種類を選択します。選択ボックスに入力して、必要な識別子を見つけることができます。

   ログデータやビジネスに関連するデータ識別子のみを選択することをお勧めします。多くの種類のデータを選択すると、誤検出につながる可能性があります。

   保護できるデータの種類の詳細については、「[保護できるデータの種類](protect-sensitive-log-data-types.md)」を参照してください。

1. (オプション) カスタムデータ識別子を使用して他のタイプのデータを監査およびマスクする場合は、**[カスタムデータ識別子を追加]** を選択します。次に、データ型の名前と、ログイベントでそのタイプのデータを検索するために使用する正規表現を入力します。詳細については、「[カスタムデータ識別子](CWL-custom-data-identifiers.md)」を参照してください。

   単一のデータ保護ポリシーには、最大 10 個のカスタムデータ識別子を含めることができます。カスタムデータ識別子を定義する各正規表現は、200 文字以下である必要があります。

1. (オプション) 監査結果の送信先となるサービスを 1 つまたは複数選択します。監査結果をこれらのサービスのいずれにも送信しないことを選択した場合でも、選択した機密データタイプは引き続きマスクされます。

1. **[Activate data protection]** (データ保護をアクティブにする) を選択します。

## AWS CLI
<a name="mask-sensitive-log-data-accountlevel-cli"></a>

**を使用してデータ保護ポリシー AWS CLI を作成するには**

1. テキストエディタを使用して `DataProtectionPolicy.json` という名前のポリシーファイルを作成します。ポリシーの構文については、次のセクションを参照してください。

1. 次のコマンドを入力します。

   ```
   aws logs put-account-policy \
   --policy-name TEST_POLICY --policy-type "DATA_PROTECTION_POLICY" \
   --policy-document file://policy.json \
   --scope "ALL" \
   --region us-west-2
   ```

### AWS CLI または API オペレーションのデータ保護ポリシー構文
<a name="mask-sensitive-log-data-policysyntax-account"></a>

 AWS CLI コマンドまたは API オペレーションで使用する JSON データ保護ポリシーを作成する場合、ポリシーには 2 つの JSON ブロックを含める必要があります。
+ 最初のブロックには、`DataIdentifer` 配列と `Audit` アクションを含む `Operation` プロパティの両方が含まれている必要があります。`DataIdentifer` 配列には、マスクする機密データの種類が表示されます。利用できるすべてのオプションについての詳細は、「[保護できるデータの種類](protect-sensitive-log-data-types.md)」を参照してください。

  `Audit` アクションを含む `Operation` プロパティは、機密データ用語を検索するために必要です。この `Audit` アクションには `FindingsDestination` オブジェクトが含まれている必要があります。オプションで `FindingsDestination` オブジェクトを使用して、監査結果レポートの送信先を 1 つ、または複数リストできます。ロググループ、Amazon Data Firehose ストリーム、S3 バケットなどの送信先を指定する場合、それらは既に存在している必要があります。監査結果レポートの例については、「[監査結果レポート](mask-sensitive-log-data-audit-findings.md)」を参照してください。
+ 2 番目のブロックには、`DataIdentifer` 配列と `Deidentify` アクションを含む `Operation` プロパティの両方が含まれている必要があります。`DataIdentifer` 配列は、ポリシーの最初のブロックにある `DataIdentifer` 配列と完全に一致する必要があります。

  `Deidentify` アクションを含む `Operation` プロパティが実際にデータをマスクするものであり、そのアクションには ` "MaskConfig": {}` オブジェクトが含まれている必要があります。` "MaskConfig": {}` オブジェクトは空である必要があります。

以下は、マネージドデータ識別子のみを使用するデータ保護ポリシーの例です。このポリシーは、E メールアドレスと米国の運転免許証をマスクします。

カスタムデータ識別子を指定するポリシーの詳細については、「[データ保護ポリシーでカスタムデータ識別子を使用する](CWL-custom-data-identifiers.md#using-custom-data-identifiers)」を参照してください。

```
{
    "Name": "data-protection-policy",
    "Description": "test description",
    "Version": "2021-06-01",
    "Statement": [{
            "Sid": "audit-policy",
            "DataIdentifier": [
                "arn:aws:dataprotection::aws:data-identifier/EmailAddress",
                "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US"
            ],
            "Operation": {
                "Audit": {
                    "FindingsDestination": {
                        "CloudWatchLogs": {
                            "LogGroup": "EXISTING_LOG_GROUP_IN_YOUR_ACCOUNT,"
                        },
                        "Firehose": {
                            "DeliveryStream": "EXISTING_STREAM_IN_YOUR_ACCOUNT"
                        },
                        "S3": {
                            "Bucket": "EXISTING_BUCKET"
                        }
                    }
                }
            }
        },
        {
            "Sid": "redact-policy",
            "DataIdentifier": [
                "arn:aws:dataprotection::aws:data-identifier/EmailAddress",
                "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US"
            ],
            "Operation": {
                "Deidentify": {
                    "MaskConfig": {}
                }
            }
        }
    ]
}
```

# 1 つのロググループ用のデータ保護ポリシーを作成する
<a name="mask-sensitive-log-data-start"></a>

CloudWatch Logs コンソールまたは AWS CLI コマンドを使用して、機密データをマスクするデータ保護ポリシーを作成できます。

各ロググループに 1 つのデータ保護ポリシーを割り当てることができます。各データ保護ポリシーで、複数の種類の情報を監査できます。各データ保護ポリシーには、監査ステートメントを 1 つ含めることができます。

**Topics**
+ [コンソール](#mask-sensitive-log-data-start-console)
+ [AWS CLI](#mask-sensitive-log-data-start-cli)

## コンソール
<a name="mask-sensitive-log-data-start-console"></a>

**コンソールを使用してデータ保護ポリシーを作成するには**

1. CloudWatch コンソールの [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) を開いてください。

1.  ナビゲーションペインで、**[ログ]**、**[ロググループ]** の順に選択します。

1. ロググループの名前を選択します。

1. **[Actions]** (アクション)、**[Create data protection policy]** (データ保護ポリシーを作成) を選択します。

1. **[マネージドデータ識別子]** で、このロググループで監査およびマスクするデータの種類を選択します。選択ボックスに入力して、必要な識別子を見つけることができます。

   ログデータやビジネスに関連するデータ識別子のみを選択することをお勧めします。多くの種類のデータを選択すると、誤検出につながる可能性があります。

   マネージドデータ識別子を使用して保護できるデータの種類の詳細については、「[保護できるデータの種類](protect-sensitive-log-data-types.md)」を参照してください。

1. (オプション) カスタムデータ識別子を使用して他のタイプのデータを監査およびマスクする場合は、**[カスタムデータ識別子を追加]** を選択します。次に、データ型の名前と、ログイベントでそのタイプのデータを検索するために使用する正規表現を入力します。詳細については、「[カスタムデータ識別子](CWL-custom-data-identifiers.md)」を参照してください。

   単一のデータ保護ポリシーには、最大 10 個のカスタムデータ識別子を含めることができます。カスタムデータ識別子を定義する各正規表現は、200 文字以下である必要があります。

1. (オプション) 監査結果の送信先となるサービスを 1 つまたは複数選択します。監査結果をこれらのサービスのいずれにも送信しないことを選択した場合でも、選択した機密データタイプは引き続きマスクされます。

1. **[Activate data protection]** (データ保護をアクティブにする) を選択します。

## AWS CLI
<a name="mask-sensitive-log-data-start-cli"></a>

**を使用してデータ保護ポリシー AWS CLI を作成するには**

1. テキストエディタを使用して `DataProtectionPolicy.json` という名前のポリシーファイルを作成します。ポリシーの構文については、次のセクションを参照してください。

1. 次のコマンドを入力します。

   ```
   aws logs put-data-protection-policy --log-group-identifier "my-log-group" --policy-document file:///Path/DataProtectionPolicy.json --region us-west-2
   ```

### AWS CLI または API オペレーションのデータ保護ポリシー構文
<a name="mask-sensitive-log-data-policysyntax"></a>

 AWS CLI コマンドまたは API オペレーションで使用する JSON データ保護ポリシーを作成する場合、ポリシーには 2 つの JSON ブロックを含める必要があります。
+ 最初のブロックには、`DataIdentifer` 配列と `Audit` アクションを含む `Operation` プロパティの両方が含まれている必要があります。`DataIdentifer` 配列には、マスクする機密データの種類が表示されます。利用できるすべてのオプションについての詳細は、「[保護できるデータの種類](protect-sensitive-log-data-types.md)」を参照してください。

  `Audit` アクションを含む `Operation` プロパティは、機密データ用語を検索するために必要です。この `Audit` アクションには `FindingsDestination` オブジェクトが含まれている必要があります。オプションで `FindingsDestination` オブジェクトを使用して、監査結果レポートの送信先を 1 つ、または複数リストできます。ロググループ、Amazon Data Firehose ストリーム、S3 バケットなどの送信先を指定する場合、それらは既に存在している必要があります。監査結果レポートの例については、「[監査結果レポート](mask-sensitive-log-data-audit-findings.md)」を参照してください。
+ 2 番目のブロックには、`DataIdentifer` 配列と `Deidentify` アクションを含む `Operation` プロパティの両方が含まれている必要があります。`DataIdentifer` 配列は、ポリシーの最初のブロックにある `DataIdentifer` 配列と完全に一致する必要があります。

  `Deidentify` アクションを含む `Operation` プロパティが実際にデータをマスクするものであり、そのアクションには ` "MaskConfig": {}` オブジェクトが含まれている必要があります。` "MaskConfig": {}` オブジェクトは空である必要があります。

E メールアドレスと米国の運転免許証をマスクするデータ保護ポリシーの例を次に示します。

```
{
    "Name": "data-protection-policy",
    "Description": "test description",
    "Version": "2021-06-01",
    "Statement": [{
            "Sid": "audit-policy",
            "DataIdentifier": [
                "arn:aws:dataprotection::aws:data-identifier/EmailAddress",
                "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US"
            ],
            "Operation": {
                "Audit": {
                    "FindingsDestination": {
                        "CloudWatchLogs": {
                            "LogGroup": "EXISTING_LOG_GROUP_IN_YOUR_ACCOUNT,"
                        },
                        "Firehose": {
                            "DeliveryStream": "EXISTING_STREAM_IN_YOUR_ACCOUNT"
                        },
                        "S3": {
                            "Bucket": "EXISTING_BUCKET"
                        }
                    }
                }
            }
        },
        {
            "Sid": "redact-policy",
            "DataIdentifier": [
                "arn:aws:dataprotection::aws:data-identifier/EmailAddress",
                "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US"
            ],
            "Operation": {
                "Deidentify": {
                    "MaskConfig": {}
                }
            }
        }
    ]
}
```

# データをマスクせずに表示する
<a name="mask-sensitive-log-data-viewunmasked"></a>

データをマスクせずに表示するには、ユーザーに `logs:Unmask` アクセス許可が必要です。このアクセス許可を持つユーザーは、次の方法でデータをマスクせずに表示できます。
+ ログストリームでイベントを表示するときは、**[Display]** (表示)、**[Unmask]** (マスク解除) を選択します。
+ **unmask(@message)** コマンドを含む CloudWatch Logs Insights クエリを使用します。次のクエリ例では、ストリーム内の最新の 20 件のログイベントがマスクされずに表示されます。

  ```
  fields @timestamp, @message, unmask(@message)
  | sort @timestamp desc
  | limit 20
  ```

  CloudWatch Logs Insights コマンドの詳細については、「[CloudWatch Logs Insights 言語のクエリ構文](CWL_QuerySyntax.md)」を参照してください。
+ `unmask` パラメータを含む [GetLogEvents](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogEvents.html) オペレーションまたは [FilterLogEvents](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_FilterLogEvents.html) オペレーションを使用します。

**CloudWatchLogsFullAccess** ポリシーには `logs:Unmask` アクセス許可が含まれています。**CloudWatchLogsFullAccess** を持たないユーザーにカスタム IAM ポリシーをアタッチして、そのユーザーに `logs:Unmask` を許可できます。詳細については、「[ユーザーへのアクセス許可の追加 (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)」を参照してください。

# 監査結果レポート
<a name="mask-sensitive-log-data-audit-findings"></a>

CloudWatch Logs、Amazon S3、または Firehose に監査レポートを書き込むように CloudWatch Logs のデータ保護監査ポリシーを設定した場合、これらの検出結果レポートは以下の例と類似します。CloudWatch Logs は、機密データが含まれるログイベントごとに 1 つの結果レポートを書き込みます。

```
{
    "auditTimestamp": "2023-01-23T21:11:20Z",
    "resourceArn": "arn:aws:logs:us-west-2:111122223333:log-group:/aws/lambda/MyLogGroup:*",
    "dataIdentifiers": [
        {
            "name": "EmailAddress",
            "count": 2,
            "detections": [
                {
                    "start": 13,
                    "end": 26
                },
{
                    "start": 30,
                    "end": 43
                }
            ]
        }
    ]
}
```

レポート内のフィールドは、以下のとおりです。
+ `resourceArn` フィールドには、機密データが見つかったロググループが表示されます。
+ `dataIdentifiers` オブジェクトには、監査している機密データのタイプの 1 つに関する結果が表示されます。
+ `name` フィールドには、このセクションで報告されている機密データのタイプが特定されています。
+ `count` フィールドには、ログイベントでこのタイプの機密データが出現する回数が表示されます。
+ `start` および `end` フィールドには、機密データがログイベントのどこで出現しているかが、出現ごとに文字数で表示されます。

上記の例は、1 つのログイベントで 2 件の E メールアドレスが見つかったレポートです。最初の E メールアドレスは、ログイベントの 13 文字目から始まり、26 文字目で終わります。2 番目のメールアドレスは 30 文字目から 43 文字目までとなっています。このログイベントには 2 件の E メールアドレスがありますが、`LogEventsWithFindings` メトリクスの値は 1 つしかインクリメントされていません。これは、メトリクスが数えているのが機密データの出現回数ではなく、機密データが含まれるログイベントの数だからです。

## で保護された バケットに監査結果を送信するために必要なキーポリシー AWS KMS
<a name="mask-sensitive-log-data-audit-findings-kms"></a>

Amazon S3 バケット内のデータを保護するには、Amazon S3 マネージドキーを使用したサーバー側の暗号化 (SSE-S3)、または KMS キーを使用したサーバー側の暗号化 (SSE-KMS) のいずれかを有効にします。詳細については、Amazon S3 ユーザーガイドの「[サーバー側の暗号化を使用したデータの保護](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html)」を参照してください。

SSE-S3 で保護されているバケットに監査結果を送信した場合、追加の設定は必要ありません。Amazon S3 が暗号化キーを処理します。

SSE-KMS で保護されているバケットに監査結果を送信すると、ログ配信アカウントが S3 バケットに書き込めるように、KMS キーのキーポリシーを更新する必要があります。SSE-KMS での使用に必要なキーポリシーについては、「Amazon CloudWatch Logs ユーザーガイド」の「[Amazon S3 バケットのサーバー側の暗号化](AWS-logs-infrastructure-S3.md#AWS-logs-SSE-KMS-S3)」を参照してください。

# 保護できるデータの種類
<a name="protect-sensitive-log-data-types"></a>

このセクションには、CloudWatch Logs データ保護ポリシーで保護できるデータの種類に関する情報が記載されています。CloudWatch Logs マネージドデータ識別子には、財務データ、個人健康情報 (PHI)、個人を特定できる情報 (PII) を保護するために、事前設定されたデータタイプが用意されています。また、カスタムデータ識別子を使用して、特定のユースケースに合わせたデータ識別子を作成することもできます。

**Contents**
+ [機密データの種類についての CloudWatch Logs マネージドデータ識別子](CWL-managed-data-identifiers.md)
  + [認証情報](protect-sensitive-log-data-types-credentials.md)
    + [認証情報データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-credentials.md#cwl-data-protection-credentials-arns)
  + [デバイス識別子](protect-sensitive-log-data-types-device.md)
    + [デバイスデータタイプのデータ識別子 ARN](protect-sensitive-log-data-types-device.md#cwl-data-protection-devices-arns)
  + [財務情報](protect-sensitive-log-data-types-financial.md)
    + [財務データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-financial.md#cwl-data-protection-financial-arns)
  + [保護対象保健情報 (PHI)](protect-sensitive-log-data-types-health.md)
    + [保護対象の医療情報 (PHI) データタイプのデータ識別子 ARN](protect-sensitive-log-data-types-health.md#cwl-data-protection-phi-arns)
  + [個人を特定できる情報 (PII)](protect-sensitive-log-data-types-pii.md)
    + [運転免許証識別番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-dl-keywords)
    + [国民識別番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-natlid-keywords)
    + [パスポート番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-pii-passport-keywords)
    + [納税者識別と参照番号のキーワード](protect-sensitive-log-data-types-pii.md#CWL-managed-data-identifiers-financial-tin-keywords)
    + [個人を特定できる情報 (PII) のデータ識別子 ARN](protect-sensitive-log-data-types-pii.md#CWL-data-protection-pii-arns)
+ [カスタムデータ識別子](CWL-custom-data-identifiers.md)
  + [SNS カスタムデータ識別子とは](CWL-custom-data-identifiers.md#what-are-custom-data-identifiers)
  + [カスタムデータ識別子の制約](CWL-custom-data-identifiers.md#custom-data-identifiers-constraints)
  + [コンソールでのカスタムデータ識別子の使用](CWL-custom-data-identifiers.md#using-custom-data-identifiers-console)
  + [データ保護ポリシーでカスタムデータ識別子を使用する](CWL-custom-data-identifiers.md#using-custom-data-identifiers)

# 機密データの種類についての CloudWatch Logs マネージドデータ識別子
<a name="CWL-managed-data-identifiers"></a>

このセクションには、マネージドデータ識別子を使用して保護できるデータの種類、およびそれぞれの種類のデータに関連する国と地域に関する情報が記載されています。

機密データの種類によっては、CloudWatch Logs のデータ保護機能でデータと密接に関連するキーワードがないかスキャンされ、そのキーワードが見つかった場合にのみ該当するとみなされます。キーワードが特定のタイプのデータの近くにある必要がある場合は、通常、キーワードはデータから 30 文字以内 (包括的) になければなりません。

キーワードにスペースが含まれている場合、CloudWatch Logs のデータ保護では、スペースを含まないキーワードのバリエーションや、スペースではなくアンダースコア (`_`) またはハイフン (`-`) を含むキーワードのバリエーションが自動的に照合されます。場合によっては、CloudWatch Logs ではキーワードの一般的なバリエーションに対処するためにキーワードを省略形にしたり、省略形のときは元に戻したりします。

次のテーブルでは、CloudWatch Logs でマネージドデータ識別子を使用して検出できる認証情報、デバイス、財務、医療、および保護対象保健情報 (PHI) の種類の一覧を示しています。これらは、個人を特定できる情報 (PII) としても認定される可能性のある特定のタイプのデータに加えたものです。

**言語や地域に依存しないサポート対象の識別子**


| 識別子 | Category | 
| --- | --- | 
|  `Address`  |  個人  | 
|  `AwsSecretKey`  |  認証情報  | 
|  `CreditCardExpiration`  |  金融  | 
|  `CreditCardNumber`  |  金融  | 
|  `CreditCardSecurityCode`  |  金融  | 
|  `EmailAddress`  |  個人  | 
|  `IpAddress`  |  個人  | 
|  `LatLong`  |  個人  | 
|  `Name`  |  個人  | 
|  `OpenSshPrivateKey`  |  認証情報  | 
|  `PgpPrivateKey`  |  認証情報  | 
|  `PkcsPrivateKey`  |  認証情報  | 
|  `PuttyPrivateKey`  |  認証情報  | 
|  `VehicleIdentificationNumber`  |  個人  | 

地域に依存するデータ識別子には、識別子名に続けてハイフンと 2 文字のコード (ISO 3166-1 alpha-2) が必要です。例えば、`DriversLicense-US`。

**2 文字の国コードまたは地域コードを含む必要があるサポート対象の識別子**


| 識別子 | Category | 国と言語 | 
| --- | --- | --- | 
| BankAccountNumber | 金融 |  DE、ES、FR、GB、IT、US  | 
|  CepCode  |  個人  |  BR  | 
|  Cnpj  |  個人  |  BR  | 
|  cpfCode  |  個人  |  BR  | 
|  DriversLicense  |  個人  |  AT、AU、BE、BG、CA、CY、CZ、DE、DK、EE、ES、FI、FR、GB、GR、HR、HU、IE、IT、LT、LU、LV、MT、NL、PL、PT、RO、SE、SI、SK、US  | 
|  DrugEnforcementAgencyNumber  |  健康  |  US  | 
|  ElectoralRollNumber  |  個人  |  GB  | 
|  HealthInsuranceCardNumber  |  健康  |  EU  | 
|  HealthInsuranceClaimNumber  |  健康  |  US  | 
|  HealthInsuranceNumber  |  健康  |  FR  | 
|  HealthcareProcedureCode  |  健康  |  US  | 
|  IndividualTaxIdentificationNumber  |  個人  |  US  | 
|  inSeeCode  |  個人  |  FR  | 
|  MedicareBeneficiaryNumber  |  健康  |  US  | 
|  NationalDrugCode  |  健康  |  US  | 
|  NationalIdentificationNumber  |  個人  |  DE、ES、IT  | 
|  NationalInsuranceNumber  |  個人  |  GB  | 
|  NationalProviderId  |  健康  |  米国  | 
|  NhsNumber  |  健康  |  GB  | 
|  nieNumber  |  個人  |  ES  | 
|  nifNumber  |  個人  |  ES  | 
|  PassportNumber  |  個人  |  CA、DE、ES、FR、GB、IT、US  | 
|  PermanentResidenceNumber  |  個人  |  CA  | 
|  PersonalHealthNumber  |  健康  |  CA  | 
|  PhoneNumber  |  個人  |  BR、DE、ES、FR、GB、IT、US  | 
|  PostalCode  |  個人  |  CA  | 
|  rgNumber  |  個人  |  BR  | 
|  SocialInsuranceNumber  |  個人  |  CA  | 
|  SSN  |  個人  |  es-US  | 
|  TaxID  |  個人  |  DE、ES、FR、GB  | 
|  ZipCode  |  個人  |  米国  | 

# 認証情報
<a name="protect-sensitive-log-data-types-credentials"></a>

CloudWatch Logs のデータ保護では、次の種類の認証情報を検出できます。


| データの種類 | データ識別子 ID | キーワードが必須 | 国とリージョン | 
| --- | --- | --- | --- | 
|  AWS シークレットアクセスキー |  `AwsSecretKey`  |  `aws_secret_access_key`, `credentials`, `secret access key`, `secret key`, `set-awscredential`  |  すべて  | 
|  OpenSSH プライベートキー |  `OpenSSHPrivateKey`  |  なし  |  すべて  | 
|  PGP プライベートキー |  `PgpPrivateKey`  |  なし  |  すべて  | 
|  Pkcs プライベートキー |  `PkcsPrivateKey` |  なし  |  すべて  | 
|  PuTTY プライベートキー |  `PuttyPrivateKey` |  なし  |  すべて  | 

## 認証情報データタイプのデータ識別子 ARN
<a name="cwl-data-protection-credentials-arns"></a>

以下は、データ保護ポリシーに追加できるデータ識別子の Amazon リソースネーム (ARN) のリストを示しています。


| 認証情報データ識別子 ARN | 
| --- | 
| arn:aws:dataprotection::aws:data-identifier/AwsSecretKey | 
| arn:aws:dataprotection::aws:data-identifier/OpenSshPrivateKey | 
| arn:aws:dataprotection::aws:data-identifier/PgpPrivateKey | 
| arn:aws:dataprotection::aws:data-identifier/PkcsPrivateKey | 
| arn:aws:dataprotection::aws:data-identifier/PuttyPrivateKey | 

# デバイス識別子
<a name="protect-sensitive-log-data-types-device"></a>

CloudWatch Logs のデータ保護では、次の種類のデバイス識別子を検出できます。


| データの種類 | データ識別子 ID | キーワードが必須 | 国とリージョン | 
| --- | --- | --- | --- | 
|  IP アドレス |  `IpAddress`  |  なし  |  すべて  | 

## デバイスデータタイプのデータ識別子 ARN
<a name="cwl-data-protection-devices-arns"></a>

以下は、データ保護ポリシーに追加できるデータ識別子の Amazon リソースネーム (ARN) のリストを示しています。


| デバイスデータ識別子 ARN | 
| --- | 
| arn:aws:dataprotection::aws:data-identifier/IpAddress | 

# 財務情報
<a name="protect-sensitive-log-data-types-financial"></a>

CloudWatch Logs のデータ保護では、次の種類の財務情報を検索できます。

データ保護ポリシーを設定すると、CloudWatch Logs では、ロググループがどの地理的位置にあるかに関係なく、指定したデータ識別子がないかスキャンします。この表の**国と地域**列の情報は、データ識別子に 2 文字の国コードを追加して、それらの国や地域に適したキーワードを検出する必要があるかどうかを示しています。


| データの種類 | データ識別子 ID | キーワードが必須 | 国とリージョン | 注意事項 | 
| --- | --- | --- | --- | --- | 
|  銀行口座番号 |  `BankAccountNumber`  |  はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**銀行口座番号のキーワード**の表を参照してください。  |  フランス、ドイツ、イタリア、スペイン、英国、米国  | 国コードなどの要素を含む、最大 34 文字の英数字で構成される国際銀行口座番号 (IBAN) が含まれます。 | 
|  クレジットカードの有効期限 |  `CreditCardExpiration`  |  `exp d`, `exp m`, `exp y`, `expiration`, `expiry`  |  すべて  |  | 
|  クレジットカード番号 |  `CreditCardNumber`  |  `account number`, `american express`, `amex`, `bank card`, `card`, `card number`, `card num`, `cc #`, `ccn`, `check card`, `credit`, `credit card#`, `dankort`, `debit`, `debit card`, `diners club`, `discover`, `electron`, `japanese card bureau`, `jcb`, `mastercard`, `mc`, `pan`, `payment account number`, `payment card number`, `pcn`, `union pay`, `visa`  |  すべて  | 検出では、データは Luhn チェック式に従った 13～19 桁のシーケンスである必要があり、American Express、Dankort、Diner’s Club、Discover、Electron、Japanese Card Bureau (JCB)、Mastercard、UnionPay、Visa のいずれかの種類のクレジットカードに対する標準のカード番号プレフィックスが使用されます。 | 
|  クレジットカード認証コード |  `CreditCardSecurityCode`  |  `card id`, `card identification code`, `card identification number`, `card security code`, `card validation code`, `card validation number`, `card verification data`, `card verification value`, `cvc`, `cvc2`, `cvv`, `cvv2`, `elo verification code`  |  すべて  |  | 

**銀行口座番号のキーワード**

銀行口座番号には、次のキーワードを使用します。これには、国コードなどの要素を含む、最大 34 文字の英数字で構成される国際銀行口座番号 (IBAN) が含まれます。


| Country | キーワード | 
| --- | --- | 
|  フランス |  `account code`, `account number`, `accountno#`, `accountnumber#`, `bban`, `code bancaire`, `compte bancaire`, `customer account id`, `customer account number`, `customer bank account id`, `iban`, `numéro de compte`  | 
|  ドイツ |  `account code`, `account number`, `accountno#`, `accountnumber#`, `bankleitzahl`, `bban`, `customer account id`, `customer account number`, `customer bank account id`, `geheimzahl`, `iban`, `kartennummer`, `kontonummer`, `kreditkartennummer`, `sepa`  | 
|  イタリア |  `account code`, `account number`, `accountno#`, `accountnumber#`, `bban`, `codice bancario`, `conto bancario`, `customer account id`, `customer account number`, `customer bank account id`, `iban`, `numero di conto`  | 
|  スペイン |  `account code`, `account number`, `accountno#`, `accountnumber#`, `bban`, `código cuenta`, `código cuenta bancaria`, `cuenta cliente id`, `customer account ID`, `customer account number`, `customer bank account id`, `iban`, `número cuenta bancaria cliente`, `número cuenta cliente`  | 
|  英国 |  `account code`, `account number`, `accountno#`, `accountnumber#`, `bban`, `customer account ID`, `customer account number`, `customer bank account id`, `iban`, `sepa`  | 
|  アメリカ |  `bank account`, `bank acct`, `checking account`, `checking acct`, `deposit account`, `deposit acct`, `savings account`, `savings acct`, `chequing account`, `chequing acct`  | 

CloudWatch Logs では、クレジットカード発行会社がパブリックテストのために予約している、次のシーケンスの出現はレポートされません。

```
122000000000003, 2222405343248877, 2222990905257051, 2223007648726984, 2223577120017656, 
30569309025904, 34343434343434, 3528000700000000, 3530111333300000, 3566002020360505, 36148900647913, 
36700102000000, 371449635398431, 378282246310005, 378734493671000, 38520000023237, 4012888888881881, 
4111111111111111, 4222222222222, 4444333322221111, 4462030000000000, 4484070000000000, 4911830000000, 
4917300800000000, 4917610000000000, 4917610000000000003, 5019717010103742, 5105105105105100, 
5111010030175156, 5185540810000019, 5200828282828210, 5204230080000017, 5204740009900014, 5420923878724339, 
5454545454545454, 5455330760000018, 5506900490000436, 5506900490000444, 5506900510000234, 5506920809243667, 
5506922400634930, 5506927427317625, 5553042241984105, 5555553753048194, 5555555555554444, 5610591081018250, 
6011000990139424, 6011000400000000, 6011111111111117, 630490017740292441, 630495060000000000, 
6331101999990016, 6759649826438453, 6799990100000000019, and 76009244561.
```

## 財務データタイプのデータ識別子 ARN
<a name="cwl-data-protection-financial-arns"></a>

以下は、データ保護ポリシーに追加できるデータ識別子の Amazon リソースネーム (ARN) のリストを示しています。


| 財務データ識別子 ARN | 
| --- | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-DE | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-FR | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-IT | 
| arn:aws:dataprotection::aws:data-identifier/BankAccountNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/CreditCardExpiration | 
| arn:aws:dataprotection::aws:data-identifier/CreditCardNumber | 
| arn:aws:dataprotection::aws:data-identifier/CreditCardSecurityCode | 

# 保護対象保健情報 (PHI)
<a name="protect-sensitive-log-data-types-health"></a>

CloudWatch Logs のデータ保護では、次の種類の保護対象保健情報 (PHI) が検出できます。

データ保護ポリシーを設定すると、CloudWatch Logs では、ロググループがどの地理的位置にあるかに関係なく、指定したデータ識別子がないかスキャンします。この表の**国と地域**列の情報は、データ識別子に 2 文字の国コードを追加して、それらの国や地域に適したキーワードを検出する必要があるかどうかを示しています。


| データの種類 | データ識別子 ID | キーワードが必須 | 国とリージョン | 
| --- | --- | --- | --- | 
|  麻薬取締局 (DEA) 登録番号 |  `DrugEnforcementAgencyNumber`  |  `dea number`, `dea registration`  |  アメリカ  | 
|  健康保険証番号 (EHIC) |  `HealthInsuranceCardNumber`  |  `assicurazione sanitaria numero`, `carta assicurazione numero`, `carte d’assurance maladie`, `carte européenne d'assurance maladie`, `ceam`, `ehic`, `ehic#`, `finlandehicnumber#`, `gesundheitskarte`, `hälsokort`, `health card`, `health card number`, `health insurance card`, `health insurance number`, `insurance card number`, `krankenversicherungskarte`, `krankenversicherungsnummer`, `medical account number`, `numero conto medico`, `numéro d’assurance maladie`, `numéro de carte d’assurance`, `numéro de compte medical`, `número de cuenta médica`, `número de seguro de salud`, `número de tarjeta de seguro`, `sairaanhoitokortin`, `sairausvakuutuskortti`, `sairausvakuutusnumero`, `sjukförsäkring nummer`, `sjukförsäkringskort`, `suomi ehic-numero`, `tarjeta de salud`, `terveyskortti`, `tessera sanitaria assicurazione numero`, `versicherungsnummer`  |  欧州連合  | 
|  健康保険請求番号 (HICN) |  `HealthInsuranceClaimNumber`  |  `health insurance claim number`, `hic no`, `hic no.`, `hic number`, `hic#`, `hicn`, `hicn#`, `hicno#`  |  アメリカ  | 
|  健康保険または医療識別番号 |  `HealthInsuranceNumber`  |  `carte d'assuré social`, `carte vitale`, `insurance card`   |  フランス  | 
|  ヘルスケア共通手順コーディングシステム (HCPCS) コード |  `HealthcareProcedureCode` |  `current procedural terminology`, `hcpcs`, `healthcare common procedure coding system`   |  アメリカ  | 
|  メディケア受給者番号 (MBN) |  `MedicareBeneficiaryNumber` |  `mbi`, `medicare beneficiary`  |  アメリカ  | 
|  全米医薬品コード (NDC) |  `NationalDrugCode` |  `national drug code`, `ndc`  |  アメリカ  | 
|  国家プロバイダー識別子 (NPI) |  `NationalProviderId` |  `hipaa`, `n.p.i.`, `national provider`, `npi`  |  アメリカ  | 
|  国民保健サービス (NHS) 番号 |  `NhsNumber` |  `national health service`, `NHS`  |  グレートブリテン  | 
|  個人健康管理番号 |  `PersonalHealthNumber` |  `canada healthcare number`, `msp number`, `care number`, `phn`, `soins de santé`   |  カナダ  | 

## 保護対象の医療情報 (PHI) データタイプのデータ識別子 ARN
<a name="cwl-data-protection-phi-arns"></a>

保護対象保健情報 (PHI) データ保護ポリシーで使用できるデータ識別子 Amazon リソースネーム (ARN) を次に示します。


| PHI データ識別子 ARN | 
| --- | 
| arn:aws:dataprotection::aws:data-identifier/DrugEnforcementAgencyNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/HealthcareProcedureCode-US | 
| arn:aws:dataprotection::aws:data-identifier/HealthInsuranceCardNumber-EU | 
| arn:aws:dataprotection::aws:data-identifier/HealthInsuranceClaimNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/HealthInsuranceNumber-FR | 
| arn:aws:dataprotection::aws:data-identifier/MedicareBeneficiaryNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/NationalDrugCode-US | 
| arn:aws:dataprotection::aws:data-identifier/NationalInsuranceNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/NationalProviderId-US | 
| arn:aws:dataprotection::aws:data-identifier/NhsNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/PersonalHealthNumber-CA | 

# 個人を特定できる情報 (PII)
<a name="protect-sensitive-log-data-types-pii"></a>

CloudWatch Logs のデータ保護では、次の種類の個人を特定できる情報 (PII) を検出できます。

データ保護ポリシーを設定すると、CloudWatch Logs では、ロググループがどの地理的位置にあるかに関係なく、指定したデータ識別子がないかスキャンします。この表の**国と地域**列の情報は、データ識別子に 2 文字の国コードを追加して、それらの国や地域に適したキーワードを検出する必要があるかどうかを示しています。


| データの種類 | データ識別子 ID | キーワードが必須 | 国とリージョン | 注意事項 | 
| --- | --- | --- | --- | --- | 
|  生年月日 |  `DateOfBirth`  |  `dob`, `date of birth`, `birthdate`, `birth date`, `birthday`, `b-day`, `bday`  |  いずれか  | Support には、すべての数字や数字と月の名前の組み合わせなど、ほとんどの日付形式が含まれます。日付コンポーネントは、スペース、スラッシュ (/)、またはハイフン (-) で区切ることができます。 | 
|  Código de Endereçamento Postal (CEP) |  `CepCode`  |  `cep`, `código de endereçamento postal`, `codigo de endereçamento postal`  |  ブラジル  |  | 
|  Cadastro Nacional da Pessoa Jurídica (CNPJ) |  `Cnpj`  |  `cadastro nacional da pessoa jurídica`, `cadastro nacional da pessoa juridica`, `cnpj`  |  ブラジル  |  | 
|  Cadastro de Pessoas Físicas (CPF) |  `CpfCode`  |  `Cadastro de pessoas fisicas`, `cadastro de pessoas físicas`, `cadastro de pessoa física`, `cadastro de pessoa fisica`, `cpf`  |  ブラジル  |  | 
|  運転免許証識別番号 |  `DriversLicense`  |  はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**運転免許証識別番号**の表を参照してください。  |  多くの国。詳細については、**運転免許証識別番号**の表を参照してください。  |  | 
|  選挙人名簿番号 |  `ElectoralRollNumber`  |  `electoral #`, `electoral number`, `electoral roll #`, `electoral roll no.`, `electoral roll number`, `electoralrollno`  |  英国  |  | 
|  個人納税者識別 |  `IndividualTaxIdenticationNumber`  |  はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**個人納税者識別番号**の表を参照してください。  |  ブラジル、フランス、ドイツ、スペイン、英国  |  | 
|  国立統計経済研究所 (INSEE) |  `InseeCode`  |  はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**国民識別番号のキーワード**の表を参照してください。  |  フランス  |  | 
|  国民識別番号 |  `NationalIdentificationNumber`  |  はい。詳細については、このセクションの後半にある**国民識別番号のキーワード**の表を参照してください。  |  ドイツ、イタリア、スペイン  | これには、Documento Nacional de Identidad (DNI) 識別子 (スペイン)、Codice fiscale codes (イタリア)、国民 ID カード番号 (ドイツ語) が含まれます。 | 
| 国民保険番号 (NINO) |  `NationalInsuranceNumber`  | insurance no., insurance number,  insurance\$1, national insurance number, nationalinsurance\$1, nationalinsurancenumber, nin, nino | 英国 | – | 
| Número de identidad de extranjero (NIE) |  `NieNumber`  | はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**個人納税者識別番号**の表を参照してください。 | スペイン |  | 
| Número de Identificación Fiscal (NIF) |  `NifNumber`  | はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**個人納税者識別番号**の表を参照してください。 | スペイン |  | 
| パスポート番号 |  `PassportNumber`  | はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**パスポート番号のキーワード**の表を参照してください。 | カナダ、フランス、ドイツ、イタリア、スペイン、英国、米国 |  | 
| 本籍地 |  `PermanentResidenceNumber`  | carte résident permanent, numéro carte résident permanent, numéro résident permanent, permanent resident card, permanent resident card number, permanent resident no,  permanent resident no., permanent resident number, pr no, pr no., pr non, pr number, résident permanent no., résident permanent non | カナダ |  | 
| Phone number (電話番号) |  `PhoneNumber`  |  ブラジル: キーワードには、`cel`、`celular`、`fone`、`móvel`、`número residencial`、`numero residencial`、`telefone` も含まれます。 その他: `cell`、`contact`、`fax`、`fax number`、`mobile`、`phone`、`phone number`、`tel`、`telephone`、`telephone number`  | ブラジル、カナダ、フランス、ドイツ、イタリア、スペイン、英国、米国 | これには、米国の通話料無料の番号とファックス番号が含まれます。キーワードがデータの近くにある場合、番号に国コードを含める必要はありません。キーワードがデータの近くにない場合は、番号に国コードを含める必要があります。 | 
| 郵便番号 |  `PostalCode`  | なし | カナダ |  | 
| Registro Geral (RG) |  `RgNumber`  | はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**個人納税者識別番号**の表を参照してください。 | ブラジル |  | 
| 社会保険番号 (SIN) |  `SocialInsuranceNumber`  | canadian id, numéro d'assurance sociale, social insurance number, sin | カナダ |  | 
| 社会保障番号 (SSN) |  `Ssn`  | スペイン – `número de la seguridad social`、`social security no.`、`social security no`、`número de la seguridad social`、`social security number`、`socialsecurityno#`、`ssn`、`ssn#` 米国 – `social security`、`ss#`、`ssn`  | スペイン、米国 |  | 
| 納税者識別番号または参照番号 |  `TaxId`  | はい。国によって適用されるキーワードは異なります。詳細については、このセクションの後半にある**個人納税者識別番号**の表を参照してください。. | フランス、ドイツ、スペイン、英国 | これには、TIN (フランス)、Steueridentifikationsnummer (ドイツ)、CIF (スペイン)、TRN と UTR (英国) が含まれます。 | 
| ZIP コード |  `ZipCode`  | zip code, zip\$14 | アメリカ | 米国の郵便番号。 | 
| 郵送先住所 |  `Address`  | なし | オーストラリア、カナダ、フランス、ドイツ、イタリア、スペイン、英国、米国 | キーワードは必要ありませんが、検出では、住所には都市または場所の名前および ZIP コードまたは郵便番号を含める必要があります。 | 
| 電子メールアドレス |  `EmailAddress`  | なし | いずれか |  | 
| 全地球測位システム (GPS) 座標 |  `LatLong`  | coordinate, coordinates, lat long,  latitude longitude, location, position | いずれか | CloudWatch Logs では、緯度と経度の座標がペアとして保存され、それらが十進角 (DD) 形式の場合 (例: 41.948614,-87.655311)、GPS 座標を検出できます。サポートには、度 10 進分 (DDM) 形式 (例: 41°56.9168'N 87°39.3187'W)、または、度、分、秒 (DMS) 形式 (例: 41°56'55.0104"N 87°39'19.1196"W) の座標は含まれません。 | 
| フルネーム |  `Name`  | なし | いずれか | CloudWatch Logs で検出できるのはフルネームのみです。Support はラテン文字セットに限定されます。 | 
| 車両識別番号 (VIN) |  `VehicleIdentificationNumber`  | Fahrgestellnummer, niv, numarul de identificare, numarul seriei de sasiu, serie sasiu, numer VIN, Número de Identificação do Veículo,  Número de Identificación de Automóviles, numéro d'identification du véhicule, vehicle identification number, vin, VIN numeris | いずれか | CloudWatch Logs では、17 文字のシーケンスで構成され、ISO 3779 および 3780 規格に従った VIN を検出できます。これらの規格は、世界中で使用するために設計されています。 | 

## 運転免許証識別番号のキーワード
<a name="CWL-managed-data-identifiers-pii-dl-keywords"></a>

さまざまなタイプの運転免許証識別番号を検出するために、CloudWatch Logs では番号に密接に関連するキーワードが必要です。次のテーブルに、CloudWatch Logs で特定の国およびリージョンが認識されるキーワードのリストを示します。


| 国またはリージョン | キーワード | 
| --- | --- | 
| オーストラリア | dl\$1 dl:, dl :, dlno\$1 driver licence, driver license, driver permit, drivers lic., drivers licence, driver's licence, drivers license, driver's license, drivers permit, driver's permit, drivers permit number, driving licence, driving license, driving permit | 
| オーストリア | führerschein, fuhrerschein, führerschein republik österreich, fuhrerschein republik osterreich | 
| ベルギー | fuehrerschein, fuehrerschein- nr, fuehrerscheinnummer, fuhrerschein, führerschein, fuhrerschein- nr, führerschein- nr, fuhrerscheinnummer, führerscheinnummer, numéro permis conduire, permis de conduire, rijbewijs, rijbewijsnummer | 
| ブルガリア | превозно средство, свидетелство за управление на моторно, свидетелство за управление на мпс, сумпс, шофьорска книжка | 
| カナダ | dl\$1, dl:, dlno\$1, driver licence, driver licences, driver license, driver licenses, driver permit, drivers lic., drivers licence, driver's licence, drivers licences, driver's licences, drivers license, driver's license, drivers licenses, driver's licenses, drivers permit, driver's permit, drivers permit number, driving licence, driving license, driving permit, permis de conduire | 
| クロアチア | vozačka dozvola | 
| キプロス | άδεια οδήγησης | 
| チェコ共和国 | číslo licence, císlo licence řidiče, číslo řidičského průkazu, ovladače lic., povolení k jízdě, povolení řidiče, řidiči povolení, řidičský prúkaz, řidičský průkaz | 
| デンマーク | kørekort, kørekortnummer | 
| エストニア | juhi litsentsi number, juhiloa number, juhiluba, juhiluba number | 
| フィンランド | ajokortin numero, ajokortti, förare lic., körkort, körkort nummer, kuljettaja lic., permis de conduire | 
| フランス | permis de conduire | 
| ドイツ | fuehrerschein, fuehrerschein- nr, fuehrerscheinnummer, fuhrerschein, führerschein, fuhrerschein- nr, führerschein- nr, fuhrerscheinnummer, führerscheinnummer | 
| ギリシャ | δεια οδήγησης, adeia odigisis | 
| ハンガリー | illesztőprogramok lic, jogosítvány, jogsi, licencszám, vezető engedély, vezetői engedély | 
| アイルランド | ceadúnas tiomána | 
| イタリア | patente di guida, patente di guida numero, patente guida, patente guida numero | 
| ラトビア | autovadītāja apliecība, licences numurs, vadītāja apliecība, vadītāja apliecības numurs, vadītāja atļauja, vadītāja licences numurs, vadītāji lic. | 
| リトアニア | vairuotojo pažymėjimas | 
| ルクセンブルグ | fahrerlaubnis, führerschäin | 
| マルタ | liċenzja tas-sewqan | 
| オランダ | permis de conduire, rijbewijs, rijbewijsnummer | 
| ポーランド | numer licencyjny, prawo jazdy, zezwolenie na prowadzenie | 
| ポルトガル | carta de condução, carteira de habilitação, carteira de motorist, carteira habilitação, carteira motorist, licença condução, licença de condução, número de licença, número licença, permissão condução, permissão de condução | 
| ルーマニア | numărul permisului de conducere, permis de conducere | 
| スロバキア | číslo licencie, číslo vodičského preukazu, ovládače lic., povolenia vodičov, povolenie jazdu, povolenie na jazdu, povolenie vodiča, vodičský preukaz | 
| スロベニア | vozniško dovoljenje | 
| スペイン | carnet conducer, el carnet de conducer, licencia conducer, licencia de manejo, número carnet conducer, número de carnet de conducer, número de permiso conducer, número de permiso de conducer, número licencia conducer, número permiso conducer, permiso conducción, permiso conducer, permiso de conducción | 
| スウェーデン |  ajokortin numero, dlno\$1 ajokortti, drivere lic., förare lic., körkort, körkort nummer, körkortsnummer, kuljettajat lic.  | 
| 英国 | dl\$1, dl:, dlno\$1, driver licence, driver licences, driver license, driver licenses, driver permit, drivers lic., drivers licence, driver's licence, drivers licences, driver's licences, drivers license, driver's license, drivers licenses, driver's licenses, drivers permit, driver's permit, drivers permit number, driving licence, driving license, driving permit | 
| アメリカ | dl\$1, dl:, dlno\$1, driver licence, driver licences, driver license, driver licenses, driver permit, drivers lic., drivers licence, driver's licence, drivers licences, driver's licences, drivers license, driver's license, drivers licenses, driver's licenses, drivers permit, driver's permit, drivers permit number, driving licence, driving license, driving permit | 

## 国民識別番号のキーワード
<a name="CWL-managed-data-identifiers-pii-natlid-keywords"></a>

さまざまなタイプの国民識別番号を検出するために、CloudWatch Logs では番号に密接に関連するキーワードが必要です。これには、Documento Nacional de Identidad (DNI) 識別子 (スペイン)、フランス国立統計経済研究所 (INSEE) コード、ドイツの国民 ID カード番号、Registro Geral (RG) 番号 (ブラジル) が含まれます。

次のテーブルに、CloudWatch Logs で特定の国およびリージョンが認識されるキーワードのリストを示します。


| 国またはリージョン | キーワード | 
| --- | --- | 
| ブラジル | registro geral, rg | 
| フランス | assurance sociale, carte nationale d’identité, cni, code sécurité sociale, French social security number, fssn\$1, insee, insurance number, national id number, nationalid\$1, numéro d'assurance, sécurité sociale, sécurité sociale non., sécurité sociale numéro, social, social security, social security number, socialsecuritynumber, ss\$1, ssn, ssn\$1 | 
| ドイツ | ausweisnummer, id number, identification number, identity number, insurance number, personal id, personalausweis | 
| イタリア | codice fiscal, dati anagrafici, ehic, health card, health insurance card, p. iva, partita i.v.a., personal data, tax code, tessera sanitaria | 
| スペイン | dni, dni\$1, dninúmero\$1, documento nacional de identidad, identidad único, identidadúnico\$1, insurance number, national identification number, national identity, nationalid\$1, nationalidno\$1, número nacional identidad, personal identification number, personal identity no, unique identity number, uniqueid\$1 | 

## パスポート番号のキーワード
<a name="CWL-managed-data-identifiers-pii-passport-keywords"></a>

さまざまなタイプのパスポート番号を検出するために、CloudWatch Logs では番号に密接に関連するキーワードが必要です。次のテーブルに、CloudWatch Logs で特定の国およびリージョンが認識されるキーワードのリストを示します。


| 国またはリージョン | キーワード | 
| --- | --- | 
| カナダ | passeport, passeport\$1, passport, passport\$1, passportno, passportno\$1 | 
| フランス | numéro de passeport, passeport, passeport\$1, passeport \$1, passeportn °, passeport n °, passeportNon, passeport non | 
| ドイツ | ausstellungsdatum, ausstellungsort, geburtsdatum, passport, passports, reisepass, reisepass–nr, reisepassnummer | 
| イタリア | italian passport number, numéro passeport, numéro passeport italien, passaporto, passaporto italiana, passaporto numero, passport number, repubblica italiana passaporto | 
| スペイン | españa pasaporte, libreta pasaporte, número pasaporte, pasaporte, passport, passport book, passport no, passport number, spain passport | 
| 英国 | passeport \$1, passeport n °, passeportNon, passeport non, passeportn °, passport \$1, passport no, passport number, passport\$1, passportid | 
| アメリカ | passport, travel document | 

## 納税者識別と参照番号のキーワード
<a name="CWL-managed-data-identifiers-financial-tin-keywords"></a>

さまざまなタイプの納税者識別番号と参照番号を検出するために、CloudWatch Logs では番号に密接に関連するキーワードが必要です。次のテーブルに、CloudWatch Logs で特定の国およびリージョンが認識されるキーワードのリストを示します。


| 国またはリージョン | キーワード | 
| --- | --- | 
| ブラジル | cadastro de pessoa física, cadastro de pessoa fisica, cadastro de pessoas físicas, cadastro de pessoas fisicas, cadastro nacional da pessoa jurídica, cadastro nacional da pessoa juridica, cnpj, cpf | 
| フランス | numéro d'identification fiscale, tax id, tax identification number, tax number, tin, tin\$1 | 
| ドイツ | identifikationsnummer, steuer id, steueridentifikationsnummer, steuernummer, tax id, tax identification number, tax number | 
| スペイン | cif, cif número, cifnúmero\$1, nie, nif, número de contribuyente, número de identidad de extranjero, número de identificación fiscal, número de impuesto corporativo, personal tax number, tax id, tax identification number, tax number, tin, tin\$1 | 
| 英国 | paye, tax id, tax id no., tax id number, tax identification, tax identification\$1, tax no., tax number, tax reference, tax\$1, taxid\$1, temporary reference number, tin, trn, unique tax reference, unique taxpayer reference, utr | 
| アメリカ | 個別の納税者識別番号、itin、i.t.i.n。 | 

## 個人を特定できる情報 (PII) のデータ識別子 ARN
<a name="CWL-data-protection-pii-arns"></a>

次の表は、データ保護ポリシーに追加できる個人を特定できる情報 (PII) データ識別子の Amazon リソースネーム (ARN) のリストを示しています。


| PII データ識別子 ARN | 
| --- | 
| arn:aws:dataprotection::aws:data-identifier/Address | 
| arn:aws:dataprotection::aws:data-identifier/CepCode-BR | 
| arn:aws:dataprotection::aws:data-identifier/Cnpj-BR | 
| arn:aws:dataprotection::aws:data-identifier/CpfCode-BR | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-AT | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-AU | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-BE | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-BG | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-CA | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-CY | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-CZ | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-DE | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-DK | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-EE | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-ES | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-FI | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-FR | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-GB | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-GR | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-HR | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-HU | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-IE | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-IT | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-LT | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-LU | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-LV | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-MT | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-NL | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-PL | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-PT | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-RO | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-SE | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-SI | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-SK | 
| arn:aws:dataprotection::aws:data-identifier/DriversLicense-US | 
| arn:aws:dataprotection::aws:data-identifier/ElectoralRollNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/EmailAddress | 
| arn:aws:dataprotection::aws:data-identifier/IndividualTaxIdentificationNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/InseeCode-FR | 
| arn:aws:dataprotection::aws:data-identifier/LatLong | 
| arn:aws:dataprotection::aws:data-identifier/Name | 
| arn:aws:dataprotection::aws:data-identifier/NationalIdentificationNumber-DE | 
| arn:aws:dataprotection::aws:data-identifier/NationalIdentificationNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/NationalIdentificationNumber-IT | 
| arn:aws:dataprotection::aws:data-identifier/NieNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/NifNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-CA | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-DE | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-FR | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-IT | 
| arn:aws:dataprotection::aws:data-identifier/PassportNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/PermanentResidenceNumber-CA | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-BR | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-DE | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-ES | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-FR | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-GB | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-IT | 
| arn:aws:dataprotection::aws:data-identifier/PhoneNumber-US | 
| arn:aws:dataprotection::aws:data-identifier/PostalCode-CA | 
| arn:aws:dataprotection::aws:data-identifier/RgNumber-BR | 
| arn:aws:dataprotection::aws:data-identifier/SocialInsuranceNumber-CA | 
| arn:aws:dataprotection::aws:data-identifier/Ssn-ES | 
| arn:aws:dataprotection::aws:data-identifier/Ssn-US | 
| arn:aws:dataprotection::aws:data-identifier/TaxId-DE | 
| arn:aws:dataprotection::aws:data-identifier/TaxId-ES | 
| arn:aws:dataprotection::aws:data-identifier/TaxId-FR | 
| arn:aws:dataprotection::aws:data-identifier/TaxId-GB | 
| arn:aws:dataprotection::aws:data-identifier/VehicleIdentificationNumber | 
| arn:aws:dataprotection::aws:data-identifier/ZipCode-US | 

# カスタムデータ識別子
<a name="CWL-custom-data-identifiers"></a>

**Topics**
+ [SNS カスタムデータ識別子とは](#what-are-custom-data-identifiers)
+ [カスタムデータ識別子の制約](#custom-data-identifiers-constraints)
+ [コンソールでのカスタムデータ識別子の使用](#using-custom-data-identifiers-console)
+ [データ保護ポリシーでカスタムデータ識別子を使用する](#using-custom-data-identifiers)

## SNS カスタムデータ識別子とは
<a name="what-are-custom-data-identifiers"></a>

カスタムデータ識別子 (CDI) を使用すると、データ保護ポリシーで使用できる独自のカスタム正規表現を定義できます。カスタムデータ識別子を使用すると、[マネージドデータ識別子](CWL-managed-data-identifiers.md)では提供できないビジネス固有の個人を特定できる情報 (PII) のユースケースをターゲットにすることができます。たとえば、カスタムデータ識別子を使用すると、会社固有の従業員 ID を検索できます。カスタムデータ識別子は、マネージドデータ ID と組み合わせて使用できます。

## カスタムデータ識別子の制約
<a name="custom-data-identifiers-constraints"></a>

CloudWatch Logs カスタムデータ識別子には、以下の制限があります。
+ 各データ保護ポリシーに使用できるカスタムデータ識別子は最大 10個です。
+ カスタムデータ識別子名に使用できるのは 128 文字までです。以下の文字がサポートされています。
  + 英数字: (a-zA-Z0-9)
  + 記号: ( '\$1' \$1 '-' )
+ RegEx の最大長は 200 文字です。以下の文字がサポートされています。
  + 英数字: (a-zA-Z0-9)
  + 記号: ( '\$1' \$1 '\$1' \$1 '=' \$1 '@' \$1'/' \$1 ';' \$1 ',' \$1 '-' \$1 ' ' )
  + RegEx 予約文字: ( '^' \$1 '\$1' \$1 '?' \$1 '[' \$1 ']' \$1 '\$1' \$1 '\$1' \$1 '\$1' \$1 '\$1\$1' \$1 '\$1' \$1 '\$1' \$1 '.' ) 
+ カスタムデータ識別子は、マネージドデータ識別子と同じ名前を共有することはできません。
+ カスタムデータ識別子は、アカウントレベルのデータ保護ポリシーまたはロググループレベルのデータ保護ポリシーで指定できます。マネージドデータ識別子と同様に、アカウントレベルのポリシーで定義されたカスタムデータ識別子は、ロググループレベルのポリシーで定義されたカスタムデータ識別子との組み合わせにより機能します。

## コンソールでのカスタムデータ識別子の使用
<a name="using-custom-data-identifiers-console"></a>

CloudWatch コンソールを使用してデータ保護ポリシーを作成または編集する場合、カスタムデータ識別子を指定するには、データ識別子の名前と正規表現を入力します。例えば、名前には **Employee\$1ID** と入力し、正規表現として **EmployeeID-\$1d\$19\$1** を入力します。この正規表現は、`EmployeeID-` の後に 9 つの数値を持つログイベントを検出してマスクします。例: `EmployeeID-123456789`

## データ保護ポリシーでカスタムデータ識別子を使用する
<a name="using-custom-data-identifiers"></a>

 AWS CLI または AWS API を使用してカスタムデータ識別子を指定する場合は、データ保護ポリシーの定義に使用される JSON ポリシーにデータ識別子名と正規表現を含める必要があります。次のデータ保護ポリシーは、会社固有の従業員 ID を含むログイベントを検出およびマスクします。

1. データ保護ポリシー内で `Configuration` ブロックを作成します。

1. カスタムデータ識別子の `Name` を入力します。例えば、**EmployeeId**。

1. カスタムデータ識別子の `Regex` を入力します。例えば、**EmployeeID-\$1d\$19\$1**。この正規表現は、`EmployeeID-` の後に 9 桁の `EmployeeID-` を含むログイベントと一致します。例: `EmployeeID-123456789` 

1. ポリシーステートメントで、以下のカスタムデータ識別子を参照します。

   ```
   {
       "Name": "example_data_protection_policy",
       "Description": "Example data protection policy with custom data identifiers",
       "Version": "2021-06-01",
       "Configuration": {
         "CustomDataIdentifier": [
           {"Name": "EmployeeId", "Regex": "EmployeeId-\\d{9}"}   
         ]
       },
       "Statement": [
           {
               "Sid": "audit-policy",
               "DataIdentifier": [
                   "EmployeeId"
               ],
               "Operation": {
                   "Audit": {
                       "FindingsDestination": {
                           "S3": {
                               "Bucket": "EXISTING_BUCKET"
                           }
                       }
                   }
               }
           },
           {
               "Sid": "redact-policy",
               "DataIdentifier": [
               "EmployeeId"
               ],
               "Operation": {
                   "Deidentify": {
                       "MaskConfig": {
                       }
                   }
               }
           }
       ]
   }
   ```

1. (オプション) 必要に応じて、`Configuration` ブロックにさらに **カスタムデータ識別子**を追加します。現在、データ保護ポリシーでは最大 10 個のカスタムデータ識別子を使用できます。