Partilhar via


Set-AzVMSecurityProfile

Define o enum SecurityType para máquinas virtuais.

Sintaxe

Default (Padrão)

Set-AzVMSecurityProfile
    [-VM] <PSVirtualMachine>
    [-SecurityType <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

Descrição

O cmdlet Set-AzVMSecurityProfile define o Tipo de Segurança da VM

Exemplos

Exemplo 1

$VM = Get-AzVM -ResourceGroupName "ResourceGroup11" -VMName "ContosoVM07"
$VM = Set-AzVMSecurityProfile -VM $VM -SecurityType "TrustedLaunch"

O primeiro comando obtém a máquina virtual chamada ContosoVM07 usando Get-AzVm. O comando armazena-o na variável $VM. O segundo comando define o enum SecurityType como "TrustedLaunch". A inicialização confiável requer a criação de novas máquinas virtuais. Não é possível habilitar a inicialização confiável em máquinas virtuais existentes que foram criadas inicialmente sem ela.

Exemplo 2: Crie uma máquina virtual ConfidentialVM e o disco criptografado com o tipo VMGuestStateOnly.

$vmSize = "Standard_DC2as_v5";
$DNSNameLabel = "cvm1" +$ResourceGroupName;
$SubnetAddressPrefix = "10.0.0.0/24";
$VnetAddressPrefix = "10.0.0.0/16";

# Credential setup.
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$credential = New-Object System.Management.Automation.PSCredential ($user, $securePassword);

$SecurityType = "ConfidentialVM";
$vmDiskSecurityEncryptionType = "VMGuestStateOnly";
$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $VMSize;

# Create the Network resources and VM OS setup.
$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix;
$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $rgname -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet;
$PIP = New-AzPublicIpAddress -Name $PublicIPAddressName -DomainNameLabel $DNSNameLabel -ResourceGroupName $rgname -Location $LocationName -AllocationMethod Dynamic;
$NIC = New-AzNetworkInterface -Name $NICName -ResourceGroupName $rgname -Location $LocationName -SubnetId $Vnet.Subnets[0].Id -PublicIpAddressId $PIP.Id;
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate;
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id;
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'windowsserver' -Skus '2022-datacenter-smalldisk-g2' -Version 'latest';
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -StorageAccountType "StandardSSD_LRS" -CreateOption "FromImage";

# Set the SecurityType and necessary values on the Uefi settings.
$VirtualMachine = Set-AzVMSecurityProfile -VM $VirtualMachine -SecurityType $SecurityType;
$VirtualMachine = Set-AzVMUefi -VM $VirtualMachine -EnableVtpm $true -EnableSecureBoot $true;

# Set the Disk Encryption Type.
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -StorageAccountType "StandardSSD_LRS" -CreateOption "FromImage" -SecurityEncryptionType $vmDiskSecurityEncryptionType;

$vm = New-AzVM -ResourceGroupName $rgname -Location $LocationName -VM $VirtualMachine;
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;
# Verify SecurityType value.
# $vm.SecurityProfile.SecurityType == "ConfidentialVM";

Parâmetros

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.

Propriedades dos parâmetros

Tipo:IAzureContextContainer
Valor padrão:None
Suporta curingas:False
DontShow:False
Pseudónimos:AzContext, AzureRmContext, AzureCredential

Conjuntos de parâmetros

(All)
Posição:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome da propriedade:False
Valor dos argumentos restantes:False

-SecurityType

Especifica o SecurityType da máquina virtual. Ele deve ser definido como qualquer valor especificado para habilitar UefiSettings. Por padrão, UefiSettings não será habilitado, a menos que essa propriedade esteja definida.

Propriedades dos parâmetros

Tipo:String
Valor padrão:None
Suporta curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Posição:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome da propriedade:True
Valor dos argumentos restantes:False

-VM

O perfil da máquina virtual.

Propriedades dos parâmetros

Tipo:PSVirtualMachine
Valor padrão:None
Suporta curingas:False
DontShow:False
Pseudónimos:VMProfile

Conjuntos de parâmetros

(All)
Posição:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline por nome da propriedade:True
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSVirtualMachine

SecurityTypes

Saídas

PSVirtualMachine