Nonaktifkan ekspor artefak dari registri kontainer Azure
Untuk mencegah pengguna registri dalam organisasi dari artefak yang bocor secara disengaja atau tidak sengaja di luar jaringan virtual, Anda dapat mengonfigurasi kebijakan ekspor registri untuk menonaktifkan ekspor.
Kebijakan ekspor adalah properti yang diperkenalkan dalam API versi 2021-06-01-preview untuk pendaftar kontainer Premium. Properti exportPolicy
, ketika statusnya diatur ke disabled
, blok ekspor artefak dari registri jaringan-terbatas ketika pengguna mencoba untuk:
- Mengimpor artefak registri ke registri kontainer Azure lainnya
- Membuat jalur ekspor registri untuk mentransfer artefak ke registri kontainer lain
Catatan
Menonaktifkan ekspor artefak tidak mencegah akses pengguna yang berwenang ke registri dalam jaringan virtual untuk menarik artefak atau melakukan operasi bidang data lainnya. Untuk mengaudit penggunaan ini, kami menyarankan Anda mengonfigurasi pengaturan diagnostik untuk memantau operasi registri.
Prasyarat
- Registri kontainer Premium dikonfigurasi dengan titik akhir privat.
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih memilih untuk menjalankan perintah referensi CLI secara lokal, pasang Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
Persyaratan lain untuk menonaktifkan ekspor
Nonaktifkan akses jaringan publik - Untuk menonaktifkan ekspor artefak, akses publik ke registri juga harus dinonaktifkan (properti registri
publicNetworkAccess
harus diatur kedisabled
). Anda dapat menonaktifkan akses jaringan publik ke registri sebelum menonaktifkan ekspor atau menonaktifkannya secara bersamaan.Dengan menonaktifkan akses ke titik akhir publik registri, Anda memastikan bahwa operasi registri hanya diizinkan dalam jaringan virtual. Akses publik ke registri untuk menarik artefak dan melakukan operasi lain dilarang.
Hapus jaringan saluran ekspor - Sebelum menyetel status registri
exportPolicy
kedisabled
, hapus jaringan saluran ekspor yang ada yang dikonfigurasi pada registri. Jika jaringan saluran dikonfigurasi, Anda tidak dapat mengubah statusexportPolicy
.
Nonaktifkan exportPolicy untuk registri yang sudah ada
Saat Anda membuat registri, status exportPolicy
diatur ke enabled
secara default, yang memungkinkan artefak untuk diekspor. Anda dapat memperbarui status disabled
menggunakan templat ARM atau perintah az resource update
.
Templat ARM
Sertakan JSON berikut untuk memperbarui status exportPolicy
dan mengatur properti publicNetworkAccess
ke disabled
. Pelajari selengkapnya tentang menyebarkan sumber daya dengan templat ARM.
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"publicNetworkAccess": "disabled",
"policies": {
"exportPolicy": {
"status": "disabled"
}
}
}
}
]
[...]
}
Azure CLI
Jalankan pembaruan sumber daya az untuk mengatur status exportPolicy
di registri yang ada ke disabled
. Ganti nama registri dan grup sumber daya Anda.
Seperti yang ditunjukkan dalam contoh ini, saat menonaktifkan properti exportPolicy
, setel juga properti publicNetworkAccess
ke 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"
Output menunjukkan bahwa status kebijakan ekspor dinonaktifkan.
{
"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"
[...]
}
Mengaktifkan eksporPolicy
Setelah menonaktifkan status exportPolicy
di registri, Anda dapat mengaktifkannya kembali kapan saja menggunakan templat ARM atau perintah az resource update
.
Templat ARM
Sertakan JSON berikut untuk memperbarui status exportPolicy
menjadi enabled
. Pelajari selengkapnya tentang menyebarkan sumber daya dengan templat ARM
{
[...]
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2021-06-01-preview",
"name": "myregistry",
[...]
"properties": {
"policies": {
"exportPolicy": {
"status": "enabled"
}
}
}
}
]
[...]
}
Azure CLI
Jalankan pembaruan sumber daya az untuk mengatur status exportPolicy
ke enabled
. Ganti nama registri dan grup sumber daya Anda.
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"
Langkah berikutnya
- Pelajari tentang Peran dan izin Azure Container Registry.
- Jika Anda ingin mencegah penghapusan artefak registri yang tidak disengaja, lihat Mengunci gambar kontainer.
- Pelajari tentang Azure policy versi built-in untuk mengamankan registri kontainer Azure Anda