

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 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 KMS 서비스로 가져온 AWS사용자 지정 키인에서 관리하는 Kinesis Video Streams에 대한 KMS AWS KMS 키 사용을 AWS KMS 간소화합니다.

## 비용, 리전 및 성능 고려 사항
<a name="costs-performance-akvs"></a>

서버 측 암호화를 적용하면 AWS KMS API 사용 및 키 비용이 부과됩니다. 사용자 지정 AWS KMS 키와 달리 기본 `aws/kinesisvideo` KMS 키는 무료로 제공됩니다. 그러나 Kinesis Video Streams가 사용자를 대신하여 발생시키는 API 사용 비용은 여전히 지불해야 합니다.

API 사용 비용은 사용자 지정 키를 포함한 모든 KMS 키에 적용됩니다. 각 사용자 자격 증명에는 고유한 API 호출이 필요하므로 AWS KMS 비용은 데이터 생산자 및 소비자에서 사용하는 사용자 자격 증명 수에 따라 조정됩니다 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 비디오 스트림의 서버 측 암호화는 Kinesis 비디오 스트림을 사용할 수 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를 사용하여 스트림에 다른 키를 할당할 수 없습니다.

다음 두 가지 방법으로 Kinesis 비디오 스트림에 사용자 제공 KMS 키를 할당할 수 있습니다.
+ 에서 Kinesis 비디오 스트림을 생성할 때 **새 비디오 스트림 생성** 페이지의 **암호화** 탭에서 KMS 키를 AWS Management Console지정합니다.
+ [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 키를 생성하고 사용하는 방법을 설명합니다.

### 고객 관리형 키 생성
<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 키를 사용할 수 없습니다.

**참고**  
`PutMedia` 또는 `GetMedia` 작업이 수행될 때까지 KMS 키에 액세스할 수 없습니다. 결과는 다음과 같습니다.  
지정한 키가 없으면 `CreateStream` 작업은 성공하지만 스트림의 `PutMedia` 및 `GetMedia` 작업은 실패합니다.
제공된 키(`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/*"
    }
  ]
}
```

------