I think you are mistaken. Currently best way to handle images for user is to upload directly to S3 via JS -> Save the S3 id to db -> Resize on the fly via aws lambda.
This doesn't seem secure. How are you confident you don't allow people to misuse your s3 bucket?
[1]: http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOS...