Accessing Windows Azure Blobs Using Custom Storage Domain Names

Today we are releasing the ability to access Windows Azure Blobs using custom domain names. Windows Azure Blob storage enables applications to store and manipulate large objects and files in the cloud.

The custom storage domain name feature allows you to register a custom domain name for a given storage account for anonymous blob access using that domain name. Currently we provide access to blob storage using the following domain name:

http://<account>.blob.core.windows.net/<container>/<blobname>

But if I owned a domain called “toddlers.wingtiptoys.com”, I may instead want my blobs accessible via:

http://toddlers.wingtiptoys.com/<container>/<blobname>

When registering a custom storage domain name, you can use that domain name to access the contents of a public container instead of http://<account>.blob.core.windows.net/. For example, given a public container “images” for a storage account named “toys”, we register the custom domain name “toddlers.wingtiptoys.com” for that storage account. This allows us to access the blobs in that container using either:

  • http://toys.blob.core.windows.net/images/
  • http://toddlers.wingtiptoys.com/images/

If we also had additional public containers for our “toys” storage account called “onsale” and “blogs” they could also be accessed via:

  • http://toddlers.wingtiptoys.com/onsale/
  • http://toddlers.wingtiptoys.com/blogs/

Follow these steps to register and use a custom storage domain name:

  1. Go to the Windows Azure Developer Portal
  2. Click on your storage account
  3. Click on “Manage” your domain name for your storage account endpoint.
  4. Enter your custom domain name.
  5. To complete the register of your custom domain name you will be asked to verify that you own the domain. You will be asked to register for your “custom.domain.name” a CNAME record from “<guid>.custom.domain.name” to “domainnameverification.windows.azure.com”, where the <guid> is specified by us in the portal.
  6. Once you have registered that CNAME, then click on validate in the portal for the storage account endpoint. Windows Azure will then validate that the CNAME record exists, and if successful your custom domain name will be registered.

To use the custom storage domain name:

  1. Create a CNAME record from “custom.domain.name” to “<account>.blob.core.windows.net”
  2. Make the containers you want to provide anonymous access for public containers using the following blob API:
    http://msdn.microsoft.com/en-us/library/dd179391.aspx
  3. You can then begin providing access to your blobs with http://custom.domain.name/

Additional information:

  • A storage account can have only one custom domain name registered for it.
  • The custom domain name currently can only be used to access blobs that are in public blob containers, which are made available for anonymous access. At PDC 2009, we will allow custom domain access to also be used for authenticated access to Windows Azure Blobs.
  • Custom storage domain name access only works for HTTP. HTTPS access is not supported.
  • A custom domain name can be registered for only one storage account at a time. For example, one cannot register the domain name “toddlers.wingtiptoys.com” for two different Windows Azure storage accounts at the same time.
  • You can register overlapping domain names for different storage accounts. For example, the following domain names can be registered at the same time for different storage accounts:
    • http://toddlers.wingtiptoys.com/
    • http://age3.toddlers.wingtiptoys.com/

Stay tuned for more information about Windows Azure Blobs and additional new and exciting features at PDC 2009.

 

Brad Calder
Windows Azure Storage