Criando URLs assinados para o Amazon CloudFront

Versão curta: como criar URLs assinados "sob demanda" para imitar o comportamento X-Accel-Redirect do Nginx (ou seja, proteger downloads) com o Amazon CloudFront / S3 usando Python.

Eu tenho um servidor Django instalado e funcionando com um front-end Nginx. Eu tenho sido martelado com solicitações e recentemente tive que instalá-lo como umTornado Aplicativo WSGI para evitar travamentos no modo FastCGI.

Agora estou tendo um problema com o servidor ficando atolado (ou seja, a maior parte de sua largura de banda está sendo usada) devido a muitas solicitações de mídia feitas a ele, estive pesquisando CDNs e acredito que o Amazon CloudFront / S3 seria a solução adequada para mim.

Eu tenho usado o cabeçalho X-Accel-Redirect do Nginx para proteger os arquivos contra downloads não autorizados, mas não tenho essa capacidade com o CloudFront / S3 - no entanto, eles oferecem URLs assinados. Eu não sou um especialista em Python de longe e definitivamente não sei como criar um URL assinado corretamente, então esperava que alguém tivesse um link para tornar esses URLs "sob demanda" ou estaria disposto a explicar como aqui, seria muito apreciado.

Além disso, esta é a solução adequada, mesmo? Eu não estou muito familiarizado com CDNs, existe um CDN que seria mais adequado para isso?

questionAnswers(5)

yourAnswerToTheQuestion