Praktik terbaik untuk CMEK Apigee

Halaman ini menjelaskan praktik terbaik CMEK dengan Apigee.

Pencegahan risiko

Saat ini, Apigee mendukung serangkaian fungsi kunci enkripsi yang dikelola pelanggan yang terbatas. Untuk mencegah penghapusan kunci CMEK atau versi kunci secara tidak sengaja, sebaiknya terapkan hal berikut:

  • Perketat kontrol akses: Batasi peran roles/cloudkms.admin atau izin penghancuran/update kunci Hanya untuk admin tepercaya atau anggota tim senior.
  • Audit izin secara rutin: Pastikan izin tidak diperluas secara tidak sengaja dari waktu ke waktu.
  • Penghapusan kunci otomatis: Jangan menyiapkan otomatisasi untuk menghapus/menonaktifkan kunci secara otomatis.

Menyiapkan durasi penghancuran dan rotasi kunci

  • Pertimbangkan untuk memperpanjang durasi penghancuran default: Periode penghancuran terjadwal default adalah 30 hari. Menetapkan durasi penghancuran kustom selama pembuatan kunci atau menerapkan durasi yang lebih lama melalui kebijakan organisasi dapat memberikan lebih banyak waktu untuk pemulihan jika terjadi penghapusan yang tidak disengaja. Jika Anda yakin bahwa waktu penghancuran yang lebih lama menimbulkan lebih banyak risiko, perhatikan bahwa durasi penghancuran yang lebih lama juga mencegah Anda menghapus kunci secara tidak sengaja. Anda dapat menyeimbangkan manfaat dan risiko untuk melihat durasi mana yang paling sesuai untuk Anda.
  • Wajibkan kunci dinonaktifkan sebelum penghancuran: Sebaiknya nonaktifkan versi kunci sebelum menjadwalkannya untuk penghancuran. Hal ini membantu untuk memvalidasi bahwa kunci tidak digunakan secara aktif dan merupakan langkah penting dalam menentukan apakah aman untuk menghancurkan versi kunci.
  • Terapkan rotasi kunci: Merotasi kunci secara rutin membatasi dampak potensi pembobolan. Jika kunci dibobol, rotasi rutin akan membatasi jumlah pesan sebenarnya yang rentan terhadap pembobolan.

Rotasi kunci di Apigee

Tujuan utama rotasi kunci adalah mengurangi jumlah data yang dienkripsi dengan satu kunci, bukan untuk mengganti versi kunci lama sepenuhnya. Untuk kunci runtime dan kunci bidang kontrol, versi kunci asli tetap terikat ke resource sejak dibuat.

Contoh ilustrasi

  • Instance Apigee akan selalu menggunakan versi kunci CMEK utama yang aktif pada saat pembuatannya, bahkan setelah rotasi kunci.
  • Paket proxy akan terus menggunakan versi kunci CMEK utama yang aktif saat pertama kali dibuat. Namun, jika paket proxy ini diubah setelah rotasi kunci, data baru di dalamnya akan dienkripsi dengan versi kunci utama yang baru.

Batasan saat ini: tidak ada enkripsi ulang otomatis

Perlu diperhatikan bahwa Apigee saat ini tidak mendukung enkripsi ulang otomatis data yang ada saat kunci dirotasi. Hanya sejumlah kecil data baru yang akan dienkripsi dengan versi kunci utama yang baru. Sebagian besar data Anda, seperti analisis, data disk runtime, dan revisi proxy lama, akan tetap dienkripsi dengan versi kunci lama.

Penonaktifan kunci

Menonaktifkan atau menghancurkan kunci akan mengganggu fungsi Apigee. Jika Anda menonaktifkan kunci terlebih dahulu, Anda dapat mengaktifkannya kembali jika ternyata alarm palsu.

Jika Anda menduga kunci (atau versi kunci) dibobol:

  • Skenario berisiko tinggi: Jika Anda yakin data Apigee Anda sensitif dan penyerang memiliki peluang tinggi untuk mengeksploitasinya, segera nonaktifkan kunci dan batalkan akses ke kunci tersebut. Anda harus menonaktifkan kunci terlebih dahulu sebelum membuat ulang instance apigee dan apigee org.
  • Skenario berisiko rendah: Jika meminimalkan waktu non-operasional lebih penting daripada potensi risiko, Anda harus membuat ulang instance apigee dan org apigee terlebih dahulu sebelum menonaktifkan/menghapus CMEK. Lihat di bawah cara mencegah waktu non-operasional secara proaktif dengan berinvestasi dalam pencadangan/pemulihan.
  • Hubungi dukungan: Sebaiknya hubungi Layanan Pelanggan Google Cloud jika Anda yakin kunci dibobol dan Anda perlu menonaktifkannya.

Periksa dampak penonaktifan/pencabutan/penghancuran kunci di bawah. Setelah menonaktifkan kunci, Anda harus membuat ulang instance/org apigee. Lihat praktik terbaik.

  • Pembobolan CMEK runtime: Buat instance baru dengan CMEK baru, lalu hapus instance asli serta CMEK runtime lama setelah traffic dimigrasikan.
  • Pembobolan semua CMEK: Buat organisasi apigee baru dengan kunci CMEK baru, replikasi konfigurasi Anda, alihkan traffic, lalu nonaktifkan organisasi lama dan nonaktifkan/hapus CMEK asli Anda.
  • Hubungi Layanan Pelanggan Google Cloud: Jika API untuk menghapus/membuat ulang instance atau apigee org memerlukan waktu yang sangat lama, hubungi Layanan Pelanggan Google Cloud.

Dampak penonaktifan/pencabutan/penghancuran kunci

Menonaktifkan, mencabut, atau menghancurkan kunci akan membuat Apigee tidak berfungsi dengan benar. Dampaknya adalah sebagai berikut:

  • Menonaktifkan/mencabut/menghancurkan seluruh kunci: API yang berinteraksi dengan pelanggan Apigee akan segera berhenti berfungsi. Sistem internal akan gagal dalam hitungan menit, sehingga memengaruhi deployment proxy, traffic runtime, analisis, dan keamanan API. Instance akan menjadi tidak dapat dimulai sama sekali dalam beberapa minggu karena masalah pemasangan ulang disk.
  • Menonaktifkan/mencabut/menghancurkan versi kunci (termasuk versi kunci utama atau versi kunci sebelumnya): API yang berinteraksi dengan pelanggan Apigee yang menggunakan versi kunci tersebut akan segera berhenti berfungsi. Beberapa sistem internal dan traffic runtime akan terpengaruh. Instance mungkin tidak dapat dimulai jika versi kunci digunakan untuk enkripsi disk.

Mengaktifkan kembali kunci

Jika pembobolan adalah alarm palsu atau penonaktifan kunci tidak disengaja, Anda dapat mengaktifkan kembali kunci jika kunci tersebut dinonaktifkan. Mengaktifkan kembali kunci akan memulihkan fungsi API yang berinteraksi dengan pelanggan. Sistem internal akan pulih dalam hitungan menit. Namun, mungkin ada kehilangan data untuk keamanan dan analisis API selama periode kunci tidak tersedia.

  • Jika periode penonaktifan kunci singkat: Sistem akan pulih kecuali beberapa kehilangan data pada keamanan dan analisis API.
  • Jika periode penonaktifan kunci panjang: Sistem akan pulih untuk melayani traffic, tetapi dapat menyebabkan inkonsistensi data saat satu region menampilkan satu nilai dan region yang sebelumnya tidak aktif menampilkan nilai lain. Hubungi Layanan Pelanggan Google Cloud untuk memperbaiki cluster Apigee Anda.

Menghapus kunci

Pertimbangkan hal berikut sebelum Anda menghapus kunci:

Melindungi organisasi Apigee Anda dengan pencadangan CI/CD

Jika terjadi pembobolan kunci enkripsi yang dikelola pelanggan (CMEK), tindakan segera untuk menonaktifkan, mencabut, atau menghancurkan kunci yang dibobol sangat penting. Namun, tindakan keamanan yang diperlukan ini dapat membuat sistem Apigee Anda tidak berfungsi, sehingga menyebabkan potensi waktu non-operasional dan gangguan layanan.

Untuk memastikan waktu non-operasional minimal atau tidak ada waktu non-operasional untuk layanan Apigee Anda, Anda harus menerapkan pendekatan proaktif: pencadangan berkelanjutan konfigurasi organisasi Anda (pencadangan integrasi berkelanjutan/deployment berkelanjutan (CI/CD)). Lihat alat yang tersedia dan praktik terbaik untuk memulihkan organisasi Apigee.

Keunggulan CI/CD dan IaC

Berinvestasi dalam alat seperti Terraform, solusi Infrastructure as Code (IaC), memungkinkan Anda membuat organisasi Apigee baru dengan lancar dari konfigurasi yang dicadangkan. Proses yang disederhanakan ini memungkinkan Anda membuat ulang organisasi Apigee dengan cepat dan efisien, sehingga meminimalkan waktu non-operasional dan memastikan kelangsungan bisnis.

Alat yang tersedia

Anda dapat menggabungkan semua alat berikut untuk mencadangkan apigee org secara berkala dan menguji proses pemulihan.

Praktik terbaik

  • Pencadangan rutin: Jadwalkan pencadangan rutin untuk memastikan Anda memiliki konfigurasi terbaru yang tersedia. Lihat Mengekspor/membuat ulang organisasi.
  • Penyimpanan aman: Simpan cadangan Anda di lokasi yang aman, seperti repositori terenkripsi.
  • Uji pemulihan: Uji proses pemulihan Anda secara berkala untuk memastikan Anda dapat memulihkan organisasi Apigee secara efektif. Uji proses pemulihan Anda secara berkala untuk memastikan Anda dapat mengalihkan traffic ke organisasi Apigee yang baru dibuat dengan cepat.

Mengekspor/membuat ulang organisasi

Alat apigeecli adalah alat command line yang memungkinkan Anda mengelola resource Apigee. Alat ini memungkinkan Anda melakukan tindakan yang sama seperti Apigee API dalam antarmuka command line yang mudah digunakan, yang analog dengan gcloud perintah.
Jika ingin membuat ulang organisasi Apigee atau bermigrasi ke organisasi Apigee lain, Anda dapat menggunakan apigeecli organizations export dan apigeecli organizations import. Alat ini juga dapat digunakan sebagai dasar pencadangan berkelanjutan. Alat ini dapat mengekspor dan mengimpor resource seperti:

  • Dokumen portal API
  • Kategori portal API
  • Proxy API
  • Konfigurasi keamanan API dan profil keamanan
  • Alur bersama
  • Produk API
  • Developer
  • Aplikasi developer termasuk kredensial
  • AppGroup dan Aplikasi termasuk kredensial
  • Detail lingkungan
  • Grup lingkungan
  • Konfigurasi Perangkat Pengumpul Data
  • Keystore dan sertifikat alias tingkat lingkungan
  • Server target tingkat lingkungan
  • Referensi tingkat lingkungan
  • Peta nilai kunci (KVM) dan entri di tingkat organisasi, lingkungan, dan proxy
  • Keystore dan sertifikat alias, kecuali kunci pribadi

Alat ini dapat mengelola semua resource Apigee lainnya. Daftar lengkap perintah dapat dilihat menggunakan apigeecli tree.

Alat ini memiliki beberapa batasan:

  • Keystore mengharuskan penyimpanan kunci pribadi saat pembuatan dan menyertakannya dalam file cadangan lokal
  • Token OAuth tidak akan dapat dicadangkan dan dipulihkan, yang berarti instance Apigee yang baru dibuat akan memerlukan login ulang oleh pelanggan Anda.
  • Kontrol akses seperti kebijakan organisasi dan aturan IAM tidak dimigrasikan. Jika ingin memigrasikan aturan tersebut, Anda harus menggunakan Google Cloud API.
  • Ekspor laporan analisis tidak didukung, dan metrik analisis tidak disalin ke apigee org baru.
  • Perintah import ini tidak otomatis membuat instance, envGroup, EnvAttachments, lampiran endpoint, atau men-deploy proxy untuk Anda. Anda dapat mengelola resource ini, tetapi tidak langsung melalui the import command.
  • Perintah import ini tidak otomatis membuat situs portal. Pembuatan situs portal harus dilakukan secara manual melalui UI.
  • Sebaiknya investasikan dalam pemulihan bencana untuk penghapusan kunci dan uji proses pemulihan Anda secara berkala untuk memastikan Anda dapat mengalihkan traffic ke organisasi Apigee yang baru dibuat dengan cepat.

Prasyarat

Sebelum memulai, pastikan prasyarat berikut terpenuhi:

  • Apigee CLI diinstal: Instal apigeecli dengan mengikuti langkah-langkah dalam panduan penginstalan.
  • Autentikasi: Anda harus memiliki izin dan kredensial autentikasi yang diperlukan untuk berinteraksi dengan organisasi Apigee. Pastikan Anda telah menyiapkan:
    • Google Cloud SDK (gcloud): Diinstal dan diautentikasi.
    • Token akses: Dapatkan token akses menggunakan gcloud auth print-access-token.
  • Akses jaringan: Pastikan jaringan Anda mengizinkan akses ke Apigee API.
  • Buat organisasi: Buat organisasi apigee baru yang ingin Anda migrasikan. Anda dapat membuat berbagai jenis organisasi apigee; namun, pastikan Anda menggunakan jenis organisasi yang sama (bayar sesuai penggunaan atau langganan) dan jenis perutean jaringan yang sama yang Anda gunakan dengan organisasi asli.

Mengekspor organisasi Apigee

Berikut ini contoh perintah. Lihat apigeecli organizations export untuk mengetahui detail tentang berbagai flag.

# Sample command
mkdir apigee_backup
cd apigee_backup

# gcloud auth application-default login
export ORG_FROM=REPLACE
apigeecli organizations export -o $ORG_FROM --default-token

Mengimpor organisasi Apigee

Berikut ini contoh perintah. Lihat apigeecli organizations import untuk mengetahui detail tentang berbagai flag

# Sample command
# gcloud auth application-default login
export ORG_TO=REPLACE
apigeecli organizations import -o $ORG_TO -f . --default-token

Langkah-langkah pasca-impor

Membuat instance dan menyiapkan jaringan

Lakukan hal berikut untuk membuat instance dan menyiapkan jaringan:

  1. Ikuti langkah-langkah dalam Membuat instance baru untuk membuat instance baru.
  2. Mengonfigurasi traffic Northbound: Northbound mengacu pada traffic API dari klien eksternal atau internal ke Apigee melalui load balancer. Anda harus memastikan bahwa Anda mengonfigurasi Private Service Connect atau VPC dengan benar sehingga instance Anda dapat dijangkau. Anda harus menyiapkan nama host grup lingkungan di organisasi baru.
  3. Mengonfigurasi traffic Southbound: Southbound mengacu pada traffic API dari Apigee ke layanan target proxy API Anda. Jadi, Anda harus mencadangkan dan mengaktifkan alamat IP baru untuk NAT dan mengonfigurasi ulang firewall/daftar yang diizinkan di endpoint target.

Lihat Opsi jaringan Apigee untuk mengetahui informasi selengkapnya.

Mencadangkan/memulihkan konfigurasi lainnya

Gunakan salah satu hal berikut untuk mencadangkan/memulihkan konfigurasi lainnya:

Men-deploy proxy

Gunakan salah satu hal berikut untuk men-deploy proxy:

Mengalihkan traffic

Lakukan hal berikut untuk mengalihkan traffic:

  1. Siapkan pengujian integrasi otomatis untuk instance baru.
  2. Konfigurasi load balancer untuk mengalihkan traffic secara bertahap ke instance baru sambil memantau performa.