Udostępnij za pośrednictwem


Set-AzVMSecurityProfile

Ustawia wyliczenie SecurityType dla maszyn wirtualnych.

Składnia

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

Opis

Polecenie cmdlet Set-AzVMSecurityProfile ustawia typ zabezpieczeń maszyny wirtualnej

Przykłady

Przykład 1

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

Pierwsze polecenie pobiera maszynę wirtualną o nazwie ContosoVM07 przy użyciu polecenia Get-AzVm. Polecenie przechowuje je w zmiennej $VM. Drugie polecenie ustawia wyliczenie SecurityType na wartość "TrustedLaunch". Zaufane uruchamianie wymaga utworzenia nowych maszyn wirtualnych. Nie można włączyć zaufanego uruchamiania na istniejących maszynach wirtualnych, które zostały początkowo utworzone bez niego.

Przykład 2: Utwórz maszynę wirtualną PoufneVM i dysk zaszyfrowany za pomocą typu VMGuestStateOnly.

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

# Credential setup.
$password = "Password" |ConvertTo-SecureString -AsPlainText -Force; 
$securePassword = ConvertTo-SecureString $password -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";

Parametry

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzContext, AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SecurityType

Określa typ zabezpieczeń maszyny wirtualnej. Musi być ustawiona na dowolną określoną wartość, aby włączyć interfejs UefiSettings. Domyślnie ustawienie UefiSettings nie zostanie włączone, chyba że ta właściwość jest ustawiona.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VM

Profil maszyny wirtualnej.

Typ:PSVirtualMachine
Aliasy:VMProfile
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSVirtualMachine

SecurityTypes

Dane wyjściowe

PSVirtualMachine