Azure Container Registry att minimera dataexfiltrering med dedikerade dataslutpunkter
Azure Container Registry introducerar dedikerade dataslutpunkter. Funktionen möjliggör strikt begränsade klientbrandväggsregler för specifika register, vilket minimerar problem med dataexfiltrering.
Funktionen dedikerade dataslutpunkter är tillgänglig på Premium-tjänstnivån . Prisinformation finns i containerregisterpriser.
Att hämta innehåll från ett register omfattar två slutpunkter:
Registerslutpunkten, som ofta kallas inloggnings-URL, används för autentisering och innehållsidentifiering. Ett kommando som docker pulls contoso.azurecr.io/hello-world
gör en REST-begäran som autentiserar och förhandlar om lagren, som representerar den begärda artefakten.
Dataslutpunkter hanterar blobar som representerar innehållslager.
Registerhanterade lagringskonton
Azure Container Registry är en tjänst för flera innehavare. Registertjänsten hanterar dataslutpunktslagringskontona. Fördelarna med hanterade lagringskonton är belastningsutjämning, delning av omtvistade innehåll, flera kopior för högre samtidig innehållsleverans och stöd för flera regioner med geo-replikering.
Azure Private Link stöd för virtuella nätverk
Stöd för Azure Private Link virtuella nätverk möjliggör privata slutpunkter för den hanterade registertjänsten från Azure Virtual Networks. I det här fallet är både registret och dataslutpunkterna tillgängliga från det virtuella nätverket med hjälp av privata IP-adresser.
När både den hanterade registertjänsten och lagringskontona skyddas för åtkomst inifrån det virtuella nätverket tas de offentliga slutpunkterna bort.
Tyvärr är virtuell nätverksanslutning inte alltid ett alternativ.
Viktigt
Azure Private Link är det säkraste sättet att styra nätverksåtkomsten mellan klienter och registret eftersom nätverkstrafiken är begränsad till Azure Virtual Network med hjälp av privata IP-adresser. När Private Link inte är ett alternativ kan dedikerade dataslutpunkter ge säker kunskap om vilka resurser som är tillgängliga från varje klient.
Klientbrandväggsregler och dataexfiltreringsrisker
Klientbrandväggsregler begränsar åtkomsten till specifika resurser. Brandväggsreglerna gäller vid anslutning till ett register från lokala värdar, IoT-enheter och anpassade byggagenter. Reglerna gäller även när Private Link support inte är ett alternativ.
När kunderna låste sina klientbrandväggskonfigurationer insåg de att de måste skapa en regel med jokertecken för alla lagringskonton, vilket skapar problem med dataexfiltrering. En dålig aktör kan distribuera kod som skulle kunna skriva till deras lagringskonto.
För att åtgärda problem med dataexfiltrering gör Azure Container Registry dedikerade dataslutpunkter tillgängliga.
Dedikerade dataslutpunkter
Dedikerade dataslutpunkter hjälper dig att hämta lager från Azure Container Registry-tjänsten, med fullständigt kvalificerade domännamn som representerar registerdomänen.
Eftersom alla register kan bli geo-replikerade används ett regionalt mönster: [registry].[region].data.azurecr.io
.
I Contoso-exemplet läggs flera regionala dataslutpunkter till som stöder den lokala regionen med en replik i närheten.
Med dedikerade dataslutpunkter blockeras den dåliga aktören från att skriva till andra lagringskonton.
Aktivera dedikerade dataslutpunkter
Anteckning
Om du byter till dedikerade dataslutpunkter påverkas klienter som har konfigurerat brandväggsåtkomst till befintliga *.blob.core.windows.net
slutpunkter, vilket orsakar pull-fel. För att säkerställa att klienterna har konsekvent åtkomst lägger du till de nya dataslutpunkterna i klientens brandväggsregler. När det är klart kan befintliga register aktivera dedikerade dataslutpunkter via az cli
.
Om du vill använda Azure CLI-stegen i den här artikeln krävs Azure CLI version 2.4.0 eller senare. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI eller köra i Azure Cloud Shell.
- Kör kommandot az acr update för att aktivera dedikerad dataslutpunkt.
az acr update --name contoso --data-endpoint-enabled
- Kör kommandot az acr show för att visa dataslutpunkterna, inklusive regionala slutpunkter för geo-replikerade register.
az acr show-endpoints --name contoso
Exempel på utdata:
{
"loginServer": "contoso.azurecr.io",
"dataEndpoints": [
{
"region": "eastus",
"endpoint": "contoso.eastus.data.azurecr.io",
},
{
"region": "westus",
"endpoint": "contoso.westus.data.azurecr.io",
}
]
}
Nästa steg
- Konfigurera för åtkomst till ett Azure-containerregister bakom en brandväggsregler.
- Ansluta Azure Container Registry med Azure Private Link