Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Azure-Containerregistrierung akzeptiert standardmäßig Verbindungen über das Internet von Hosts in beliebigen Netzwerken. In diesem Artikel wird gezeigt, wie Sie Ihre Containerregistrierung für den Zugriff von nur bestimmten öffentlichen IP-Adressen oder -Adressbereichen aus konfigurieren. Es stellt entsprechende Schritte mithilfe der Azure CLI und des Azure-Portals bereit.
IP-Netzwerkregeln werden auf dem öffentlichen Registrierungsendpunkt konfiguriert. IP-Netzwerkregeln gelten nicht für private Endpunkte, die mit privatem Link konfiguriert sind.
Das Konfigurieren von IP-Zugriffsregeln steht im Tarif Premium der Containerregistrierung zur Verfügung. Weitere Informationen zu den Tarifen des Registrierungsdiensts und zu den Einschränkungen finden Sie unter Azure Container Registry-Tarife.
Pro Registrierung werden maximal 100 IP-Zugriffsregeln unterstützt.
Wichtig
In einer Containerregistrierung, die den Zugriff auf private Endpunkte, ausgewählte Subnetze oder IP-Adressen einschränkt, sind einige Funktionen möglicherweise nicht verfügbar oder erfordern eine umfangreichere Konfiguration.
- Wenn der öffentliche Netzwerkzugriff auf eine Registrierung deaktiviert ist, erfordert der Zugriff auf die Registrierung durch bestimmte vertrauenswürdige Dienste einschließlich Azure Security Center die Aktivierung einer Netzwerkeinstellung, um die Netzwerkregeln zu umgehen.
- Instanzen bestimmter Azure-Dienste, darunter Azure DevOps Services und Azure Container Instances, können derzeit nicht auf die Containerregistrierung zugreifen.
- Private Endpunkte werden derzeit nicht mit verwalteten Azure DevOps-Agents unterstützt. Sie müssen einen selbstgehosteten Agent mit Netzwerksichtverbindung zum privaten Endpunkt verwenden.
- Wenn die Registrierung einen genehmigten privaten Endpunkt hat und der öffentliche Netzwerkzugriff deaktiviert ist, können Repositorys und Tags außerhalb des virtuellen Netzwerks nicht über das Azure-Portal, die Azure CLI oder andere Tools aufgelistet werden.
Zugriff aus einem ausgewählten öffentlichen Netzwerk – CLI
Ändern des Standardnetzwerkzugriffs auf die Registrierung
Um den Zugriff auf ein ausgewähltes öffentliches Netzwerk zu beschränken, ändern Sie zunächst die Standardaktion so, dass der Zugriff verweigert wird. Ersetzen Sie im folgenden Befehl az acr update den Wert durch den Namen Ihrer Registrierung:
az acr update --name myContainerRegistry --default-action Deny
Hinzufügen einer Netzwerkregel zur Registrierung
Fügen Sie mit dem Befehl az acr network-rule add Ihrer Registrierung eine Netzwerkregel hinzu, die den Zugriff von einer öffentlichen IP-Adresse oder einem öffentlichen IP-Adressbereich erlaubt. Ersetzen Sie beispielsweise den Namen der Containerregistrierung und die öffentliche IP-Adresse eines virtuellen Computers in einem virtuellen Netzwerk.
az acr network-rule add \
--name mycontainerregistry \
--ip-address <public-IP-address>
Hinweis
Warten Sie nach dem Hinzufügen einer Regel einige Minuten, bis die Regel wirksam wird.
Zugriff aus einem ausgewählten öffentlichen Netzwerk – Portal
- Navigieren Sie im Azure-Portal zu Ihrer Containerregistrierung.
- Wählen Sie unter Einstellungen die Option Netzwerk aus.
- Treffen Sie auf der Registerkarte Öffentlicher Zugriff eine Auswahl, um öffentlichen Zugriff von Ausgewählten Netzwerken zuzulassen.
- Geben Sie unter Firewall eine öffentliche IP-Adresse ein, z. B. die öffentliche IP-Adresse einer VM in einem virtuellen Netzwerk. Oder geben Sie einen Adressbereich in CIDR-Notation ein, der die IP-Adresse des virtuellen Computers enthält.
- Wählen Sie Speichern aus.
Hinweis
Warten Sie nach dem Hinzufügen einer Regel einige Minuten, bis die Regel wirksam wird.
Tipp
Aktivieren Sie optional den Registrierungszugriff von einem lokalen Clientcomputer oder einem IP-Adressbereich aus. Um diesen Zugriff zuzulassen, benötigen Sie die öffentliche IPv4-Adresse des Computers. Sie finden diese Adresse, indem Sie in einem Internetbrowser nach „Wie lautet meine IP-Adresse“ suchen. Die aktuelle IPv4-Adresse des Clients wird auch automatisch angezeigt, wenn Sie Firewalleinstellungen auf der Seite Netzwerk im Portal konfigurieren.
Deaktivieren des Zugriffs auf das öffentliche Netzwerk
Deaktivieren Sie optional den öffentlichen Endpunkt in der Registrierung. Durch das Deaktivieren des öffentlichen Endpunkts werden alle Firewallkonfigurationen außer Kraft gesetzt. Beispielsweise können Sie den öffentlichen Zugriff auf eine in einem virtuellen Netzwerk mithilfe von Private Link gesicherte Registrierung deaktivieren.
Hinweis
Wenn die Registrierung in einem virtuellen Netzwerk mit einem Dienstendpunkt eingerichtet ist, wird durch das Deaktivieren des Zugriffs auf den öffentlichen Endpunkt der Registrierung auch der Zugriff auf die Registrierung im virtuellen Netzwerk deaktiviert.
Deaktivieren des öffentlichen Zugriffs – CLI
Um den öffentlichen Zugriff mithilfe der Azure CLI zu deaktivieren, führen Sie az acr update aus, und legen Sie --public-network-enabled auf false fest. Das Argument public-network-enabled erfordert Azure CLI 2.6.0 oder höher.
az acr update --name myContainerRegistry --public-network-enabled false
Deaktivieren des öffentlichen Zugriffs – Portal
- Navigieren Sie im Portal zu Ihrer Containerregistrierung, und wählen Sie Einstellungen > Netzwerk aus.
- Wählen Sie auf der Registerkarte Öffentlicher Zugriff in Öffentlichen Netzwerkzugriff zulassen die Option Deaktiviert aus. Klicken Sie dann auf Speichern.
Wiederherstellen des öffentlichen Netzwerkzugriffs
Um den öffentlichen Endpunkt neu zu aktivieren, aktualisieren Sie die Netzwerkeinstellungen, um den öffentlichen Zugriff zuzulassen. Durch das Aktivieren des öffentlichen Endpunkts werden alle Firewallkonfigurationen außer Kraft gesetzt.
Wiederherstellen des öffentlichen Zugriffs – CLI
Führen Sie az acr update aus, und legen Sie --public-network-enabled auf true fest.
Hinweis
Das Argument public-network-enabled erfordert Azure CLI 2.6.0 oder höher.
az acr update --name myContainerRegistry --public-network-enabled true
Wiederherstellen des öffentlichen Zugriffs – Portal
- Navigieren Sie im Portal zu Ihrer Containerregistrierung, und wählen Sie Einstellungen > Netzwerk aus.
- Wählen Sie auf der Registerkarte Öffentlicher Zugriff in Öffentlichen Netzwerkzugriff zulassen die Option Alle Netzwerke aus. Klicken Sie dann auf Speichern.
Problembehandlung
Zugriff hinter HTTPS-Proxy
Wenn Sie eine öffentliche Netzwerkregel festlegen oder den öffentlichen Zugriff auf die Registrierung verweigern, schlägt die Anmeldung bei der Registrierung von einem nicht zugelassenen öffentlichen Netzwerk fehl. Der Clientzugriff von hinter einem HTTPS-Proxy schlägt ebenfalls fehl, wenn Sie keine Zugriffsregel für den Proxy festlegen. Es wird eine Fehlermeldung wie Error response from daemon: login attempt failed with status: 403 Forbidden oder Looks like you don't have access to registryangezeigt.
Diese Fehler können auch auftreten, wenn Sie einen HTTPS-Proxy verwenden, den eine Netzwerkzugriffsregel zulässt, aber der Proxy ist in der Clientumgebung nicht ordnungsgemäß konfiguriert. Überprüfen Sie, ob sowohl Ihr Docker-Client als auch Ihr Docker-Daemon für das Proxyverhalten konfiguriert sind. Details finden Sie unter HTTP/HTTPS-Proxy in der Docker-Dokumentation.
Zugriff aus Azure Pipelines
Wenn Sie Azure Pipelines mit einer Azure-Containerregistrierung verwenden, die den Zugriff auf bestimmte IP-Adressen beschränkt, kann die Pipeline möglicherweise nicht auf die Registrierung zugreifen. Die ausgehende IP-Adresse der Pipeline ist nicht festgelegt. Standardmäßig wendet die Pipeline Aufträge mit einem von Microsoft gehosteten Agent auf einen VM-Pool mit einem sich ändernden Satz von IP-Adressen an.
Eine Abhilfemaßnahme ist, den für die Ausführung der Pipeline verwendeten Agent von „Von Microsoft gehostet“ in „Selbstgehostet“ zu ändern. Wenn ein selbst gehosteter Agent auf einem von Ihnen verwalteten Windows - oder Linux-Computer ausgeführt wird, steuern Sie die ausgehende IP-Adresse der Pipeline. Sie können diese Adresse in einer Registrierungs-IP-Zugriffsregel hinzufügen.
Zugriff aus AKS
Wenn Sie Azure Kubernetes Service (AKS) mit einer Azure-Containerregistrierung verwenden, die den Zugriff auf bestimmte IP-Adressen beschränkt, können Sie standardmäßig keine feste IP-Adresse für AKS konfigurieren. Die ausgehende IP-Adresse aus dem AKS-Cluster wird nach dem Zufallsprinzip zugewiesen.
Verwenden Sie eine der folgenden Optionen, um dem AKS-Cluster den Zugriff auf die Registrierung zu ermöglichen:
- Richten Sie für den Azure Basic Load Balancer eine statische IP-Adresse für den AKS-Cluster ein.
- Informationen zum Azure Standard Load Balancer finden Sie in den Anleitungen zum Steuern des ausgehenden Datenverkehrs vom Cluster.
Nächste Schritte
- Informationen zum Einschränken des Zugriffs auf eine Registrierung mithilfe eines privaten Endpunkts in einem virtuellen Netzwerk finden Sie unter Konfigurieren von Azure Private Link für eine Azure-Container Containerregistrierung.
- Informationen zum Einrichten von Registrierungszugriffsregeln von hinter einer Clientfirewall finden Sie unter Konfigurieren von Regeln für den Zugriff auf eine Azure-Containerregistrierung hinter einer Firewall.
- Weitere Anleitungen zur Problembehandlung finden Sie unter Beheben von Netzwerkproblemen mit der Registrierung.