

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

# Amazon OpenSearch Service の保管中のデータの暗号化
<a name="encryption-at-rest"></a>

OpenSearch Service ドメインでは、保管中のデータの暗号化という、データへの不正アクセスを防止するのに役立つセキュリティ機能が提供されます。この機能では、暗号化キーの保存と管理に AWS Key Management Service (AWS KMS) を使用し、暗号化を実行するために 256 ビットキー (AES-256) を使用する Advanced Encryption Standard アルゴリズムを使用します。有効にすると、この機能によりドメインの次の要素が暗号化されます。
+ すべてのインデックス (UltraWarm ストレージのものを含む)
+ OpenSearch ログ
+ スワップファイル
+ アプリケーションディレクトリのその他すべてのデータ
+ 自動スナップショット

以下は、保管中のデータの暗号化を有効にするときに暗号化*されません*が、追加のステップを行って保護することができます。
+ 手動スナップショット: 現在、 AWS KMS キーを使用して手動スナップショットを暗号化することはできません。ただし、S3 で管理されたキーまたは KMS キーによるサーバー側の暗号化を使用してスナップショットリポジトリとして使用しているバケットを暗号化できます。手順については、「[手動スナップショットレポジトリの登録](managedomains-snapshot-registerdirectory.md)」を参照してください。
+ スローログとエラーログ: [ログを発行](createdomain-configure-slow-logs.md)して暗号化する場合は、OpenSearch Service ドメインと同じ AWS KMS キーを使用して CloudWatch Logs ロググループを暗号化できます。詳しくは、*Amazon CloudWatch Logs ユーザーガイド*の[AWS Key Management Serviceを使用して CloudWatch Logs のログデータを暗号化する](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)を参照してください。

**注記**  
UltraWarm またはコールドストレージがドメインで有効になっている場合は、既存のドメインで保管中の暗号化を有効にすることはできません。まず UltraWarm またはコールドストレージを無効にし、保管中の暗号化を有効にしてから、UltraWarm またはコールドストレージを再度有効にする必要があります。UltraWarm またはコールドストレージにインデックスを保持したい場合は、UltraWarm またはコールドストレージを無効にする前に、それらのインデックスをホットストレージに移動する必要があります。

OpenSearch Service は、対称暗号化 KMS キーのみをサポートしており、非対称暗号化 KMS キーはサポートしていません。対称キーを作成する方法については、「*AWS Key Management Service デベロッパーガイド*」の「[Create a KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)」を参照してください。

保存時の暗号化が有効になっているかどうかにかかわらず、すべてのドメインは AES-256 または OpenSearch Service 管理キーを使用して[カスタムパッケージ](custom-packages.md)を自動的に暗号します。

## アクセス許可
<a name="permissions-ear"></a>

OpenSearch Service コンソールを使用して保管中のデータの暗号化を設定するには、次のアイデンティティベースのポリシーなど AWS KMS、 への読み取りアクセス許可が必要です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:List*",
        "kms:Describe*"
      ],
      "Resource": "*"
    }
  ]
}
```

------

 AWS 所有キー以外のキーを使用する場合は、キーの[許可](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)を作成するアクセス許可も必要です。通常、これらの許可は、キーの作成時に指定するリソースベースのポリシーの形式になります。

キーを OpenSearch Service 固有にする場合、キーポリシーに [kms:ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-via-service) 条件を追加できます。

```
"Condition": {
  "StringEquals": {
    "kms:ViaService": "es.{{us-west-1}}.amazonaws.com"
  },
  "Bool": {
    "kms:GrantIsForAWSResource": "true"
  }
}
```

詳細については、「*AWS Key Management Service デベロッパーガイド*」の「[AWS KMSでのキーポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)」を参照してください。

## 保管中のデータの暗号化の有効化
<a name="enabling-ear"></a>

新しいドメインでの保管中のデータの暗号化には OpenSearch または Elasticsearch 5.1 以降が必要です。既存のドメインでそれを有効にするには、OpenSearch または Elasticsearch 6.7 以降が必要です。

**保管中のデータの暗号化を有効にするには (コンソール)**

1.  AWS コンソールでドメインを開き、**アクション**と**セキュリティ設定の編集**を選択します。

1. **暗号化**した状態で、**保管中のデータの暗号化を有効にする**を選択します。

1. 使用する AWS KMS キーを選択し、**変更の保存**を選択します。

設定 API を使って、暗号化を有効にすることもできます。次のリクエストは、既存ドメインで保存中のデータの暗号化を有効にします。

```
{
   "ClusterConfig":{
      "EncryptionAtRestOptions":{
         "Enabled": true,
         "KmsKeyId":"arn:aws:kms:us-east-1:123456789012:alias/my-key"
      }
   }
}
```

## KMS キーを無効化または削除
<a name="disabled-key"></a>

ドメインの暗号化に使用したキーを無効化または削除すると、そのドメインにアクセスできなくなります。OpenSearch サービスが、KMS キーにアクセスできないことを[通知](managedomains-notifications.md)します。すぐにキーを再度有効にして、ドメインにアクセスします。

キーが削除された場合、OpenSearch Service チームはデータの復旧をサポートできません。 は、少なくとも 7 日間の待機期間後にのみキー AWS KMS を削除します。キーの削除が保留中の場合は、削除をキャンセルするか、[手動スナップショット](managedomains-snapshots.md)を取って、ドメインのデータの損失を防ぎます。

## 保管中のデータの暗号化の無効化
<a name="disabling-ear"></a>

保管中のデータを暗号化するようにドメインを設定した後、設定を無効にすることはできません。代わりに、既存のドメインの[手動スナップショット](managedomains-snapshots.md)を作成し、[別のドメインを作成](createupdatedomains.md#createdomains)してからデータを移行して、古いドメインを削除することができます。

## 保管中のデータを暗号化するドメインのモニタリング
<a name="monitoring-ear"></a>

保管中のデータを暗号化するドメインには、`KMSKeyError` と `KMSKeyInaccessible` の 2 つの追加のメトリクスがあります。これらのメトリクスは、ドメインの暗号化キーに問題が発生した場合にのみ表示されます。これらのメトリクスの詳細については、「[クラスターメトリクス](managedomains-cloudwatchmetrics.md#managedomains-cloudwatchmetrics-cluster-metrics)」を参照してください。OpenSearch Service コンソールまたは Amazon CloudWatch コンソールのいずれかを使用して表示できます。

**ヒント**  
各メトリクスは、ドメインの重大な問題を表しているため、両方の CloudWatch アラームを作成することをお勧めします。詳細については、「[Amazon OpenSearch Service で推奨される CloudWatch アラーム](cloudwatch-alarms.md)」を参照してください。

## その他の考慮事項
<a name="ear-considerations"></a>
+ 自動キーローテーションは AWS KMS キーのプロパティを保持するため、ローテーションは OpenSearch データにアクセスする機能には影響しません。暗号化された OpenSearch Service ドメインは、新しいキーの作成と古いキーのすべてのレファレンスの更新を含むマスターキーローテーションをサポートしません。詳細については、 *AWS Key Management Service デベロッパーガイド*の[AWS KMS 「キーのロー](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)テーション」を参照してください。
+ 特定のインスタンスタイプは、保管中のデータの暗号化をサポートしていません。詳細については、「[Amazon OpenSearch Service でサポートされるインスタンスタイプ](supported-instance-types.md)」を参照してください。
+ 保管中のデータを暗号化するドメインでは、自動スナップショット用に別のリポジトリ名を使用します。詳細については、「[スナップショットの復元](managedomains-snapshot-restore.md)」を参照してください。
+ 静止時に暗号化を有効にすることを強くお勧めしますが、CPU オーバーヘッドが増加し、数ミリ秒の遅延が発生する可能性があります。ただし、ほとんどのユースケースはこれらの違いに敏感ではなく、影響の大きさは、クラスター、クライアント、および使用プロファイルの構成によって異なります。