Izinkan layanan tepercaya mengakses registri penampung yang dibatasi jaringan dengan aman

Azure Container Registry dapat mengizinkan layanan Azure tepercaya tertentu untuk mengakses registri yang dikonfigurasi dengan aturan akses jaringan. Ketika layanan tepercaya diizinkan, instans layanan tepercaya dapat dengan aman melewati aturan jaringan registri dan melakukan operasi seperti menarik atau mendorong citra. Artikel ini menjelaskan cara mengaktifkan dan menggunakan layanan tepercaya dengan registri kontainer Azure yang dibatasi jaringan.

Gunakan Azure Cloud Shell atau penginstalan lokal Azure CLI untuk menjalankan contoh perintah di artikel ini. Jika Anda ingin menggunakannya secara lokal, diperlukan versi 2.18 atau yang lebih baru. Jalankan az --version untuk menemukan versinya. Jika Anda perlu memasang atau meningkatkan, lihat Memasang CLI Azure.

Batasan

  • Skenario akses registri tertentu dengan layanan tepercaya memerlukan identitas terkelola untuk sumber daya Azure. Kecuali jika dicatat bahwa identitas terkelola yang ditetapkan pengguna didukung, hanya identitas yang ditetapkan sistem yang dapat digunakan.
  • Mengizinkan layanan tepercaya tidak berlaku untuk registri kontainer yang dikonfigurasi dengan titik akhir layanan. Fitur ini hanya memengaruhi registri yang dibatasi dengan titik akhir privat atau yang memiliki aturan akses IP publik yang diterapkan.

Tentang layanan tepercaya

Azure Container Registry memiliki model keamanan berlapis, mendukung beberapa konfigurasi jaringan yang membatasi akses ke registri, termasuk:

  • Titik akhir privat dengan Azure Private Link. Saat dikonfigurasi, titik akhir privat registri hanya dapat diakses oleh sumber daya dalam jaringan virtual, menggunakan alamat IP privat.
  • Aturan firewall registri, yang memungkinkan akses ke titik akhir publik registri hanya dari alamat IP publik atau rentang alamat tertentu. Anda juga dapat mengonfigurasi firewall untuk memblokir semua akses ke titik akhir publik saat menggunakan titik akhir privat.

Ketika disebarkan dalam jaringan virtual atau dikonfigurasi dengan aturan firewall, registri menolak akses ke pengguna atau layanan dari luar sumber tersebut.

Beberapa layanan Azure multi-penyewa beroperasi dari jaringan yang tidak dapat disertakan dalam pengaturan jaringan registri ini, mencegah mereka menarik atau mendorong gambar ke registri. Dengan menetapkan instans layanan tertentu sebagai "tepercaya", pemilik registri dapat mengizinkan sumber daya Azure tertentu untuk melewati pengaturan jaringan registri untuk melakukan operasi registri.

Layanan Tepercaya

Instans layanan berikut dapat mengakses registri kontainer yang dibatasi jaringan jika pengaturan layanan tepercaya yang diizinkan oleh registri diaktifkan (default). Lebih banyak layanan akan ditambahkan dari waktu ke waktu.

Jika ditunjukkan, akses oleh layanan tepercaya memerlukan konfigurasi tambahan dari identitas terkelola dalam instans layanan, penugasan peran RBAC, dan autentikasi dengan registri. Untuk langkah-langkah, lihat Layanan alur kerja tepercaya, di akhir artikel ini.

Layanan tepercaya Skenario penggunaan yang didukung Mengonfigurasi identitas terkelola dengan peran RBAC
Azure Container Instances Menyebarkan ke Azure Container Instances dari Azure Container Registry menggunakan identitas terkelola Ya, baik identitas yang ditetapkan sistem atau yang ditetapkan pengguna
Microsoft Defender for Cloud Pemindaian kerentanan oleh Microsoft Defender untuk registri kontainer Tidak
Tugas ACR Mengakses registri induk atau registri lain dari Tugas ACR Ya
Machine Learning Menerapkan atau melatih model di ruang kerja Pembelajaran Mesin menggunakan citra kontainer Docker kustom Ya
Azure Container Registry Mengimpor gambar ke atau dari registri kontainer Azure yang dibatasi jaringan Tidak

Catatan

Saat ini, mengaktifkan pengaturan izinkan layanan tepercaya tidak berlaku untuk App Service.

Mengizinkan layanan tepercaya - CLI

Secara default, pengaturan izinkan layanan tepercaya diaktifkan di registri kontainer Azure baru. Nonaktifkan atau aktifkan pengaturan dengan menjalankan perintah perbarui az acr.

Untuk menonaktifkan:

az acr update --name myregistry --allow-trusted-services false

Untuk mengaktifkan pengaturan di registri yang sudah ada atau registri di mana pengaturan sudah dinonaktifkan:

az acr update --name myregistry --allow-trusted-services true

Mengizinkan layanan tepercaya - portal

Secara default, pengaturan izinkan layanan tepercaya diaktifkan di registri kontainer Azure baru.

Untuk menonaktifkan atau mengaktifkan kembali pengaturan di portal:

  1. Di portal, navigasi ke registri kontainer Anda.
  2. Di Pengaturan, pilih Jaringan.
  3. Di Izinkan akses jaringan publik, pilih Jaringan yang dipilih atau Dinonaktifkan.
  4. Lakukan salah satu hal berikut:
    • Untuk menonaktifkan akses oleh layanan tepercaya, di bawah Pengecualian firewall, hapus centang Izinkan layanan Microsoft tepercaya untuk mengakses registri kontainer ini.
    • Untuk mengizinkan layanan tepercaya, di bawah Pengecualian firewall, centang Izinkan layanan Microsoft tepercaya untuk mengakses registri kontainer ini.
  5. Pilih Simpan.

Alur kerja layanan tepercaya

Berikut adalah alur kerja umum untuk mengaktifkan instans layanan tepercaya untuk mengakses registri kontainer yang dibatasi jaringan. Alur kerja ini diperlukan ketika identitas terkelola dari instans layanan digunakan untuk melewati aturan jaringan registri.

  1. Aktifkan identitas terkelola di salah satu layanan tepercaya untuk Azure Container Registry.
  2. Tetapkan identitas peran Azure ke registri Anda. Misalnya, tetapkan peran ACRPull untuk menarik citra kontainer.
  3. Di registri yang dibatasi jaringan, konfigurasikan pengaturan untuk mengizinkan akses oleh layanan tepercaya.
  4. Gunakan informasi masuk identitas untuk mengautentikasi dengan registri yang dibatasi jaringan.
  5. Tarik citra dari registri, atau lakukan operasi lain yang diizinkan oleh peran tersebut.

Contoh: Tugas ACR

Contoh berikut menunjukkan penggunaan Tugas ACR sebagai layanan tepercaya. Lihat Autentikasi lintas registri dalam tugas ACR menggunakan identitas yang dikelola Azure untuk detail tugas.

  1. Membuat atau memperbarui registri kontainer Azure Membuat tugas ACR.
    • Mengaktifkan identitas terkelola yang ditetapkan sistem saat membuat tugas.
    • Nonaktifkan mode autentikasi default (--auth-mode None) pada tugas.
  2. Tetapkan identitas tugas peran Azure untuk mengakses registri. Misalnya, tetapkan peran AcrPush, yang memiliki izin untuk menarik gambar.
  3. Menambahkan informasi masuk identitas terkelola ke tugas.
  4. Untuk mengonfirmasi bahwa tugas melewati pembatasan jaringan, nonaktifkan akses publik di registri.
  5. Menjalankan tugas. Jika registri dan tugas dikonfigurasi dengan benar, tugas berhasil dijalankan karena registri dasar memungkinkan akses.

Untuk menguji penonaktifan akses oleh layanan tepercaya:

  1. Nonaktifkan pengaturan untuk mengizinkan akses oleh layanan tepercaya.
  2. Jalankan tugas lagi. Dalam kasus ini, eksekusi tugas gagal karena registri tidak lagi memberi akses pada tugas.

Langkah berikutnya