Tuesday, March 19, 2024
GCP IAM

IAM Custom Roles

custom

“IAM Custom Roles”

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

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

(Visited 142 times, 1 visits today)

Similar Posts