Соединение с файловым ресурсом Azure с помощью MSI не работает

Я пытаюсь подключиться к файловому ресурсу Azure, но выдает ошибку аутентификации.

AzureServiceTokenProvider tokenProvider = new AzureServiceTokenProvider();
string accessToken = await tokenProvider.GetAccessTokenAsync("https://storage.azure.com/", "");

log.LogInformation(accessToken);
TokenCredential tokenCredential = new TokenCredential(accessToken);
StorageCredentials storageCredentials = new StorageCredentials(tokenCredential);

Uri fileAddress = new Uri("File URI");
CloudFile sourceFile = new CloudFile(fileAddress, storageCredentials);
log.LogInformation(await sourceFile.DownloadTextAsync());

Ошибка: убедитесь, что значение заголовка авторизации сформировано правильно, включая подпись.

Тот же подход работает для хранилища BLOB-объектов Azure.

Я назначил роль Участник общего ресурса SMB данных файлов хранилища управляемой идентификации моей функции Azure.

Дайте мне знать, если вам понадобится дополнительная информация.

Спасибо за помощь.




Ответы (1)


Тот же подход работает для хранилища BLOB-объектов Azure.

Хранилище Azure не поддерживает использование AAD для авторизации хранилища файлов.

Служба хранилища Azure поддерживает использование Azure Active Directory (Azure AD) для авторизации запросов к Хранилище BLOB-объектов и очередей.

Служба файлов Azure поддерживает авторизацию с помощью Azure AD через SMB только для виртуальных машин, присоединенных к домену. Чтобы узнать об использовании Azure AD через SMB для файлов Azure, см. Обзор авторизации Azure Active Directory через SMB для файлов Azure.

person Joey Cai    schedule 21.01.2020
comment
Спасибо за объяснение. Я подключил общий файловый ресурс Azure с помощью строки подключения. - person Vivek Patel; 22.01.2020