@@ -77,15 +77,15 @@ The preview also has the following restrictions:
77
77
When creating the Key Vault instance, you must enable soft delete and purge protection. Soft delete ensures that the Key Vault holds a deleted key for a given retention period (90 day default). Purge protection ensures that a deleted key cannot be permanently deleted until the retention period lapses. These settings protect you from losing data due to accidental deletion. These settings are mandatory when using a Key Vault for encrypting managed disks.
78
78
79
79
```azurecli
80
- subscriptionId = <yourSubscriptionIDHere>
81
- rgName = <yourResourceGroupNameHere>
82
- location = <yourDesiredLocationHere>
83
- keyVaultName = <yourKeyVaultNameHere>
84
- keyName = <yourKeyNameHere>
85
- diskEncryptionSetName = <yourDiskEncryptionSetNameHere>
86
- diskName = <yourDiskNameHere>
80
+ subscriptionId=yourSubscriptionID
81
+ rgName=yourResourceGroupName
82
+ location=WestCentralUS
83
+ keyVaultName=yourKeyVaultName
84
+ keyName=yourKeyName
85
+ diskEncryptionSetName=yourDiskEncryptionSetName
86
+ diskName=yourDiskName
87
87
88
- az account set -subscription $subscriptionId
88
+ az account set -- subscription $subscriptionId
89
89
90
90
az keyvault create -n $keyVaultName -g $rgName -l $location --enable-purge-protection true --enable-soft-delete true
91
91
@@ -95,17 +95,17 @@ The preview also has the following restrictions:
95
95
1. Create an instance of a DiskEncryptionSet.
96
96
97
97
```azurecli
98
- keyVaultId = $(az keyvault show --name $keyVaultName --query [ id] -o tsv)
98
+ keyVaultId= $(az keyvault show --name $keyVaultName --query [ id] -o tsv)
99
99
100
- keyVaultKeyUrl = $(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
100
+ keyVaultKeyUrl= $(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
101
101
102
- az group deployment create -g $rgName --template-uri "https://raw.githubusercontent.com/ramankumarlive/manageddiskscmkpreview/master/CreateDiskEncryptionSet.json" --parameters "diskEncryptionSetName = $diskEncryptionSetName" "keyVaultId = $keyVaultId" "keyVaultKeyUrl=$keyVaultKeyUrl" "region=$location"
102
+ az disk-encryption-set create -n $diskEncryptionSetName -l $location -g $rgName --source-vault $keyVaultId --key-url $keyVaultKeyUrl
103
103
```
104
104
105
105
1. Grant the DiskEncryptionSet resource access to the key vault.
106
106
107
107
```azurecli
108
- desIdentity=$(az ad sp list --display-name $diskEncryptionSetName -- query[].[objectId ] -o tsv)
108
+ desIdentity=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName -- query [identity.principalId ] -o tsv)
109
109
110
110
az keyvault set-policy -n $keyVaultName -g $rgName --object-id $desIdentity --key-permissions wrapkey unwrapkey get
111
111
@@ -115,41 +115,40 @@ The preview also has the following restrictions:
115
115
### Create a VM using a Marketplace image, encrypting the OS and data disks with customer-managed keys
116
116
117
117
``` azurecli
118
- rgName="<yourResourceGroupName>"
119
- vmName="<yourVMName>"
120
- region="westcentralus"
121
- password="<yourVMLocalAdminPassword>"
122
- vmSize="Standard_DS3_V2"
123
- diskEncryptionSetName="<yourDiskEncryptionSetName>"
124
- templateURI="https://raw.githubusercontent.com/ramankumarlive/manageddiskscmkpreview/master/CreateVMWithDisksEncryptedWithCMK.json"
118
+ rgName=yourResourceGroupName
119
+ vmName=yourVMName
120
+ location=WestCentralUS
121
+ vmSize=Standard_DS3_V2
122
+ image=UbuntuLTS
123
+ diskEncryptionSetName=yourDiskencryptionSetName
125
124
126
- diskEncryptionSetId=$(az resource show -n $diskEncryptionSetName -g ssecmktesting --resource-type "Microsoft.Compute/diskEncryptionSets" --query [id] -o tsv)
125
+ diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)
126
+
127
+ az vm create -g $rgName -n $vmName -l $location --image $image --size $vmSize --generate-ssh-keys --os-disk-encryption-set $diskEncryptionSetId --data-disk-sizes-gb 128 128 --data-disk-encryption-sets $diskEncryptionSetId $diskEncryptionSetId
127
128
128
- az group deployment create -g $rgName --template-uri $templateURI --parameters "virtualMachineName=$vmName" "adminPassword=$password" "vmSize=$vmSize" "diskEncryptionSetId=$diskEncryptionSetId" "region=$region"
129
129
130
130
```
131
131
132
132
### Create an empty disk encrypted using server-side encryption with customer-managed keys and attach it to a VM
133
133
134
134
``` azurecli
135
- vmName="< yourVMName>"
136
- rgName="< yourResourceGroupName>"
137
- diskName="< yourDiskName>"
138
- diskSkuName=" Premium_LRS"
139
- diskSizeinGiB="30"
140
- region="westcentralus"
135
+ vmName=yourVMName
136
+ rgName=yourResourceGroupName
137
+ diskName=yourDiskName
138
+ diskSkuName=Premium_LRS
139
+ diskSizeinGiB=30
140
+ location=WestCentralUS
141
141
diskLUN=2
142
- diskEncryptionSetName="<yourDiskEncryptionSetName>"
143
- templateURI="https://raw.githubusercontent.com/ramankumarlive/manageddiskscmkpreview/master/CreateEmptyDataDiskEncryptedWithSSECMK.json"
142
+ diskEncryptionSetName=yourDiskEncryptionSetName
144
143
145
- diskEncryptionSetId=$(az resource show -n $diskEncryptionSetName -g ssecmktesting --resource-type "Microsoft.Compute/diskEncryptionSets" --query [id] -o tsv)
146
144
145
+ diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)
147
146
148
- az group deployment create -g $rgName --template-uri $templateURI --parameters "diskName=$diskName" "diskSkuName=$diskSkuName" "dataDiskSizeInGb= $diskSizeinGiB" "diskEncryptionSetId=$diskEncryptionSetId" "region=$region"
147
+ az disk create -n $diskName - g $rgName -l $location --encryption-type EncryptionAtRestWithCustomerKey --disk-encryption-set $diskEncryptionSetId --size-gb $diskSizeinGiB --sku $diskSkuName
149
148
150
149
diskId=$(az disk show -n $diskName -g $rgName --query [id] -o tsv)
151
150
152
- az vm disk attach --vm-name $vmName --lun $diskLUN --ids $diskId
151
+ az vm disk attach --vm-name $vmName --lun $diskLUN --ids $diskId
153
152
154
153
```
155
154
0 commit comments