Azure Powershell管理多订阅及证书

由于我的电脑曾经管理过两个Azure订阅,这两天在上传VHD文件到Azure时出现了“找不到存储账号”及“证书不匹配”的问题。

场景还原

第一天使用Azure账号A上传VHD,没有出现问题。第二天使用Azure账号B上传VHD是,出现了如下提示”The storage account was not found”

再次核对Azure管理后台,确定存储账号“uploadtest”是存在的。先来看看存储账号<Get-AzureStorageAccount>,结果提示“No certificate was found in the certificate store with thumbprint”

问题分析

a. 近期我使用Azure Powershell管理过两个Azure账号,可能是Azure账号识别不正确;

b. Powershell执行命令时不需要输入Azure账号信息,那么本地计算机肯定保存了Azure账号的相关信息;

c. 在所有操作过程中,只是从Azure下载过证书并安装到本地计算机上了,而上图中也有提示证书的问题。

解决过程

1. 查看证书

在操作最初,我用<Import-AzurePublishSettingsFile>导入过从Azure下载的证书。此证书存放在当前用户的个人目录下

2. 查看本机关联的Azure订阅

命令<Get-AzureSubscription>

从下图中可以看出有两个不同的Azure订阅“1RMB Trail Offer”和“免费试用”,而“1RMB Trail Offer”的DefaultAccount值与上面提示“No certificate was found in the certificate store with thumbprint”的证书指纹完全吻合。“1RMB Trail Offer”的另外两个属性IsDefault和IsCurrent值均为True,与“免费试用”相反,即默认订阅和当前活动订阅均为“1RMB Trail Offer”。

那么,问题来了,我现在需要管理订阅“免费试用”,该怎么办?

3. 选择Azure订阅

命令<Select-AzureSubscription>

执行完成后可以看到,订阅“1RMB Trail Offer”和“免费试用”的IsCurrent值变为对调了,即当前活动订阅变为“免费试用”

4. 再次查看存储账号

再次查看存储账号,发现属性正常了,正式我想要管理的

5. 上传VHD文件

终于可以正常上传了,可以看到进度

插曲-证书指纹更新

针对提示“No certificate was found in the certificate store with thumbprint”,还有另外一个插曲。

我在管理订阅“免费试用”对应的账号时,生成过多张证书,从上图中3个证书指纹就可发现。而我电脑仅保留了最后一张证书(指纹EA1AED开头的),但是Azure的订阅关联的默认证书是第一张(证书指纹263B87开头的),见下图

此时我在进行VHD上传时,同样出现了证书错误,见下图

处理办法,更新订阅关联的默认证书指纹

命令

<$mycert = Get-Item Cert:\CurrentUser\My\证书指纹>

<Set-AzureSubscription -SubscriptionName "订阅名称" -Certificate $mycert>

完成后结果如下

本文结束

时间: 2024-08-27 20:48:43

Azure Powershell管理多订阅及证书的相关文章

Azure运维系列 3:安装和使用Azure PowerShell管理云

前面讲到了很多的管理方式,包括Azure中国最近更新的预览版管理门户和Azure云助理,都是非常不错的管理Azure的方式,今天我们再来介绍一种更加高效的管理方式Azure PowerShell.熟悉命令行的朋友都知道,Linux之所以那么好用是因为其强大的命令行工具,可以简单直接的管理我们的服务器.应用等.然而在很早之前微软也推出了自己的命令行渠道,没错就是我们大名鼎鼎的PowerShell. 为什么说PowerShell那么强大呢?因为从Windows 8之后的产品.2007之后的服务端系统

Microsoft Azure系列之四 Micorosft Azure Powershell 管理

Microsoft Azure 提供以下两种方式管理azure服务和资源 一. Azure 门户 二. Azure Powershell 你需使用一个或多个与Azure 订阅相关的 Microsoft 帐户或组织帐户进行登录. 本篇我们来看下如何使用Azure Powershell 工欲善其事,必先利其器. 首先下载azure powershell 命令行工具 下载地址:https://www.azure.cn/downloads/ 查看azure模块是否可用 查看所有azure 命令数目 下面

Windows Azure Powershell的云端漫步

Powershell之于微软平台的重要性我想人人都知道.印象中从Windows Server 2008开始内置Powershell,到了Exchange 2007成为了第一个支持Powershell的服务器平台,到了日后的SharePoint.SQL Server和System Center,甚至是Windows 7/8这样的客户端系统,全部都在底层集成了Powershell模块.可以这么说,图形界面能做的,Powershell都能做:反之Powershell能做的,图形界面却不一定能够搞得定.

使用Windows Azure PowerShell远程管理Windows Azure虚拟机

对于Windows Azure,如果你还在使用windowsazure.com门户来管理虚拟机,那就显得不怎么高上大了.Windows Azure PowerShell 是一个功能强大的脚本环境,可用于在 Windows Azure 中控制和自动执行工作负荷的部署和管理.   安  装   通过Microsoft Web Platform Installer一键搞定安装.   登录Azure账户   启动安装好的Windows Azure PowerShell,使用“Add-AzureAccou

Azure PowerShell (2) 上传证书

<Windows Azure Platform 系列文章目录> 之前的文章中,我们介绍了Azure PowerShell的基本概念.本章我将介绍如何在Azure PowerShell中上传证书. 如果你是第一次运行Azure PowerShell.我们要在本地创建证书文件.以便本地计算机和Azure建立可靠的安全连接. 我们以管理员身份运行Azure PowerShell. 使用Azure Global(windowsazure.com)的读者,请参考以下内容: 1.在Azure PowerS

Azure PowerShell (2) 修改Azure订阅名称

<Windows Azure Platform 系列文章目录> 为什么要修改订阅名称? 这里主要有两个原因: (1)最近发现一个问题,国内世纪互联运维的Azure,默认的订阅名称是中文的,如"企业客户试用账号"等. 但是在英文的操作系统中,使用PowerShell选择的订阅的时候,中文的订阅名称会变成乱码. (2)在某些情况下,客户的IT部门要通过订阅的名称来区分不同的用途.而Windows Azure默认的订阅名称无法满足这样的需求. 这里笔者以世纪互联运维的Window

Windows Azure PowerShell之管理虚拟机

我们可以用Windows Azure PowerShell来管理Windows Azure虚拟机.接下来我们来看下如何使用Windows Azure PowerShell创建和删除虚拟机. 1.获取虚拟机镜像.Get-AzureVMImage 这个命令可以返回虚拟机镜像列表,由于现在Azure当中的镜像非常多,运行该命令时最好将通过管道重定向到txt文件中,以便查看.另外因我们后面用New-AzureQuickVM命令创建虚拟机时只需要知道镜像的名称,因此在执行Get-AzureVMImage

Azure编程笔记(4):管理Cloud Service的证书

?? 我们在Microsoft Azure中部署CloudService的时候,可能会用到证书.通常在两种情况下需要用到证书.一是把证书安装在服务器端.此时证书用来建立HTTPS/SSL连接,以便保护传输中的数据.二是把证书部署在客户端.此时客户端发起连接请求时,它会把证书信息添加到请求中.服务器端收到请求之后,会验证其中的证书是不是合法的证书.这种情况下证书是用来验证用户的.接下来我们分两种情况来讨论如何管理证书. 把证书安装在服务器端 假设我们用ASP .NET的Web API开发一个Web

Azure PowerShell (9) 使用PowerShell导出订阅下所有的Azure VM的Public IP和Private IP

<Windows Azure Platform 系列文章目录> 笔者在之前的工作中,有客户提出想一次性查看Azure订阅下的所有Azure VM的Public IP和Private IP.笔者研究了一下Azure相关的PowerShell,可以实现.在这里笔者简单分享一下: 1.将http://files.cnblogs.com/files/threestone/ExportVMList.rar文件保存至本地目录 2.安装Windows Azure PowerShell工具,下载地址是:htt