Получение исключения StorageException (403: Forbidden) в методе CloudStorageContainer GetContainerReference

Я запускаю следующий код в модульном тесте эмулятора хранилища Azure и получаю исключение StorageException при попытке создать контейнер:

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();

Эмулятор хранилища запущен, и служба BLOB-объектов предположительно работает по адресу:

http://127.0.0.1:10000/

Исключение составляет:

Microsoft.WindowsAzure.Storage.StorageException: удаленный сервер вернул ошибку: (403) Запрещено.

Есть предположения? Возможно ли это из модульного теста?


person Sambo    schedule 06.07.2013    source источник


Ответы (2)


Пожалуйста, измените строку подключения с:

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

to

var connectionString = "UseDevelopmentStorage=true";

Это должно решить проблему, с которой вы столкнулись.

person Gaurav Mantri    schedule 06.07.2013
comment
Если кто-то посмотрит на это, ошибка аутентификации может привести к промаху. В моем случае я получал такую ​​​​ошибку из-за использования обратной косой черты, а не косой черты. - person Steven; 08.07.2013
comment
В SDK 2.2 эта строка подключения возвращает ошибку 400 (неверный запрос). Это должно работать с 2.2? - person Dave Hanna; 21.12.2013

container.SetPermissions(
                    new BlobContainerPermissions
                    {
                        PublicAccess =
                            BlobContainerPublicAccessType.Blob
                    });

При инициализации подключения. Но сначала используйте клиент для хранилища и измените разрешение контейнера с помощью клиента.

Работает на меня ;)

person Jonathan Molina    schedule 30.03.2016