你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Add-AzVMSecret

将机密添加到虚拟机。

语法

Add-AzVMSecret
   [-VM] <PSVirtualMachine>
   [[-SourceVaultId] <String>]
   [[-CertificateStore] <String>]
   [[-CertificateUrl] <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

说明

Add-AzVMSecret cmdlet 向虚拟机添加机密。 此值允许向虚拟机添加证书。 机密必须存储在密钥库中。 有关 Key Vault 的详细信息,请参阅什么是 Azure Key Vault?。 有关 cmdlet 的详细信息,请参阅 Azure 密钥库 CmdletSet-AzKeyVaultSecret cmdlet。

注意

若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展,而不是Add-AzVMSecret使用。

示例

示例:使用 Add-AzVMSecret 将机密添加到虚拟机

$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1" -AvailabilitySetID $AvailabilitySet.Id
$Credential = Get-Credential
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine  -Windows -ComputerName "Contoso26" -Credential $Credential
$SourceVaultId = "/subscriptions/46f8cea4-2de6-4179-8ab1-365da4211af4/resourceGroups/vault/providers/Microsoft.KeyVault/vaults/keyvault"
$CertificateStore01 = "My"
$CertificateUrl01 = "https://contosovault.vault.azure.net/secrets/514ceb769c984379a7e0230bdd703272"
$VirtualMachine = Add-AzVMSecret -VM $VirtualMachine -SourceVaultId $SourceVaultId -CertificateStore $CertificateStore01 -CertificateUrl $CertificateUrl01

第一个命令创建虚拟机对象,然后将其存储在$VirtualMachine变量中。 该命令将名称和大小分配给虚拟机。 第二个命令使用 Get-Credential cmdlet 创建凭据对象,然后将结果存储在$Credential变量中。 该命令会提示输入用户名和密码。 要了解详情,请键入 Get-Help Get-Credential。 第三个命令使用 Set-AzVMOperatingSystem cmdlet 配置存储在$VirtualMachine中的虚拟机。 第四个命令将源保管库 ID 分配给$SourceVaultId变量供以后使用。 该命令假定$SubscriptionId变量具有适当的值。 第五个命令将值分配给 $CertificateStore 01 变量以供以后使用。 第六个命令为证书存储分配 URL。 第七个命令将机密添加到存储在$VirtualMachine中的虚拟机。 SourceVaultId 参数指定密钥库。 该命令指定证书存储的名称和证书的 URL。 可以重复运行 Add-AzVMSecret ,为其他证书添加机密。

参数

-CertificateStore

指定运行 Windows 操作系统的虚拟机上的证书存储的名称。 此 cmdlet 将证书添加到此参数指定的存储中。 只能为运行 Windows 操作系统的虚拟机指定此参数。

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CertificateUrl

指定指向包含证书的密钥库机密的 URL。 该证书是以下 JavaScript 对象表示法(JSON)对象的 Base64 编码,该对象在 UTF-8 中编码:{ “data”: “<Base64-encoded-file>”, “dataType”: “<file-format>”, “password”: “<pfx-file-password>” } 目前,dataType 仅接受 .pfx 文件。

Type:String
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceVaultId

指定包含可添加到虚拟机的证书的密钥库的资源 ID。 此值还充当添加多个证书的密钥。 这意味着,从同一密钥库添加多个证书时,可以为 SourceVaultId 使用相同的值

Type:String
Aliases:Id
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VM

指定此 cmdlet 修改的虚拟机对象。 若要获取虚拟机对象,请使用 Get-AzVM cmdlet。 可以使用 New-AzVMConfig cmdlet 创建虚拟机对象。

Type:PSVirtualMachine
Aliases:VMProfile
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

输入

PSVirtualMachine

String

输出

PSVirtualMachine