Dengan Identity and Access Management (IAM), Anda dapat mengontrol akses ke resource project Anda. Dokumen ini berfokus pada izin IAM yang relevan dengan Serverless for Apache Spark dan peran IAM yang memberikan izin tersebut.
Izin Dataproc untuk Serverless for Apache Spark
Izin Dataproc memungkinkan pengguna dan
akun layanan,
melakukan tindakan pada resource Serverless for Apache Spark. Misalnya, izin dataproc.batches.create
memungkinkan Anda membuat beban kerja batch dalam project.
Anda tidak secara langsung memberikan izin kepada pengguna; tetapi, Anda memberikan peran IAM kepada pengguna, yang memiliki satu atau beberapa izin yang dipaketkan di dalamnya. Anda dapat memberikan peran standar yang berisi daftar izin, atau Anda dapat membuat dan memberikan peran khusus yang berisi satu atau beberapa izin yang Anda sertakan dalam peran khusus.
Tabel berikut mencantumkan izin dasar yang diperlukan untuk memanggil
Dataproc API (metode) yang membuat atau mengakses resource Serverless for Apache Spark. Tabel disusun berdasarkan API yang terkait dengan setiap resource Serverless for Apache Spark, yang mencakup batches
, sessions
, sessionTemplates
, dan operations
.
Contoh:
dataproc.batches.create
memungkinkan pembuatan batch dalam project yang berisi.dataproc.sessions.create
memungkinkan pembuatan sesi interaktif dalam project yang berisi.
Izin batch
Metode | Izin yang Diperlukan |
---|---|
projects.locations.batches.create | dataproc.batches.create 1 |
projects.locations.batches.delete | dataproc.batches.delete |
projects.locations.batches.get | dataproc.batches.get |
projects.locations.batches.list | dataproc.batches.list |
1 dataproc.batches.create
juga memerlukan izin dataproc.batches.get
dan
dataproc.operations.get
untuk memungkinkannya mendapatkan pembaruan status
dari alat command line gcloud
.
Izin sesi
Metode | Izin yang Diperlukan |
---|---|
projects.locations.sessions.create | dataproc.sessions.create 1 |
projects.locations.sessions.delete | dataproc.sessions.delete |
projects.locations.sessions.get | dataproc.sessions.get |
projects.locations.sessions.list | dataproc.sessions.list |
projects.locations.sessions.terminate | dataproc.sessions.terminate |
1 dataproc.sessions.create
juga memerlukan izin dataproc.sessions.get
dan
dataproc.operations.get
untuk memungkinkannya mendapatkan pembaruan status
dari alat command line gcloud
.
Izin template sesi
Metode | Izin yang Diperlukan |
---|---|
projects.locations.sessionTemplates.create | dataproc.sessionTemplates.create 1 |
projects.locations.sessionTemplates.delete | dataproc.sessionTemplates.delete |
projects.locations.sessionTemplates.get | dataproc.sessionTemplates.get |
projects.locations.sessionTemplates.list | dataproc.sessionTemplates.list |
projects.locations.sessionTemplates.update | dataproc.sessionTemplates.update |
1 dataproc.sessionTemplates.create
juga memerlukan izin dataproc.sessionTemplates.get
dan
dataproc.operations.get
untuk memungkinkannya mendapatkan pembaruan status
dari alat command line gcloud
.
Izin operasi
Metode | Izin yang Diperlukan |
---|---|
projects.regions.operations.get | dataproc.operations.get |
projects.regions.operations.list | dataproc.operations.list |
projects.regions.operations.cancel 1 | dataproc.operations.cancel |
projects.regions.operations.delete | dataproc.operations.delete |
projects.regions.operations.getIamPolicy | dataproc.operations.getIamPolicy |
projects.regions.operations.setIamPolicy | dataproc.operations.setIamPolicy |
1 Untuk membatalkan operasi batch, dataproc.operations.cancel
juga memerlukan
izin dataproc.batches.cancel
.
Izin runtime Serverless for Apache Spark 3.0+
Izin berikut berlaku untuk Serverless for Apache Spark 3.0
dan runtime yang lebih baru.
Izin workload
Metode | Izin yang Diperlukan |
---|---|
dataprocrm.v1.dataprocrm.projects.locations.workloads.create | dataprocrm.workloads.create |
dataprocrm.v1.dataprocrm.projects.locations.workloads.cancel | dataprocrm.workloads.cancel |
dataprocrm.v1.dataprocrm.projects.locations.workloads.delete | dataprocrm.workloads.delete |
dataprocrm.v1.dataprocrm.projects.locations.workloads.get | dataprocrm.workloads.get |
dataprocrm.v1.dataprocrm.projects.locations.workloads.list | dataprocrm.workloads.list |
dataprocrm.v1.dataprocrm.projects.locations.workloads.use | dataprocrm.workloads.use |
Izin NodePools
Metode | Izin yang Diperlukan |
---|---|
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.create | dataprocrm.nodePools.create |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.delete | dataprocrm.nodePools.delete |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.resize | dataprocrm.nodePools.resize |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.deleteNodes | dataprocrm.nodePools.deleteNodes |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.update | dataprocrm.nodePools.update |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.get | dataprocrm.nodePools.get |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.list | dataprocrm.nodePools.list |
Izin node
Metode | Izin yang Diperlukan |
---|---|
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.create | dataprocrm.nodes.create |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.delete | dataprocrm.nodes.delete |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.update | dataprocrm.nodes.update |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.heartbeat | dataprocrm.nodes.heartbeat |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.get | dataprocrm.nodes.get |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.list | dataprocrm.nodes.list |
dataprocrm.v1.dataprocrm.projects.locations.workloads.nodePools.nodes.mintOAuthToken | dataprocrm.nodes.mintOAuthToken |
Izin operasi
Metode | Izin yang Diperlukan |
---|---|
dataprocrm.v1.dataprocrm.projects.locations.operations.get | dataprocrm.operations.get |
dataprocrm.v1.dataprocrm.projects.locations.operations.list | dataprocrm.operations.list |
Peran Dataproc dan Dataproc Serverless
Peran IAM Dataproc dapat berisi izin yang terkait dengan resource Dataproc dan Serverless for Apache Spark. Peran IAM Dataproc Serverless berisi izin yang terkait dengan resource Serverless untuk Apache Spark.
Misalnya, peran Dataproc Viewer berisi izin
dataproc.batches
dan dataproc.sessions
untuk mendapatkan dan mencantumkan, yang
memungkinkan pengguna atau akun layanan mendapatkan dan mencantumkan workload batch dan sesi
dalam project.
Persyaratan izin dan peran pengguna
Pengguna harus memiliki izin
ActAs
akun layanan untuk men-deploy resource Serverless for Apache Spark, misalnya, untuk mengirimkan workload batch. Lihat Peran untuk autentikasi akun layanan untuk mengetahui informasi mendetail.Persyaratan peran runtime Serverless untuk Apache Spark
3.0
atau yang lebih baru:- Akun pengguna memerlukan peran Dataproc Editor atau Dataproc Serverless Editor untuk menjalankan batch dan sesi.
- Akun pengguna memerlukan peran Dataproc Viewer atau Dataproc Serverless Editor untuk mendapatkan dan mencantumkan batch dan sesi.
- Akun layanan kustom memerlukan peran Dataproc Worker untuk menjalankan batch dan sesi.
Untuk mengetahui informasi tentang akun layanan yang terkait dengan runtime
3.0
Serverless for Apache Spark, lihat Akun layanan Serverless for Apache Spark.
Mencari peran dan izin Dataproc
Anda dapat menggunakan bagian berikut untuk mencari peran dan izin Dataproc.
Role | Permissions |
---|---|
Dataproc Administrator( Full control of Dataproc resources. |
|
Dataproc Editor( Provides the permissions necessary for viewing the resources required to manage Dataproc, including machine types, networks, projects, and zones. Lowest-level resources where you can grant this role:
|
|
Dataproc Hub Agent( Allows management of Dataproc resources. Intended for service accounts running Dataproc Hub instances. |
|
Dataproc Serverless Editor( Permissions needed to run serverless sessions and batches as a user |
|
Dataproc Serverless Node.( Node access to Dataproc Serverless sessions and batches. Intended for service accounts. |
|
Dataproc Serverless Viewer( Permissions needed to view serverless sessions and batches |
|
Dataproc Service Agent( Gives Dataproc Service Account access to service accounts, compute resources, storage resources, and kubernetes resources. Includes access to service accounts. |
|
Dataproc Viewer( Provides read-only access to Dataproc resources. Lowest-level resources where you can grant this role:
|
|
Dataproc Worker( Provides worker access to Dataproc resources. Intended for service accounts. |
|
Peran project
Anda juga dapat menetapkan izin di level project menggunakan peran IAM Project. Tabel berikut merangkum 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 (buat, hapus, perbarui, gunakan, batalkan, hentikan, mulai) |
Pemilik Project | Semua izin Editor Project ditambah izin untuk mengelola kontrol akses project (get/set IamPolicy) dan untuk menyiapkan penagihan project |
Langkah berikutnya
- Pelajari cara Mengelola akses ke project, folder, dan organisasi.