Here’s a quick tip I recently learned from my friend, and Cerebrata evangelist, Mike Wood . . .
When using Cerebrata’s Azure Management Studio to work with Windows Azure blob storage, you need to explicitly tell AMS to retrieve the access permissions for blob containers. By default, AMS will only list the containers.
To make this tool even more useful, instruct AMS to retrieve the permissions when listing the containers.
- Under the “Tools” menu at the top, select “Options”.
- In the “Options” window, go to the “Blob” tab.
- In the “Blob behaviour” section, check the box next to “Fetch Blob Container ACL when listing Blob Containers”.
This will instruct AMS to get the permissions and thus color highlight the containers. Ooooh . . . pretty colors!
How is AMS getting this info to know what the permission is for the containers? Simple – it’s just calling into the Windows Azure storage API. The Get Container ACL operation retrieves the blob container permissions. If we open Fiddler and take a look at the requests AMS is making, we can see 4 requests for my example – one to retrieve the list of containers and one for each of the containers.
Let’s look at just the request to get the ACL for the “myimages” container.
Notice the “x-ms-blob-public-access” response header. It is set to “Container”. This indicates full public read access for the container and blob data. Therefore, AMS colors this container a lovely shade of green.
A word to the wise – there is a reason why this option is not enabled in Azure Management Studio by default. If the storage account contains many containers, this could result in many extra requests to Windows Azure to determine the ACL – one roundtrip per container. This could slow down your time to view all the containers. If you just have a few containers, it’s probably not a big deal as this request/response dance happens pretty fast.
So that didn’t exactly turn out to be a quick tip. But, still hopefully useful. Enjoy!