Amazon S3용 SigV4를 사용한 작업 - AWS Elemental MediaTailor

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

Amazon S3용 SigV4를 사용한 작업

Amazon S3용 서명 버전 4 (SigV4) 는 Amazon S3에 대한 요청을 인증하는 데 사용되는 서명 프로토콜입니다. HTTPS Amazon S3용 SigV4를 사용하는 경우, 오리진으로 사용되는 Amazon S3 버킷에 대한 HTTPS 요청에 서명된 권한 부여 헤더를 MediaTailor 포함하십시오. 서명된 승인 헤더가 유효하면 오리진이 요청을 이행합니다. 유효하지 않으면 요청이 실패합니다.

SigV4에 대한 일반 정보는 Amazon S3 참조의 요청 인증 (AWS서명 버전 4) 항목을 참조하십시오. AWS Key Management Service API

참고

MediaTailor 항상 SigV4를 사용하여 이러한 오리진에 대한 요청에 서명합니다.

요구 사항

원본 위치에 대해 Amazon S3 인증을 위한 SigV4를 활성화하는 경우 다음 요구 사항을 충족해야 합니다.

MediaTailor SigV4 서명 오리진 요청

Amazon S3, 채널 어셈블리, V2를 비롯한 유효한 AWS 오리진에서 MediaTailor 보낸 요청에 SigV4 서명을 사용할 수 있습니다. MediaPackage 이렇게 하면 오리진이 요청을 보낸 사람을 알 수 있고 액세스를 MediaTailor 요청으로만 제한할 수 있습니다. MediaTailor 액세스를 MediaTailor 요청으로만 제한하지 않으면 다른 MediaTailor 고객이 자체 MediaTailor 재생 구성을 통해 오리진에 액세스할 수 있습니다.

요청에 서명할 오리진은 채널 어셈블리와 MediaPackage V2입니다 AWS Key Management Service. 오리진은 다음과 URLs 같아야 합니다.


mediapackagev2.<region>.amazonaws.com

channel-assembly.mediatailor.<region>.amazonaws.com

s3.<region>.amazonaws.com

중요

https를 사용하여 오리진에 URLs 대한 요청에 서명하세요. 오리진이 사용하도록 구성되지 않은 경우 HTTPS MediaTailor SigV4로 오리진 요청에 서명하지 않습니다.

액세스를 제한하는 오리진 IAM 정책 예시 MediaTailor

다음 IAM 정책은 액세스를 MediaTailor 제한하는 방법의 예를 보여줍니다.

Amazon S3

계정 범위 지정:

{ "Effect": "Allow", "Principal": {"Service": "mediatailor.amazonaws.com"}, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::mybucket/*", "Condition": { "StringEquals": {"AWS:SourceAccount": "123456789012"} } }

재생 구성으로 범위 지정: ARN

{ "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::mybucket/*", "Condition": { "StringEquals": { "AWS:SourceArn”: “arn:aws:mediatailor:us-west-2:123456789012:playbackConfiguration/test” } } }

MediaPackage V2

계정 범위 지정:

{ "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": “mediapackagev2:GetObject", "Resource": "arn:aws:mediapackagev2:us-west-2:123456789012:channelGroup/emp-origin-channel-group/channel/emp-origin-channel/originEndpoint/emp-origin-endpoint", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" } } }

재생 구성으로 범위 지정: ARN

{ "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": “mediapackagev2:GetObject", "Resource": "arn:aws:mediapackagev2:us-west-2:123456789012:channelGroup/emp-origin-channel-group/channel/emp-origin-channel/originEndpoint/emp-origin-endpoint", "Condition": { "StringEquals": { "AWS:SourceArn”: “arn:aws:mediatailor:us-west-2:123456789012:playbackConfiguration/test” } } }

채널 어셈블리

계정 범위 지정:

{ "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": “mediatailor:GetManifest", "Resource": "arn:aws:mediatailor:us-west-2:123456789012:channel/ca-origin-channel", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" } } }

재생 구성으로 범위 지정: ARN

{ "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": “mediatailor:GetManifest", "Resource": "arn:aws:mediatailor:us-west-2:123456789012:channel/ca-origin-channel", "Condition": { "StringEquals": { "AWS:SourceArn”: “arn:aws:mediatailor:us-west-2:123456789012:playbackConfiguration/test” } } }