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

Backup-AzKeyVaultKey

备份密钥保管库中的密钥。

注意

这是我们文档的早期版本。 有关最新信息,请参阅 最新版本

语法

Backup-AzKeyVaultKey
      [-VaultName] <String>
      [-Name] <String>
      [[-OutputFile] <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Backup-AzKeyVaultKey
      -HsmName <String>
      [-Name] <String>
      [[-OutputFile] <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Backup-AzKeyVaultKey
      [-InputObject] <PSKeyVaultKeyIdentityItem>
      [[-OutputFile] <String>]
      [-Force]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

Backup-AzKeyVaultKey cmdlet 通过下载密钥保管库并将其存储在文件中来备份指定的密钥。 如果密钥有多个版本,则备份中包含所有版本。 由于下载的内容已加密,因此它不能在 Azure 密钥保管库之外使用。 可以将备份密钥还原到订阅中备份的任意密钥保管库。 使用此 cmdlet 的典型原因是:

  • 你想要托管密钥的副本,以便在密钥保管库中意外删除密钥时拥有脱机副本。

  • 你已使用密钥保管库创建了密钥,现在想要将密钥克隆到其他 Azure 区域,以便可以从分布式应用程序的所有实例使用它。 使用 Backup-AzKeyVaultKey cmdlet 以加密格式检索密钥,然后使用 Restore-AzKeyVaultKey cmdlet 并在第二个区域中指定密钥保管库。

示例

示例 1:使用自动生成的文件名备份密钥

Backup-AzKeyVaultKey -VaultName 'MyKeyVault' -Name 'MyKey'

C:\Users\username\mykeyvault-mykey-1527029447.01191

此命令从名为 MyKeyVault 的密钥保管库中检索名为 MyKey 的密钥,并将该密钥的备份保存到自动命名的文件,并显示文件名。

示例 2:将密钥备份到指定的文件名

Backup-AzKeyVaultKey -VaultName 'MyKeyVault' -Name 'MyKey' -OutputFile 'C:\Backup.blob'

C:\Backup.blob

此命令从名为 MyKeyVault 的密钥保管库中检索名为 MyKey 的密钥,并将该密钥的备份保存到名为 Backup.blob 的文件。

示例 3:将以前检索到的密钥备份到指定的文件名,在不提示的情况下覆盖目标文件。

$key = Get-AzKeyVaultKey -VaultName 'MyKeyVault' -Name 'MyKey'
Backup-AzKeyVaultKey -Key $key -OutputFile 'C:\Backup.blob' -Force

C:\Backup.blob

此命令创建名为$key的密钥的备份。名为 $key 的保管库中的名称。VaultName 到名为 Backup.blob 的文件,如果该文件已存在,则以无提示方式覆盖该文件。

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

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

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

-Force

覆盖给定文件(如果存在)

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-HsmName

HSM 名称。 Cmdlet 基于名称和当前选定的环境构造托管 HSM 的 FQDN。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

要备份的密钥捆绑包,从检索调用的输出中传入。

Type:PSKeyVaultKeyIdentityItem
Aliases:Key
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-Name

指定要备份的键的名称。

Type:String
Aliases:KeyName
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-OutputFile

指定在其中存储备份 Blob 的输出文件。 如果未指定此参数,则此 cmdlet 会为你生成文件名。 如果指定现有输出文件的名称,该操作将不会完成,并返回备份文件已存在的错误消息。

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

-VaultName

指定包含要备份的密钥的密钥保管库的名称。

Type:String
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

显示在此 cmdlet 运行的情况下将会发生什么。 此 cmdlet 未运行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

输入

PSKeyVaultKeyIdentityItem

输出

String