Ringkasan Confidential Space


Confidential Space menyediakan lingkungan terisolasi untuk mengoperasikan data sensitif dari beberapa pihak, sehingga pemilik data tersebut dapat menjaganya tetap rahasia. Data sensitif dapat mencakup informasi identitas pribadi (PII), informasi kesehatan terlindungi (PHI), kekayaan intelektual, rahasia kriptografi, model machine learning (ML), atau lainnya.

Anda dapat menggunakan Confidential Space untuk mengoperasikan data sensitif yang hanya dapat dilihat oleh pemilik aslinya dan workload yang disepakati bersama. Atau, Anda dapat menggunakannya untuk menawarkan privasi data yang lebih kuat kepada pelanggan akhir, karena operator atau pemilik lingkungan Confidential Space tidak dapat mengakses data yang sedang diproses.

Confidential Space menggunakan trusted execution environment (TEE) yang dapat digunakan untuk merilis secret Anda hanya ke workload yang diizinkan. Proses pengesahan dan OS image yang telah melalui proses hardening membantu melindungi workload dan data yang diproses oleh workload dari operator.

Untuk mengetahui detail selengkapnya tentang kasus penggunaan dan model keamanan Confidential Space, lihat Ringkasan keamanan Confidential Space.

Komponen Confidential Space

Sistem Confidential Space memiliki tiga komponen inti:

  • Workload: Image dalam container yang berisi kode yang memproses resource yang dilindungi. Ini dijalankan di atas image Confidential Space, OS yang telah melalui proses hardening berdasarkan Container-Optimized OS. Selanjutnya, aplikasi ini berjalan di Confidential VM, TEE berbasis cloud yang menawarkan isolasi hardware dan kemampuan pengesahan jarak jauh. Workload biasanya terletak di project terpisah dari resource yang dilindungi.

  • Layanan pengesahan: Verifikasi pengesahan jarak jauh yang menampilkan bukti pengesahan dalam bentuk token OpenID Connect (OIDC). Token berisi atribut identifikasi untuk workload. Layanan pengesahan berjalan di region yang sama dengan tempat workload berjalan.

  • Resource terlindungi: Resource terkelola yang dilindungi oleh sistem autentikasi dan otorisasi. Jika resource berada di Google Cloud, resource tersebut dapat berupa resource cloud terkelola seperti kunci Cloud Key Management Service (Cloud KMS) atau bucket Cloud Storage. Jika resource tidak ada di Google Cloud (misalnya, di lingkungan lokal atau di cloud lain), maka resource tersebut dapat berupa resource apa pun.

Peran Confidential Space

Komponen dalam sistem Confidential Space dikelola oleh orang-orang dengan tiga peran berbeda:

  • Kolaborator data: Orang atau organisasi yang memiliki resource yang dilindungi yang dioperasikan oleh beban kerja. Kolaborator data dapat mengakses data mereka sendiri, menetapkan izin pada data tersebut, dan bergantung pada output beban kerja, dapat mengakses hasil berdasarkan data tersebut.

    Kolaborator data tidak dapat mengakses data satu sama lain atau mengubah kode beban kerja.

    Lihat artikel Membuat dan memberikan akses ke resource rahasia untuk mempelajari lebih lanjut peran kolaborator data.

  • Penulis workload: Orang yang membuat aplikasi yang mengakses dan memproses data rahasia. Mereka menambahkan aplikasi ke image dalam container, misalnya, menggunakan Docker, dan mengupload image ke repositori seperti Artifact Registry.

    Penulis workload tidak memiliki akses ke data atau hasil, dan tidak dapat mengontrol akses ke data atau hasil tersebut.

    Lihat Membuat dan menyesuaikan workload untuk mempelajari lebih lanjut peran penulis workload.

  • Operator workload: Orang yang menjalankan workload. Operator workload biasanya memiliki hak istimewa administratif penuh pada project tempat mereka menjalankan workload. Misalnya, mereka dapat mengelola resource di project mereka (seperti instance Compute Engine, disk, dan aturan jaringan) dan dapat berinteraksi denganGoogle Cloud API apa pun yang menjalankannya.

    Operator beban kerja tidak memiliki akses ke data, dan tidak dapat mengontrol akses ke data tersebut. Mereka tidak dapat memengaruhi atau mengubah kode workload atau lingkungan eksekusi.

    Lihat Men-deploy workload untuk mempelajari lebih lanjut peran operator workload.

Seseorang dapat mengemban satu atau beberapa peran ini. Untuk keamanan tertinggi, Confidential Space mendukung model kepercayaan di mana kolaborator data, penulis workload, dan operator workload adalah pihak yang terpisah dan saling tidak percaya. Semua peran harus berkolaborasi satu sama lain untuk mendapatkan hasil yang mereka butuhkan.

Contoh alur Confidential Space

Confidential Space menggunakan beberapa layanan Google Cloud untuk membantu mengoperasikan informasi pribadi secara rahasia. Secara umum, penyiapan Ruang Rahasia mungkin terlihat mirip dengan proses berikut:

  1. Beberapa kolaborator data menyimpan data rahasia terenkripsi dalam project Google Cloud terisolasi mereka sendiri, sering kali di organisasi yang berbeda. Mereka ingin membandingkan dan memproses data tersebut tanpa mengungkapkannya kepada satu sama lain atau pihak eksternal. Data terenkripsi mungkin berada di Cloud Storage, BigQuery, atau layanan lain.

  2. Kolaborator data membuat data tiruan yang tidak rahasia untuk beban kerja pengujian yang akan dioperasikan. Data ini dapat berupa file yang berbeda, atau berada di tempat yang berbeda seperti bucket Cloud Storage terpisah.

  3. Kolaborator data membuat workload identity pool (WIP). Selanjutnya, workload yang berjalan di project terpisah dan terisolasi operator workload dapat menggunakan WIP tersebut untuk mengakses data rahasia kolaborator.

  4. Penulis workload menulis kode untuk memproses data rahasia. Dalam project yang terpisah dari kolaborator data dan operator beban kerja, mereka membuat image yang di-container dengan Docker dan menguploadnya ke Artifact Registry.

  5. Operator workload membuat akun layanan dalam project terisolasi yang memiliki akses baca ke tempat data rahasia terenkripsi kolaborator data disimpan, dan akses tulis ke suatu tempat (misalnya, bucket Cloud Storage) untuk menghasilkan output dari pengoperasian data yang didekripsi. Kemudian, akun layanan ini dilampirkan ke Confidential VM yang menjalankan beban kerja.

  6. Kolaborator data menambahkan penyedia ke workload identity pool mereka. Mereka menambahkan detail ke penyedia seperti layanan pengesahan yang harus digunakan, pemetaan atribut untuk membuat jejak audit dalam log, dan kondisi atribut. Detail ini memverifikasi pernyataan yang dibuat oleh image Confidential Space, container workload, dan instance VM workload. Jika workload lulus verifikasi ini, workload diizinkan untuk mengakses dan mendekripsi data rahasia.

  7. Workload diuji pada data non-rahasia dengan memulai instance Confidential VM di project operator workload. VM didasarkan pada versi debug image Confidential Space yang memuat beban kerja dalam container.

    Setelah pengesahan VM diverifikasi dan beban kerja memenuhi kondisi kolaborator data, akun layanan yang terpasang ke VM diizinkan untuk mengakses data rahasia, memprosesnya, dan menghasilkan output.

  8. Setelah pemantauan dan proses debug selesai, workload akan diperbarui untuk penggunaan produksi. Kolaborator data memperbarui dan mengamankan penyedia identitas beban kerja mereka lebih lanjut jika diperlukan, dan mereka dapat memilih untuk menguji beban kerja produksi pada data non-rahasia terlebih dahulu.

  9. Semua pihak menyetujui workload produksi, dan workload tersebut siap untuk mulai memproses data rahasia.

Persyaratan

Confidential Space memerlukan Confidential VM agar dapat berfungsi. Instance Confidential VM harus menggunakan AMD SEV, Intel TDX, atau Intel TDX dengan NVIDIA Confidential Computing (Pratinjau) sebagai teknologi Confidential Computing. Lihat Konfigurasi yang didukung untuk mempelajari opsi konfigurasi hardware, dan lokasi tempat instance Confidential VM dapat dibuat.

Langkah berikutnya