Kinesis Video Streams의 데이터 보호 - Amazon Kinesis Video Streams

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

Kinesis Video Streams의 데이터 보호

Amazon Kinesis Video Streams에 저장된 데이터를 암호화하여 엄격한 데이터 관리 요구 사항을 충족하기 위해 AWS Key Management Service (AWS KMS) 키를 사용하는 서버 측 암호화 (SSE) 를 사용할 수 있습니다.

Kinesis Video Streams의 서버 측 암호화란 무엇입니까?

서버 측 암호화는 Kinesis Video Streams의 기능으로, 데이터가 저장되기 전에 사용자가 지정한 암호화를 사용하여 데이터를 자동으로 암호화합니다. AWS KMS 데이터는 Kinesis Video Streams 스트림 스토리지 계층에 기록되기 전에 암호화되고 스토리지에서 검색된 후에 복호화됩니다. 따라서 Kinesis Video Streams 서비스 내에서 저장된 데이터는 항상 암호화됩니다.

서버 측 암호화를 사용하면 Kinesis 비디오 스트림 제작자와 소비자가 KMS 키 또는 암호화 작업을 관리할 필요가 없습니다. 데이터 보존이 활성화된 경우 Kinesis Video Streams에 들어오고 나가는 데이터가 자동으로 암호화되므로 저장된 데이터가 암호화됩니다. AWS KMS 서버 측 암호화 기능에 사용되는 모든 키를 제공합니다. AWS KMS 서비스로 가져온 사용자 지정 키인 Kinesis Video Streams에서 KMS AWS KMS 키를 효율적으로 사용할 수 있도록 합니다. AWS AWS KMS

비용, 지역 및 성능 고려 사항

서버 측 암호화를 적용할 때는 AWS KMS API 사용 및 키 비용이 적용됩니다. 사용자 지정 AWS KMS 키와 달리 (Default) aws/kinesis-video KMS 키는 무료로 제공됩니다. 하지만 Kinesis Video Streams에서 발생하는 API 사용 비용은 여전히 사용자 대신 지불해야 합니다.

API 사용 비용은 사용자 지정 키를 포함한 모든 KMS 키에 적용됩니다. 각 사용자 자격 증명에는 고유한 API 호출이 필요하기 때문에 데이터 생산자와 소비자에게 사용하는 사용자 자격 증명의 수에 따라 AWS KMS 비용이 조정됩니다. AWS KMS

다음은 리소스별 비용에 대한 설명입니다.

  • (별칭 aws/kinesis-video =) 에서 관리하는 AWS Kinesis Video Streams의 KMS 키에는 요금이 부과되지 않습니다.

  • 사용자 생성 KMS 키에는 비용이 부과됩니다. AWS KMS key 자세한 내용은 AWS Key Management Service 요금을 참조하십시오.

AWS KMS API 사용

새 데이터 암호화 키를 생성하거나 기존 암호화 키를 검색하기 위한 API 요청은 트래픽이 증가함에 따라 증가하며 AWS KMS 사용 비용이 부과됩니다. 자세한 내용은 AWS Key Management Service 요금: 사용량을 참조하십시오.

Kinesis Video Streams는 보존이 0 (보존 없음) 으로 설정된 경우에도 주요 요청을 생성합니다.

지역별 서버 측 암호화 사용 가능 여부

Kinesis 비디오 스트림의 서버 측 암호화는 Kinesis Video Streams가 제공되는 모든 곳에서 사용할 수 있습니다. AWS 리전

서버 측 암호화를 시작하려면 어떻게 해야 하나요?

Kinesis Video Streams에서는 서버 측 암호화가 항상 활성화되어 있습니다. 스트림이 생성될 때 사용자 제공 키가 지정되지 않은 경우 기본 키 (Kinesis Video Streams에서 제공) 가 사용됩니다.

사용자가 제공한 KMS 키는 Kinesis 비디오 스트림이 생성될 때 해당 스트림에 할당되어야 합니다. 나중에 UpdateStreamAPI를 사용하여 스트림에 다른 키를 할당할 수 없습니다.

다음 두 가지 방법으로 사용자가 제공한 KMS 키를 Kinesis 비디오 스트림에 할당할 수 있습니다.

  • 에서 Kinesis 비디오 스트림을 생성할 때는 새 비디오 스트림 생성 페이지의 암호화 탭에서 KMS 키를 지정합니다. AWS Management Console

  • CreateStreamAPI를 사용하여 Kinesis 비디오 스트림을 생성할 때는 파라미터에 키 ID를 지정하십시오. KmsKeyId

사용자 생성 KMS 키 생성 및 사용

이 섹션에서는 Amazon Kinesis Video Streams에서 관리하는 키를 사용하는 대신 자체 KMS 키를 생성하고 사용하는 방법을 설명합니다.

사용자 생성 KMS 키 생성

키를 직접 생성하는 방법에 대한 자세한 내용은 AWS Key Management Service 개발자 안내서의 키 생성을 참조하십시오. 계정용 키를 생성하면 Kinesis Video Streams 서비스가 KMS 마스터 키 목록에 이러한 키를 반환합니다.

사용자 생성 KMS 키 사용

소비자, 생산자, 관리자에게 올바른 권한이 적용된 후에는 사용자 지정 KMS 키를 자체적으로 AWS 계정 사용하거나 다른 키에서 사용할 수 있습니다. AWS 계정계정의 모든 KMS 키는 콘솔의 KMS 마스터 키 목록에 표시됩니다.

다른 계정에 있는 사용자 지정 KMS 키를 사용하려면 해당 키를 사용할 권한이 있어야 합니다. 또한 CreateStream API를 사용하여 스트림을 생성해야 합니다. 콘솔에서 만든 스트림에서는 다른 계정의 KMS 키를 사용할 수 없습니다.

참고

PutMedia또는 GetMedia 작업을 수행할 때까지는 KMS 키에 액세스할 수 없습니다. 결과는 다음과 같습니다.

  • 지정한 키가 존재하지 않는 경우 CreateStream 작업은 성공하지만 PutMedia 스트림에서의 GetMedia 작업은 실패합니다.

  • 제공된 키 (aws/kinesis-video) 를 사용하는 경우 첫 번째 PutMedia 또는 GetMedia 작업이 수행될 때까지 키가 계정에 표시되지 않습니다.

사용자 생성 KMS 키를 사용할 수 있는 권한

사용자 생성 KMS 키로 서버 측 암호화를 사용하려면 먼저 스트림의 암호화와 스트림 레코드의 암호화 및 암호 해독을 허용하도록 KMS 키 정책을 구성해야 합니다. 권한에 대한 예와 자세한 내용은 AWS KMS API AWS KMS 권한: 작업 및 리소스 참조를 참조하십시오.

참고

암호화에 기본 서비스 키를 사용할 때는 사용자 지정 IAM 권한을 적용할 필요가 없습니다.

사용자 생성 KMS 키를 사용하기 전에 Kinesis 비디오 스트림 제작자 및 소비자 (IAM 보안 주체) 가 마스터 키 정책의 사용자인지 확인하십시오. AWS KMS 그렇지 않으면 스트림에서 읽기 및 쓰기가 실패하여 궁극적으로 데이터 손실, 처리 지연 또는 애플리케이션 중단이 발생할 수 있습니다. IAM 정책을 사용하여 KMS 키 권한을 관리할 수 있습니다. 자세한 내용은 IAM 정책 사용을 참조하십시오. AWS KMS

프로듀서 권한 예시

Kinesis 비디오 스트림 제작자는 다음과 같은 허가를 받아야 합니다. kms:GenerateDataKey

{ "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": [ "kinesis-video:PutMedia", ], "Resource": "arn:aws:kinesis-video:*:123456789012:MyStream" } ] }

소비자 권한 예시

Kinesis 비디오 스트림 소비자는 다음과 같은 권한을 가져야 합니다. kms:Decrypt

{ "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": [ "kinesis-video:GetMedia", ], "Resource": "arn:aws:kinesis-video:*:123456789012:MyStream" } ] }