Halaman ini menjelaskan akun layanan, peran, dan izin Cloud Deploy.
Akses di Cloud Deploy dikontrol menggunakan Identity and Access Management (IAM). IAM memungkinkan Anda membuat dan mengelola izin untuk resource Google Cloud. Cloud Deploy menyediakan kumpulan peran IAM standar tertentu dengan setiap peran berisi kumpulan izin. Anda dapat menggunakan peran ini untuk memberikan akses yang lebih terperinci ke resource Google Cloud tertentu dan mencegah akses yang tidak diinginkan ke resource lain. IAM memungkinkan Anda menerapkan prinsip keamanan dengan hak istimewa terendah, jadi Anda hanya memberikan akses yang diperlukan ke resource Anda.
Lihat Menggunakan IAM untuk membatasi akses Cloud Deploy untuk mempelajari fitur keamanan kontrol akses lanjutan.
Akun layanan di Cloud Deploy
Secara default, Cloud Deploy berjalan menggunakan akun layanan Compute Engine default. Untuk informasi selengkapnya tentang cara mengonfigurasi akun layanan ini untuk digunakan dengan Cloud Deploy, atau memilih akun lain, lihat dokumentasi akun layanan eksekusi Cloud Deploy.
Cari tahu lebih lanjut cara Cloud Deploy menggunakan akun layanan.
Peran Cloud Deploy yang telah ditetapkan
Dengan IAM, setiap metode API di Cloud Deploy API mengharuskan identitas yang membuat permintaan API memiliki izin yang sesuai untuk menggunakan resource. Izin diberikan dengan menetapkan kebijakan yang memberikan peran kepada akun utama (pengguna, grup, atau akun layanan) project Anda. Anda dapat memberikan beberapa peran kepada akun utama di resource yang sama.
Dokumentasi IAM menyertakan referensi yang dapat ditelusuri dari semua peran yang telah ditetapkan.
Tabel berikut mencantumkan peran IAM Cloud Deploy dan izin yang disertakan:
Peran Cloud Deploy |
Izin |
Cloud Deploy Admin( Kontrol penuh atas resource Cloud Deploy. |
|
Cloud Deploy Approver( Izin untuk menyetujui atau menolak peluncuran. |
|
Cloud Deploy Custom Target Type Admin( Izin untuk mengelola resource CustomTargetType |
|
Cloud Deploy Developer( Izin untuk mengelola konfigurasi deployment tanpa izin untuk mengakses resource operasional, seperti target. |
|
Cloud Deploy Runner( Izin untuk menjalankan tugas Cloud Deploy tanpa izin untuk mengirimkan ke target. |
|
Operator Cloud Deploy( Izin untuk mengelola konfigurasi deployment. |
|
Admin Kebijakan Cloud Deploy Beta( Izin untuk mengelola Kebijakan Deployment. |
|
Cloud Deploy Policy Overrider Beta( Izin untuk mengganti Kebijakan Deployment. |
|
Cloud Deploy Releaser( Izin untuk membuat rilis dan peluncuran Cloud Deploy. |
|
Cloud Deploy Viewer( Dapat melihat resource Cloud Deploy. |
|
Selain peran bawaan Cloud Deploy, peran Viewer, Editor, dan Pemilik dasar juga mencakup izin yang terkait dengan Cloud Deploy. Namun, sebaiknya Anda memberikan peran bawaan jika memungkinkan untuk mematuhi prinsip keamanan hak istimewa terendah.
Izin
Tabel berikut mencantumkan izin yang harus dimiliki pemanggil untuk memanggil setiap metode:
Metode API | Izin yang diperlukan | Deskripsi |
---|---|---|
automations.create() |
clouddeploy.automations.create |
Buat resource otomatisasi baru. |
automations.delete() |
clouddeploy.automations.delete |
Menghapus resource otomatisasi yang ada. |
automations.get() |
clouddeploy.automations.get |
Mengambil detail untuk setiap resource otomatisasi. |
automations.list() |
clouddeploy.automations.list |
Mencantumkan resource otomatisasi dan metadatanya. |
automations.update() |
clouddeploy.automations.update |
Memperbarui resource otomatisasi yang ada. |
automationRuns.cancel() |
clouddeploy.automationRuns.cancel |
Membatalkan otomatisasi yang sedang berjalan. |
automationRuns.get() |
clouddeploy.automationRuns.get |
Mengambil detail untuk setiap operasi otomatisasi. |
automationRuns.list() |
clouddeploy.automationRuns.list |
Mencantumkan otomatisasi yang berjalan dan metadatanya. |
customTargetTypes.create() |
clouddeploy.customTargetTypes.create |
Buat resource jenis target kustom. |
customTargetTypes.delete() |
clouddeploy.customTargetTypes.delete |
Menghapus resource jenis target kustom. |
customTargetTypes.get() |
clouddeploy.customTargetTypes.get |
Mengambil detail untuk jenis target kustom. |
customTargetTypes.getIamPolicy() |
clouddeploy.customTargetTypes.getIamPolicy |
Mendapatkan kebijakan IAM untuk resource jenis target kustom. |
customTargetTypes.list() |
clouddeploy.customTargetTypes.list |
Mencantumkan jenis target kustom yang tersedia dan metadatanya. |
customTargetTypes.patch() |
clouddeploy.customTargetTypes.patch |
Memperbarui jenis target kustom yang ada. |
customTargetTypes.setIamPolicy() |
clouddeploy.customTargetTypes.setIamPolicy |
Menetapkan kebijakan IAM untuk resource jenis target kustom. |
deliveryPipelines.create() |
clouddeploy.deliveryPipelines.create |
Buat resource pipeline pengiriman baru. |
deliveryPipelines.delete() |
clouddeploy.deliveryPipelines.delete |
Menghapus resource pipeline pengiriman yang ada. |
deliveryPipelines.get() |
clouddeploy.deliveryPipelines.get |
Mengambil detail untuk setiap pipeline pengiriman. |
deliveryPipelines.getIamPolicy() |
clouddeploy.deliveryPipelines.getIamPolicy |
Mendapatkan kebijakan IAM untuk resource pipeline pengiriman. |
deliveryPipelines.list() |
clouddeploy.deliveryPipelines.list |
Mencantumkan pipeline pengiriman dan metadatanya. |
deliveryPipelines.rollbackTarget() |
clouddeploy.rollouts.rollback |
Me-roll back target. |
deliveryPipelines.setIamPolicy() |
clouddeploy.deliveryPipelines.setIamPolicy |
Menetapkan kebijakan IAM untuk resource pipeline pengiriman. |
deliveryPipelines.update() |
clouddeploy.deliveryPipelines.update |
Memperbarui resource pipeline pengiriman yang ada. |
deployPolicies.create() |
clouddeploy.deployPolicies.create |
Buat resource kebijakan deployment. |
deployPolicies.delete() |
clouddeploy.deployPolicies.delete |
Menghapus resource kebijakan deployment. |
deployPolicies.get() |
clouddeploy.deployPolicies.get |
Mengambil detail untuk resource kebijakan deployment. |
deployPolicies.list() |
clouddeploy.deployPolicies.list |
Mencantumkan kebijakan deployment yang tersedia beserta metadatanya. |
jobRuns.get() |
clouddeploy.jobRuns.get |
Ambil resource JobRuns . |
jobRuns.list() |
clouddeploy.jobRuns.list |
Mencantumkan resource JobRuns dan metadatanya. |
jobRuns.terminate() |
clouddeploy.jobRuns.terminate |
Menghentikan tugas yang sedang berjalan. |
operations.cancel() |
clouddeploy.operations.cancel |
Membatalkan operasi yang berjalan lama. |
operation.delete() |
clouddeploy.operations.delete |
Menghapus operasi yang berjalan lama. |
operations.get() |
clouddeploy.operations.get |
Mendapatkan operasi yang berjalan lama tertentu (misalnya, untuk menampilkan status pembuatan rilis). |
operations.list() |
clouddeploy.operations.list |
Mencantumkan operasi yang berjalan lama. |
releases.abandon() |
clouddeploy.releases.abandon |
Mengabaikan rilis dan mencegah peluncuran lebih lanjut terhadap rilis tersebut. |
releases.create() |
clouddeploy.releases.create |
Buat resource rilis baru. Pemanggil juga memerlukan izin iam.serviceAccounts.actAs di akun layanan yang digunakan untuk merender manifes. |
releases.get() |
clouddeploy.releases.get |
Mengambil detail untuk setiap rilis. |
releases.list() |
clouddeploy.releases.list |
Mencantumkan rilis dan metadata. |
rollouts.advance() |
clouddeploy.rollouts.advance |
Majukan peluncuran ke fase berikutnya. |
rollouts.approve() |
clouddeploy.rollouts.approve |
Menyetujui atau menolak peluncuran dengan status persetujuan required . |
rollouts.cancel() |
clouddeploy.rollouts.cancel |
Membatalkan peluncuran. |
rollouts.create() |
clouddeploy.rollouts.create |
Buat resource peluncuran baru atau promosikan rilis. Pemanggil juga memerlukan izin iam.serviceAccounts.actAs pada project atau akun layanan yang digunakan untuk men-deploy. |
rollouts.get() |
clouddeploy.rollouts.get |
Mengambil detail untuk setiap peluncuran. |
rollouts.ignoreJob() |
clouddeploy.rollouts.ignoreJob |
Mengabaikan tugas yang gagal. |
rollouts.list() |
clouddeploy.rollouts.list |
Mencantumkan peluncuran dan metadata. |
rollouts.retryJob() |
clouddeploy.rollouts.retryJob |
Mencoba ulang tugas yang gagal. |
rollouts.advance() , rollouts.approve() , rollouts.cancel() , rollouts.create() , rollouts.ignoreJob() , rollouts.retryJob() , deliveryPipelines.rollbackTarget() , jobRuns.terminate() |
clouddeploy.deployPolicies.override |
Ganti resource kebijakan deployment. |
deployPolicies.update() |
clouddeploy.deployPolicies.update |
Memperbarui resource kebijakan deployment yang ada. |
targets.create() |
clouddeploy.targets.create |
Buat resource target baru. |
targets.delete() |
clouddeploy.targets.delete |
Menghapus resource target yang ada. |
targets.get() |
clouddeploy.targets.get |
Mengambil detail untuk setiap target. |
targets.getIamPolicy() |
clouddeploy.targets.getIamPolicy |
Mendapatkan kebijakan IAM untuk resource target. |
targets.list() |
clouddeploy.targets.list |
Mencantumkan target dan metadatanya. |
targets.setIamPolicy() |
clouddeploy.targets.setIamPolicy |
Menetapkan kebijakan IAM untuk resource target. |
targets.update() |
clouddeploy.targets.update |
Memperbarui resource target yang ada. |
Menggunakan IAM untuk membatasi tindakan pada resource Cloud Deploy
Anda dapat mengamankan resource Cloud Deploy menggunakan IAM dengan cara berikut:
API meta IAM
Gunakan
setIamPolicy
pada resource Cloud Deploy untuk membatasi tindakan pada resource tersebut.IAM Bersyarat
Terapkan kebijakan akses secara terprogram, termasuk kondisi yang mendasari pemberian atau penolakan akses.
Anda dapat menggunakan kebijakan dan kondisi ini untuk membatasi tindakan berikut pada resource Cloud Deploy:
Membuat target atau pipeline pengiriman
Anda dapat memberikan akses ini kepada pengguna atau grup tertentu.
Memperbarui atau menghapus pipeline pengiriman tertentu
Anda dapat memberikan akses ini kepada pengguna atau grup tertentu.
Membuat rilis untuk pipeline pengiriman tertentu
Anda dapat memberikan akses ini kepada pengguna atau grup tertentu.
Memperbarui atau menghapus target tertentu
Anda dapat memberikan akses ini kepada pengguna atau grup tertentu.
Membuat atau menyetujui peluncuran atau mempromosikan rilis
Anda dapat memberikan akses ini kepada pengguna atau grup tertentu untuk target atau pipeline pengiriman tertentu.
Anda juga dapat menetapkan kondisi yang membatasi akses ini dalam periode waktu tertentu.
Langkah selanjutnya
- Pelajari IAM.
- Pelajari lebih lanjut cara menggunakan kondisi di IAM
- Cari tahu selengkapnya tentang akun layanan Cloud Deploy.