Azure Container Registry som minimerar 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 container-registry-pricing.
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 betjänar blobar som representerar innehållslager.
Registerhanterade lagringskonton
Azure Container Registry är en tjänst för flera klientorganisationer. Registertjänsten hanterar lagringskontona för dataslutpunkter. Fördelarna med hanterade lagringskonton är belastningsutjämning, omtvistad innehållsdelning, flera kopior för högre samtidig innehållsleverans och stöd för flera regioner med geo-replikering.
Stöd för virtuella Azure Private Link-nätverk
Stöd för virtuella Azure Private Link-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 frå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.
Brandväggsregler för klient 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-stödet inte är ett alternativ.
När kunderna låste sina konfigurationer av klientbrandväggen insåg de att de måste skapa en regel med jokertecken för alla lagringskonton, vilket ger upphov till problem med dataexfiltrering. En dålig aktör kan distribuera kod som skulle kunna skriva till deras lagringskonto.
För att hantera problem med dataexfiltrering gör Azure Container Registry dedikerade dataslutpunkter tillgängliga.
Dedikerade dataslutpunkter
Dedikerade dataslutpunkter hjälper till 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 närliggande replik.
Med dedikerade dataslutpunkter blockeras den dåliga aktören från att skriva till andra lagringskonton.
Aktivera dedikerade dataslutpunkter
Kommentar
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 klientbrandväggsreglerna. 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 att komma åt ett Azure-containerregister bakom en brandväggsregler.
- Ansluta Azure Container Registry med Hjälp av Azure Private Link