pode Amazon ser usado para servidor descarregamento de arquivos estáticos para um Ruby on Rails app, mas ainda suporta a autenticação e autorização do aplicativo?

StackOverflow https://stackoverflow.com/questions/1478609

Pergunta

Can um dos serviços da Amazon (o seu serviço de dados S3, ou não) ser usado para servidor descarregamento de arquivos estáticos para um Ruby on Rails app, mas ainda suporta a autenticação e autorização do aplicativo?

Isso é tal que quando o navegador do usuário baixou o HTML inicial para uma página do aplicativo Ruby on Rails, quando ele voltou para conteúdo estático (por exemplo, um arquivo de imagem ou CSS), que este pedido seria: (A) encaminhada directamente para o serviço Amazon (não há ciclos RoR utilizados para servi-lo, ou largura de banda), MAS (B) a pedido do browser para este item (por exemplo, uma imagem) ainda teria que passar por uma camada de autenticação / autorização com base no modelo do usuário na aplicação Ruby on Rails - em outras palavras, para garantir não apenas qualquer um poderia obter a imagem. ..

graças

Foi útil?

Solução

A resposta é um sim com um mas. Você pode usar um recurso do S3 que lhe permite criar links para fixar objetos S3 que tem um pequeno tempo para viver, o padrão é de 5 minutos. Isto irá funcionar para qualquer objeto S3 que é carregado como privado. Isto significa que o navegador só terá X segundos ou o que quer que para solicitar o arquivo de S3. código de exemplo de docs para a gema AWS:

S3Object.url_for('beluga_baby.jpg', 'marcel_molina')

Você também pode especificar um expires_in ou expirar opção por arquivo. A única coisa ruim é que você precisa criar um ajudante para a sua folha de estilo, imagem e links js para criar o bom S3 URLs. Eu recomendaria que você configure um nome de domínio para seu balde S3, como "examples3.amazonaws.com" e colocar todos os seus arquivos de imagem padrão e CSS lá como público. Em seguida, defina-o como o anfitrião de ativos em seus trilhos de configuração. Em seguida, use apenas as ligações seguras para arquivos estáticos que realmente necessitam.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top