Azure – Getting a StorageException (403: Forbidden) on CloudStorageContainer GetContainerReference method

azure, azure-blob-storage, azure-storage-emulator

I'm running the following code in a unit test against Azure's Storage Emulator and receiving a StorageException when I attempt to create the container:

var connectionString = @"DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==";var account = CloudStorageAccount.Parse(connectionString);var client = account.CreateCloudBlobClient();var container = client.GetContainerReference("my-container");container.CreateIfNotExists();

The Storage Emulator is running and the Blob service is supposedly running at:

http://127.0.0.1:10000/

The exception is:

Microsoft.WindowsAzure.Storage.StorageException : The remote server
returned an error: (403) Forbidden.

Any thoughts? Is this possible from a unit test?

Best Solution

Please change your connection string from:

var connectionString = @"DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==";

to

var connectionString = "UseDevelopmentStorage=true";

That should take care of the problem you're facing.