← cd ~/roles
// roles/azure · identity
Domain Services ReaderAzure built-in role
Can view Azure AD Domain Services and related network configurations
| Role ID | 361898ef-9ed1-48c2-849c-a832951106bb |
|---|---|
| Category | Identity |
| Actions | 28 |
| Data actions | 0 |
What it can do
| Permission | What it allows |
|---|---|
Microsoft.Authorization/*/read | Any read operation on anything under Microsoft.Authorization |
Microsoft.Resources/deployments/read | Gets or lists deployments. |
Microsoft.Resources/deployments/operations/read | Gets or lists deployment operations. |
Microsoft.Resources/deployments/operationstatuses/read | Gets or lists deployment operation statuses. |
Microsoft.Resources/subscriptions/resourceGroups/read | Gets or lists resource groups. |
Microsoft.Insights/AlertRules/Read | Read a classic metric alert |
Microsoft.Insights/AlertRules/Incidents/Read | Read a classic metric alert incident |
Microsoft.Insights/Logs/Read | Reading data from all your logs |
Microsoft.Insights/Metrics/read | Read metrics |
Microsoft.Insights/DiagnosticSettings/read | Read a resource diagnostic setting |
Microsoft.Insights/DiagnosticSettingsCategories/Read | Read diagnostic settings categories |
Microsoft.AAD/domainServices/*/read | Any read operation on anything under Microsoft.AAD/domainServices |
Microsoft.Network/virtualNetworks/read | Get the virtual network definition |
Microsoft.Network/virtualNetworks/subnets/read | Gets a virtual network subnet definition |
Microsoft.Network/virtualNetworks/virtualNetworkPeerings/read | Gets a virtual network peering definition |
Microsoft.Network/virtualNetworks/providers/Microsoft.Insights/diagnosticSettings/read | Get the diagnostic settings of Virtual Network |
Microsoft.Network/virtualNetworks/providers/Microsoft.Insights/metricDefinitions/read | Gets available metrics for the PingMesh |
Microsoft.Network/azureFirewalls/read | Get Azure Firewall |
Microsoft.Network/ddosProtectionPlans/read | Gets a DDoS Protection Plan |
Microsoft.Network/loadBalancers/read | Gets a load balancer definition |
Microsoft.Network/loadBalancers/*/read | Any read operation on anything under Microsoft.Network/loadBalancers |
Microsoft.Network/natGateways/read | |
Microsoft.Network/networkInterfaces/read | Gets a network interface definition. |
Microsoft.Network/networkSecurityGroups/defaultSecurityRules/read | Gets a default security rule definition |
Microsoft.Network/networkSecurityGroups/read | Gets a network security group definition |
Microsoft.Network/networkSecurityGroups/securityRules/read | Gets a security rule definition |
Microsoft.Network/routeTables/read | Gets a route table definition |
Microsoft.Network/routeTables/routes/read | Gets a route definition |
Assign it
Scope it as tightly as you can: a resource or resource group rather than the whole subscription.
az role assignment create \
--assignee "jane.doe@contoso.com" \
--role "Domain Services Reader" \
--scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"New-AzRoleAssignment -SignInName "jane.doe@contoso.com" `
-RoleDefinitionName "Domain Services Reader" `
-Scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"resource assignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: guid(resourceGroup().id, principalId, '361898ef-9ed1-48c2-849c-a832951106bb')
properties: {
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '361898ef-9ed1-48c2-849c-a832951106bb')
principalId: principalId
}
}Who already has it?
authorizationresources
| where type == "microsoft.authorization/roleassignments"
| where tostring(properties.roleDefinitionId) endswith "361898ef-9ed1-48c2-849c-a832951106bb"
| project principalId = tostring(properties.principalId), principalType = tostring(properties.principalType), scope = tostring(properties.scope)Other identity roles
- Managed Identity Operator · 7 permissions
- Managed Identity Contributor · 12 permissions
- Domain Services Contributor · 69 permissions