Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby uniemożliwić użytkownikom rejestru w organizacji złośliwe lub przypadkowe wycieki artefaktów poza siecią wirtualną, można skonfigurować zasady eksportu rejestru w celu wyłączenia eksportów.
Polityka eksportu to właściwość wprowadzona dla rejestrów kontenerów Premium w interfejsie API w wersji 2021-06-01-preview. Właściwość exportPolicy , gdy jej stan jest ustawiony na disabled, blokuje eksportowanie artefaktów z rejestru z ograniczeniami sieci, gdy użytkownik próbuje wykonać następujące działania:
- Importowanie artefaktów rejestru do innego rejestru kontenerów platformy Azure
- Utwórz potok eksportu do transferu artefaktów do innego rejestru kontenerów
Uwaga
Wyłączenie eksportowania artefaktów nie uniemożliwia autoryzowanym użytkownikom dostępu do rejestru w sieci wirtualnej w celu ściągania artefaktów ani wykonywania innych operacji płaszczyzny danych. Aby przeprowadzić inspekcję tego użycia, zalecamy skonfigurowanie ustawień diagnostycznych w celu monitorowania operacji rejestru.
Wymagania wstępne
- Rejestr kontenerów premium skonfigurowany z prywatnym punktem końcowym.
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Gdy zostaniesz o to poproszony, zainstaluj rozszerzenie Azure CLI przy pierwszym użyciu. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Inne wymagania dotyczące wyłączania eksportów
Wyłącz dostęp sieci publicznej — aby wyłączyć eksportowanie artefaktów, publiczny dostęp do rejestru musi być również wyłączony (właściwość rejestru
publicNetworkAccessmusi być ustawiona nadisabled). Możesz wyłączyć dostęp do sieci publicznej do rejestru przed wyłączeniem eksportu lub zrobić to jednocześnie.Wyłączając dostęp do publicznego punktu końcowego rejestru, upewnij się, że operacje rejestru są dozwolone tylko w sieci wirtualnej. Publiczny dostęp do rejestru w celu ściągania artefaktów i wykonywania innych operacji jest zabroniony.
Usuń rurociągi eksportu — przed ustawieniem stanu rejestru
exportPolicynadisabled, usuń wszystkie skonfigurowane w rejestrze istniejące rurociągi eksportu. Jeśli kanał jest skonfigurowany, nie można zmienićexportPolicystanu.
Wyłączanie zasad eksportu dla istniejącego rejestru
Podczas tworzenia rejestru stan exportPolicy jest domyślnie ustawiony na enabled, co umożliwia eksportowanie artefaktów. Stan można zaktualizować z użyciem szablonu ARM lub polecenia az resource update.
Szablon ARM
Dołącz następujący kod JSON, aby zaktualizować exportPolicy stan i ustawić publicNetworkAccess właściwość na disabled. Dowiedz się więcej o wdrażaniu zasobów przy pomocy szablonów ARM.
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"publicNetworkAccess": "disabled",
"policies": {
"exportPolicy": {
"status": "disabled"
}
}
}
}
]
[...]
}
Azure CLI
Uruchom az resource update, aby ustawić exportPolicy stan w istniejącym rejestrze na disabled. Zastąp nazwy rejestru i grupy zasobów.
Jak pokazano w tym przykładzie, przy wyłączaniu właściwości exportPolicy, ustaw też właściwość publicNetworkAccess na wartość 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"
Wynik pokazuje, że status polityki eksportu jest wyłączony.
{
"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"
[...]
}
Włącz exportPolicy
Po wyłączeniu stanu exportPolicy w rejestrze, można go ponownie włączyć w dowolnym momencie, używając szablonu ARM lub polecenia az resource update.
Szablon ARM
Dołącz następujący kod JSON, aby zaktualizować exportPolicy stan do enabled. Dowiedz się więcej o wdrażaniu zasobów przy użyciu szablonów ARM
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"policies": {
"exportPolicy": {
"status": "enabled"
}
}
}
}
]
[...]
}
Interfejs wiersza polecenia platformy Azure
Uruchom polecenie az resource update , aby ustawić exportPolicy stan na enabled. Zastąp nazwy rejestru i grupy zasobów.
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"
Następne kroki
- Dowiedz się więcej o rolach i uprawnieniach usługi Azure Container Registry.
- Jeśli chcesz zapobiec przypadkowemu usunięciu artefaktów rejestru, zobacz Blokowanie obrazów kontenerów.
- Dowiedz się więcej o wbudowanych zasadach platformy Azure w celu zabezpieczenia rejestru kontenerów platformy Azure