2016-07-28 31 views
0

要創建SAS令牌是目的和爲前提設定期望的存儲作爲當前的存儲需要:的Set-AzureRmCurrentStorageAccount拋出錯誤資源組沒有發現

運行下面的命令

Set-AzureRmCurrentStorageAccount -ResourceGroupName $StorResourceGroupName -Name $StorageAccountName 

拋出錯誤:

Set-AzureRmCurrentStorageAccount : The Resource 'Microsoft.Storage/storageAccounts/yoursites' under resource group 'Default-Storage-EastUS' was not found. At line:1 char:1 + Set-AzureRmCurrentStorageAccount -ResourceGroupName $StorResourceGroupName -Name ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (:) [Set-AzureRmCurrentStorageAccount], CloudException + FullyQualifiedErrorId : Microsoft.Azure.Commands.Management.Storage.SetAzureRmCurrentStorageAccount

這是爲 新AzureStorageBlobSASToken - 集裝箱$ StorageContainer -Blob $ blobname -perm拋出錯誤ission r -ExpiryTime(Get-Date).AddHours(2.0)-FullUri

如何繞過此問題?

回答

2

我能想到的兩個原因爲什麼您會收到此錯誤:

  1. 存儲帳戶不屬於此資源組(按錯誤指示)。
  2. 存儲帳戶是一個Classic存儲帳戶(我猜這是由資源組的名稱)。

請看看他們中的一個是否確實如此。

+0

是的,但爲什麼我切換到下面的上下文方法是,它沒有顯示在manage.windowsazure.com門戶網站上(可能是因爲它不是v1並且顯示爲v2),但在portal.azure.com中顯示,並且另一個原因是該連接密鑰在嘗試通過Cloudberry連接以探索此帳戶時投擲64位未知字符。你有沒有遇到類似於這些存儲類型的東西? –

+0

此外,下面的方法不要把傳遞資源組ID的挑戰,在我看來,上下文對象幫助我。 –

+1

與使用StorageContext相比,使用資源組方法的一個明顯優勢是您不必記住賬戶密鑰,因爲它會自動提取。關於你面臨的錯誤,我不確定。這可能是Cloudberry本身的一個問題。你有沒有嘗試過其他工具? –

0

我能夠應用的簡單方法是創建存儲上下文並另外傳遞上下文參數。

例子: -

#Set Active Storage to Template Storage Context 
$StorageKey = Get-AzureStorageKey -StorageAccountName $StorageAccountName; 
$StorageContext = New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageKey.Primary; 
$now = Get-Date 

#Create SAS token with temporary access 
New-AzureStorageBlobSASToken -Container $servicetemplateStorageContainer -Blob $blobname -Context $StorageContext -Permission r -ExpiryTime (Get-Date).AddHours(2.0) -FullUri 

希望這有助於有人在類似的情景直參考。

相關問題