Question: Azure provides shared access signatures ([[1](http://msdn.microsoft.com/en-us/library/windowsazure/ee395415.aspx)], [[2](http://msdn.microsoft.com/en-us/library/windowsazure/dn140255.aspx)], [[3](http://msdn.microsoft.com/en-us/library/windowsazure/dn140256.aspx)]) that can delegate access (read/write) to specific blobs/containers/tables/queues in an Azure Storage account using an access key generated through the REST API. Does AWS offer a similar feature?

Answer: 
Equivalent for shared access signature in Amazon AWS is [`Query String Authentication`](http://docs.aws.amazon.com/AmazonS3/latest/dev/S3_QSAuth.html) however it is only for Amazon S3 (equivalent to Windows Azure Blob Storage). AWS does not have anything similar to shared access signature for SimpleDB/DynamoDB (counterpart of Windows Azure Table Storage) and Simple Queue Service (counterpart of Windows Azure Queue Service). 

I also did a comparison between Amazon AWS and Windows Azure Storage Services (S3 v/s Blob Storage etc.) in a series of blog posts which you can read here: <http://gauravmantri.com/?s=Amazon+Comparing>. Thought you might find it useful.
I haven't tried it yet but looks like pre-signed URLs are the thing: See the "Amazon S3: Getting a pre-signed URL for a PUT operation with a specific payload" section of <http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/node-examples.html>