Containers Azure Container Registry premium

ACR scope map

An ACR scope map is a reusable set of repository permissions in Azure Container Registry. It groups actions such as content read, content write, delete, and metadata access, then applies that permission boundary to one or more non-Microsoft Entra registry tokens.

Aliases
Azure Container Registry scope map, repository scope map, registry token scope map
Difficulty
intermediate
CLI mappings
5
Last verified
2026-05-08

Microsoft Learn

An ACR scope map is a reusable set of repository permissions in Azure Container Registry. It groups actions such as content read, content write, delete, and metadata access, then applies that permission boundary to one or more non-Microsoft Entra registry tokens.

Microsoft Learn: Non-Microsoft Entra token-based repository permissions in Azure Container Registry2026-05-08

Technical context

In Azure architecture, this term sits in the container artifact lifecycle: source code becomes an image or OCI artifact, the registry stores it, deployment platforms such as AKS and Azure Container Apps pull it, and operators use metadata to prove what was built, promoted, scanned, or removed. The control plane includes the ACR resource, repository settings, token or scope-map objects, task definitions, webhook definitions, and policy settings. The data plane includes pushes, pulls, tags, manifests, layers, and credential use by clients. A safe design treats registry content as production supply-chain evidence, not just files in a private Docker store. For ACR scope map, the important fields are repository paths and allowed actions such as content read, content write, content delete, metadata read, and metadata write. Each non-Microsoft Entra token is associated with one scope map, and scope-map changes can alter several token permissions at once.

Why it matters

This matters because container mistakes travel quickly. A wrong repository name, overly broad token, accidental tag deletion, missed rebuild, noisy webhook, or blind retention rule can break deployments, expose private images, raise storage cost, or hide the evidence needed during an incident. The practical habit is to ask what artifact boundary the term controls, who owns that boundary, which workload consumes it, what command proves the current state, and what rollback evidence must be preserved before a cleanup, credential, or automation change is made. For ACR scope map, the most useful evidence is not the product label; it is the concrete output that shows current state, ownership, scope, and the next safe action.

Where you see it

Signals, screens, and Azure surfaces where this term usually becomes operational.

Signal 01

ACR token-based permissions

Signal 02

repository-scoped access design

Signal 03

vendor image pull credentials

Signal 04

shared registry governance

Signal 05

az acr scope-map commands

When this becomes relevant

Specific situations where this term helps solve real Azure design, operations, migration, security, reliability, cost, or governance problems.

  • Define identical repository permissions for multiple tokens.
  • Limit external users or services to specific repositories.
  • Separate read, write, delete, and metadata actions.
  • Update token permissions by changing the associated scope map.

Real-world case studies

Different enterprise-style examples that show the term being used to hit measurable objectives.

Case study 01

ACR scope map in action

Scenario, objectives, solution, measured impact, and takeaway.

Scenario

NorthBridge Energy shared one Azure Container Registry with internal teams and a field-device vendor, but the vendor only needed pull access to one firmware repository.

Business/Technical Objectives
  • Limit vendor access to `field/agent` and prevent registry-wide pulls.
  • Avoid sharing the registry admin user or broad service principal credentials.
  • Support token rotation every 90 days.
  • Produce access evidence for the security review board.
Solution Using ACR scope map

The platform team created an ACR scope map containing only `content/read` and `metadata/read` actions for the `field/agent` repository. They then associated that scope map with a non-Microsoft Entra ACR token used by the vendor integration. The token password was generated with an expiration date and stored in the vendor secret vault. Operators used Azure CLI to show the scope map, token status, and repository actions before onboarding. The security team documented that the scope map controlled repository-scoped actions and that the token did not allow listing the entire registry catalog or writing images.

Results & Business Impact
  • Vendor access scope decreased from all registry repositories to one repository path.
  • Credential rotation became a scheduled 20-minute task instead of an exception process.
  • Security review findings for shared registry access were closed in one sprint.
  • No failed production pulls occurred during the first two token rotations.
Key Takeaway for Glossary Readers

An ACR scope map is the permission blueprint that keeps repository-scoped tokens honest.

Case study 02

ACR scope map in action

Scenario, objectives, solution, measured impact, and takeaway.

Scenario

Fabrikam Foods modernized its recipe recommendation platform and needed different pipeline permissions for build engineers, deployment systems, and read-only vulnerability scanners.

Business/Technical Objectives
  • Grant build pipelines write access only to approved service repositories.
  • Give scanners metadata and read access without delete permissions.
  • Reuse permission definitions across multiple tokens.
  • Reduce emergency access requests during release windows.
Solution Using ACR scope map

The registry owner created three ACR scope maps: one for build write permissions, one for deployment read permissions, and one for scanner read and metadata permissions. Each scope map listed exact repositories and allowed actions such as `content/read`, `content/write`, and `metadata/read`. Tokens were attached to the appropriate scope map rather than hand-built one by one. When a new repository was added, the platform team updated the scope map instead of editing several credentials separately. CLI evidence from `az acr scope-map show` was attached to release documentation so auditors could see the repository-action boundary. The runbook also recorded the owner, scope, verification command, rollback contact, and evidence to save after the change so operators could repeat the pattern safely.

Results & Business Impact
  • Access request volume fell 46% during release weeks.
  • Scanner credentials lost delete capability across 37 repositories.
  • New repository onboarding time dropped from 2 days to 3 hours.
  • A quarterly access review found zero tokens with broader permissions than intended.
Key Takeaway for Glossary Readers

Scope maps make ACR permissions reusable, reviewable, and safer than one-off credential decisions.

Case study 03

ACR scope map in action

Scenario, objectives, solution, measured impact, and takeaway.

Scenario

SummitCare Clinics used one registry for patient portal, billing, and analytics containers, but contractors needed temporary access to a single analytics repository.

Business/Technical Objectives
  • Grant temporary write access without exposing patient portal images.
  • Disable the access path immediately after the engagement.
  • Keep permissions understandable for non-container auditors.
  • Avoid creating extra registries solely for contractor isolation.
Solution Using ACR scope map

Cloud operations created a dedicated scope map for `analytics/model-worker` with `content/read`, `content/write`, and `metadata/read`. A contractor token was attached to that scope map and given a password expiration aligned to the contract end date. The team kept production patient portal repositories out of the scope map, so the same registry could be shared safely. During the engagement, operators reviewed the scope map weekly and checked token status before approving image pushes. At closeout, the token was disabled and the scope map was retained as evidence for why access had been limited.

Results & Business Impact
  • Contractor onboarding finished in 1 day instead of creating a new registry over 2 weeks.
  • Temporary access was disabled within 10 minutes of project completion.
  • No contractor credential had access to patient portal repositories.
  • Audit evidence clearly showed repository names and allowed actions.
Key Takeaway for Glossary Readers

ACR scope maps let teams share registry infrastructure while still drawing precise access boundaries. The release team also kept the evidence reusable for the next review.

Why use Azure CLI for this?

Azure CLI is useful for ACR scope map because it turns portal-visible configuration into repeatable evidence. Operators can list the target, inspect IDs and state, confirm whether the command is read-only or mutating, and save sanitized output for release or incident records. For this term, CLI work should start with context checks such as tenant, subscription, resource group, registry, database, role scope, or resource ID. Use JSON output when tags, digests, receiver lists, token permissions, assignment scopes, metrics, or replica links matter. Treat commands that delete manifests, disable tokens, update scope maps, create alerts, or fail over databases as approval-required changes, not casual inspection.

CLI use cases

  • Inventory the current ACR scope map configuration before a release, access change, cleanup, alert update, or database operation so the operator can prove the target is correct.
  • Troubleshoot production behavior by comparing live Azure output for ACR scope map with the expected architecture, owner, scope, tag, permission, metric, or replica state.
  • Automate a repeatable verification check around ACR scope map in a pipeline or runbook so drift is caught before users, workloads, or auditors discover it.
  • Create sanitized post-change evidence for ACR scope map, keeping IDs, state, timestamps, digests, run IDs, metrics, or links while redacting secrets and sensitive endpoints.

Before you run CLI

  • Confirm the active tenant and subscription with `az account show`; many ACR scope map mistakes are wrong-context mistakes that look like product failures.
  • Identify the exact resource boundary before running commands: registry, repository, scope map, token, task, webhook, action group, role scope, database, or replica link.
  • Classify the command as read-only, security-impacting, cost-impacting, destructive, or availability-impacting; approval is required before mutating ACR scope map in production.
  • Decide how sensitive output will be handled before the command runs, especially token passwords, webhook URIs, object IDs, connection details, and registry metadata.

What output tells you

  • The output confirms whether Azure returned the intended ACR scope map target by name, resource ID, subscription, region, repository, database, role scope, or alert group.
  • State fields show what Azure will actually use: tags, digests, retention status, repository actions, token status, task triggers, receivers, session metrics, or replica links.
  • Nested JSON often contains the important evidence; table output can hide permissions, timestamps, action lists, credential status, endpoint scope, or metric dimensions.
  • The output also tells you whether the next action should be inspection, approval, rollback, scale, cleanup, failover, credential rotation, or a safer design review.

Mapped Azure CLI commands

ACR scope map commands

direct
az acr scope-map list --registry <registry-name> --resource-group <resource-group>
az acr scope-mapdiscoverContainers
az acr scope-map show --name <scope-map> --registry <registry-name> --resource-group <resource-group>
az acr scope-mapdiscoverContainers
az acr scope-map create --name <scope-map> --registry <registry-name> --repository <repository> content/read metadata/read
az acr scope-mapsecureContainers
az acr scope-map update --name <scope-map> --registry <registry-name> --add-repository <repository> content/read
az acr scope-mapsecureContainers
az acr token show --name <token-name> --registry <registry-name>
az acr tokendiscoverContainers

Architecture context

Use scope maps as reusable least-privilege definitions for non-Entra registry clients. Name them by intent, keep broad actions rare, separate read-only deployment from build write access, and document which tokens depend on each map before changing repository actions.

Security

Security depends on treating the registry as part of the software supply chain. Verify who can push, pull, delete, update metadata, trigger automation, or read event payloads. Prefer managed identity or Microsoft Entra integration for Azure workloads where it fits, use repository-scoped tokens only when needed, avoid registry admin credentials, and keep secrets out of command lines and logs. For ACR scope map, save evidence that proves the repository, token, scope, trigger, task, or policy affects only the intended image boundary.

Cost

Cost is usually indirect but real. Registry storage grows through repeated tags, orphaned manifests, large layers, retained rollback images, and build artifacts. Tasks can add build/run consumption, webhooks and scanners can trigger downstream cost, and over-segmentation can create unnecessary registries. For ACR scope map, cost control comes from clear image lifecycle rules, unique tagging, retention reviewed against rollback needs, and evidence that cleanup is removing waste rather than deleting still-needed production artifacts.

Reliability

Reliability depends on preserving the artifacts and automation that workloads actually consume. A missing tag, deleted manifest, disabled token, broken webhook endpoint, failed task, or wrong repository name can stop AKS, Container Apps, or CI/CD even when the compute platform is healthy. For ACR scope map, operators should verify the current state before change, keep rollback images available, test automation paths, and record the digest, tag, trigger, run ID, or permission output that proves the release can still recover.

Performance

Performance usually appears through pull speed, build duration, automation latency, and deployment reliability rather than user-request latency. Large images, remote regions, excessive layers, broken caching, slow build tasks, or webhook delays can lengthen rollout windows. For ACR scope map, performance review should check image size, tag and digest choice, regional registry strategy, task duration, endpoint response time, and whether deployment platforms can pull the required artifact without waiting on avoidable registry or network bottlenecks.

Operations

Operational excellence means the registry is inspectable from scripts, not only from portal memory. Use Azure CLI to list repositories, show tags, inspect manifest metadata, check retention, view token and scope-map settings, run tasks, read logs, ping webhooks, and export evidence. For ACR scope map, a good runbook names the owner, intended repository path, safe command, destructive command, expected output, rollback contact, and what evidence can be saved without exposing credentials or private image details.

Common mistakes

  • Treating ACR scope map as a label instead of a boundary with owner, scope, evidence, and rollback consequences.
  • Running mutating commands from the wrong subscription, resource group, registry, role scope, database, or region because the Azure CLI context was not checked first.
  • Saving raw secrets, token passwords, webhook URLs, or sensitive identity details in tickets instead of sanitized operational evidence.
  • Assuming a successful command proves the design is correct; it only proves Azure accepted the request or returned the current state.