Openbare IP-netwerkregels configureren
Een Azure-containerregister accepteert standaard verbindingen via internet vanaf hosts in elk netwerk. In dit artikel wordt beschreven hoe u uw containerregister zo configureert dat alleen toegang wordt toegestaan vanaf specifieke openbare IP-adressen of adresbereiken. Er worden gelijkwaardige stappen gegeven met behulp van de Azure CLI en Azure Portal.
IP-netwerkregels worden geconfigureerd op het eindpunt van het openbare register. IP-netwerkregels zijn niet van toepassing op privé-eindpunten die zijn geconfigureerd met Private Link
Het configureren van IP-toegangsregels is beschikbaar in de servicelaag Premium-containerregister . Zie Azure Container Registry-lagen voor informatie over registerservicelagen en -limieten.
Elk register ondersteunt maximaal 100 IP-toegangsregels.
Belangrijk
Sommige functionaliteit is mogelijk niet beschikbaar of vereist meer configuratie in een containerregister waarmee de toegang tot privé-eindpunten, geselecteerde subnetten of IP-adressen wordt beperkt.
- Wanneer openbare netwerktoegang tot een register is uitgeschakeld, moet voor registertoegang door bepaalde vertrouwde services , waaronder Azure Security Center, een netwerkinstelling worden ingeschakeld om de netwerkregels te omzeilen.
- Zodra de openbare netwerktoegang is uitgeschakeld, hebben exemplaren van bepaalde Azure-services, waaronder Azure DevOps Services, momenteel geen toegang tot het containerregister.
- Privé-eindpunten worden momenteel niet ondersteund met door Azure DevOps beheerde agents. U moet een zelf-hostende agent gebruiken met een netwerklijn van zicht op het privé-eindpunt.
- Als het register een goedgekeurd privé-eindpunt heeft en openbare netwerktoegang is uitgeschakeld, kunnen opslagplaatsen en tags niet buiten het virtuele netwerk worden weergegeven met behulp van Azure Portal, Azure CLI of andere hulpprogramma's.
Toegang vanuit het geselecteerde openbare netwerk - CLI
Standaardnetwerktoegang tot register wijzigen
Als u de toegang tot een geselecteerd openbaar netwerk wilt beperken, wijzigt u eerst de standaardactie om de toegang te weigeren. Vervang de naam van het register in de volgende az acr update-opdracht :
az acr update --name myContainerRegistry --default-action Deny
Netwerkregel toevoegen aan register
Gebruik de opdracht az acr network-rule add om een netwerkregel toe te voegen aan uw register die toegang vanaf een openbaar IP-adres of bereik toestaat. Vervang bijvoorbeeld de naam van het containerregister en het openbare IP-adres van een virtuele machine in een virtueel netwerk.
az acr network-rule add \
--name mycontainerregistry \
--ip-address <public-IP-address>
Notitie
Nadat u een regel hebt toegevoegd, duurt het enkele minuten voordat de regel van kracht wordt.
Toegang vanuit het geselecteerde openbare netwerk - portal
- Navigeer in de portal naar uw containerregister.
- Selecteer Onder Instellingen de optie Netwerken.
- Selecteer op het tabblad Openbare toegang openbare toegang om openbare toegang vanuit geselecteerde netwerken toe te staan.
- Voer onder Firewall een openbaar IP-adres in, zoals het openbare IP-adres van een virtuele machine in een virtueel netwerk. U kunt ook een adresbereik invoeren in CIDR-notatie die het IP-adres van de VIRTUELE machine bevat.
- Selecteer Opslaan.
Notitie
Nadat u een regel hebt toegevoegd, duurt het enkele minuten voordat de regel van kracht wordt.
Tip
Schakel desgewenst registertoegang in vanaf een lokale clientcomputer of IP-adresbereik. Als u deze toegang wilt toestaan, hebt u het openbare IPv4-adres van de computer nodig. U kunt dit adres vinden door in een internetbrowser te zoeken naar 'wat is mijn IP-adres'. Het huidige IPv4-adres van de client wordt ook automatisch weergegeven wanneer u firewallinstellingen configureert op de pagina Netwerken in de portal.
Openbare netwerktoegang uitschakelen
Schakel desgewenst het openbare eindpunt in het register uit. Als u het openbare eindpunt uitschakelt, worden alle firewallconfiguraties overschreven. U kunt bijvoorbeeld openbare toegang tot een register uitschakelen dat is beveiligd in een virtueel netwerk met behulp van Private Link.
Notitie
Als het register is ingesteld in een virtueel netwerk met een service-eindpunt, wordt de toegang tot het openbare eindpunt van het register ook uitgeschakeld binnen het virtuele netwerk.
Openbare toegang uitschakelen - CLI
Als u openbare toegang wilt uitschakelen met behulp van de Azure CLI, voert u az acr update uit en stelt u deze in --public-network-enabled
false
. Voor het public-network-enabled
argument is Azure CLI 2.6.0 of hoger vereist.
az acr update --name myContainerRegistry --public-network-enabled false
Openbare toegang uitschakelen - portal
- Navigeer in de portal naar uw containerregister en selecteer Instellingennetwerken>.
- Selecteer Uitgeschakeld op het tabblad Openbare toegang, in Openbare netwerktoegang toestaan. Selecteer vervolgens Opslaan.
Openbare netwerktoegang herstellen
Als u het openbare eindpunt opnieuw wilt inschakelen, werkt u de netwerkinstellingen bij om openbare toegang toe te staan. Als u het openbare eindpunt inschakelt, worden alle firewallconfiguraties overschreven.
Openbare toegang herstellen - CLI
Voer az acr update uit en stel deze in --public-network-enabled
op true
.
Notitie
Voor het public-network-enabled
argument is Azure CLI 2.6.0 of hoger vereist.
az acr update --name myContainerRegistry --public-network-enabled true
Openbare toegang herstellen - portal
- Navigeer in de portal naar uw containerregister en selecteer Instellingennetwerken>.
- Selecteer Op het tabblad Openbare toegang, in Openbare netwerktoegang toestaan, Alle netwerken. Selecteer vervolgens Opslaan.
Problemen oplossen
Toegang achter HTTPS-proxy
Als een openbare netwerkregel is ingesteld of openbare toegang tot het register wordt geweigerd, mislukt het aanmelden bij het register vanuit een niet-toegestaan openbaar netwerk. Clienttoegang vanaf een HTTPS-proxy mislukt ook als er geen toegangsregel voor de proxy is ingesteld. Er wordt een foutbericht weergegeven dat lijkt op Error response from daemon: login attempt failed with status: 403 Forbidden
of Looks like you don't have access to registry
.
Deze fouten kunnen ook optreden als u een HTTPS-proxy gebruikt die is toegestaan door een netwerktoegangsregel, maar de proxy niet juist is geconfigureerd in de clientomgeving. Controleer of zowel uw Docker-client als de Docker-daemon zijn geconfigureerd voor proxygedrag. Zie http/HTTPS-proxy in de Docker-documentatie voor meer informatie.
Toegang vanuit Azure Pipelines
Als u Azure Pipelines gebruikt met een Azure-containerregister dat de toegang tot specifieke IP-adressen beperkt, heeft de pijplijn mogelijk geen toegang tot het register, omdat het uitgaande IP-adres van de pijplijn niet is opgelost. De pijplijn voert standaard taken uit met behulp van een door Microsoft gehoste agent in een virtuele-machinegroep met een veranderende set IP-adressen.
Een tijdelijke oplossing is het wijzigen van de agent die wordt gebruikt om de pijplijn uit te voeren van Door Microsoft gehost naar zelf-hostend. Met een zelf-hostende agent die wordt uitgevoerd op een Windows - of Linux-computer die u beheert, beheert u het uitgaande IP-adres van de pijplijn en kunt u dit adres toevoegen aan een IP-toegangsregel voor het register.
Toegang vanuit AKS
Als u Azure Kubernetes Service (AKS) gebruikt met een Azure-containerregister dat de toegang tot specifieke IP-adressen beperkt, kunt u standaard geen vast AKS-IP-adres configureren. Het uitgaande IP-adres van het AKS-cluster wordt willekeurig toegewezen.
Als u het AKS-cluster toegang wilt geven tot het register, hebt u de volgende opties:
- Als u de Azure Basic Load Balancer gebruikt, stelt u een statisch IP-adres in voor het AKS-cluster.
- Als u de Azure Standard Load Balancer gebruikt, raadpleegt u de richtlijnen voor het beheren van uitgaand verkeer van het cluster.
Volgende stappen
- Zie Azure Private Link configureren voor een Azure-containerregister om de toegang tot een register te beperken met behulp van een privé-eindpunt in een virtueel netwerk.
- Als u registertoegangsregels wilt instellen achter een clientfirewall, raadpleegt u Regels configureren voor toegang tot een Azure-containerregister achter een firewall.
- Zie Netwerkproblemen met register oplossen voor meer hulp bij het oplossen van problemen.