我正在尝试使用 PowerShell 停止或启动 Azure 虚拟机。我在 PowerShell 方面不是很有经验,所以我写了一个简单的脚本作为测试:
Import-Module "C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1"
$subID = "<GUID>"
$thumbprint = "<Thumbprint>"
$subscriptionName = "testAzure"
$myCert = Get-Item cert:\\CurrentUser\My\$thumbprint
$vmName = "<vm name>"
Set-AzureSubscription –SubscriptionName $subscriptionName -SubscriptionId $subID -Certificate $myCer
Select-AzureSubscription -SubscriptionName $subscriptionName
Get-AzureSubscription -Current
我在我的电脑上创建了一个 .cer 证书,我将其导出然后导入 Azure(我使用了来自http://msdn.microsoft.com/en-us/library/windowsazure/gg551722.aspx的确切示例)。当我写托管 $myCert 变量时,我得到一个响应:
[主题] CN=testAzure
[发行人] CN=testAzure
[序列号]--序列号--
[不是之前] 29-6-2013 15:27:26
[不是之后] 1-1-2040 00:59:59
[指纹]--指纹--
当我运行脚本时,我收到以下错误:
Get-AzureSubscription :您必须指定证书。首先调用 Set-AzureSubscription 和 Select-AzureSubscription。在 D:\Users\foobar\Desktop\test.ps1:23 char:1 + Get-AzureSubscription -Current + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~ + CategoryInfo : CloseError: (:) [Get-AzureSubscription], ArgumentException + FullyQualifiedErrorId : Microsoft.WindowsAzure.Management.Subscription.GetAzureSubscriptionCommand
我无法弄清楚我做错了什么?有人有建议吗?