Export van artefacten uit een Azure-containerregister uitschakelen
Als u wilt voorkomen dat registergebruikers in een organisatie met opzet of per ongeluk artefacten buiten een virtueel netwerk lekken, kunt u het exportbeleid van het register configureren om exports uit te schakelen.
Exportbeleid is een eigenschap die is geïntroduceerd in API-versie 2021-06-01-preview voor Premium-containerregisters . De exportPolicy
eigenschap blokkeert, wanneer de status is ingesteld op disabled
, het exporteren van artefacten uit een netwerkregister wanneer een gebruiker probeert het volgende te doen:
- De artefacten van het register importeren in een ander Azure-containerregister
- Een exportpijplijn voor het register maken om artefacten over te dragen naar een ander containerregister
Notitie
Het uitschakelen van het exporteren van artefacten voorkomt niet dat geautoriseerde gebruikers toegang hebben tot het register in het virtuele netwerk om artefacten op te halen of andere bewerkingen op het gegevensvlak uit te voeren. Als u dit gebruik wilt controleren, raden we u aan diagnostische instellingen te configureren voor het bewaken van registerbewerkingen.
Vereisten
- Een Premium-containerregister dat is geconfigureerd met een privé-eindpunt.
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Quickstart voor Bash in Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht AZ login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij Azure CLI voor aanvullende aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
Andere vereisten voor het uitschakelen van exports
Openbare netwerktoegang uitschakelen : als u het exporteren van artefacten wilt uitschakelen, moet openbare toegang tot het register ook worden uitgeschakeld (de eigenschap van
publicNetworkAccess
het register moet worden ingesteld opdisabled
). U kunt openbare netwerktoegang tot het register uitschakelen voordat u de export uitschakelt of op hetzelfde moment.Door toegang tot het openbare eindpunt van het register uit te schakelen, zorgt u ervoor dat registerbewerkingen alleen binnen het virtuele netwerk zijn toegestaan. Openbare toegang tot het register voor het ophalen van artefacten en het uitvoeren van andere bewerkingen is verboden.
Exportpijplijnen verwijderen : voordat u de status van
exportPolicy
het register instelt opdisabled
, verwijdert u alle bestaande exportpijplijnen die in het register zijn geconfigureerd. Als een pijplijn is geconfigureerd, kunt u deexportPolicy
status niet wijzigen.
exportPolicy uitschakelen voor een bestaand register
Wanneer u een register maakt, is de exportPolicy
status standaard ingesteld op enabled
, waardoor artefacten kunnen worden geëxporteerd. U kunt de status bijwerken naar disabled
een ARM-sjabloon of de az resource update
opdracht.
ARM-sjabloon
Neem de volgende JSON op om de exportPolicy
status bij te werken en stel de publicNetworkAccess
eigenschap in op disabled
. Meer informatie over het implementeren van resources met ARM-sjablonen.
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"publicNetworkAccess": "disabled",
"policies": {
"exportPolicy": {
"status": "disabled"
}
}
}
}
]
[...]
}
Azure CLI
Voer az resource update uit om de exportPolicy
status in een bestaand register in te stellen op disabled
. Vervang de namen van het register en de resourcegroep.
Zoals in dit voorbeeld wordt weergegeven, stelt u bij het uitschakelen van de exportPolicy
eigenschap ook de publicNetworkAccess
eigenschap in op disabled
.
az resource update --resource-group myResourceGroup \
--name myregistry \
--resource-type "Microsoft.ContainerRegistry/registries" \
--api-version "2021-06-01-preview" \
--set "properties.policies.exportPolicy.status=disabled" \
--set "properties.publicNetworkAccess=disabled"
In de uitvoer ziet u dat de status van het exportbeleid is uitgeschakeld.
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myregistry",
"identity": null,
"kind": null,
"location": "centralus",
"managedBy": null,
"name": "myregistry",
"plan": null,
"properties": {
[...]
"policies": {
"exportPolicy": {
"status": "disabled"
},
"quarantinePolicy": {
"status": "disabled"
},
"retentionPolicy": {
"days": 7,
"lastUpdatedTime": "2021-07-20T23:20:30.9985256+00:00",
"status": "disabled"
},
"trustPolicy": {
"status": "disabled",
"type": "Notary"
},
"privateEndpointConnections": [],
"provisioningState": "Succeeded",
"publicNetworkAccess": "Disabled",
"zoneRedundancy": "Disabled"
[...]
}
exportPolicy inschakelen
Nadat u de exportPolicy
status in een register hebt uitgeschakeld, kunt u deze op elk gewenst moment opnieuw inschakelen met behulp van een ARM-sjabloon of de az resource update
opdracht.
ARM-sjabloon
Neem de volgende JSON op om de exportPolicy
status bij te werken naar enabled
. Meer informatie over het implementeren van resources met ARM-sjablonen
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"policies": {
"exportPolicy": {
"status": "enabled"
}
}
}
}
]
[...]
}
Azure CLI
Voer az resource update uit om de exportPolicy
status in te stellen op enabled
. Vervang de namen van het register en de resourcegroep.
az resource update --resource-group myResourceGroup \
--name myregistry \
--resource-type "Microsoft.ContainerRegistry/registries" \
--api-version "2021-06-01-preview" \
--set "properties.policies.exportPolicy.status=enabled"
Volgende stappen
- Meer informatie over Azure Container Registry rollen en machtigingen.
- Zie Containerinstallatiekopieën vergrendelen als u onbedoelde verwijdering van registerartefacten wilt voorkomen.
- Meer informatie over ingebouwd Azure-beleid voor het beveiligen van uw Azure-containerregister