I'm trying to develop a website which has hundreds and hundreds of videos. Here what I want is a customer who has paid for video can only watch the video. All the videos will be uploaded on AWS s3 bucket and I have to use a signed url for the bucket video.
It will generate url like :
https://s3-us-west-1.amazonaws.com/test/test.mp4?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA123123123JSH7T7Z4QEPOPEYA%2F20160909%2Fus-west-1%2Fs3%2Faws4_request&X-Amz-Date=20160909T115345Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3000&X-Amz-Signature=testestsetset
Videos will be played by just adding above signed URL into a JW Player, other user can also watch this video by just simply calling this URL in browser or placing this url in JW player. I want AWS allow a user specific URL access only through my website.
Let's say User "A" has paid $10 for Video "X" and he has Signed URL "A" is assigned to him. SO signed URL "A" for Video "X" only access by User "A", User "A" can not use that AWS url if he is not logged in into my website.
A specific AWS S3 bucket assigned video url is only accessible when user is login to my system and he has purchased that video.