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

Set-AzVMDiskEncryptionExtension

在 Azure 中正在运行的 IaaS 虚拟机上启用加密。

语法

SinglePassParameterSet (默认值)

Set-AzVMDiskEncryptionExtension
    [-ResourceGroupName] <String>
    [-VMName] <String>
    [-DiskEncryptionKeyVaultUrl] <String>
    [-DiskEncryptionKeyVaultId] <String>
    [[-KeyEncryptionKeyUrl] <String>]
    [[-KeyEncryptionKeyVaultId] <String>]
    [[-KeyEncryptionAlgorithm] <String>]
    [[-VolumeType] <String>]
    [[-SequenceVersion] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-Name] <String>]
    [[-Passphrase] <String>]
    [-EncryptionIdentity <String>]
    [-Force]
    [-DisableAutoUpgradeMinorVersion]
    [-SkipVmBackup]
    [-ExtensionType <String>]
    [-ExtensionPublisherName <String>]
    [-EncryptFormatAll]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

AADClientSecretParameterSet

Set-AzVMDiskEncryptionExtension
    [-ResourceGroupName] <String>
    [-VMName] <String>
    [-AadClientID] <String>
    [-AadClientSecret] <String>
    [-DiskEncryptionKeyVaultUrl] <String>
    [-DiskEncryptionKeyVaultId] <String>
    [[-KeyEncryptionKeyUrl] <String>]
    [[-KeyEncryptionKeyVaultId] <String>]
    [[-KeyEncryptionAlgorithm] <String>]
    [[-VolumeType] <String>]
    [[-SequenceVersion] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-Name] <String>]
    [[-Passphrase] <String>]
    [-Force]
    [-DisableAutoUpgradeMinorVersion]
    [-SkipVmBackup]
    [-ExtensionType <String>]
    [-ExtensionPublisherName <String>]
    [-EncryptFormatAll]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

AADClientCertParameterSet

Set-AzVMDiskEncryptionExtension
    [-ResourceGroupName] <String>
    [-VMName] <String>
    [-AadClientID] <String>
    [-AadClientCertThumbprint] <String>
    [-DiskEncryptionKeyVaultUrl] <String>
    [-DiskEncryptionKeyVaultId] <String>
    [[-KeyEncryptionKeyUrl] <String>]
    [[-KeyEncryptionKeyVaultId] <String>]
    [[-KeyEncryptionAlgorithm] <String>]
    [[-VolumeType] <String>]
    [[-SequenceVersion] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-Name] <String>]
    [[-Passphrase] <String>]
    [-Force]
    [-DisableAutoUpgradeMinorVersion]
    [-SkipVmBackup]
    [-ExtensionType <String>]
    [-ExtensionPublisherName <String>]
    [-EncryptFormatAll]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

MigrateADEVersionParameterSet

Set-AzVMDiskEncryptionExtension
    [-ResourceGroupName] <String>
    [-VMName] <String>
    [[-KeyEncryptionAlgorithm] <String>]
    [[-VolumeType] <String>]
    [[-SequenceVersion] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-Name] <String>]
    [[-Passphrase] <String>]
    [-Force]
    [-DisableAutoUpgradeMinorVersion]
    [-SkipVmBackup]
    [-ExtensionType <String>]
    [-ExtensionPublisherName <String>]
    [-EncryptFormatAll]
    [-Migrate]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

MigrateADEVersionRecoveryParameterSet

Set-AzVMDiskEncryptionExtension
    [-ResourceGroupName] <String>
    [-VMName] <String>
    [[-KeyEncryptionAlgorithm] <String>]
    [[-VolumeType] <String>]
    [[-SequenceVersion] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-Name] <String>]
    [[-Passphrase] <String>]
    [-Force]
    [-DisableAutoUpgradeMinorVersion]
    [-SkipVmBackup]
    [-ExtensionType <String>]
    [-ExtensionPublisherName <String>]
    [-EncryptFormatAll]
    [-MigrationRecovery]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

说明

Set-AzVMDiskEncryptionExtension cmdlet 在 Azure 中正在运行的基础结构即服务(IaaS)虚拟机上启用加密。 它通过在虚拟机上安装磁盘加密扩展来启用加密。

此 cmdlet 需要用户确认,因为启用加密的步骤之一需要重启虚拟机。

建议在运行此 cmdlet 之前在虚拟机上保存工作。

Linux: 加密 Linux 虚拟机时需要 VolumeType 参数,并且必须设置为 Linux 分发支持的值(“Os”、“Data”或“All”。

Windows: 可以省略 VolumeType 参数,在这种情况下,操作默认为“全部”;如果 Windows 虚拟机存在 VolumeType 参数,则必须将其设置为“全部”或“OS”。

示例

示例 1:启用加密

$RGName = "MyResourceGroup"
$VMName = "MyTestVM"
$VaultName= "MyKeyVault"
$KeyVault = Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId
$VolumeType = "All"
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGName -VMName $VMName -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -VolumeType $VolumeType

此示例在不指定 AD 凭据的情况下在 VM 上启用加密。

示例 2:使用管道输入启用加密

$params = New-Object PSObject -Property @{
    ResourceGroupName = "[resource-group-name]"
    VMName = "[vm-name]"
    DiskEncryptionKeyVaultId = "/subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name]"
    DiskEncryptionKeyVaultUrl = "https://[keyvault-name].vault.azure.net"
    KeyEncryptionKeyVaultId = "/subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name]"
    KeyEncryptionKeyUrl = "https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]"
    VolumeType = "All"
}

$params | Set-AzVMDiskEncryptionExtension

此示例使用管道输入发送参数,以便在 VM 上启用加密,而无需指定 AD 凭据。

示例 3:使用 Microsoft Entra 客户端 ID 和客户端密码启用加密

$RGName = "MyResourceGroup"
$VMName = "MyTestVM"
$AADClientID = "<clientID of your Azure AD app>"
$AADClientSecret = "<clientSecret of your Azure AD app>"
$VaultName= "MyKeyVault"
$KeyVault = Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId
$VolumeType = "All"
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGName -VMName $VMName -AadClientID $AADClientID -AadClientSecret $AADClientSecret -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -VolumeType $VolumeType

此示例使用 Microsoft Entra 客户端 ID 和客户端密码在 VM 上启用加密。

示例 4:使用 Microsoft Entra 客户端 ID 和客户端认证指纹启用加密

$RGName = "MyResourceGroup"
$VMName = "MyTestVM"
#The KeyVault must have enabledForDiskEncryption property set on it
$VaultName= "MyKeyVault"
$KeyVault = Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId
$VolumeType = "All"

# create Azure AD application and associate the certificate
$CertPath = "C:\certificates\examplecert.pfx"
$CertPassword = "Password"
$Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertPath, $CertPassword)
$CertValue = [System.Convert]::ToBase64String($cert.GetRawCertData())
$AzureAdApplication = New-AzADApplication -DisplayName "<Your Application Display Name>" -HomePage "<https://YourApplicationHomePage>" -IdentifierUris "<https://YouApplicationUri>" -CertValue $CertValue
$ServicePrincipal = New-AzADServicePrincipal -ApplicationId $AzureAdApplication.ApplicationId

$AADClientID = $AzureAdApplication.ApplicationId
$aadClientCertThumbprint= $cert.Thumbprint

#Upload pfx to KeyVault
$KeyVaultSecretName = "MyAADCert"
$FileContentBytes = Get-Content $CertPath -Encoding Byte
$FileContentEncoded = [System.Convert]::ToBase64String($fileContentBytes)
$JSONObject = @"
    {
        "data" : "$filecontentencoded",
        "dataType" : "pfx",
        "password" : "$CertPassword"
    }
"@
$JSONObjectBytes = [System.Text.Encoding]::UTF8.GetBytes($jsonObject)
$JSONEncoded = [System.Convert]::ToBase64String($jsonObjectBytes)

$Secret = ConvertTo-SecureString -String $JSONEncoded -AsPlainText -Force
Set-AzKeyVaultSecret -VaultName $VaultName -Name $KeyVaultSecretName -SecretValue $Secret
Set-AzKeyVaultAccessPolicy -VaultName $VaultName -ResourceGroupName $RGName -EnabledForDeployment

#deploy cert to VM
$CertUrl = (Get-AzKeyVaultSecret -VaultName $VaultName -Name $KeyVaultSecretName).Id
$SourceVaultId = (Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName).ResourceId
$VM = Get-AzVM -ResourceGroupName $RGName -Name $VMName
$VM = Add-AzVMSecret -VM $VM -SourceVaultId $SourceVaultId -CertificateStore "My" -CertificateUrl $CertUrl
Update-AzVM -VM $VM -ResourceGroupName $RGName

#Enable encryption on the virtual machine using Azure AD client ID and client cert thumbprint
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGName -VMName $VMName -AadClientID $AADClientID -AadClientCertThumbprint $AADClientCertThumbprint -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -VolumeType $VolumeType

此示例使用 Microsoft Entra 客户端 ID 和客户端认证指纹在 VM 上启用加密。

示例 5:使用 Microsoft密钥加密密钥使用 entra 客户端 ID、客户端密码和包装磁盘加密密钥启用加密

$RGName = "MyResourceGroup"
$VMName = "MyTestVM"

$AADClientID = "<clientID of your Azure AD app>"
$AADClientSecret = "<clientSecret of your Azure AD app>"

$VaultName= "MyKeyVault"
$KeyVault = Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId
$VolumeType = "All"

$KEKName = "MyKeyEncryptionKey"
$KEK = Add-AzKeyVaultKey -VaultName $VaultName -Name $KEKName -Destination "Software"
$KeyEncryptionKeyUrl = $KEK.Key.kid

Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGName -VMName $VMName -AadClientID $AADClientID -AadClientSecret $AADClientSecret -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -KeyEncryptionKeyUrl $KeyEncryptionKeyUrl -KeyEncryptionKeyVaultId $KeyVaultResourceId -VolumeType $VolumeType

此示例使用 Microsoft Entra 客户端 ID 和客户端密码在 VM 上启用加密,并使用密钥加密密钥包装磁盘加密密钥。

示例 6:使用 Microsoft Entra 客户端 ID、客户端证书指纹和使用密钥加密密钥包装磁盘加密密钥启用加密

$RGName = "MyResourceGroup"
$VMName = "MyTestVM"
#The KeyVault must have enabledForDiskEncryption property set on it
$VaultName= "MyKeyVault"
$KeyVault = Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName
$DiskEncryptionKeyVaultUrl = $KeyVault.VaultUri
$KeyVaultResourceId = $KeyVault.ResourceId
$KEKName = "MyKeyEncryptionKey"
$KEK = Add-AzKeyVaultKey -VaultName $VaultName -Name $KEKName -Destination "Software"
$KeyEncryptionKeyUrl = $KEK.Key.kid
$VolumeType = "All"

# create Azure AD application and associate the certificate
$CertPath = "C:\certificates\examplecert.pfx"
$CertPassword = "Password"
$Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertPath, $CertPassword)
$CertValue = [System.Convert]::ToBase64String($cert.GetRawCertData())
$AzureAdApplication = New-AzADApplication -DisplayName "<Your Application Display Name>" -HomePage "<https://YourApplicationHomePage>" -IdentifierUris "<https://YouApplicationUri>" -CertValue $CertValue
$ServicePrincipal = New-AzADServicePrincipal -ApplicationId $AzureAdApplication.ApplicationId

$AADClientID = $AzureAdApplication.ApplicationId
$AADClientCertThumbprint= $Cert.Thumbprint

#Upload pfx to KeyVault
$KeyVaultSecretName = "MyAADCert"
$FileContentBytes = Get-Content $CertPath -Encoding Byte
$FileContentEncoded = [System.Convert]::ToBase64String($FileContentBytes)
$JSONObject = @"
    {
        "data" : "$filecontentencoded",
        "dataType" : "pfx",
        "password" : "$CertPassword"
    }
"@
$JSONObjectBytes = [System.Text.Encoding]::UTF8.GetBytes($JSONObject)
$JsonEncoded = [System.Convert]::ToBase64String($JSONObjectBytes)
$Secret = ConvertTo-SecureString -String $JSONEncoded -AsPlainText -Force
Set-AzKeyVaultSecret -VaultName $VaultName-Name $KeyVaultSecretName -SecretValue $Secret
Set-AzKeyVaultAccessPolicy -VaultName $VaultName -ResourceGroupName $RGName -EnabledForDeployment

#deploy cert to VM
$CertUrl = (Get-AzKeyVaultSecret -VaultName $VaultName -Name $KeyVaultSecretName).Id
$SourceVaultId = (Get-AzKeyVault -VaultName $VaultName -ResourceGroupName $RGName).ResourceId
$VM = Get-AzVM -ResourceGroupName $RGName -Name $VMName
$VM = Add-AzVMSecret -VM $VM -SourceVaultId $SourceVaultId -CertificateStore "My" -CertificateUrl $CertUrl
Update-AzVM -VM $VM -ResourceGroupName $RGName

#Enable encryption on the virtual machine using Azure AD client ID and client cert thumbprint
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGname -VMName $VMName -AadClientID $AADClientID -AadClientCertThumbprint $AADClientCertThumbprint -DiskEncryptionKeyVaultUrl $DiskEncryptionKeyVaultUrl -DiskEncryptionKeyVaultId $KeyVaultResourceId -KeyEncryptionKeyUrl $KeyEncryptionKeyUrl -KeyEncryptionKeyVaultId $KeyVaultResourceId -VolumeType $VolumeType

此示例使用 Microsoft Entra 客户端 ID 和客户端证书指纹在 VM 上启用加密,并使用密钥加密密钥包装磁盘加密密钥。

参数

-AadClientCertThumbprint

指定有权将机密写入 KeyVault 的 Microsoft Entra 应用程序客户端证书的指纹。 作为先决条件,必须先将 Microsoft Entra 客户端证书部署到虚拟机的本地计算机 my 证书存储中。 Add-AzVMSecret cmdlet 可用于将证书部署到 Azure 中的虚拟机。 有关详细信息,请参阅 Add-AzVMSecret cmdlet 帮助。 该证书以前必须部署到我的证书存储的虚拟机本地计算机。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

AADClientCertParameterSet
Position:3
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-AadClientID

指定有权将机密 写入 KeyVault 的 Microsoft Entra 应用程序的客户端 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

AADClientSecretParameterSet
Position:2
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientCertParameterSet
Position:2
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-AadClientSecret

指定有权将机密 写入 KeyVault 的 Microsoft Entra 应用程序的客户端机密。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

AADClientSecretParameterSet
Position:3
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Confirm

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

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DefaultProfile

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

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzContext, AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DisableAutoUpgradeMinorVersion

指示此 cmdlet 禁用扩展的次要版本的自动升级。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:14
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskEncryptionKeyVaultId

指定应将虚拟机加密密钥上传到的 KeyVault 的资源 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SinglePassParameterSet
Position:5
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientSecretParameterSet
Position:5
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientCertParameterSet
Position:5
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskEncryptionKeyVaultUrl

指定 虚拟机加密密钥应上传到的 KeyVault URL。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SinglePassParameterSet
Position:4
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientSecretParameterSet
Position:4
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientCertParameterSet
Position:4
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-EncryptFormatAll

加密格式尚未加密的所有数据驱动器

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EncryptionIdentity

有权访问 keyvault 进行 ADE作的托管标识的资源 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SinglePassParameterSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ExtensionPublisherName

扩展发布者名称。 仅指定此参数以替代默认值“Microsoft.Azure.Security”。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ExtensionType

扩展类型。 指定此参数以替代 Windows VM 的“AzureDiskEncryption”的默认值,并替代 Linux VM 的“AzureDiskEncryptionForLinux”。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Force

强制命令运行而不要求用户确认。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-KeyEncryptionAlgorithm

指定用于包装和解包虚拟机密钥加密密钥的算法。 默认值为 RSA-OAEP。

参数属性

类型:String
默认值:None
接受的值:RSA-OAEP, RSA1_5
支持通配符:False
不显示:False

参数集

(All)
Position:8
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-KeyEncryptionKeyUrl

指定用于包装和解包虚拟机加密密钥的密钥加密密钥的 URL。 这必须是完整的版本控制 URL。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SinglePassParameterSet
Position:6
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientSecretParameterSet
Position:6
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientCertParameterSet
Position:6
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-KeyEncryptionKeyVaultId

指定 KeyVault 的资源 ID,其中包含用于包装和解包虚拟机加密密钥的密钥加密密钥。 这必须是完整的版本控制 URL。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

SinglePassParameterSet
Position:7
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientSecretParameterSet
Position:7
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
AADClientCertParameterSet
Position:7
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Migrate

启动将 VM 迁移到最新的Azure 磁盘加密扩展版本(不带 Microsoft Entra 凭据的 ADE)。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

MigrateADEVersionParameterSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-MigrationRecovery

在迁移具有 Microsoft Entra ID 到 ADE 扩展版本的 ADE 扩展版本而不Microsoft Entra ID 的情况下启动迁移恢复。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

MigrateADEVersionRecoveryParameterSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Name

指定表示扩展的 Azure 资源管理器 资源的名称。 如果省略 Name 参数,则安装的扩展将在 Windows 虚拟机上命名为 AzureDiskEncryption,Linux 虚拟机上的 AzureDiskEncryptionForLinux。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:ExtensionName

参数集

(All)
Position:12
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Passphrase

指定用于加密 Linux 虚拟机的通行短语。 此参数不用于运行 Windows 操作系统的虚拟机。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:13
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ResourceGroupName

指定虚拟机资源组的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-SequenceVersion

指定虚拟机的加密操作的序列号。 对于在同一虚拟机上执行的每个加密操作,这都是唯一的。 Get-AzVMExtension cmdlet 可用于检索以前使用的序列号。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:10
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-SkipVmBackup

跳过 Linux VM 的备份创建

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:15
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-TypeHandlerVersion

指定加密扩展的版本。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:HandlerVersion, 版本

参数集

(All)
Position:11
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-VMName

指定虚拟机的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:资源名称

参数集

(All)
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-VolumeType

指定要对其执行加密操作的虚拟机卷的类型:OS、Data 或 All。

Linux: 加密 Linux 虚拟机时需要 VolumeType 参数,并且必须设置为 Linux 分发支持的值(“Os”、“Data”或“All”。

Windows: 可以省略 VolumeType 参数,在这种情况下,操作默认为“全部”;如果 Windows 虚拟机存在 VolumeType 参数,则必须将其设置为“全部”或“OS”。

参数属性

类型:String
默认值:None
接受的值:OS, Data, All
支持通配符:False
不显示:False

参数集

(All)
Position:9
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

String

SwitchParameter

输出

PSAzureOperationResponse