I'm using the following upload component:
with Ember (obviously) which has S3 support but all example of signatures require a separate server. As my project is server-less and uses lambda/api gateway, I would like to create a lambda to do the job. I've searched everywhere but can't find a working example or clear enough information that would allow me to port it. Has anyone been successful in doing this?
There are lots of insecure examples with secrets on the client but the uploads must be secure for this project and are therefore unacceptable.
This may not answer your question directly but I think this is strongly related and may help you anyway: If you are using AWS Cognito to authorize your users before uploading content to S3, you could grant that Cognito user the permission to upload content to S3 directly without using presigned URLs. I just googled a bit and found a nice article describing exactly my thoughts: http://engineering.hipolabs.com/serverless-file-upload-with-aws-cognito-and-s3/