Halaman ini menjelaskan proses umum untuk memberikan, mengubah, dan mencabut akses ke resource yang menerima kebijakan izinkan.
Dalam Identity and Access Management (IAM), akses diberikan melalui kebijakan izin, yang juga dikenal sebagai kebijakan IAM. Kebijakan izinkan dilampirkan ke resource Google Cloud. Setiap kebijakan izinkan berisi kumpulan binding peran yang mengaitkan satu atau beberapa akun utama, seperti pengguna atau akun layanan, dengan peran IAM. Binding peran ini memberikan peran yang ditentukan kepada akun utama, baik pada resource yang dilampirkan oleh kebijakan yang diizinkan dan pada semua turunan resource tersebut. Untuk informasi selengkapnya tentang kebijakan izin, lihat Memahami kebijakan izin.
Halaman ini menjelaskan cara mengelola akses ke resource menggunakan Konsol Google Cloud, Google Cloud CLI, dan REST API. Anda juga dapat mengelola akses menggunakan library klien Google Cloud.
Sebelum memulai
Tinjau daftar jenis resource yang menerima kebijakan izinkan.
Izin yang diperlukan
Untuk mengelola akses ke resource, Anda memerlukan izin untuk mendapatkan resource, serta
mendapatkan dan menetapkan kebijakan izinkan untuk resource tersebut. Izin ini memiliki
bentuk berikut, dengan SERVICE
merupakan nama layanan
yang memiliki resource dan RESOURCE_TYPE
merupakan nama
jenis resource yang aksesnya ingin Anda kelola:
SERVICE.RESOURCE_TYPE.get
SERVICE.RESOURCE_TYPE.getIamPolicy
SERVICE.RESOURCE_TYPE.setIamPolicy
Misalnya, untuk mengelola akses ke instance Compute Engine, Anda memerlukan izin berikut:
compute.instances.get
compute.instances.getIamPolicy
compute.instances.setIamPolicy
Untuk mendapatkan izin yang diperlukan, minta administrator untuk memberi Anda
peran khusus atau bawaan yang menyertakan izin tersebut. Misalnya, administrator
dapat memberi Anda peran Admin Keamanan
(roles/iam.securityAdmin
), yang mencakup izin untuk mengelola akses ke
hampir semua resource Google Cloud.
Lihat akses saat ini
Bagian berikut menunjukkan cara menggunakan Konsol Google Cloud, gcloud CLI, dan REST API untuk melihat siapa yang memiliki akses ke resource. Anda juga dapat melihat akses menggunakan library klien Google Cloud untuk mendapatkan kebijakan izinkan resource.
Konsol
Di Konsol Google Cloud, buka halaman yang mencantumkan resource yang ingin Anda lihat aksesnya.
Misalnya, untuk mengelola akses ke instance Compute Engine, buka halaman Instance VM.
Pilih kotak centang di samping resource yang ingin Anda lihat aksesnya.
Pastikan panel info terlihat. Jika tidak terlihat, klik Tampilkan panel info. Tab izin panel info mencantumkan semua akun utama yang memiliki akses ke resource.
Jika tombol Tampilkan izin yang diwarisi aktif, daftar akan mencakup akun utama dengan peran yang diwariskan; yaitu akun utama yang aksesnya berasal dari peran pada resource induk, bukan peran pada resource itu sendiri. Untuk informasi selengkapnya tentang pewarisan kebijakan, lihat Pewarisan kebijakan dan hierarki resource.
gcloud
Untuk melihat siapa yang memiliki akses ke resource Anda, dapatkan kebijakan izinkan untuk resource tersebut. Untuk mempelajari cara menafsirkan kebijakan izinkan, lihat Memahami kebijakan izinkan.
Guna mendapatkan kebijakan izinkan untuk resource, jalankan perintah get-iam-policy
untuk
resource tersebut.
Format untuk perintah ini bervariasi bergantung pada jenis resource yang Anda
kelola aksesnya. Untuk menemukan format resource Anda, cari referensi
untuk perintah get-iam-policy
resource dalam referensi
Google Cloud CLI. Referensi ini diatur berdasarkan layanan, kemudian resource.
Misalnya, untuk mendapatkan kebijakan izin instance VM Compute Engine,
ikuti format yang dijelaskan dalam referensi
gcloud compute instances get-iam-policy
.
Secara opsional, tambahkan argumen berikut ke perintah untuk menentukan format dan mengekspor hasilnya:
--format=FORMAT > PATH
Berikan nilai berikut:
FORMAT
: Format yang diinginkan untuk kebijakan. Gunakanjson
atauyaml
.PATH
: Jalur ke file output baru untuk kebijakan.
Saat Anda menjalankan perintah, kebijakan izinkan resource dicetak ke konsol atau diekspor ke file yang ditentukan.
REST
Untuk melihat siapa yang memiliki akses ke resource Anda, dapatkan kebijakan izinkan resource. Untuk mempelajari cara menafsirkan kebijakan izinkan, lihat Memahami kebijakan izinkan.
Untuk mendapatkan kebijakan izin resource, gunakan metode getIamPolicy
resource.
Metode HTTP, URL, dan isi permintaan bergantung pada resource yang ingin
Anda lihat aksesnya. Untuk menemukan detail ini, temukan referensi API untuk layanan
yang memiliki resource, lalu temukan referensi untuk metode
getIamPolicy
resource. Misalnya, metode HTTP, URL, dan isi permintaan untuk
instance Compute Engine ditentukan dalam referensi instance
getIamPolicy
.
Respons untuk metode resource getIamPolicy
apa pun berisi kebijakan
izin resource.
Memberikan atau mencabut peran tunggal
Anda dapat menggunakan Konsol Google Cloud dan gcloud CLI untuk memberikan atau mencabut peran tunggal dengan cepat untuk satu akun utama, tanpa mengedit kebijakan izin resource secara langsung. Jenis akun utama yang umum meliputi Akun Google, akun layanan, grup Google, dan domain. Untuk daftar semua jenis akun utama, lihat Konsep yang terkait dengan identitas.
Secara umum, perubahan kebijakan akan berlaku dalam waktu 2 menit. Namun, dalam beberapa kasus, diperlukan 7 menit atau lebih untuk mengubah seluruh penerapan pada sistem.
Jika Anda memerlukan bantuan untuk mengidentifikasi peran bawaan yang paling sesuai, lihat Memilih peran bawaan.
Memberikan peran tunggal
Untuk memberikan satu peran ke akun utama, lakukan hal berikut:
Konsol
Di Konsol Google Cloud, buka halaman yang mencantumkan resource yang ingin Anda lihat aksesnya.
Misalnya, untuk mengelola akses ke instance Compute Engine, buka halaman Instance VM.
Pilih kotak centang di samping resource yang ingin Anda kelola aksesnya.
Pastikan panel info terlihat. Jika tidak terlihat, klik Tampilkan panel info.
Pilih akun utama yang akan diberi peran:
Untuk memberikan peran kepada akun utama yang sudah memiliki peran lain pada resource, temukan baris yang berisi akun utama, klik
Edit akun utama di baris tersebut, dan klik Tambahkan peran lain.Untuk memberikan peran kepada akun utama yang belum memiliki peran lain pada resource, klik
Tambahkan akun utama, lalu masukkan ID untuk akun utama—misalnya,my-user@example.com
.
Pilih peran yang akan diberikan dari menu drop-down. Untuk praktik keamanan terbaik, pilih peran yang hanya menyertakan izin yang diperlukan oleh akun utama Anda.
Opsional: Tambahkan kondisi ke peran.
Klik Simpan. Akun utama diberi peran pada resource.
gcloud
Untuk memberikan peran ke akun utama dengan cepat, jalankan perintah
add-iam-policy-binding
.
Format untuk perintah ini bervariasi bergantung pada jenis resource yang Anda
kelola aksesnya. Untuk menemukan format resource Anda, cari referensi
untuk perintah add-iam-policy-binding
resource dalam referensi
Google Cloud CLI. Referensi ini diatur berdasarkan layanan, kemudian resource.
Misalnya, untuk memberikan peran kepada akun utama di instance Compute Engine,
ikuti format yang dijelaskan dalam referensi gcloud compute instances add-iam-policy-
binding
.
Mencabut peran tunggal
Untuk mencabut peran tunggal dari akun utama, lakukan hal berikut:
Konsol
Di Konsol Google Cloud, buka halaman yang mencantumkan resource yang ingin Anda cabut aksesnya.
Misalnya, untuk mengelola akses ke instance Compute Engine, buka halaman Instance VM:
Pilih kotak centang di samping resource yang ingin Anda kelola aksesnya.
Pastikan panel info terlihat. Jika tidak terlihat, klik Tampilkan panel info.
Cari baris yang berisi akun utama yang aksesnya ingin Anda cabut. Kemudian, klik
Edit akun utama di baris tersebut.Klik tombol Hapus
untuk peran yang ingin Anda cabut, lalu klik Simpan.
gcloud
Untuk mencabut peran dari akun utama dengan cepat, jalankan perintah
remove-iam-policy-binding
.
Format untuk perintah ini bervariasi bergantung pada jenis resource yang Anda
kelola aksesnya. Untuk menemukan format resource Anda, cari referensi
untuk perintah remove-iam-policy-binding
resource dalam referensi
Google Cloud CLI. Referensi ini diatur berdasarkan layanan, kemudian resource.
Misalnya, untuk memberikan peran kepada akun utama di instance Compute Engine,
ikuti format yang dijelaskan dalam referensi gcloud compute instances
remove-iam-policy-binding
.
Memberikan atau mencabut beberapa peran menggunakan Konsol Google Cloud
Anda dapat menggunakan Konsol Google Cloud untuk memberikan dan mencabut beberapa peran untuk satu akun utama:
Di Konsol Google Cloud, buka halaman yang mencantumkan resource yang ingin Anda lihat aksesnya.
Misalnya, untuk mengelola akses ke instance Compute Engine, buka halaman Instance VM.
Pilih kotak centang di samping resource yang ingin Anda kelola aksesnya.
Jika panel info tidak terlihat, klik Tampilkan panel info.
Pilih akun utama yang perannya ingin Anda ubah:
Untuk mengubah peran akun utama yang sudah memiliki peran pada resource, temukan baris yang berisi akun utama, klik
Edit akun utama di baris tersebut, lalu klik Tambahkan peran lain.Untuk memberikan peran kepada akun utama yang tidak memiliki peran yang ada pada resource, klik
Tambahkan akun utama, lalu masukkan ID untuk akun utama—misalnya,my-user@example.com
.
Ubah peran akun utama:
- Untuk memberikan peran kepada akun utama yang tidak memiliki peran yang ada pada resource, klik Pilih peran, lalu pilih peran yang akan diberikan dari menu drop-down.
- Untuk memberikan peran tambahan kepada akun utama, klik Tambahkan peran lain, lalu pilih peran yang akan diberikan dari menu drop-down.
- Untuk mengganti salah satu peran utama dengan peran lain, klik peran yang ada, lalu pilih peran lain yang akan diberikan dari menu drop-down.
- Untuk mencabut salah satu peran akun utama, klik tombol Hapus untuk setiap peran yang ingin dicabut.
Anda juga dapat menambahkan kondisi ke peran, mengubah kondisi peran, atau menghapus kondisi peran.
Klik Simpan.
Memberikan atau mencabut beberapa peran secara terprogram
Untuk membuat perubahan akses berskala besar yang melibatkan pemberian dan pencabutan beberapa peran untuk beberapa akun utama, gunakan pola baca-ubah-tulis untuk mengupdate kebijakan izin resource:
- Baca kebijakan izin saat ini dengan memanggil
getIamPolicy()
. - Edit kebijakan izin, baik dengan menggunakan editor teks atau secara terprogram, untuk menambahkan atau menghapus akun utama atau binding peran.
- Tulis kebijakan izinkan yang diperbarui dengan memanggil
setIamPolicy()
.
Bagian ini menunjukkan cara menggunakan gcloud CLI dan REST API untuk memperbarui kebijakan izinkan. Anda juga dapat memperbarui kebijakan izinkan menggunakan library klien Google Cloud.
Secara umum, perubahan kebijakan akan berlaku dalam waktu 2 menit. Namun, dalam beberapa kasus, diperlukan 7 menit atau lebih untuk mengubah seluruh penerapan pada sistem.
Mendapatkan kebijakan izinkan saat ini
gcloud
Guna mendapatkan kebijakan izinkan untuk resource, jalankan perintah get-iam-policy
untuk
resource tersebut.
Format untuk perintah ini bervariasi bergantung pada jenis resource yang Anda
kelola aksesnya. Untuk menemukan format resource Anda, cari referensi
untuk perintah get-iam-policy
resource dalam referensi
Google Cloud CLI. Referensi ini diatur berdasarkan layanan, kemudian resource.
Misalnya, untuk mendapatkan kebijakan izin instance VM Compute Engine,
ikuti format yang dijelaskan dalam referensi
gcloud compute instances get-iam-policy
.
Secara opsional, tambahkan argumen berikut ke perintah untuk menentukan format dan mengekspor hasilnya:
--format=FORMAT > PATH
Berikan nilai berikut:
FORMAT
: Format yang diinginkan untuk kebijakan izinkan. Gunakanjson
atauyaml
.PATH
: Jalur ke file output baru untuk kebijakan izinkan.
Saat Anda menjalankan perintah, kebijakan izinkan resource dicetak ke konsol atau diekspor ke file yang ditentukan.
REST
Untuk mendapatkan kebijakan izin resource, gunakan metode getIamPolicy
resource.
Metode HTTP, URL, dan isi permintaan bergantung pada resource yang ingin
Anda lihat aksesnya. Untuk menemukan detail ini, temukan referensi API untuk layanan
yang memiliki resource, lalu temukan referensi untuk metode
getIamPolicy
resource. Misalnya, metode HTTP, URL, dan isi permintaan untuk
instance VM Compute Engine ditentukan dalam
referensi getIamPolicy
instance.
Respons untuk metode resource getIamPolicy
apa pun berisi kebijakan
izin resource. Simpan respons dalam file dengan jenis yang sesuai (json
atau
yaml
).
Mengubah kebijakan izin
Secara terprogram atau menggunakan editor teks, ubah salinan lokal kebijakan izin resource Anda untuk mencerminkan peran yang ingin diberikan atau dicabut.
Untuk memastikan Anda tidak menimpa perubahan lain, jangan mengedit atau menghapus
kolom kebijakan izin etag
. Kolom etag
mengidentifikasi status saat ini
dari kebijakan izin. Saat Anda menetapkan kebijakan izin yang diperbarui,
IAM akan membandingkan nilai etag
dalam permintaan dengan
etag
yang sudah ada, dan hanya menulis kebijakan izin jika nilainya cocok.
Untuk mengedit peran yang diberikan oleh kebijakan izin, Anda perlu mengedit binding peran dalam kebijakan izin. Binding peran memiliki format berikut:
{ "role": "ROLE_NAME", "members": [ "PRINCIPAL_1", "PRINCIPAL_2", ... "PRINCIPAL_N" ], "conditions:" { CONDITIONS } }
Placeholder memiliki nilai berikut:
ROLE_NAME
: Nama peran yang ingin Anda berikan. Gunakan salah satu format berikut:- Peran bawaan:
roles/SERVICE.IDENTIFIER
- Peran khusus level project:
projects/PROJECT_ID/roles/IDENTIFIER
- Peran khusus tingkat organisasi:
organizations/ORG_ID/roles/IDENTIFIER
Untuk daftar peran bawaan, lihat Memahami peran.
- Peran bawaan:
PRINCIPAL_1
,PRINCIPAL_2
,...PRINCIPAL_N
: ID untuk akun utama yang ingin Anda berikan peran.ID utama biasanya memiliki bentuk berikut:
PRINCIPAL-TYPE:ID
. Contoh,user:my-user@example.com
. Untuk daftar lengkap nilai yang dapat dimilikiPRINCIPAL
, lihat ID utama.Untuk jenis akun utama
user
, nama domain dalam ID harus berupa domain Google Workspace atau domain Cloud Identity. Untuk mempelajari cara menyiapkan domain Cloud Identity, lihat ringkasan Cloud Identity.CONDITIONS
: Opsional. Semua kondisi yang menentukan kapan akses akan diberikan.
Memberikan peran
Untuk memberikan peran ke akun utama Anda, ubah binding peran dalam kebijakan izin. Untuk mempelajari peran yang dapat Anda berikan, lihat Memahami peran, atau melihat peran yang dapat diberikan ke resource tersebut. Jika Anda memerlukan bantuan untuk mengidentifikasi peran bawaan yang paling sesuai, lihat Memilih peran bawaan.
Secara opsional, Anda dapat menggunakan kondisi untuk memberikan peran hanya jika memenuhi persyaratan tertentu.
Untuk memberikan peran yang sudah disertakan dalam kebijakan izinkan, tambahkan akun utama ke binding peran yang ada:
gcloud
Edit kebijakan izin dengan menambahkan akun utama ke binding peran yang sudah ada. Perhatikan bahwa perubahan ini tidak akan diterapkan hingga Anda menetapkan kebijakan izinkan yang diperbarui.
Misalnya, anggap kebijakan izinkan berisi binding peran berikut, yang
memberikan peran Compute Instance Admin (roles/compute.instanceAdmin
) ke
Kai:
{
"role": "roles/compute.instanceAdmin",
"members": [
"user:kai@example.com"
]
}
Untuk memberikan peran yang sama kepada Raha, tambahkan ID akun utama Raha ke binding peran yang ada:
{ "role": "roles/compute.instanceAdmin", "members": [ "user:kai@example.com", "user:raha@example.com" ] }
REST
Edit kebijakan izin dengan menambahkan akun utama ke binding peran yang sudah ada. Perhatikan bahwa perubahan ini tidak akan diterapkan hingga Anda menetapkan kebijakan izinkan yang diperbarui.
Misalnya, anggap kebijakan izinkan berisi binding peran berikut, yang
memberikan peran Compute Instance Admin (roles/compute.instanceAdmin
) ke
Kai:
{
"role": "roles/compute.instanceAdmin",
"members": [
"user:kai@example.com"
]
}
Untuk memberikan peran yang sama kepada Raha, tambahkan ID akun utama Raha ke binding peran yang ada:
{ "role": "roles/compute.instanceAdmin", "members": [ "user:kai@example.com", "user:raha@example.com" ] }
Untuk memberikan peran yang belum disertakan dalam kebijakan izinkan, tambahkan binding peran baru:
gcloud
Edit kebijakan izinkan dengan menambahkan binding peran baru yang memberikan peran tersebut ke akun utama. Perubahan ini tidak akan diterapkan hingga Anda menetapkan kebijakan izinkan yang diperbarui.
Misalnya, untuk memberikan peran Admin Load Balancer Compute
(roles/compute.loadBalancerAdmin
) ke Raha, tambahkan binding
peran berikut ke array bindings
untuk kebijakan izin:
{
"role": "roles/compute.loadBalancerAdmin",
"members": [
"user:raha@example.com"
]
}
REST
Edit kebijakan izinkan dengan menambahkan binding peran baru yang memberikan peran tersebut ke akun utama. Perubahan ini tidak akan diterapkan hingga Anda menetapkan kebijakan izinkan yang diperbarui.
Misalnya, untuk memberikan peran Admin Load Balancer Compute
(roles/compute.loadBalancerAdmin
) ke Raha, tambahkan binding
peran berikut ke array bindings
untuk kebijakan izin:
{
"role": "roles/compute.loadBalancerAdmin",
"members": [
"user:raha@example.com"
]
}
Mencabut peran
Untuk mencabut peran, hapus akun utama dari binding peran. Jika tidak ada akun utama lain dalam binding peran, hapus seluruh binding peran.
gcloud
Cabut peran dengan mengedit kebijakan izin JSON atau YAML yang ditampilkan oleh
perintah get-iam-policy
. Perubahan ini tidak akan diterapkan hingga Anda
menetapkan kebijakan izin yang diperbarui.
Untuk mencabut peran dari akun utama, hapus akun utama atau binding
yang diinginkan dari array bindings
untuk kebijakan izin.
REST
Cabut peran dengan mengedit kebijakan izin JSON atau YAML yang ditampilkan oleh
perintah get-iam-policy
. Perubahan ini tidak akan diterapkan hingga Anda
menetapkan kebijakan izin yang diperbarui.
Untuk mencabut peran dari akun utama, hapus akun utama atau binding
yang diinginkan dari array bindings
untuk kebijakan izinkan.
Menetapkan kebijakan izin
Setelah Anda mengubah kebijakan izinkan untuk memberikan dan mencabut peran yang diinginkan, panggil
setIamPolicy()
untuk melakukan perubahan.
gcloud
Untuk menetapkan kebijakan izin untuk resource, jalankan perintah set-iam-policy
untuk
resource tersebut.
Format untuk perintah ini bervariasi bergantung pada jenis resource yang Anda
kelola aksesnya. Untuk menemukan format resource Anda, cari referensi
untuk perintah set-iam-policy
resource dalam referensi
Google Cloud CLI. Referensi ini diatur berdasarkan layanan, kemudian resource.
Misalnya, untuk mendapatkan kebijakan izin instance VM Compute Engine,
ikuti format yang dijelaskan dalam referensi
gcloud compute instances set-iam-policy
.
Respons untuk perintah set-iam-policy
resource berisi kebijakan izinkan resource
yang telah diperbarui.
REST
Untuk menetapkan kebijakan izinkan resource, gunakan metode setIamPolicy
resource.
Metode HTTP, URL, dan isi permintaan bergantung pada resource yang ingin
Anda lihat aksesnya. Untuk menemukan detail ini, temukan referensi API untuk layanan
yang memiliki resource, lalu temukan referensi untuk metode
setIamPolicy
resource. Misalnya, metode HTTP, URL, dan isi permintaan untuk
instance VM Compute Engine ditentukan dalam
referensi instance setIamPolicy
.
Respons untuk metode resource setIamPolicy
berisi kebijakan izinkan
yang telah diperbarui untuk resource.
Langkah selanjutnya
- Pelajari cara mengelola akses ke project, folder, dan organisasi atau cara mengelola akses ke akun layanan.
- Cari tahu cara memilih peran bawaan yang paling sesuai.
- Gunakan Pemecah Masalah Kebijakan untuk memahami alasan pengguna memiliki atau tidak memiliki akses ke resource atau memiliki izin untuk memanggil API.
- Temukan cara melihat peran yang dapat Anda berikan pada resource tertentu.
- Pelajari cara membuat akses akun utama menjadi bersyarat dengan binding peran bersyarat.
Coba sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Mulai secara gratis