← cd ~/roles
// roles/azure · containers
Container Registry Configuration Reader and Data Access Configuration ReaderAzure built-in role
Provides permissions to list container registries and registry configuration properties. Provides permissions to list data access configuration such as admin user credentials, scope maps, and tokens, which can be used to read, write or delete repositories and images. Does not provide direct permissions to read, list, or write registry contents including repositories and images. Does not provide permissions to modify data plane content such as imports, Artifact Cache or Sync, and Transfer Pipelines. Does not provide permissions for managing Tasks.
| Role ID | 69b07be0-09bf-439a-b9a6-e73de851bd59 |
|---|---|
| Category | Containers |
| Actions | 33 |
| Data actions | 0 |
What it can do
| Permission | What it allows |
|---|---|
Microsoft.ContainerRegistry/registries/operationStatuses/read | Gets a registry async operation status |
Microsoft.ContainerRegistry/registries/read | Gets the properties of the specified container registry or lists all the container registries under the specified resource group or subscription. |
Microsoft.ContainerRegistry/registries/privateEndpointConnections/read | Gets the properties of private endpoint connection or list all the private endpoint connections for the specified container registry |
Microsoft.ContainerRegistry/registries/privateEndpointConnections/operationStatuses/read | Get Private Endpoint Connection Async Operation Status |
Microsoft.ContainerRegistry/registries/listCredentials/action | Lists the login credentials for the specified container registry. |
Microsoft.ContainerRegistry/registries/tokens/read | Gets the properties of the specified token or lists all the tokens for the specified container registry. |
Microsoft.ContainerRegistry/registries/tokens/operationStatuses/read | Gets a token async operation status. |
Microsoft.ContainerRegistry/registries/scopeMaps/read | Gets the properties of the specified scope map or lists all the scope maps for the specified container registry. |
Microsoft.ContainerRegistry/registries/scopeMaps/operationStatuses/read | Gets a scope map async operation status. |
Microsoft.ContainerRegistry/registries/webhooks/read | Gets the properties of the specified webhook or lists all the webhooks for the specified container registry. |
Microsoft.ContainerRegistry/registries/webhooks/getCallbackConfig/action | Gets the configuration of service URI and custom headers for the webhook. |
Microsoft.ContainerRegistry/registries/webhooks/listEvents/action | Lists recent events for the specified webhook. |
Microsoft.ContainerRegistry/registries/webhooks/operationStatuses/read | Gets a webhook async operation status |
Microsoft.ContainerRegistry/registries/replications/read | Gets the properties of the specified replication or lists all the replications for the specified container registry. |
Microsoft.ContainerRegistry/registries/replications/operationStatuses/read | Gets a replication async operation status |
Microsoft.ContainerRegistry/registries/connectedRegistries/read | Gets the properties of the specified connected registry or lists all the connected registries for the specified container registry. |
Microsoft.ContainerRegistry/registries/providers/Microsoft.Insights/diagnosticSettings/read | Gets the diagnostic setting for the resource |
Microsoft.ContainerRegistry/registries/providers/Microsoft.Insights/diagnosticSettings/write | Creates or updates the diagnostic setting for the resource |
Microsoft.ContainerRegistry/registries/providers/Microsoft.Insights/logDefinitions/read | Gets the available logs for Microsoft ContainerRegistry |
Microsoft.ContainerRegistry/registries/providers/Microsoft.Insights/metricDefinitions/read | Gets the available metrics for Microsoft ContainerRegistry |
Microsoft.Insights/AlertRules/Write | Create or update a classic metric alert |
Microsoft.Insights/AlertRules/Delete | Delete a classic metric alert |
Microsoft.Insights/AlertRules/Read | Read a classic metric alert |
Microsoft.Insights/AlertRules/Activated/Action | Classic metric alert activated |
Microsoft.Insights/AlertRules/Resolved/Action | Classic metric alert resolved |
Microsoft.Insights/AlertRules/Throttled/Action | Classic metric alert rule throttled |
Microsoft.Insights/AlertRules/Incidents/Read | Read a classic metric alert incident |
Microsoft.Resources/deployments/read | Gets or lists deployments. |
Microsoft.Resources/deployments/*/read | Any read operation on anything under Microsoft.Resources/deployments |
Microsoft.Resources/subscriptions/resourceGroups/read | Gets or lists resource groups. |
Microsoft.Network/privateEndpoints/privateLinkServiceProxies/read | Gets a private link service proxy resource. |
Microsoft.Network/virtualNetworks/read | Get the virtual network definition |
Microsoft.Network/virtualNetworks/subnets/read | Gets a virtual network subnet 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 "Container Registry Configuration Reader and Data Access Configuration Reader" \
--scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"New-AzRoleAssignment -SignInName "jane.doe@contoso.com" `
-RoleDefinitionName "Container Registry Configuration Reader and Data Access Configuration Reader" `
-Scope "/subscriptions/<subscription id>/resourceGroups/<resource group>"resource assignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: guid(resourceGroup().id, principalId, '69b07be0-09bf-439a-b9a6-e73de851bd59')
properties: {
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '69b07be0-09bf-439a-b9a6-e73de851bd59')
principalId: principalId
}
}Who already has it?
authorizationresources
| where type == "microsoft.authorization/roleassignments"
| where tostring(properties.roleDefinitionId) endswith "69b07be0-09bf-439a-b9a6-e73de851bd59"
| project principalId = tostring(properties.principalId), principalType = tostring(properties.principalType), scope = tostring(properties.scope)Other containers roles
- AcrDelete · 1 permission
- AcrPull · 1 permission
- Connected Cluster Managed Identity CheckAccess Reader · 1 permission
- Container Registry Cache Rule Reader · 1 permission
- Container Registry Credential Set Reader · 1 permission
- Container Registry Repository Catalog Lister · 1 permission
- AcrImageSigner · 2 permissions
- AcrPush · 2 permissions