Используя Azure Powershell v1.3, я пытаюсь создать новый контекст хранения, используя существующий токен подписки общего доступа, который ссылается на существующую политику. Когда я называю New-AzureStorageContext
с -SasToken
и -StorageAccountName
я получаю сообщение об ошибке:Как я могу вызвать New-AzureStorageContext, используя -SasToken вместо -StorageAccountKey
PS C:\> $ctx = New-AzureStorageContext -SasToken '?sr=c&sv=2015-02-21&si=ReadOnly&sig=<signature omitted>=&api-version=2015-04-05' -StorageAccountName 'mystorageaccount'
New-AzureStorageContext : An item with the same key has already been added.
At line:1 char:8
Я чувствую, что я получаю формат маркера SAS неправильно, или я отсутствует шаг или параметр, но нет примеров того, что он должен выглядеть так, и это единственная форма SAS, которую я смог запросить у Azure.
Примечание. Я не хочу использовать New-AzureStorageAccountSASToken
(что все примеры используют), поскольку у меня уже есть токен и просто хочу использовать его для целей только для чтения, поэтому мне не нужно использовать ключи учетной записи хранилища , Для создания нового потребуется разрешение, которое я не хочу иметь этого клиента.
Каков недостающий синтаксис/шаг?
Я не 100% уверен, но я думаю, что это выглядит как ошибка в PowerShell командлетов. Если мой токен SAS имеет параметр api-version', я получаю ту же ошибку, что и вы. Если я удалю его, ошибка исчезнет. Я использовал токен SAS с «api-версией» и без него, и он работал отлично. –
На самом деле это ошибка в библиотеке клиентов хранилища! –