Google Cloud menyediakan akun layanan sebagai identitas untuk workload di lingkungan produksi. Alih-alih memberikan akses ke workload secara langsung, Anda dapat memberikan akses ke akun layanan, kemudian meminta workload menggunakan akun layanan sebagai identitasnya.
Ada beberapa cara untuk mengonfigurasi akun layanan sebagai identitas untuk workload. Metode yang dapat Anda gunakan bergantung pada lokasi beban kerja Anda.
Workload di Google Cloud
Jika menjalankan workload di Google Cloud, Anda dapat menggunakan metode berikut untuk mengonfigurasi identitas workload Anda:
- Akun layanan terlampir
- Identitas beban kerja terkelola (hanya untuk beban kerja yang berjalan di Compute Engine)
- Workload Identity (khusus untuk beban kerja yang berjalan di Google Kubernetes Engine)
- Kunci akun layanan
Akun layanan terlampir
Untuk beberapa resource Google Cloud, Anda dapat menentukan akun yang dikelola pengguna yang digunakan resource sebagai identitas default. Proses ini disebut melampirkan akun layanan ke resource, atau mengaitkan akun layanan dengan resource.
Saat kode yang berjalan pada resource mengakses layanan dan resource Google Cloud, kode tersebut akan menggunakan akun layanan yang terkait dengan resource tersebut sebagai identitasnya. Misalnya, jika Anda melampirkan akun layanan ke instance Compute Engine, dan aplikasi pada instance tersebut menggunakan library klien untuk memanggil Google Cloud API, aplikasi tersebut akan otomatis menggunakan akun layanan yang terpasang untuk autentikasi dan otorisasi.
Pada umumnya, Anda harus melampirkan akun layanan ke resource saat membuat resource tersebut. Setelah resource dibuat, Anda tidak dapat mengubah akun layanan yang dilampirkan ke resource tersebut. Instance Compute Engine adalah pengecualian untuk aturan ini; Anda dapat mengubah akun layanan mana yang dilampirkan ke instance sesuai kebutuhan.
Untuk mempelajari lebih lanjut, lihat Melampirkan akun layanan ke resource.
Identitas workload terkelola
Dengan identitas workload terkelola, Anda dapat mengikat identitas yang telah disahkan dengan kuat ke workload Compute Engine. Anda dapat menggunakan identitas workload terkelola untuk mengautentikasi workload ke workload lain menggunakan mTLS, tetapi tidak dapat digunakan untuk mengautentikasi ke Google Cloud API.
Untuk mempelajari identitas workload terkelola lebih lanjut, lihat Ringkasan identitas workload terkelola.
Untuk mempelajari lebih lanjut cara menggunakan identitas workload terkelola dengan workload Compute Engine, lihat Mengautentikasi beban kerja ke beban kerja lain melalui mTLS.
Workload Identity GKE
Untuk workload yang berjalan di GKE, Workload Identity memungkinkan akun layanan Kubernetes di cluster GKE Anda untuk bertindak sebagai akun layanan IAM. Pod yang menggunakan akun layanan Kubernetes yang dikonfigurasi akan otomatis menggunakan akun layanan IAM sebagai identitasnya saat mengakses Google Cloud API. Dengan Workload Identity, Anda dapat menetapkan identitas dan otorisasi yang berbeda dan mendetail untuk setiap aplikasi dalam cluster Anda.
Untuk mempelajari Workload Identity GKE lebih lanjut, lihat Workload identity federation untuk GKE.
Kunci akun layanan
Kunci akun layanan memungkinkan workload diautentikasi sebagai akun layanan, lalu menggunakan identitas akun layanan untuk otorisasi. Kunci akun layanan akan berisiko keamanan jika tidak dikelola dengan benar. Anda harus memilih alternatif yang lebih aman untuk kunci akun layanan jika memungkinkan. Jika harus melakukan autentikasi dengan kunci akun layanan, Anda bertanggung jawab atas keamanan kunci pribadi dan untuk operasi lain yang dijelaskan dalam Praktik terbaik untuk mengelola kunci akun layanan. Jika Anda tidak dapat membuat kunci akun layanan, pembuatan kunci akun layanan mungkin dinonaktifkan untuk organisasi Anda. Untuk informasi selengkapnya, lihat Mengelola resource organisasi yang aman secara default.
Workload eksternal
Jika menjalankan workload di luar Google Cloud, Anda dapat menggunakan metode berikut untuk mengonfigurasi identitas workload Anda:
- Workload identity federation
- Kunci akun layanan
Workload identity federation
Workload identity federation memungkinkan Anda menggunakan kredensial dari penyedia identitas eksternal seperti AWS dan Azure Active Directory untuk membuat kredensial berumur pendek, yang dapat digunakan workload untuk meniru identitas akun layanan untuk sementara. Workload dapat mengakses resource Google Cloud, menggunakan akun layanan sebagai identitas mereka.
Workload identity federation adalah cara yang lebih disukai dalam mengonfigurasi identitas untuk workload eksternal.
Untuk mempelajari workload identity federation, lihat Workload identity federation.
Kunci akun layanan
Kunci akun layanan memungkinkan workload diautentikasi sebagai akun layanan, lalu menggunakan identitas akun layanan untuk otorisasi. Kunci akun layanan akan berisiko keamanan jika tidak dikelola dengan benar. Anda harus memilih alternatif yang lebih aman untuk kunci akun layanan jika memungkinkan. Jika harus melakukan autentikasi dengan kunci akun layanan, Anda bertanggung jawab atas keamanan kunci pribadi dan untuk operasi lain yang dijelaskan dalam Praktik terbaik untuk mengelola kunci akun layanan. Jika Anda tidak dapat membuat kunci akun layanan, pembuatan kunci akun layanan mungkin dinonaktifkan untuk organisasi Anda. Untuk informasi selengkapnya, lihat Mengelola resource organisasi yang aman secara default.
Pengembangan lokal
Jika melakukan pengembangan di lingkungan lokal, Anda dapat mengonfigurasi workload untuk menggunakan kredensial pengguna untuk autentikasi dan otorisasi. Untuk mengetahui informasi selengkapnya, lihat Lingkungan pengembangan lokal dalam dokumentasi autentikasi.
Langkah selanjutnya
- Pelajari cara menyiapkan autentikasi menggunakan akun layanan.
- Pelajari cara menyiapkan autentikasi untuk lingkungan pengembangan lokal.
- Pelajari cara memberikan akun layanan akses ke resource.