Delen via


Azure Container Registry beperken van gegevensexfiltratie met toegewezen gegevenseindpunten

Azure Container Registry introduceert toegewezen gegevenseindpunten. De functie maakt een strikt bereik van clientfirewallregels mogelijk voor specifieke registers, waardoor problemen met gegevensexfiltratie worden geminimaliseerd.

De functie Toegewezen gegevenseindpunten is beschikbaar in de Premium-servicelaag . Zie containerregisterprijzen voor informatie over prijzen.

Het ophalen van inhoud uit een register omvat twee eindpunten:

Registereindpunt, vaak de aanmeldings-URL genoemd, die wordt gebruikt voor verificatie en inhoudsdetectie. Een opdracht zoals docker pulls contoso.azurecr.io/hello-world doet een REST-aanvraag, die de lagen verifieert en onderhandelt, die het aangevraagde artefact vertegenwoordigt. Gegevenseindpunten dienen blobs die inhoudslagen vertegenwoordigen.

Diagram om eindpunten te illustreren.

Door register beheerde opslagaccounts

Azure Container Registry is een service met meerdere tenants. De registerservice beheert de opslagaccounts voor het gegevenseindpunt. De voordelen van de beheerde opslagaccounts zijn taakverdeling, conflicten tussen inhoud splitsen, meerdere kopieën voor hogere gelijktijdige levering van inhoud en ondersteuning voor meerdere regio's met geo-replicatie.

Met de ondersteuning van het virtuele Azure Private Link-netwerk kunnen de privé-eindpunten voor de beheerde registerservice van Azure Virtual Networks worden ingeschakeld. In dit geval zijn zowel het register- als de gegevenseindpunten toegankelijk vanuit het virtuele netwerk, met behulp van privé-IP-adressen.

Zodra de beheerde registerservice en opslagaccounts beide zijn beveiligd voor toegang vanuit het virtuele netwerk, worden de openbare eindpunten verwijderd.

Diagram ter illustratie van ondersteuning voor virtuele netwerken.

Helaas is een virtuele netwerkverbinding niet altijd een optie.

Belangrijk

Azure Private Link is de veiligste manier om netwerktoegang tussen clients en het register te beheren, omdat netwerkverkeer wordt beperkt tot het virtuele Azure-netwerk, met behulp van privé-IP's. Wanneer Private Link geen optie is, kunnen toegewezen gegevenseindpunten veilige kennis bieden in welke resources toegankelijk zijn vanaf elke client.

Risico's voor clientfirewallregels en gegevensexfiltratie

Clientfirewallregels beperkt de toegang tot specifieke resources. De firewallregels zijn van toepassing tijdens het maken van verbinding met een register vanaf on-premises hosts, IoT-apparaten, aangepaste buildagents. De regels zijn ook van toepassing wanneer de ondersteuning voor Private Link geen optie is.

Diagram om clientfirewallregels te illustreren.

Omdat klanten hun clientfirewallconfiguraties hebben vergrendeld, realiseerden ze zich dat ze een regel moeten maken met een jokerteken voor alle opslagaccounts, waardoor er problemen ontstaan voor gegevensexfiltratie. Een slechte actor kan code implementeren die in staat zou zijn om naar hun opslagaccount te schrijven.

Diagram ter illustratie van exfiltratierisico's voor clientgegevens.

Om de problemen met gegevensexfiltratie op te lossen, maakt Azure Container Registry toegewezen gegevenseindpunten beschikbaar.

Toegewezen gegevenseindpunten

Toegewezen gegevenseindpunten, helpen lagen op te halen uit de Azure Container Registry-service, met volledig gekwalificeerde domeinnamen die het registerdomein vertegenwoordigen.

Aangezien elk register geo-gerepliceerd kan worden, wordt een regionaal patroon gebruikt: [registry].[region].data.azurecr.io.

Voor het Contoso-voorbeeld worden meerdere regionale gegevenseindpunten toegevoegd die de lokale regio ondersteunen met een replica in de buurt.

Met toegewezen gegevenseindpunten wordt de slechte actor geblokkeerd voor het schrijven naar andere opslagaccounts.

Diagram om het contoso-voorbeeld te illustreren met toegewezen gegevenseindpunten.

Toegewezen gegevenseindpunten inschakelen

Notitie

Als u overschakelt naar toegewezen gegevenseindpunten, heeft dit invloed op clients die firewalltoegang tot de bestaande *.blob.core.windows.net eindpunten hebben geconfigureerd, wat pull-fouten veroorzaakt. Voeg de nieuwe gegevenseindpunten toe aan de firewallregels van de client om ervoor te zorgen dat clients consistente toegang hebben. Zodra dit is voltooid, kunnen bestaande registers toegewezen gegevenseindpunten inschakelen via de az cli.

Als u de Azure CLI-stappen in dit artikel wilt gebruiken, is Azure CLI versie 2.4.0 of hoger vereist. Als u Azure CLI wilt installeren of upgraden, raadpleegt u Azure CLI installeren of uitvoeren in Azure Cloud Shell.

az acr update --name contoso --data-endpoint-enabled
  • Voer de opdracht az acr show uit om de gegevenseindpunten weer te geven, inclusief regionale eindpunten voor geo-gerepliceerde registers.
az acr show-endpoints --name contoso

Voorbeelduitvoer:

{
  "loginServer": "contoso.azurecr.io",
  "dataEndpoints": [
    {
      "region": "eastus",
      "endpoint": "contoso.eastus.data.azurecr.io",
    },
    {
     "region": "westus",
      "endpoint": "contoso.westus.data.azurecr.io",
    }
  ]
}
     

Volgende stappen

  • Configureer deze om toegang te krijgen tot een Azure-containerregister achter een firewallregels.
  • Verbinding maken met Azure Container Registry met behulp van Azure Private Link