Actualmente estoy usando un lambda para crear enlaces firmados para mi depósito s3, y se supone que estos enlaces tienen un tiempo de vencimiento de 24 horas. Sin embargo, cuando verifico el enlace devuelto, todos los tiempos de caducidad se establecen en 15 minutos. Cambié la configuración de CORS en el servidor s3 a 86400 (24 horas), pero parece que eso no lo solucionó. Sin embargo, la recuperación de archivos funciona perfectamente bien.
Estoy usando javascript s3 sdk para hacer esto, a continuación se muestra el código que crea la URL firmada. ¿Qué puedo hacer para que acepte el tiempo de expiración?
var EXPIRY_IN_SECONDS = 3600 * 24; // 24 hour function createSignedDownloadUrl(options, callback) { if (!options || !options.fileName ) { return callback(new Error('Invalid input.')); } var containsSpecialChars = /[^\u0000-\u00ff]/g.test(options.fileName); var contentDisposition; if (containsSpecialChars) { contentDisposition = 'inline; filename*=UTF-8\'\''+ encodeURIComponent(options.fileName); } else { contentDisposition = 'inline; filename="'+ options.fileName + '"; filename*=UTF-8\'\''+ encodeURIComponent(options.fileName); } var getObjectParams = { Bucket: options.s3Bucket, Key: options.s3Key, Expires: EXPIRY_IN_SECONDS, ResponseContentDisposition: contentDisposition, }; s3.getSignedUrl('getObject', getObjectParams, callback); }