Skip to content

Commit 47b151a

Browse files
committed
created private zone rbac doc
1 parent f32d781 commit 47b151a

File tree

1 file changed

+13
-42
lines changed

1 file changed

+13
-42
lines changed

articles/dns/dns-protect-private-zones-recordsets.md

Lines changed: 13 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Permissions can also be [granted using Azure PowerShell](../role-based-access-co
4040
4141
$rsg = "<resource group name>"
4242
$usr = "<user email address>"
43-
$rol = "DNS Private Zone Contributor"
43+
$rol = "Private DNS Zone Contributor"
4444
4545
New-AzRoleAssignment -SignInName $usr -RoleDefinitionName $rol -ResourceGroupName $rsg
4646
```
@@ -85,12 +85,10 @@ The equivalent command is also [available via the Azure CLI](../role-based-acces
8585
```azurecli-interactive
8686
# Grant 'Private DNS Zone Contributor' permissions to a specific zone
8787
88-
azure role assignment create \
89-
--signInName <user email address> \
90-
--roleName "Private DNS Zone Contributor" \
91-
--resource-name <zone name> \
92-
--resource-type Microsoft.Network/privateDnsZones \
93-
--resource-group <resource group name>
88+
az role assignment create \
89+
--assignee <user email address> \
90+
--role "Private DNS Zone Contributor" \
91+
--scope "/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateDnsZones/<zone name>/"
9492
```
9593

9694
### Record set level RBAC
@@ -122,8 +120,8 @@ The equivalent command is also [available via the Azure CLI](../role-based-acces
122120
# Grant permissions to a specific record set
123121
124122
az role assignment create \
125-
--signInName "<user email address>" \
126-
--roleName "Private DNS Zone Contributor" \
123+
--assignee "<user email address>" \
124+
--role "Private DNS Zone Contributor" \
127125
--scope "/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateDnsZones/<zone name>/<record type>/<record name>"
128126
```
129127

@@ -210,7 +208,7 @@ $lvl = "<lock level>"
210208
$lnm = "<lock name>"
211209
$rsc = "<zone name>"
212210
$rty = "Microsoft.Network/privateDnsZones"
213-
$rsg = "<resource group name>
211+
$rsg = "<resource group name>"
214212
215213
New-AzResourceLock -LockLevel $lvl -LockName $lnm -ResourceName $rsc -ResourceType $rty -ResourceGroupName $rsg
216214
```
@@ -223,9 +221,10 @@ The equivalent command is also [available via the Azure CLI](https://docs.micros
223221
az lock create \
224222
--lock-type "<lock level>" \
225223
--name "<lock name>" \
226-
--resource-name "<zone name"> \
227-
--namespace "Microsoft.Network/privateDnsZones" \
228-
--resource-group "<resource group name>
224+
--resource-name "<zone name>" \
225+
--namespace "Microsoft.Network" \
226+
--resource-type "privateDnsZones" \
227+
--resource-group "<resource group name>"
229228
```
230229
### Protecting individual records
231230

@@ -234,7 +233,7 @@ To prevent an existing DNS record set against modification, apply a ReadOnly loc
234233
> [!NOTE]
235234
> Applying a CanNotDelete lock to a record set is not an effective control. It prevents the record set from being deleted, but it does not prevent it from being modified. Permitted modifications include adding and removing records from the record set, including removing all records to leave an empty record set. This has the same effect as deleting the record set from a DNS resolution viewpoint.
236235
237-
Record set level resource locks can currently only be configured using Azure PowerShell or Azure CLI. They aren't supported in the Azure portal.
236+
Record set level resource locks can currently only be configured using Azure PowerShell. They aren't supported in the Azure portal or Azure CLI.
238237

239238
Azure PowerShell
240239

@@ -248,20 +247,6 @@ $rty = "Microsoft.Network/privateDnsZones"
248247
$rsg = "<resource group name>"
249248
250249
New-AzResourceLock -LockLevel $lvl -LockName $lnm -ResourceName $rnm -ResourceType $rty -ResourceGroupName $rsg
251-
```
252-
253-
Azure CLI
254-
255-
```azurecli-interactive
256-
# Lock a DNS record set
257-
258-
az lock create \
259-
--lock-type "<lock level>" \
260-
--name "<lock name>" \
261-
--resource-name "<zone name>/<record set name>" \
262-
--namespace "Microsoft.Network/privateDnsZones" \
263-
--resource-group "<resource group name>
264-
265250
```
266251
### Protecting against zone deletion
267252

@@ -284,20 +269,6 @@ $rsg = "<resource group name>"
284269
285270
New-AzResourceLock -LockLevel $lvl -LockName $lnm -ResourceName $rnm -ResourceType $rty -ResourceGroupName $rsg
286271
```
287-
288-
Equivalent Azure CLI:
289-
290-
```azurecli-interactive
291-
# Protect against zone delete with CanNotDelete lock on the record set
292-
293-
az lock create \
294-
--lock-type "CanNotDelete" \
295-
--name "<lock name>" \
296-
--resource-name "<zone name>/@" \
297-
--namespace "Microsoft.Network/privateDnsZones/SOA" \
298-
--resource-group "<resource group name>
299-
```
300-
301272
Another option to prevent accidental zone deletion is by using a custom role. This role ensures the accounts used to manage your zones don't have zone delete permissions.
302273

303274
When you do need to delete a zone, you can enforce a two-step delete:

0 commit comments

Comments
 (0)