“IAM Custom Roles”
Daftar Isi
Pengantar
Cloud IAM menyediakan alat yang tepat untuk mengelola izin sumber daya dengan kerumitan minimum dan otomatisasi tinggi. Anda tidak secara langsung memberikan izin kepada pengguna. Sebagai gantinya, Anda memberi mereka peran, yang menggabungkan satu atau beberapa izin. Ini memungkinkan Anda untuk memetakan fungsi pekerjaan dalam perusahaan Anda ke dalam kelompok dan peran. Pengguna hanya mendapatkan akses ke apa yang mereka butuhkan untuk menyelesaikan pekerjaan, dan admin dapat dengan mudah memberikan izin default ke seluruh grup pengguna.
Ada dua jenis peran di Cloud IAM:
- Predefined Roles
- Custom Roles
Predefined roles -> dibuat dan dikelola oleh Google. Izin mereka diperbarui secara otomatis jika diperlukan, seperti saat fitur atau layanan baru ditambahkan ke Google Cloud.
Custom Roles -> ditentukan oleh pengguna, dan memungkinkan Anda untuk menggabungkan satu atau beberapa izin yang didukung untuk memenuhi kebutuhan spesifik Anda. Peran khusus tidak dikelola oleh Google; saat izin, fitur, atau layanan baru ditambahkan ke Google Cloud, peran khusus Anda tidak akan diperbarui secara otomatis. Anda membuat peran khusus dengan menggabungkan satu atau beberapa izin Cloud IAM yang tersedia. Izin memungkinkan pengguna melakukan tindakan tertentu pada resource Google Cloud.
Membuat custom role dengan YAML file
title: [ROLE_TITLE] description: [ROLE_DESCRIPTION] stage: [LAUNCH_STAGE] includedPermissions: - [PERMISSION_1] - [PERMISSION_2]
- Buat file baru
nano role-definition.yaml
title: "Role Editor" description: "Edit access for App Versions" stage: "ALPHA" includedPermissions: - appengine.versions.create - appengine.versions.delete
- Jalankan perintah gcloud berikut
gcloud iam roles create editor --project $DEVSHELL_PROJECT_ID \ --file role-definition.yaml
- Tampilan jika berhasil
Created role [editor]. description: Edit access for App Versions etag: BwVs4O4E3e4= includedPermissions: - appengine.versions.create - appengine.versions.delete name: projects/[PROJECT_ID]/roles/editor stage: ALPHA title: Role Editor
Membuat custom role menggunakan flags
- Jalankan gcloud command berikut
gcloud iam roles create viewer --project $DEVSHELL_PROJECT_ID \ --title "Role Viewer" --description "Custom role description." \ --permissions compute.instances.get,compute.instances.list --stage ALPHA
- Output
Created role [viewer]. description: Custom role description. etag: BwVs4PYHqYI= includedPermissions: - compute.instances.get - compute.instances.list name: projects/[PROJECT_ID]/roles/viewer stage: ALPHA title: Role Viewer
Listing custom roles
- Jalankan gcloud berikut
gcloud iam roles list --project $DEVSHELL_PROJECT_ID
- output
--- description: Edit access for App Versions etag: BwVxLgrnawQ= name: projects/[PROJECT_ID]/roles/editor title: Role Editor --- description: Custom role description. etag: BwVxLg18IQg= name: projects/[PROJECT_ID]/roles/viewer title: Role Viewer
Update Custom Role
gcloud iam roles update [ROLE_ID] --project $DEVSHELL_PROJECT_ID \ --file new-role-definition.yaml
Disable custom role
- Jalankan gcloud berikut :
gcloud iam roles update viewer --project $DEVSHELL_PROJECT_ID \ --stage DISABLED
Delete custom role
- Jalankan perintah berikut
gcloud iam roles delete viewer --project $DEVSHELL_PROJECT_ID
Undeleting custom role
Syaratnya 7 hari setelah di delete dan status nya disable
gcloud iam roles undelete viewer --project $DEVSHELL_PROJECT_ID
Penutup
Sahabat Blog Learning & Doing demikianlah penjelasan mengenai IAM Custom Roles . Semoga Bermanfaat . Sampai ketemu lagi di postingan berikut nya