← cd ~/roles
// roles/azure · monitor
Log Analytics ContributorAzure built-in role
Log Analytics Contributor can read all monitoring data and edit monitoring settings. Editing monitoring settings includes adding the VM extension to VMs; reading storage account keys to be able to configure collection of logs from Azure Storage; adding solutions; and configuring Azure diagnostics on all Azure resources.
| Role ID | 92aaf0da-9dab-42b6-94a3-d43ce8d16293 |
|---|---|
| Category | Monitor |
| Actions | 13 |
| Data actions | 1 |
Before you assign it
- It reaches the data, not just the resource. It has 1 data action, such as reading blobs, secrets or messages.
What it can do
| Permission | What it allows |
|---|---|
*/read | Every operation matching */read |
Microsoft.ClassicCompute/virtualMachines/extensions/* | Every operation under Microsoft.ClassicCompute/virtualMachines/extensions |
Microsoft.ClassicStorage/storageAccounts/listKeys/action | |
Microsoft.Compute/virtualMachines/extensions/* | Every operation under Microsoft.Compute/virtualMachines/extensions |
Microsoft.HybridCompute/machines/extensions/write | Installs or Updates an Azure Arc extensions |
Microsoft.Insights/alertRules/* | Every operation under Microsoft.Insights/alertRules |
Microsoft.Insights/diagnosticSettings/* | Every operation under Microsoft.Insights/diagnosticSettings |
Microsoft.OperationalInsights/* | Every operation under Microsoft.OperationalInsights |
Microsoft.OperationsManagement/* | Every operation under Microsoft.OperationsManagement |
Microsoft.Resources/deployments/* | Every operation under Microsoft.Resources/deployments |
Microsoft.Resources/subscriptions/resourcegroups/deployments/* | Every operation under Microsoft.Resources/subscriptions/resourcegroups/deployments |
Microsoft.Storage/storageAccounts/listKeys/action | Returns the access keys for the specified storage account. |
Microsoft.Support/* | Every operation under Microsoft.Support |
Data actions
| Permission | What it allows |
|---|---|
Microsoft.OperationalInsights/workspaces/jobs/export/action | Lets you export data from Log Analytics workspace per query and time range |
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 "Log Analytics Contributor" \
--scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"New-AzRoleAssignment -SignInName "jane.doe@contoso.com" `
-RoleDefinitionName "Log Analytics Contributor" `
-Scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"resource assignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: guid(resourceGroup().id, principalId, '92aaf0da-9dab-42b6-94a3-d43ce8d16293')
properties: {
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '92aaf0da-9dab-42b6-94a3-d43ce8d16293')
principalId: principalId
}
}Who already has it?
authorizationresources
| where type == "microsoft.authorization/roleassignments"
| where tostring(properties.roleDefinitionId) endswith "92aaf0da-9dab-42b6-94a3-d43ce8d16293"
| project principalId = tostring(properties.principalId), principalType = tostring(properties.principalType), scope = tostring(properties.scope)Other monitor roles
- Grafana Admin · 1 permission
- Grafana Editor · 1 permission
- Grafana Limited Viewer · 1 permission
- Grafana Viewer · 1 permission
- Log Analytics Data Reader · 3 permissions
- Monitoring Reader · 3 permissions
- Workbook Reader · 3 permissions
- Data Purger · 4 permissions