Tanya jawab umum tentang Node Komputasi Rahasia di Azure Kubernetes Service (AKS)

Artikel ini membahas tentang pertanyaan umum terkait node komputasi rahasia berbasis Intel SGX di Azure Kubernetes Service (AKS). Jika Anda memiliki pertanyaan lebih lanjut, kirim email ke acconaks@microsoft.com.

Produk

Apakah node komputasi rahasia pada AKS tersedia untuk penggunaan produksi?

Ya, untuk node enklave Intel SGX.

Dapatkah saya mengaktifkan Accelerated Networking dengan Kluster AKS komputasi rahasia Azure?

Ya, simpul VM DCSv3 mendukung jaringan yang dipercepat. Komputer virtual DCSv2 tidak.

Apa versi dalam Intel SGX Driver yang ada di Gambar AKS untuk node rahasia?

Saat ini, komputer virtual DCSv2/DCSv3 komputasi rahasia Azure diinstal dengan Intel SGX DCAP 1.33.2

Dapatkah saya memasukkan skrip pasca penginstalan/menyesuakan driver ke Node yang disediakan oleh AKS?

Nomor. Node komputasi rahasia berbasis AKS-Engine mendukung node komputasi rahasia yang memungkinkan penginstalan khusus dan memiliki kontrol penuh atas sarana kontrol Kubernetes Anda.

Dapatkah saya menjalankan Node ACC dengan SKU AKS standar lainnya (membangun kluster kumpulan node heterogen)?

Ya, Anda dapat menjalankan kumpulan node yang berbeda dalam kluster AKS yang sama termasuk node ACC. Untuk menargetkan aplikasi enklave Anda pada kumpulan node tertentu, pertimbangkan untuk menambahkan pemilih node atau menerapkan batas EPC. Lihat detail selengkapnya tentang mulai cepat pada node rahasia di sini.

Dapatkah saya menjalankan Node Windows dan kontainer windows dengan ACC?

Tidak untuk saat ini. Hubungi tim produk di acconaks@microsoft.com jika Anda memiliki node Windows atau kebutuhan kontainer.

Masih bisakah saya menjadwalkan dan menjalankan kontainer non-enklave pada node komputasi rahasia?

Ya. Komputer virtual juga memiliki memori reguler yang dapat menjalankan beban kerja kontainer standar. Pertimbangkan model keamanan dan ancaman aplikasi Anda sebelum Anda memutuskan model penyebaran.

Apa SKU VM yang harus saya pilih untuk node komputasi rahasia?

SKU DCSv2/DCsv3. Informasi lebih lanjut mengenai DCSv2 dan DCSv3 tersedia di wilayah yang didukung

Dapatkah saya menyediakan AKS dengan Kumpulan Node DCSv2 melalui portal Microsoft Azure?

Ya. Azure CLI juga dapat digunakan sebagai alternatif seperti yang didokumentasikan di sini.

Versi Ubuntu dan generasi VM apa yang didukung?

18.04 di Gen 2.

Apa keterbatasan produk saat ini yang diketahui?

  • Hanya mendukung Node VM Ubuntu 18.04 Gen 2
  • Tidak Ada Dukungan Node Windows atau Dukungan Kontainer Windows
  • Penyesuaian Otomatis Horizontal Pod berbasis Memori EPC tidak didukung. CPU dan penyesuaian berbasis memori reguler didukung.
  • Ruang Dev di AKS untuk aplikasi rahasia saat ini tidak didukung

Dapatkah saya memprovisikan AKS dengan Kumpulan Node DCSv2/DCSv3 melalui portal Microsoft Azure?

Ya. Azure CLI juga dapat digunakan sebagai alternatif seperti yang didokumentasikan di sini.

Pengembangan & Penyebaran

Dapatkah saya membawa aplikasi kontainer saya yang sudah ada dan menjalankannya di AKS dengan Azure Confidential Computing?

Ya, Anda akan menjalankan perangkat lunak wrapper SGX di enklave Intel SGX, tinjau halaman kontainer rahasia untuk detail selengkapnya tentang pendukung platform.

Haruskah saya menggunakan gambar dasar Docker untuk memulai aplikasi enklave?

Berbagai pendukung (ISV dan proyek OSS) menyediakan cara untuk mengaktifkan kontainer rahasia. Ulas halaman kontainer rahasia untuk detail selengkapnya dan referensi individu ke implementasi.

Konsep Kontainer Rahasia

Apa itu pengesahan dan bagaimana kita dapat melakukan pengesahan aplikasi yang berjalan di enklave?

Pengesahan adalah proses menunjukkan dan mengesahkan bahwa bagian perangkat lunak sudah digunakan dengan benar pada platform perangkat keras tertentu. Hal ini juga memastikan buktinya dapat diverifikasi untuk memberikan jaminan bahwa bagian perangkat lunak tersebut berjalan dalam platform yang aman dan belum diubah. Baca selengkapnya tentang cara pengesahan dilakukan untuk aplikasi enklave.

Bagaimana jika ukuran kontainer saya lebih besar dari memori EPC yang tersedia?

Memori EPC berlaku untuk bagian aplikasi Anda yang diprogram untuk dijalankan di enklave. Ukuran total kontainer Anda bukanlah cara yang tepat untuk membandingkannya dengan memori EPC maksimum yang tersedia. Faktanya, komputer DCSv2 dengan SGX, memungkinkan memori komputer virtual maksimum 32 GB di mana bagian aplikasi Anda yang tidak tepercaya akan digunakan. Namun, jika kontainer Anda menggunakan lebih dari memori EPC yang tersedia, performa bagian program yang berjalan di enklave mungkin akan terpengaruh.

Untuk mengelola memori EPC dengan lebih baik di node pekerja, pertimbangkan manajemen batas berbasis memori EPC melalui Kubernetes. Ikuti contoh di bawah ini sebagai referensi.

Catatan

Contoh berikut menarik gambar kontainer publik dari Docker Hub. Sebaiknya Anda menyiapkan rahasia penarikan untuk diautentikasi menggunakan akun Docker Hub alih-alih membuat permintaan penarikan anonim. Untuk meningkatkan keandalan saat bekerja dengan konten publik, impor dan kelola gambar di registri kontainer Azure privat. Pelajari lebih lanjut cara menangani citra publik.

apiVersion: batch/v1
kind: Job
metadata:
  name: sgx-test
  labels:
    app: sgx-test
spec:
  template:
    metadata:
      labels:
        app: sgx-test
    spec:
      containers:
      - name: sgxtest
        image: oeciteam/sgx-test: 1.0
        resources:
          limits:
            sgx.intel.com/sgx_epc_mem_in_MiB: 10 # This limit will automatically place the job into confidential computing node. Alternatively, you can target deployment to node pools
      restartPolicy: Never
  backoffLimit: 0

Apa yang terjadi jika enklave saya menggunakan lebih dari memori EPC maksimum yang tersedia?

Total memori EPC yang tersedia dibagi antara aplikasi enklave di komputer virtual atau node pekerja yang sama. Jika aplikasi Anda menggunakan memori EPC lebih dari yang tersedia, performa aplikasi mungkin terpengaruh. Untuk alasan ini, sebaiknya atur toleransi per aplikasi dalam file yaml penyebaran Anda untuk mengelola memori EPC yang tersedia per node pekerja dengan lebih baik seperti yang ditunjukkan pada contoh di atas. Anda juga selalu dapat memilih untuk meningkatkan ukuran komputer virtual kumpulan node pekerja atau menambahkan lebih banyak node.

Mengapa saya tidak dapat melakukan fork () dan exec untuk menjalankan beberapa proses di aplikasi enklave saya?

Saat ini, komputer virtual SKU DCv2 komputasi rahasia Azure mendukung satu ruang alamat untuk program yang dieksekusi dalam enklave. Proses tunggal adalah batasan saat ini yang dirancang di sekitar keamanan tinggi. Namun, pendukung kontainer rahasia mungkin memiliki implementasi alternatif untuk mengatasi batasan ini.

Apakah saya harus memasang volume driver dalam yaml penyebaran saya?

Nomor. Produk menyediakan ACC Add On yang mencakup (confcom) akan membantu Anda dengan hal ini. Baca selengkapnya tentang detail penyebaran di sini.

Dapatkah kita mengubah versi diver Intel SGX DCAP saat ini di AKS?

Nomor. Untuk melakukan penginstalan kustom apa pun, sebaiknya pilih penyebaran Node Pekerja Komputasi Rahasia AKS-Engine.

Apakah hanya gambar yang ditandatangani dan tepercaya yang akan dimuat di enklave untuk komputasi rahasia?

Tidak secara alami selama inisialisasi enklave, tetapi proses pengesahan dapat divalidasi melalui tanda tangan. Referensi di sini.

Apakah penandatanganan kontainer dimungkinkan untuk membawa perlindungan integritas kode ke kontainer rahasia?

Kontainer rahasia memungkinkan Anda menandatangani kode enklave, tetapi bukan kontainer docker itu sendiri. Dengan penandatanganan kode enklave (yang biasanya merupakan kode aplikasi inti Anda di Java, Python, dll.), Anda dapat memverifikasi melalui pengesahan detail MRSIGNER dari kode enklave sebelum Anda dapat memercayai kode dan lingkungan eksekusi melalui alur pengesahan.

Langkah berikutnya

Tinjau halaman kontainer rahasia untuk detail selengkapnya terkait kontainer rahasia.