何百ものビデオがあるウェブサイトを開発しようとしています。ここで私が欲しいのは、ビデオにお金を払った顧客がビデオを見ることだけができるということです。すべての動画は AWS s3 バケットにアップロードされ、バケットの動画には署名付き URL を使用する必要があります。
次のような URL が生成されます。
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
上記の署名付き URL を JW プレーヤーに追加するだけでビデオが再生されます。他のユーザーは、ブラウザでこの URL を呼び出すか、この URL を JW プレーヤーに配置するだけで、このビデオを視聴することもできます。AWS が自分のウェブサイトからのみユーザー固有の URL アクセスを許可するようにします。
ユーザー「A」がビデオ「X」に 10 ドルを支払い、署名済み URL「A」が割り当てられているとします。ビデオ「X」の SO 署名付き URL「A」は、ユーザー「A」のみがアクセスできます。ユーザー「A」は、私のウェブサイトにログインしていない場合、その AWS URL を使用できません。
特定の AWS S3 バケットに割り当てられたビデオ URL は、ユーザーがシステムにログインし、そのビデオを購入した場合にのみアクセスできます。