Secure Client-Specific Access for Pulling Images from Azure Container Registry

RajKumar Kannan 160 Reputation points
2026-02-12T09:48:36.7833333+00:00

I’m working on a Cloud FinOps product where we deploy application container images to Azure Container Registry (ACR). Currently, we share the registry username and password with clients so they can pull images into their Azure Kubernetes Service (AKS) environments.

However, this approach raises security concerns because anyone with those shared credentials could potentially access the registry.

Could you please advise if there is a more secure or recommended way to provide client-specific pull access to ACR images, such as scoped permissions, identity-based authentication, or other best practices, so access can be restricted per client instead of using shared credentials?

Azure Container Registry
Azure Container Registry

An Azure service that provides a registry of Docker and Open Container Initiative images.

0 comments No comments

Answer accepted by question author
Alex Burlachenko 26,700 Reputation points MVP Volunteer Moderator
2026-02-12T14:47:08.5033333+00:00

hi,

sharing a registry username and password is not recommended and should be avoided. Azure Container Registry supports identity based access control so you do not need to share static credentials. The preferred approach is to use Azure RBAC with Microsoft Entra identities. You can assign the AcrPull role at registry or repository level to a specific service principal or managed identity. Each client then authenticates using their own identity rather than shared credentials. If the clients are using AKS, the best practice is to use a managed identity on the AKS cluster and grant that identity AcrPull access to the registry. This way the cluster pulls images securely without storing any passwords.

If you need isolation per client, you can use repository scoped permissions and assign access only to specific repositories instead of the whole registry. Azure supports repository level RBAC and also token based authentication with scope maps for fine grained access control, for scoped tokens u can read https://learn.microsoft.com/azure/container-registry/container-registry-repository-scoped-permissions

as well an option is to create separate service principals per client and assign each one only AcrPull on the required repository. That way if one client’s credentials are compromised it does not affect others.

pls use identity based authentication with RBAC or scoped tokens, not shared admin credentials.

rgds,

Alex

Was this answer helpful?

1 person found this answer helpful.

1 additional answer

Sort by: Oldest
  1. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.