I need to provide individuals with their financial statement, and I am using S3. So far what I am doing is making the file public-read and creating a unique Key, using uuid.uuid4().
Would this be acceptable, or how else could I make this more secure? Sending authentication keys for each individual is not an option.
Have you considered generating expiring urls for the files on S3.