{"id":590,"date":"2020-06-23T00:00:00","date_gmt":"2020-06-23T00:00:00","guid":{"rendered":""},"modified":"2025-06-30T03:57:02","modified_gmt":"2025-06-30T10:57:02","slug":"azure-container-registry-securing-container-workflows","status":"publish","type":"post","link":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/","title":{"rendered":"Azure Container Registry: Securing container workflows"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Securing any environment requires multiple lines of defense. Azure Container Registry recently announced the general availability of features like <a href=\"https:\/\/aka.ms\/acr\/privatelink\" target=\"_blank\" rel=\"noopener\">Azure Private Link<\/a>, <a href=\"https:\/\/aka.ms\/acr\/cmk\" target=\"_blank\" rel=\"noopener\">customer-managed keys<\/a>, <a href=\"https:\/\/aka.ms\/acr\/dedicated-data-endpoints\" target=\"_blank\" rel=\"noopener\">dedicated data-endpoints<\/a>, and <a href=\"https:\/\/aka.ms\/acr\/azurepolicy\" target=\"_blank\" rel=\"noopener\">Azure Policy definitions<\/a>. These features provide tools to secure Azure Container Registry as part of the container end-to-end workflow.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"customer-managed-keys\">Customer-managed keys<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">By default, when you store images and other artifacts in an Azure Container Registry, content is automatically encrypted at rest with Microsoft-managed keys.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Choosing Microsoft-managed keys means that Microsoft oversees managing the key\u2019s lifecycle. Many organizations have stricter compliance needs, requiring ownership and management of the key\u2019s lifecycle and access policies. In such cases, customers can choose customer-managed keys that are created and maintained in a customer\u2019s <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/key-vault\/general\/overview\" target=\"_blank\" rel=\"noopener\">Azure Key Vault<\/a> instance. Since the keys are stored in Key Vault, customers can also closely monitor the access of these keys using the <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/insights\/azure-key-vault\" target=\"_blank\" rel=\"noopener\">built-in diagnostics and audit logging capabilities<\/a>&nbsp; in Key Vault. Customer-managed keys supplement the default encryption capability with an additional encryption layer using keys provided by customers. See details on how you can <a href=\"https:\/\/aka.ms\/acr\/cmk\" target=\"_blank\" rel=\"noopener\">create a registry enabled for customer-managed keys<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"private-links\">Private links<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Container Registry previously had the ability to restrict access using <a href=\"https:\/\/aka.ms\/acr\/firewallrules\" target=\"_blank\" rel=\"noopener\">firewall rules<\/a>. With the introduction of <a href=\"https:\/\/aka.ms\/acr\/private-link\" target=\"_blank\" rel=\"noopener\">Private Link<\/a>, the registry endpoints are assigned private IP addresses, routing traffic within your virtual network and the service through a Microsoft backbone network.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Private Link support has been one of the top asks, allowing customers to benefit from the Azure management of their registry while benefiting from tightly controlled network ingress and egress.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Private links are available across a wide range of Azure resources with more coming soon, allowing a wide range of container workloads with the security of a private virtual network. See documentation on <a href=\"https:\/\/aka.ms\/acr\/private-link\" target=\"_blank\" rel=\"noopener\">how to configure Azure Private Link for Container Registry<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image has-custom-border\"><img decoding=\"async\" src=\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\" alt=\"Architecture diagram showing Azure Container Registry connectivity to other Azure services over Private Link.\" style=\"border-radius:0px\" title=\"1312 new\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"dedicated-data-endpoints\">Dedicated data-endpoints<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/aka.ms\/acr\/privatelink\" target=\"_blank\" rel=\"noopener\">Private Link<\/a> is the most secure way to control network access between clients and the registry as network traffic is limited to the Azure Virtual Network. When Private Link can&#8217;t be used, <a href=\"https:\/\/aka.ms\/acr\/dedicated-data-endpoints\" target=\"_blank\" rel=\"noopener\">dedicated data-endpoints<\/a> can minimize data exfiltration concerns. Enabling dedicated data endpoints means they can configure firewall rules with fully qualified domain names (<code>[registry].[region].data.azurecr.io<\/code>) rather than a rule with wildcard (<code>*.blob.core.windows.net<\/code>) for all storage accounts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can enable dedicated data-endpoints using the Azure portal or the Microsoft Azure CLI. The data endpoints follow a regional pattern, <code>..data.azurecr.io.<\/code> In a geo-replicated registry, enabling data endpoints allows endpoints in all replica regions. Review the documentation on how to enable <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/container-registry\/container-registry-firewall-access-rules#enable-dedicated-data-endpoints-preview\" target=\"_blank\" rel=\"noopener\">dedicated data endpoints<\/a> to learn more.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"azure-built-in-policies\">Azure built-in policies<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Having security capabilities will secure your workflows if they\u2019re implemented. To assure your Azure resources are following the best security practices, Azure Container Registry has added <a href=\"https:\/\/aka.ms\/acr\/azurepolicy\" target=\"_blank\" rel=\"noopener\">built-in Azure Policy definitions<\/a> that you can leverage to enforce security rules. Here are some of the built-in policies that you can enable for your container registry:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/portal.azure.com\/#blade\/Microsoft_Azure_Policy\/PolicyDetailBlade\/definitionId\/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F5b9159ae-1701-4a6f-9a7a-aa9c8ddd0580\" target=\"_blank\" rel=\"noopener\">Container Registries should be encrypted with a customer-managed key<\/a>. Audit Container Registries that do not have encryption enabled with customer-managed keys.<\/li>\n\n\n\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/portal.azure.com\/#blade\/Microsoft_Azure_Policy\/PolicyDetailBlade\/definitionId\/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Fd0793b48-0edc-4296-a390-4c75d1bdfd71\" target=\"_blank\" rel=\"noopener\">Container Registries should not allow unrestricted network access<\/a>. Audit Container Registries that do not have any network (IP or VNET) rules configured and allow all network access by default. Container Registries with at least one IP or firewall rule, or configured virtual network will be deemed compliant.<\/li>\n\n\n\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/portal.azure.com\/#blade\/Microsoft_Azure_Policy\/PolicyDetailBlade\/definitionId\/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Fe8eef0a8-67cf-4eb4-9386-14b0e78733d4\" target=\"_blank\" rel=\"noopener\">Container Registries should use private links<\/a>. Audit Container Registries that do not have at least one approved private endpoint connection. Clients in a virtual network can securely access resources that have private endpoint connections through private links.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Using Azure Policy, you can ensure that your registries stay compliant with your organization&#8217;s compliance needs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"additional-links\">Additional links<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Learn more about <a href=\"https:\/\/aka.ms\/acr\" target=\"_blank\" rel=\"noopener\">Azure Container Registry<\/a>.<\/li>\n\n\n\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/aka.ms\/acr\/uservoice\" target=\"_blank\" rel=\"noopener\">UserVoice<\/a>: To vote for existing requests or create a new request.<\/li>\n\n\n\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/aka.ms\/acr\/issues\" target=\"_blank\" rel=\"noopener\">Issues<\/a>: To view existing bugs and issues or log new ones.<\/li>\n\n\n\n<li class=\"wp-block-list-item\"><a href=\"https:\/\/docs.microsoft.com\/azure\/container-registry\/\" target=\"_blank\" rel=\"noopener\">Azure Container Registry documentation<\/a>: For Azure Container Registry tutorials and documentation.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ms_queue_id":[],"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","_alt_title":"","footnotes":"","msx_community_cta_settings":[]},"categories":[1482,1457,1459],"tags":[],"audience":[3055,3053,3056],"content-type":[1511],"product":[1546,1617,1478],"tech-community":[],"topic":[],"coauthors":[267],"class_list":["post-590","post","type-post","status-publish","format-standard","hentry","category-management-and-governance","category-networking","category-security","audience-developers","audience-it-decision-makers","audience-it-implementors","content-type-best-practices","product-azure-policy","product-azure-private-link","product-key-vault","review-flag-gener-1680286584-335","review-flag-lever-1680286579-649","review-flag-new-1680286579-546"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Azure Container Registry: Securing container workflows | Microsoft Azure Blog<\/title>\n<meta name=\"description\" content=\"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Azure Container Registry: Securing container workflows | Microsoft Azure Blog\" \/>\n<meta property=\"og:description\" content=\"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Azure Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/microsoftazure\" \/>\n<meta property=\"article:published_time\" content=\"2020-06-23T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-30T10:57:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\" \/>\n<meta name=\"author\" content=\"Reshmi Mangalore\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@azure\" \/>\n<meta name=\"twitter:site\" content=\"@azure\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Reshmi Mangalore\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\"},\"author\":[{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/reshmi-mangalore\/\",\"@type\":\"Person\",\"@name\":\"Reshmi Mangalore\"}],\"headline\":\"Azure Container Registry: Securing container workflows\",\"datePublished\":\"2020-06-23T00:00:00+00:00\",\"dateModified\":\"2025-06-30T10:57:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\"},\"wordCount\":636,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\",\"articleSection\":[\"Management and governance\",\"Networking\",\"Security\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\",\"name\":\"Azure Container Registry: Securing container workflows | Microsoft Azure Blog\",\"isPartOf\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\",\"datePublished\":\"2020-06-23T00:00:00+00:00\",\"dateModified\":\"2025-06-30T10:57:02+00:00\",\"description\":\"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.\",\"breadcrumb\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\",\"contentUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog home\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Management and governance\",\"item\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/management-and-governance\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Azure Container Registry: Securing container workflows\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#website\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"name\":\"Microsoft Azure Blog\",\"description\":\"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.\",\"publisher\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization\",\"name\":\"Microsoft Azure Blog\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"contentUrl\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp\",\"width\":512,\"height\":512,\"caption\":\"Microsoft Azure Blog\"},\"image\":{\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/microsoftazure\",\"https:\/\/x.com\/azure\",\"https:\/\/www.instagram.com\/microsoftdeveloper\/\",\"https:\/\/www.linkedin.com\/company\/16188386\",\"https:\/\/www.youtube.com\/user\/windowsazure\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117\",\"name\":\"shakir\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g\",\"caption\":\"shakir\"},\"sameAs\":[\"https:\/\/azure.microsoft.com\"],\"url\":\"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Azure Container Registry: Securing container workflows | Microsoft Azure Blog","description":"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/","og_locale":"en_US","og_type":"article","og_title":"Azure Container Registry: Securing container workflows | Microsoft Azure Blog","og_description":"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.","og_url":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/","og_site_name":"Microsoft Azure Blog","article_publisher":"https:\/\/www.facebook.com\/microsoftazure","article_published_time":"2020-06-23T00:00:00+00:00","article_modified_time":"2025-06-30T10:57:02+00:00","og_image":[{"url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp","type":"","width":"","height":""}],"author":"Reshmi Mangalore","twitter_card":"summary_large_image","twitter_creator":"@azure","twitter_site":"@azure","twitter_misc":{"Written by":"Reshmi Mangalore","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#article","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/"},"author":[{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/reshmi-mangalore\/","@type":"Person","@name":"Reshmi Mangalore"}],"headline":"Azure Container Registry: Securing container workflows","datePublished":"2020-06-23T00:00:00+00:00","dateModified":"2025-06-30T10:57:02+00:00","mainEntityOfPage":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/"},"wordCount":636,"commentCount":0,"publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage"},"thumbnailUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp","articleSection":["Management and governance","Networking","Security"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/","name":"Azure Container Registry: Securing container workflows | Microsoft Azure Blog","isPartOf":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage"},"thumbnailUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp","datePublished":"2020-06-23T00:00:00+00:00","dateModified":"2025-06-30T10:57:02+00:00","description":"Securing any environment requires multiple lines of defense. Azure Container Registry recently announced general availability of features like Azure Private Link, customer-managed keys, dedicated data-endpoints and Azure Policy definitions. These features provide tools to secure Azure Container Registry as part of the container end to end workflow.","breadcrumb":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#primaryimage","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp","contentUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2020\/06\/ecfc63bf-21d1-493f-9f76-e1f895dc90a9.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-container-registry-securing-container-workflows\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog home","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/"},{"@type":"ListItem","position":2,"name":"Management and governance","item":"https:\/\/azure.microsoft.com\/en-us\/blog\/category\/management-and-governance\/"},{"@type":"ListItem","position":3,"name":"Azure Container Registry: Securing container workflows"}]},{"@type":"WebSite","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#website","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","name":"Microsoft Azure Blog","description":"Get the latest Azure news, updates, and announcements from the Azure blog. From product updates to hot topics, hear from the Azure experts.","publisher":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/azure.microsoft.com\/en-us\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#organization","name":"Microsoft Azure Blog","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","contentUrl":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-content\/uploads\/2024\/06\/microsoft_logo.webp","width":512,"height":512,"caption":"Microsoft Azure Blog"},"image":{"@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/microsoftazure","https:\/\/x.com\/azure","https:\/\/www.instagram.com\/microsoftdeveloper\/","https:\/\/www.linkedin.com\/company\/16188386","https:\/\/www.youtube.com\/user\/windowsazure"]},{"@type":"Person","@id":"https:\/\/azure.microsoft.com\/en-us\/blog\/#\/schema\/person\/c702e5edd662b328b49b7e1180cab117","name":"shakir","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g7664e653ea371ce16eaf75e9fa8952c4","url":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9342c7c05bb16548741bc5cd3a3e3b7ee0c8e746844ad2cc582db5beb5514c6f?s=96&d=mm&r=g","caption":"shakir"},"sameAs":["https:\/\/azure.microsoft.com"],"url":"https:\/\/azure.microsoft.com\/en-us\/blog\/author\/shakir\/"}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Azure Blog","distributor_original_site_url":"https:\/\/azure.microsoft.com\/en-us\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/590","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/comments?post=590"}],"version-history":[{"count":1,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/590\/revisions"}],"predecessor-version":[{"id":44482,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/posts\/590\/revisions\/44482"}],"wp:attachment":[{"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/media?parent=590"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/categories?post=590"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tags?post=590"},{"taxonomy":"audience","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/audience?post=590"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/content-type?post=590"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/product?post=590"},{"taxonomy":"tech-community","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/tech-community?post=590"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/topic?post=590"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/azure.microsoft.com\/en-us\/blog\/wp-json\/wp\/v2\/coauthors?post=590"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}