Ringkasan workload identity
Workload identity memungkinkan Anda menetapkan identitas dan otorisasi yang berbeda secara terperinci untuk setiap aplikasi di cluster. Workload identity adalah cara yang direkomendasikan agar aplikasi yang berjalan dalam GKE di Azure dapat mengakses Azure dan Google Cloud layanan.
Semua cluster GKE telah mengaktifkan workload identity.
Akun layanan Kubernetes
Workload identity mengimplementasikan federasi identitas, atau mendelegasikan kepercayaan atau peran ke penyedia eksternal. Setiap cluster memiliki penyedia OpenID Connect (OIDC) bawaan. Saat Pod berjalan di cluster, Pod akan berjalan menggunakan akun layanan Kubernetes. Pod dapat dikonfigurasi untuk mendapatkan token dengan kredensial berjangka pendek untuk akun layanan Kubernetes menggunakan Volume Token Akun Layanan Terikat.
Penyedia OpenID Connect
Setiap cluster dapat bertindak sebagai penyedia OpenID Connect (OIDC). Dengan penyedia ini, Anda dapat memberikan kredensial akun layanan Kubernetes ke layanan yang mendukung federasi identitas menggunakan OIDC.
URI penerbit penyedia ini juga berfungsi sebagai endpoint penemuan OIDC. Layanan dapat menggunakan endpoint penemuan ini untuk mendapatkan Kumpulan Kunci Web JSON (JWKS), yang memberikan informasi kunci publik yang memungkinkan layanan memverifikasi kredensial akun layanan Kubernetes.
Google Cloud Kumpulan dan penyedia identitas IAM
Google Cloud IAM mendukung
federasi identitas menggunakan OIDC.
Semua cluster GKE dikonfigurasi sebagai penyedia identitas di
workload identity pool PROJECT_ID.svc.id.goog.
Untuk mendapatkan nama workload identity pool dan penyedia, lihat Menggunakan workload identity dengan Google Cloud.
Alternatif untuk workload identity
Ada metode alternatif untuk mengakses layanan dari GKE di Azure. Kami tidak merekomendasikan metode berikut karena komplikasi.
Mengekspor kredensial dan menyimpannya sebagai Secret Kubernetes. Dalam hal ini, Anda harus memutar kredensial yang disimpan secara manual di Azure IAM dan di cluster. Selain itu, jika penyerang mencuri kredensial, mereka dapat mengeksploitasinya.
Melampirkan kredensial ke instance yang mendasari kumpulan node. Dalam hal ini, semua workload yang berjalan di node yang sama berbagi kredensial, yang dapat menghasilkan kumpulan izin yang lebih besar daripada yang mungkin diperlukan workload. Untuk memblokir akses ke izin instance, cluster GKE memblokir akses dari Pod ke layanan metadata instance.
Langkah berikutnya
- Menggunakan workload identity dengan layanan Google Cloud
- Mempelajari workload identity federation lebih lanjut