

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

# Kinesis Video Streams でのデータ保護
<a name="how-kms"></a>

Amazon Kinesis Video Streams で保管中のデータを暗号化することで、 AWS Key Management Service () キーを使用したサーバー側の暗号化 (SSE AWS KMS) を使用して、厳格なデータ管理要件を満たすことができます。

**Topics**
+ [Kinesis Video Streams のサーバー側の暗号化とは](#what-is-sse-akvs)
+ [コスト、リージョン、およびパフォーマンスに関する考慮事項](#costs-performance-akvs)
+ [サーバー側の暗号化の使用開始方法](#getting-started-with-sse-akvs)
+ [カスタマーマネージドキーの作成と使用](#creating-using-sse-master-keys-akvs)
+ [カスタマーマネージドキーを使用するためのアクセス許可](#permissions-user-key-KMS-akvs)

## Kinesis Video Streams のサーバー側の暗号化とは
<a name="what-is-sse-akvs"></a>

サーバー側の暗号化は、Kinesis Video Streams の機能であり、指定したキーを使用して AWS KMS 保管時にデータを保存する前に自動的に暗号化します。データが Kinesis Video Streams ストリームストレージレイヤーに書き込まれる前に暗号化され、ストレージから取得された後で復号されます。その結果、Kinesis Video Streams サービス内で保管中のデータは常に暗号化されます。

サーバー側の暗号化を使用すると、Kinesis ビデオストリームプロデューサーとコンシューマーは KMS キーや暗号化オペレーションを管理する必要はありません。データ保持が有効になっている場合、データは Kinesis Video Streams に出入りするときに自動的に暗号化されるため、保管中のデータは暗号化されます。 は、サーバー側の暗号化機能で使用されるすべてのキー AWS KMS を提供します。 は AWS、 AWS KMS サービスにインポートされたユーザー指定の AWS KMS キーである Kinesis Video Streams の KMS キーの使用を AWS KMS ストリーミングします。

## コスト、リージョン、およびパフォーマンスに関する考慮事項
<a name="costs-performance-akvs"></a>

サーバー側の暗号化を適用すると、 AWS KMS API の使用とキーコストが適用されます。カスタム AWS KMS キーとは異なり、デフォルトの KMS `aws/kinesisvideo` キーは無料で提供されます。ただし、お客様に代わって Kinesis Video Streams で発生した API の使用コストを支払う必要があります。

API の使用コストは、カスタムキーを含むすべての KMS キーに適用されます。 AWS KMS コストは、データプロデューサーとコンシューマーで使用するユーザー認証情報の数に応じて変動します。各ユーザー認証情報には一意の API コールが必要なためです AWS KMS。

以下は、リソース別の料金の説明です。

**キー**
+ ( AWS エイリアス = `aws/kinesisvideo`) によって管理される Kinesis Video Streams の KMS キーには料金はかかりません。
+ ユーザー生成の KMS キーには AWS KMS key コストがかかります。詳細については、「[AWS Key Management Service 料金](https://aws.amazon.com/kms/pricing/#Keys)」を参照してください。

### AWS KMS API の使用
<a name="api-usage"></a>

トラフィックの増加に応じて新しいデータ暗号化キーを生成する、または既存の暗号化キーを取得する API リクエスト。 AWS KMS 使用コストがかかります。詳細については、[AWS Key Management Service 「 料金: 使用状況](https://aws.amazon.com/kms/pricing/#Usage)」を参照してください。

Kinesis Video Streams が、保持期間が「0」(保持期間なし) に設定されている場合でもキーリクエストを生成します。

### リージョン別のサーバー側暗号化の利用可能性
<a name="sse-regions-akvs"></a>

Kinesis Video Streams のサーバー側の暗号化は、Kinesis Video Streams AWS リージョン が利用可能なすべての で使用できます。

## サーバー側の暗号化の使用開始方法
<a name="getting-started-with-sse-akvs"></a>

サーバー側の暗号化は、Kinesis Video Streams で常に有効になります。ストリームの作成時にユーザー提供のキーが指定されていない場合は、 AWS マネージドキー (Kinesis Video Streams が提供する) が使用されます。

ユーザー提供の KMS キーは、作成時に Kinesis ビデオストリームに割り当てる必要があります。後で [UpdateStream](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_UpdateStream.html) API を使用してストリームに別のキーを割り当てることはできません。

ユーザー提供の KMS キーを Kinesis ビデオストリームに割り当てるには、次の 2 つの方法があります。
+ で Kinesis ビデオストリームを作成するときは AWS マネジメントコンソール、**新しいビデオストリームの作成**ページの**暗号化**タブで KMS キーを指定します。
+ [CreateStream](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_CreateStream.html) API を使用して Kinesis ビデオストリームを作成する際に、`KmsKeyId` パラメータでキー ID を指定します。

## カスタマーマネージドキーの作成と使用
<a name="creating-using-sse-master-keys-akvs"></a>

このセクションでは、Amazon Kinesis Video Streams によって管理されるキーを使用する代わりに、独自の KMS キーを作成して使用する方法について説明します。

### カスタマーマネージドキーの作成
<a name="creating-sse-master-keys-akvs"></a>

独自のキーを作成する方法については、「 *AWS Key Management Service デベロッパーガイド*」の[「キーの作成](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)」を参照してください。アカウントのキーを作成すると、Kinesis Video Streams サービスはこれらの**キーをカスタマーマネージド**キーリストに返します。

### カスタマーマネージドキーを使用する
<a name="using-sse-master-keys-akvs"></a>

コンシューマー、プロデューサー、管理者に正しいアクセス許可が適用されたら、独自の AWS アカウント または別の でカスタム KMS キーを使用できます AWS アカウント。アカウントのすべての KMS キーは、 コンソールの**カスタマーマネージドキー**リストに表示されます。

別のアカウントにあるカスタム KMS キーを使用するには、それらのキーを使用するためのアクセス許可が必要です。また、`CreateStream` API を使用してストリームを作成する必要もあります。コンソールで作成されたストリームでは、異なるアカウントの KMS キーを使用することはできません。

**注記**  
KMS キーは、 `PutMedia` または `GetMedia`オペレーションが実行されるまでアクセスされません。その結果、次のことが起こります。  
指定したキーが存在しない場合、`CreateStream`オペレーションは成功しますが、ストリームに対する`GetMedia`オペレーション`PutMedia`は失敗します。
指定されたキー (`aws/kinesisvideo`) を使用する場合、最初の `PutMedia` または `GetMedia`オペレーションが実行されるまで、キーはアカウントに存在しません。

## カスタマーマネージドキーを使用するためのアクセス許可
<a name="permissions-user-key-KMS-akvs"></a>

カスタマーマネージドキーでサーバー側の暗号化を使用する前に、ストリームの暗号化とストリームレコードの暗号化と復号を許可するように KMS キーポリシーを設定する必要があります。アクセス AWS KMS 許可の例と詳細については、[AWS KMS 「API のアクセス許可: アクションとリソースのリファレンス](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html)」を参照してください。

**注記**  
暗号化にデフォルトのサービスキーを使用する場合、カスタム IAM アクセス許可を適用する必要はありません。

カスタマーマネージドキーを使用する前に、Kinesis ビデオストリームプロデューサーとコンシューマー (IAM プリンシパル) が AWS KMS デフォルトのキーポリシーのユーザーであることを確認します。ユーザーになっていない場合は、ストリームに対する読み取りと書き込みが失敗し、最終的にはデータの損失、処理の遅延、またはアプリケーションのハングにつながる可能性があります。IAM ポリシーを使用して KMS キーの許可を管理できます。詳細については、「 [での IAM ポリシーの使用 AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html)」を参照してください。

### プロデューサーのアクセス許可の例
<a name="example-producer-permissions-akvs"></a>

Kinesis ビデオストリームプロデューサーには `kms:GenerateDataKey` アクセス許可が必要です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Effect": "Allow",
        "Action": [
            "kms:GenerateDataKey"
        ],
        "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    }, 
    {
        "Effect": "Allow",
        "Action": [
            "kinesisvideo:PutMedia"
        ],
        "Resource": "arn:aws:kinesisvideo:*:123456789012:stream/MyStream/*"
    }
  ]
}
```

------

### コンシューマーのアクセス許可の例
<a name="example-consumer-permissions-akvs"></a>

Kinesis ビデオストリームコンシューマーには `kms:Decrypt` アクセス許可が必要です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Effect": "Allow",
        "Action": [
            "kms:Decrypt"
        ],
        "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    }, 
    {
        "Effect": "Allow",
        "Action": [
            "kinesisvideo:GetMedia"
        ],
        "Resource": "arn:aws:kinesisvideo:*:123456789012:stream/MyStream/*"
    }
  ]
}
```

------