Een containerafbeelding vergrendelen in een Azure-containerregister

In een Azure-containerregister kunt u een versie van een afbeelding of een opslagplaats vergrendelen, zodat deze niet kan worden verwijderd of bijgewerkt. Als u een afbeelding of opslagplaats wilt vergrendelen, moet u de kenmerken ervan bijwerken met behulp van de Azure CLI-opdracht az acr repository update.

Voor dit artikel moet u De Azure CLI uitvoeren in Azure Cloud Shell of lokaal (versie 2.0.55 of hoger wordt aanbevolen). Voer az --version uit om de versie te bekijken. Zie Azure CLI installeren als u de CLI wilt installeren of een upgrade wilt uitvoeren.

Belangrijk

Dit artikel is niet van toepassing op het vergrendelen van een heel register, bijvoorbeeld met behulp van Instellingen > Vergrendelingen in de Azure Portal of az lock opdrachten in de Azure CLI. Als u een registerresource vergrendelt, voorkomt u niet dat u gegevens in opslagplaatsen kunt maken, bijwerken of verwijderen. Het vergrendelen van een register is alleen van invloed op beheerbewerkingen zoals het toevoegen of verwijderen van replicaties of het verwijderen van het register zelf. Meer informatie in Resources vergrendelen om onverwachte wijzigingen te voorkomen.

Scenario's

Een gelabelde afbeelding in Azure Container Registry is standaard veranderlijk, dus met de juiste machtigingen kunt u een afbeelding met dezelfde tag herhaaldelijk bijwerken en naar een register pushen. Container-afbeeldingen kunnen indien nodig ook worden verwijderd. Dit gedrag is handig wanneer u afbeeldingen ontwikkelt en een grootte voor uw register moet onderhouden.

Wanneer u echter een containerafbeelding naar productie implementeert, hebt u mogelijk een onveranderbare containerafbeelding nodig. Een onveranderbare afbeelding is een afbeelding die u niet per ongeluk kunt verwijderen of overschrijven.

Zie Aanbevelingen voor het taggen en versieren van containerafbeeldingen voor strategieën voor het taggen en versieren van afbeeldingen in uw register.

Gebruik de opdracht az acr repository update om kenmerken van de opslagplaats in te stellen, zodat u het volgende kunt doen:

  • Een versie van een afbeelding of een volledige opslagplaats vergrendelen

  • Een versie of opslagplaats van een afbeelding beveiligen tegen verwijdering, maar updates toestaan

  • Leesbewerkingen (pull-bewerkingen) voorkomen op een versie van een afbeelding of een volledige opslagplaats

Zie de volgende secties voor voorbeelden.

Een afbeelding of opslagplaats vergrendelen

De huidige kenmerken van de opslagplaats tonen

Als u de huidige kenmerken van een opslagplaats wilt zien, moet u de volgende opdracht az acr repository show uitvoeren:

az acr repository show \
    --name myregistry --repository myrepo \
    --output jsonc

De huidige afbeeldingskenmerken tonen

Voer de volgende opdracht az acr repository show uit om de huidige kenmerken van een tag te zien:

az acr repository show \
    --name myregistry --image myimage:tag \
    --output jsonc

Een afbeelding vergrendelen op tag

Als u de afbeelding myimage:tag in myregistry wilt vergrendelen, moet u de volgende opdracht az acr repository update uitvoeren:

az acr repository update \
    --name myregistry --image myimage:tag \
    --write-enabled false

Een afbeelding vergrendelen op manifest digest

Voer de volgende opdracht uit om een afbeelding myimage te vergrendelen die wordt geïdentificeerd door manifest digest (SHA-256 hash, vertegenwoordigd als sha256:... ). (Voer de opdracht az acr repository show-manifests uit om de manifest digest te vinden die is gekoppeld aan een of meer afbeeldingstags.)

az acr repository update \
    --name myregistry --image myimage@sha256:123456abcdefg \
    --write-enabled false

Een opslagplaats vergrendelen

Als u de opslagplaats myrepo en alle afbeeldingen in de opslagplaats wilt vergrendelen, moet u de volgende opdracht uitvoeren:

az acr repository update \
    --name myregistry --repository myrepo \
    --write-enabled false

Een afbeelding of opslagplaats beveiligen tegen verwijdering

Een afbeelding beveiligen tegen verwijdering

Voer de volgende opdracht uit om toe te staan dat de afbeelding myimage:tag wordt bijgewerkt, maar niet wordt verwijderd:

az acr repository update \
    --name myregistry --image myimage:tag \
    --delete-enabled false --write-enabled true

Een opslagplaats beveiligen tegen verwijdering

Met de volgende opdracht stelt u de opslagplaats myrepo in, zodat deze niet kan worden verwijderd. Afzonderlijke afbeeldingen kunnen nog steeds worden bijgewerkt of verwijderd.

az acr repository update \
    --name myregistry --repository myrepo \
    --delete-enabled false --write-enabled true

Leesbewerkingen op een afbeelding of opslagplaats voorkomen

Voer de volgende opdracht uit om leesbewerkingen (pull-bewerkingen) op de afbeelding myimage:tag te voorkomen:

az acr repository update \
    --name myregistry --image myimage:tag \
    --read-enabled false

Voer de volgende opdracht uit om leesbewerkingen op alle afbeeldingen in de opslagplaats myrepo te voorkomen:

az acr repository update \
    --name myregistry --repository myrepo \
    --read-enabled false

Een afbeelding of opslagplaats ontgrendelen

Voer de volgende opdracht uit om het standaardgedrag van de afbeelding myimage:tag te herstellen, zodat deze kan worden verwijderd en bijgewerkt:

az acr repository update \
    --name myregistry --image myimage:tag \
    --delete-enabled true --write-enabled true

Voer de volgende opdracht uit om het standaardgedrag van de opslagplaats myrepo en alle afbeeldingen te herstellen, zodat ze kunnen worden verwijderd en bijgewerkt:

az acr repository update \
    --name myregistry --repository myrepo \
    --delete-enabled true --write-enabled true

Volgende stappen

In dit artikel hebt u geleerd hoe u de opdracht az acr repository update gebruikt om het verwijderen of bijwerken van versies van de afbeelding in een opslagplaats te voorkomen. Zie de naslag voor de opdracht az acr repository update om aanvullende kenmerken in te stellen.

Als u de kenmerken wilt zien die zijn ingesteld voor een versie of opslagplaats van een afbeelding, gebruikt u de opdracht az acr repository show.

Zie Containerafbeeldingen verwijderen in Azure Container Registry voor meer informatie over verwijderbewerkingen.