В целях безопасности предварительно подписанные URL-адреса имеют срок действия, связанный с ними, который можно указать при создании предварительно подписанного URL-адреса. Для времени истечения минимальное значение, которое вы можете установить, равно 1, а максимальное - 604800 (семь дней). (См. https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html)
Хотя вы еще не упомянули, какое время истечения установлено для ваших предварительно подписанных URL-адресов, в целом подход к созданию URL-адреса, его сохранению в базе данных и его использованию в приложении неизбежен. Вам следует рассмотреть возможность вычисления URL-адреса на лету (путем сохранения сведений о местоположении файла) или оптимизации его путем отслеживания истечения срока действия URL-адреса (у вас может быть поле времени истечения в вашей базе данных) и обновления URL-адреса по мере необходимости