I've found several options online to allow my customers to give me data that I want to eventually process. I want them to upload to S3. What is the best option? Ideally this would be done programmatically. With them to have the option to upload whenever they please.
Give them a presigned URL every day that lasts X amount of time, but we I don't know when they'll upload
Use AWS Transfer, but I can't find any specific article to give external users access
Create a simple website using Cognito for them to upload, but this isn't programmatic
Create a trust relationship from their AWS account to mine, but this requires their application to be running in AWS
Something else I don't know about
This seems like a pretty common problem to solve, but the struggle is real.