Set-AzDiskSecurityProfile
관리 디스크에서 SecurityProfile 설정
구문
Default (기본값)
Set-AzDiskSecurityProfile
[-Disk] <PSDisk>
-SecurityType <String>
[-SecureVMDiskEncryptionSet <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
관리 디스크에서 SecurityProfile을 설정합니다.
예제
예제 1
$diskconfig = New-AzDiskConfig -DiskSizeGB 10 -AccountType PremiumLRS -OsType Windows -CreateOption FromImage;
$image = '/subscriptions/0000000-0000-0000-0000-000000000000/resourceGroups/ResourceGroup01/providers/Microsoft.Compute/images/TestImage123';
$diskconfig = Set-AzDiskImageReference -Disk $diskconfig -Id $image -Lun 0;
$diskconfig = Set-AzDiskSecurityProfile -Disk $diskconfig -SecurityType "TrustedLaunch";
$disk = New-AzDisk -ResourceGroupName 'ResourceGroup01' -DiskName 'Disk01' -Disk $diskconfig;
# $disk.Properties.SecurityProfile.SecurityType == "TrustedLaunch";
고객은 관리 디스크의 SecurityType을 설정할 수 있습니다.
예제 2: 암호화 형식의 ConfidentialVM_DiskEncryptedWithCustomerKey 사용하여 디스크 암호화 집합을 사용하여 디스크 만들기
$Location = "northeurope";
$KeyVaultName = "val" + $rgname;
$KeyName = "key" + $rgname;
$DesName= "des" + $rgname;
$KeySize = 3072;
$SecurePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$User = "Username";
$Cred = New-Object System.Management.Automation.PSCredential ($User, $SecurePassword);
New-AzKeyVault -Name $KeyVaultName -Location $Location -ResourceGroupName $ResourceGroupName -Sku Premium -EnablePurgeProtection -EnabledForDiskEncryption;
# Add Key vault Key
Add-AzKeyVaultKey -VaultName $KeyVaultName -Name $KeyName -Size $KeySize -KeyOps wrapKey,unwrapKey -KeyType RSA -Destination HSM -Exportable -UseDefaultCVMPolicy;
# Capture Keyvault and key details
$KeyVaultId = (Get-AzKeyVault -VaultName $KeyVaultName -ResourceGroupName $ResourceGroupName).ResourceId;
$KeyUrl = (Get-AzKeyVaultKey -VaultName $KeyVaultName -KeyName $KeyName).Key.Kid;
# Create new DES Config and DES
$diskEncryptionType = "ConfidentialVmEncryptedWithCustomerKey";
$desConfig = New-AzDiskEncryptionSetConfig -Location $Location -SourceVaultId $keyvaultId -KeyUrl $keyUrl -IdentityType SystemAssigned -EncryptionType $diskEncryptionType;
New-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $DesName -DiskEncryptionSet $desConfig;
$diskencset = Get-AzDiskEncryptionSet -ResourceGroupName $ResourceGroupName -Name $desName;
# Assign DES Access Policy to key vault
$desIdentity = (Get-AzDiskEncryptionSet -Name $DesName -ResourceGroupName $ResourceGroupName).Identity.PrincipalId;
Set-AzKeyVaultAccessPolicy -VaultName $KeyVaultName -ResourceGroupName $ResourceGroupName -ObjectId $desIdentity -PermissionsToKeys wrapKey,unwrapKey,get -BypassObjectIdValidation;
$diskSecurityType = "ConfidentialVM_DiskEncryptedWithCustomerKey";
$diskName = "diskname";
$diskconfig = New-AzDiskConfig -AccountType Premium_LRS -OsType Windows -CreateOption FromImage -Location $Location;
$diskconfig = Set-AzDiskImageReference -Disk $diskconfig -Id "/Subscriptions/e37510d7-33b6-4676-886f-ee75bcc01871/Providers/Microsoft.Compute/Locations/northeurope/Publishers/MicrosoftWindowsServer/ArtifactTypes/VMImage/Offers/windows-cvm/Skus/2019-datacenter-cvm/Versions/latest";
$diskconfig = Set-AzDiskSecurityProfile -Disk $diskconfig -SecurityType $diskSecurityType -SecureVMDiskEncryptionSet $diskencset.id;
New-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $diskName -Disk $diskconfig;
$disk = Get-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $diskName;
# Verify the SecurityType value.
# $disk.Properties.SecurityProfile.SecurityType returns "ConfidentialVM";
예제 3: TrustedLaunch 기본값을 방지하려면 SecurityType을 표준으로 설정합니다.
$rgname = <Resource Group Name>;
$loc = <Azure Region>;
New-AzResourceGroup -Name $rgname -Location $loc -Force;
$securityTypeStnd = "Standard";
# Standard SecurityType
$diskconfig = New-AzDiskConfig -Location $loc -DiskSizeGB 1 -AccountType "Premium_LRS" -OsType "Windows" -CreateOption "Empty" -HyperVGeneration "V1";
$diskname = "diskstnd" + $rgname;
$diskconfig = Set-AzDiskSecurityProfile -Disk $diskconfig -SecurityType $securityTypeStnd;
$diskPr = New-AzDisk -ResourceGroupName $rgname -DiskName $diskname -Disk $diskconfig;
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname;
# Verify $disk.SecurityProfile is null;
매개 변수
-Confirm
cmdlet을 실행하기 전에 확인 메시지를 표시합니다.
매개 변수 속성
형식: SwitchParameter
Default value: None
와일드카드 지원: False
DontShow: False
별칭: cf(cf)
매개 변수 집합
(All)
Position: Named
필수: False
파이프라인의 값: False
속성 이름별 파이프라인의 값: False
나머지 인수의 값: False
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.
매개 변수 속성
형식: IAzureContextContainer
Default value: None
와일드카드 지원: False
DontShow: False
별칭: AzContext, AzureRmContext, AzureCredential
매개 변수 집합
(All)
Position: Named
필수: False
파이프라인의 값: False
속성 이름별 파이프라인의 값: False
나머지 인수의 값: False
-Disk
디스크 보안 프로필
매개 변수 속성
형식: PSDisk
Default value: None
와일드카드 지원: False
DontShow: False
별칭: DiskSecurityProfile
매개 변수 집합
(All)
Position: 0
필수: True
파이프라인의 값: True
속성 이름별 파이프라인의 값: True
나머지 인수의 값: False
-SecureVMDiskEncryptionSet
미사용 암호화를 사용하도록 설정하는 데 사용할 디스크 암호화 집합의 ResourceId입니다.
매개 변수 속성
형식: String
Default value: None
와일드카드 지원: False
DontShow: False
매개 변수 집합
(All)
Position: Named
필수: False
파이프라인의 값: False
속성 이름별 파이프라인의 값: True
나머지 인수의 값: False
-SecurityType
디스크의 보안 유형
매개 변수 속성
형식: String
Default value: None
와일드카드 지원: False
DontShow: False
매개 변수 집합
(All)
Position: Named
필수: True
파이프라인의 값: False
속성 이름별 파이프라인의 값: True
나머지 인수의 값: False
-WhatIf
cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.
매개 변수 속성
형식: SwitchParameter
Default value: None
와일드카드 지원: False
DontShow: False
별칭: 위스콘신
매개 변수 집합
(All)
Position: Named
필수: False
파이프라인의 값: False
속성 이름별 파이프라인의 값: False
나머지 인수의 값: False
CommonParameters
이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters 를 참조하세요.
출력