Ringkasan
Identity and Access Management (IAM) memungkinkan Anda mengontrol akses pengguna dan grup ke resource project. Dokumen ini berfokus pada izin IAM yang relevan dengan Dataproc dan peran IAM yang memberikan izin tersebut.
Izin Dataproc
Izin Dataproc memungkinkan pengguna, termasuk
akun layanan,
melakukan tindakan pada cluster, tugas, operasi, dan template alur kerja
Dataproc. Misalnya, izin dataproc.clusters.create
memungkinkan pengguna membuat cluster Dataproc dalam project.
Biasanya, Anda tidak memberikan izin; tetapi, Anda memberikan
peran, yang mencakup satu atau beberapa izin.
Tabel berikut mencantumkan izin yang diperlukan untuk memanggil Dataproc API (metode). Tabel diatur sesuai dengan API yang terkait dengan setiap resource Dataproc (cluster, tugas, operasi, dan template alur kerja).
Cakupan Izin: Cakupan izin Dataproc yang tercantum dalam tabel berikut adalah project Google Cloud yang berisi (cakupan cloud-platform
). Lihat
Izin akun layanan.
Contoh:
dataproc.clusters.create
mengizinkan pembuatan cluster Dataproc dalam project yang berisidataproc.jobs.create
mengizinkan pengiriman tugas Dataproc ke cluster Dataproc dalam project yang berisinyadataproc.clusters.list
mengizinkan listingan detail cluster Dataproc dalam project yang berisinya
Izin yang diperlukan metode cluster
Metode | Izin yang diperlukan |
---|---|
projects.regions.clusters.create 1, 2 | dataproc.clusters.create |
projects.regions.clusters.get | dataproc.clusters.get |
projects.regions.clusters.list | dataproc.clusters.list |
projects.regions.clusters.patch 1, 2, 3 | dataproc.clusters.update |
projects.regions.clusters.delete 1 | dataproc.clusters.delete |
projects.regions.clusters.start | dataproc.clusters.start |
projects.regions.clusters.stop | dataproc.clusters.stop |
projects.regions.clusters.getIamPolicy | dataproc.clusters.getIamPolicy |
projects.regions.clusters.setIamPolicy | dataproc.clusters.setIamPolicy |
Catatan:
- Izin
dataproc.operations.get
juga diperlukan untuk mendapatkan update status dari Google Cloud CLI. - Izin
dataproc.clusters.get
juga diperlukan untuk mendapatkan hasil operasi dari Google Cloud CLI. - Izin
dataproc.autoscalingPolicies.use
juga diperlukan untuk mengaktifkan kebijakan penskalaan otomatis di cluster.
Izin yang diperlukan metode Tugas
Metode | Izin yang diperlukan |
---|---|
projects.regions.jobs.submit 1, 2 | dataproc.jobs.create dataproc.clusters.use |
projects.regions.jobs.get | dataproc.jobs.get |
projects.regions.jobs.list | dataproc.jobs.list |
projects.regions.jobs.cancel 1 | dataproc.jobs.cancel |
projects.regions.jobs.patch 1 | dataproc.jobs.update |
projects.regions.jobs.delete 1 | dataproc.jobs.delete |
projects.regions.jobs.getIamPolicy | dataproc.jobs.getIamPolicy |
projects.regions.jobs.setIamPolicy | dataproc.jobs.setIamPolicy |
Catatan:
Google Cloud CLI juga memerlukan izin
dataproc.jobs.get
untuk perintahjobs submit
,jobs wait
,jobs update
,jobs delete
, danjobs kill
.gcloud CLI juga memerlukan izin
dataproc.clusters.get
untuk mengirimkan tugas. Untuk contoh penetapan izin yang diperlukan pengguna agar dapat menjalankangcloud dataproc jobs submit
di cluster menggunakan IAM Granular Dataproc (lihat Mengirimkan Tugas dengan IAM Granular).
Izin yang diperlukan metode operasi
Metode | Izin yang diperlukan |
---|---|
projects.regions.operations.get | dataproc.operations.get |
projects.regions.operations.list | dataproc.operations.list |
projects.regions.operations.cancel | dataproc.operations.cancel |
projects.regions.operations.delete | dataproc.operations.delete |
projects.regions.operations.getIamPolicy | dataproc.operations.getIamPolicy |
projects.regions.operations.setIamPolicy | dataproc.operations.setIamPolicy |
Izin yang diperlukan metode template alur kerja
Metode | Izin yang diperlukan |
---|---|
projects.regions.workflowTemplates.instantiate | dataproc.workflowTemplates.instantiate |
projects.regions.workflowTemplates.instantiateInline | dataproc.workflowTemplates.instantiateInline |
projects.regions.workflowTemplates.create | dataproc.workflowTemplates.create |
projects.regions.workflowTemplates.get | dataproc.workflowTemplates.get |
projects.regions.workflowTemplates.list | dataproc.workflowTemplates.list |
projects.regions.workflowTemplates.update | dataproc.workflowTemplates.update |
projects.regions.workflowTemplates.delete | dataproc.workflowTemplates.delete |
projects.regions.workflowTemplates.getIamPolicy | dataproc.workflowTemplates.getIamPolicy |
projects.regions.workflowTemplates.setIamPolicy | dataproc.workflowTemplates.setIamPolicy |
Catatan:
Izin Template Alur Kerja tidak bergantung pada izin Cluster dan Tugas. Pengguna tanpa izin
create cluster
atausubmit job
dapat membuat dan membuat instance Template Alur Kerja.Google Cloud CLI juga memerlukan izin
dataproc.operations.get
untuk melakukan polling guna mengetahui penyelesaian alur kerja.Izin
dataproc.operations.cancel
diperlukan untuk membatalkan alur kerja yang sedang berjalan.
Izin yang diperlukan metode kebijakan penskalaan otomatis
Metode | Izin yang diperlukan |
---|---|
projects.regions.autoscalingPolicies.create | dataproc.autoscalingPolicies.create |
projects.regions.autoscalingPolicies.get | dataproc.autoscalingPolicies.get |
projects.regions.autoscalingPolicies.list | dataproc.autoscalingPolicies.list |
projects.regions.autoscalingPolicies.update | dataproc.autoscalingPolicies.update |
projects.regions.autoscalingPolicies.delete | dataproc.autoscalingPolicies.delete |
projects.regions.autoscalingPolicies.getIamPolicy | dataproc.autoscalingPolicies.getIamPolicy |
projects.regions.autoscalingPolicies.setIamPolicy | dataproc.autoscalingPolicies.setIamPolicy |
Catatan:
- Izin
dataproc.autoscalingPolicies.use
diperlukan untuk mengaktifkan kebijakan penskalaan otomatis di cluster dengan permintaan metodeclusters.patch
.
Izin yang diperlukan metode grup node
Metode | Izin yang diperlukan |
---|---|
projects.regions.nodeGroups.create | dataproc.nodeGroups.create |
projects.regions.nodeGroups.get | dataproc.nodeGroups.get |
projects.regions.nodeGroups.resize | dataproc.nodeGroups.update |
Peran Dataproc
Peran IAM Dataproc
adalah paket berisi satu atau beberapa izin.
Anda memberikan peran kepada pengguna atau grup untuk mengizinkan mereka melakukan tindakan pada resource Dataproc dalam project. Misalnya,
peran Dataproc Viewer berisi
izin get
dan list
, yang memungkinkan pengguna mendapatkan dan mencantumkan
cluster, tugas, dan operasi Dataproc dalam project.
Tabel berikut mencantumkan peran IAM Dataproc dan izin yang terkait dengan setiap peran.
Peran Dataproc |
Izin |
Dataproc Administrator( Kontrol penuh atas resource Dataproc. |
|
Editor Dataproc( Memberikan izin yang diperlukan untuk melihat resource yang diperlukan untuk mengelola Dataproc, termasuk jenis mesin, jaringan, project, dan zona. Resource level terendah tempat Anda dapat memberikan peran ini:
|
|
Dataproc Hub Agent( Mengizinkan pengelolaan resource Dataproc. Ditujukan untuk akun layanan yang menjalankan instance Dataproc Hub. |
|
Penampil Dataproc( Menyediakan akses baca saja ke resource Dataproc. Resource level terendah tempat Anda dapat memberikan peran ini:
|
|
Dataproc Worker( Memberikan akses pekerja ke resource Dataproc. Ditujukan untuk akun layanan. |
|
Catatan:
- Izin
compute
diperlukan atau direkomendasikan untuk membuat dan melihat cluster Dataproc saat menggunakan konsol Google Cloud atau gcloud CLI Google Cloud. - Untuk mengizinkan pengguna mengupload file, berikan peran
Storage Object Creator
. Untuk mengizinkan pengguna melihat output tugas, berikan peranStorage Object Viewer
. - Pengguna harus memiliki izin
monitoring.timeSeries.list
agar dapat melihat grafik di tab Ringkasan konsol Google Cloud→Dataproc→Detail cluster. - Pengguna harus memiliki izin
compute.instances.list
untuk melihat status instance dan menu SSH instance master di tab Instance VM di konsol Google Cloud→Dataproc→Detail cluster. Untuk informasi tentang peran Compute Engine, lihat Compute Engine→Peran IAM yang tersedia). - Untuk membuat cluster dengan akun layanan yang ditentukan pengguna, akun layanan yang ditentukan harus memiliki semua izin yang diberikan oleh peran
Dataproc Worker
, yang mencakup akses ke bucket sementara dan staging Dataproc. Peran tambahan mungkin diperlukan, bergantung pada fitur yang dikonfigurasi. Lihat Membuat cluster dengan akun layanan VM kustom untuk mengetahui informasi selengkapnya.
Peran project
Anda juga dapat menetapkan izin di level project menggunakan peran Project IAM. Tabel berikut mencantumkan izin yang terkait dengan peran Project IAM:
Peran Project | Izin |
---|---|
Project Viewer | Semua izin project untuk tindakan hanya baca yang mempertahankan status (get, list) |
Editor Project | Semua izin Project Viewer ditambah semua izin project untuk tindakan yang mengubah status (membuat, menghapus, memperbarui, menggunakan, membatalkan, menghentikan, memulai) |
Pemilik Project | Semua izin Project Editor ditambah izin untuk mengelola kontrol akses untuk project (get/set IamPolicy) dan menyiapkan penagihan project |
Ringkasan peran IAM dan operasi Dataproc
Tabel berikut mencantumkan operasi Dataproc yang terkait dengan project dan peran Dataproc.
Operasi | Editor Project | Project Viewer | Dataproc Admin | Editor Dataproc | Penampil Dataproc |
---|---|---|---|---|---|
Mendapatkan/Menetapkan izin IAM Dataproc | Tidak | Tidak | Ya | Tidak | Tidak |
Buat cluster | Ya | Tidak | Ya | Ya | Tidak |
Mencantumkan cluster | Ya | Ya | Ya | Ya | Ya |
Mendapatkan detail cluster | Ya | Ya | Ya 1, 2 | Ya 1, 2 | Ya 1, 2 |
Memperbarui cluster | Ya | Tidak | Ya | Ya | Tidak |
Hapus cluster | Ya | Tidak | Ya | Ya | Tidak |
Memulai/Menghentikan cluster | Ya | Tidak | Ya | Ya | Tidak |
Kirim tugas | Ya | Tidak | Ya 3 | Ya 3 | Tidak |
Membuat daftar tugas | Ya | Ya | Ya | Ya | Ya |
Mendapatkan detail tugas | Ya | Ya | Ya 4 | Ya 4 | Ya 4 |
Batalkan tugas | Ya | Tidak | Ya | Ya | Tidak |
Hapus tugas | Ya | Tidak | Ya | Ya | Tidak |
Mencantumkan operasi | Ya | Ya | Ya | Ya | Ya |
Mendapatkan detail operasi | Ya | Ya | Ya | Ya | Ya |
Menghapus operasi | Ya | Tidak | Ya | Ya | Tidak |
Catatan:
- Grafik performa tidak tersedia kecuali jika pengguna juga memiliki peran dengan izin
monitoring.timeSeries.list
. - Daftar VM di cluster tidak akan menyertakan informasi status atau link SSH untuk instance master, kecuali jika pengguna juga memiliki peran dengan izin
compute.instances.list
. - Tugas yang mengupload file mengharuskan pengguna memiliki peran
Storage Object Creator
atau akses tulis ke bucket staging Dataproc. - Output tugas tidak tersedia kecuali jika pengguna juga memiliki peran Storage Object Viewer atau telah diberi akses baca ke bucket staging untuk project.
Akun layanan
Saat Anda memanggil Dataproc API untuk melakukan tindakan dalam project, seperti membuat instance VM, Dataproc akan melakukan tindakan tersebut atas nama Anda menggunakan akun layanan yang memiliki izin yang diperlukan untuk melakukan tindakan tersebut. Untuk mengetahui informasi selengkapnya, lihat Akun layanan Dataproc.
Pengelolaan IAM
Anda dapat memperoleh dan menetapkan kebijakan IAM menggunakan konsol Google Cloud, IAM API, atau Google Cloud CLI.
- Untuk konsol Google Cloud, lihat Kontrol akses menggunakan konsol Google Cloud.
- Untuk API, lihat Kontrol akses menggunakan API.
- Untuk Google Cloud CLI, lihat Kontrol akses menggunakan Google Cloud CLI.
Langkah selanjutnya
- Pelajari akun utama dan peran Dataproc
- Pelajari IAM Granular Dataproc
- Pelajari lebih lanjut tentang IAM.
- Pelajari Akun layanan di Dataproc