J'écris un petit script pour localiser un fichier spécifique dans un compartiment sur aws et créer une URL temporairement authentifiée à envoyer à mes collègues. (Idéalement, cela créerait un résultat similaire à un clic droit sur un fichier dans un compartiment de la console et en copiant l'adresse du lien).Comment générer une URL sécurisée pour télécharger un fichier à partir de s3 en utilisant Ruby aws/s3 Gem
J'ai regardé dans un trombone, qui ne semble pas répondre à ce critère, mais je ne pouvais tout simplement pas être conscient de ses capacités complètes.
J'ai essayé les éléments suivants:
def authenticated_url(file_name, bucket) AWS::S3::S3Object.url_for(file_name, bucket, :secure => true, :expires => 20*60) end
qui a produit ce type de résultat:
...-1.amazonaws.com/file_path/file.zip.AWSAccessKeyId={key}Expires=1200&Signature={...}
Y at-il un moyen de créer une URL sécurisée plus similaire au scénario décrit ci-dessus qui pourrait être simplement envoyé en tant que lien? Sinon, toute alternative sécurisée serait la bienvenue.
Merci pour la direction, mais j'obtiens "NoMethodError: méthode indéfinie' minutes 'pour 20: Fixnum "quand j'exécute cette solution, et par la suite" NoMethodError: méthode non définie 'url_for'" quand j'enlève minutes.from_now. Est-ce parce que j'utilise "require 'aws/s3'" et "require 'aws-sdk'"? (Je m'excuse si c'est une question novice, je suis encore très novice, j'apprécie votre patience) – LFoos24
Ah, j'ai manqué où c'était un script, et non Rails. Laissez-moi essayer certaines choses et je mettrai à jour ma réponse. – messick