Dokumen ini membahas pesan error yang mungkin Anda alami jika Anda tidak memiliki izin akses yang diperlukan untuk suatu resource dan menjelaskan cara mengatasi error ini.
Pesan error izin
Google Cloud Konsol, Google Cloud CLI, dan REST API semuanya menampilkan pesan error saat Anda mencoba mengakses resource yang tidak memiliki izin untuk diakses.
Pesan error ini dapat disebabkan oleh salah satu hal berikut:
- Anda tidak memiliki izin yang diperlukan. Anda harus memiliki binding peran kebijakan izinkan dengan izin yang diperlukan. Jika Anda tidak memiliki izin yang diperlukan, Google Cloud akan menampilkan pesan error.
- Ada kebijakan penolakan yang memblokir akses. Jika kebijakan penolakan mencegah Anda menggunakan salah satu izin yang diperlukan, maka Google Cloud akan menampilkan pesan error.
- Anda tidak memenuhi syarat untuk mengakses resource. Jika Anda tunduk pada kebijakan batas akses akun utama, maka resource yang Anda coba akses harus disertakan dalam aturan batas akses akun utama kebijakan. Jika tidak, Google Cloud akan menampilkan pesan error.
- Resource tidak ada. Jika resource tidak ada, maka Google Cloud akan menampilkan pesan error.
Bagian berikut menunjukkan tampilan pesan error ini untukGoogle Cloud konsol, gcloud CLI, dan REST API.
Pesan error konsolGoogle Cloud
Di konsol Google Cloud , pesan error akan terlihat mirip dengan yang berikut:
Pesan error ini berisi informasi berikut:
- Resource yang Anda coba akses: Nama resource muncul di judul halaman error dan menunjukkan resource yang Anda coba akses saat Anda mengalami error izin.
- Izin yang diperlukan tidak ada: Daftar izin yang harus Anda miliki untuk mengakses resource.
Daftar peran IAM yang berisi izin yang diperlukan: Daftar ini tidak lengkap—daftar ini berisi daftar peran yang diseleksi yang Google Cloud disarankan untuk mengatasi masalah akses. Pengurutan didasarkan pada jenis tindakan yang diizinkan berdasarkan peran, relevansi layanan, dan jumlah izin.
Jika Anda memiliki izin yang diperlukan untuk memberikan peran, bagian ini berjudul Pilih peran yang akan diberikan. Jika Anda tidak memiliki izin yang diperlukan, bagian ini berjudul Minta peran tertentu.
Daftar ini hanya tersedia untuk error izin yang dapat diselesaikan dengan memberikan peran IAM tambahan.
Anda dapat mengklik peran untuk mempelajari lebih lanjut peran tersebut dan meminta agar peran tersebut diberikan kepada Anda. Jika memiliki izin yang diperlukan untuk memberikan peran, Anda dapat memberikan peran tersebut kepada diri Anda sendiri, bukan memintanya.
Pesan error Google Cloud CLI dan REST API
Kata-kata yang tepat dalam pesan error bergantung pada perintah yang Anda jalankan. Namun, biasanya berisi informasi berikut:
- Izin yang diperlukan
- Resource yang Anda coba lakukan tindakan
- Akun yang melakukan autentikasi
Misalnya, jika Anda tidak memiliki izin untuk mencantumkan bucket dalam project, Anda akan melihat pesan error seperti berikut:
gcloud
ERROR: (gcloud.storage.buckets.list) HTTPError 403:
EMAIL_ADDRESS does not have
storage.buckets.list access to the Google Cloud project. Permission
'storage.buckets.list' denied on resource (or it may not exist). This command
is authenticated as EMAIL ADDRESS which
is the active account specified by the [core/account] property.
REST
{
"error": {
"code": 403,
"message": "EMAIL ADDRESS does not have storage.buckets.list access to the Google Cloud project. Permission 'storage.buckets.list' denied on resource (or it may not exist).",
"errors": [
{
"message": "EMAIL ADDRESS does not have storage.buckets.list access to the Google Cloud project. Permission 'storage.buckets.list' denied on resource (or it may not exist).",
"domain": "global",
"reason": "forbidden"
}
]
}
}
Meminta izin yang tidak ada
Jika Anda tidak memiliki izin untuk mengubah kebijakan terkait akses di organisasi Anda, Anda tidak dapat menyelesaikan error izin sendiri. Namun, Anda dapat mengirim permintaan akses kepada administrator menggunakan konteks dari pesan error.
Anda dapat meminta akses dengan cara berikut:
Minta izin yang diperlukan. Resolusi ini berlaku untuk semua jenis error izin.
Minta peran dengan izin yang diperlukan. Resolusi ini hanya efektif jika error izin disebabkan oleh kebijakan izin Anda.
Jika Anda menggunakan konsol Google Cloud dan memiliki izin yang diperlukan untuk memberikan peran, Anda dapat memberikan peran tersebut kepada diri sendiri langsung dari pesan error, bukan memintanya. Untuk mengetahui informasi selengkapnya, lihat Memberikan peran sendiri di konsol Google Cloud .
Meminta izin yang diperlukan
Untuk meminta izin yang diperlukan, lakukan hal berikut:
Konsol
Dalam daftar izin yang tidak ada, klik Minta izin.
Di panel Minta Akses, pilih cara Anda ingin memberi tahu administrator:
Jika organisasi Anda mendukung Kontak Penting, Anda dapat mengirim email yang dibuat secara otomatis ke Kontak Penting teknis organisasi Anda. Untuk mengirim email ini, lakukan hal berikut:
- Pilih Kirim email yang dibuat secara otomatis.
- Tambahkan konteks apa pun tentang permintaan yang ingin Anda sertakan.
- Klik Kirim permintaan.
Untuk menyalin permintaan akses dan menempelkannya ke sistem pengelolaan permintaan pilihan Anda, lakukan hal berikut:
- Jika organisasi Anda mendukung Kontak Penting, tetapi Anda ingin mengirim notifikasi secara manual, pilih Beri tahu secara manual.
- Tambahkan konteks apa pun tentang permintaan yang ingin Anda sertakan.
- Klik Salin pesan.
- Tempelkan permintaan ke sistem pengelolaan permintaan pilihan Anda.
Administrator Anda akan menerima permintaan akses Anda, beserta konteks tambahan yang Anda berikan.
gcloud
Salin daftar izin yang tidak ada dari pesan error, lalu gunakan sistem pengelolaan permintaan pilihan Anda untuk meminta administrator memberi Anda izin ini.
REST
Salin daftar izin yang tidak ada dari pesan error, lalu gunakan sistem pengelolaan permintaan pilihan Anda untuk meminta administrator memberi Anda izin ini.
Meminta peran
Jika error izin disebabkan oleh kebijakan izinkan, Anda dapat meminta administrator untuk memberi Anda peran dengan izin yang diperlukan untuk mengatasi error tersebut.
Jika error disebabkan oleh jenis kebijakan yang berbeda atau jika Anda tidak yakin jenis kebijakan mana yang menyebabkan error, minta izin yang diperlukan.
Konsol
Di bagian Minta peran tertentu, tinjau daftar peran yang direkomendasikan dan pilih peran yang ingin Anda minta. Anda dapat mengklik peran untuk melihat detail selengkapnya tentang peran tersebut. Bagian ini hanya terlihat jika kesalahan izin disebabkan oleh kebijakan izinkan.
Klik peran yang telah Anda pilih, lalu klik Minta peran.
Di panel Minta Akses, pilih salah satu opsi untuk memberi tahu administrator Anda:
Jika organisasi Anda mendukung Kontak penting, Anda dapat mengirim email yang dibuat secara otomatis ke Kontak Penting teknis organisasi Anda. Untuk mengirim email ini, lakukan hal berikut:
- Pilih Kirim email yang dibuat secara otomatis.
- Tambahkan konteks apa pun tentang permintaan yang ingin Anda sertakan.
- Klik Kirim permintaan.
Untuk menyalin permintaan akses dan menempelkannya ke sistem pengelolaan permintaan pilihan Anda, lakukan hal berikut:
- Jika organisasi Anda mendukung Kontak Penting, tetapi Anda ingin mengirim notifikasi secara manual, pilih Beri tahu secara manual.
- Tambahkan konteks apa pun tentang permintaan yang ingin Anda sertakan.
- Klik Salin pesan.
- Tempelkan permintaan ke sistem pengelolaan permintaan pilihan Anda.
Administrator Anda akan menerima permintaan akses Anda, beserta konteks tambahan yang Anda berikan.
gcloud
Identifikasi peran IAM yang berisi izin yang tidak ada.
Untuk melihat semua peran yang menyertakan izin tertentu, telusuri izin tersebut dalam indeks peran dan izin IAM, lalu klik nama izin.
Jika tidak ada peran bawaan yang sesuai dengan kasus penggunaan Anda, Anda dapat membuat peran khusus.
Gunakan sistem pengelolaan permintaan pilihan Anda untuk meminta administrator memberi Anda peran tersebut.
REST
Identifikasi peran IAM yang berisi izin yang tidak ada.
Untuk melihat semua peran yang menyertakan izin tertentu, telusuri izin tersebut dalam indeks peran dan izin IAM, lalu klik nama izin.
Jika tidak ada peran bawaan yang sesuai dengan kasus penggunaan Anda, Anda dapat membuat peran khusus.
Gunakan sistem pengelolaan permintaan pilihan Anda untuk meminta administrator memberi Anda peran tersebut.
Memberikan peran sendiri di konsol Google Cloud
Jika Anda mengalami error izin di konsol Google Cloud dan Anda memiliki izin yang diperlukan untuk memberikan peran, maka Anda dapat memberikan peran kepada diri sendiri langsung dari pesan error izin:
Di bagian Pilih peran yang akan diberikan, tinjau daftar peran yang direkomendasikan dan pilih peran yang ingin Anda minta. Anda dapat mengklik peran untuk melihat detail selengkapnya tentang peran tersebut.
Untuk memberikan peran yang telah Anda pilih, klik peran, lalu klik Berikan akses.
Mengatasi error izin dari permintaan akses
Jika Anda adalah administrator, Anda mungkin menerima permintaan akses dari pengguna yang mengalami error izin di konsol Google Cloud . Permintaan ini biasanya dikirim kepada orang-orang berikut:
Kontak Teknis Pentingorganisasi Anda. Jika organisasi Anda telah mengaktifkan kontak penting, pengguna yang mengalami error izin di konsolGoogle Cloud memiliki opsi untuk mengirim permintaan akses ke Kontak Penting teknis organisasi mereka.
Kontak yang dikonfigurasi melalui sistem pengelolaan permintaan pilihan Anda. Pengguna yang mengalami error izin di konsol Google Cloud memiliki opsi untuk menyalin pesan permintaan akses, lalu mengirimkannya menggunakan sistem pengelolaan permintaan pilihan mereka.
Pesan ini biasanya memiliki format berikut:
user@example.com is requesting a role on the resource example.com:example-project.
Requestor's message:
"I need access to example-project to complete my work."
You may be able to resolve this request by granting access directly at:
ACCESS_REQUEST_PANEL_URL
Or use the Policy Troubleshooter to determine what's preventing access for user@example.com:
POLICY_TROUBLESHOOTER_URL
Anda dapat menangani permintaan ini dengan cara berikut:
Menyelesaikan akses secara langsung: Permintaan akses berisi link ke panel permintaan akses di konsol Google Cloud . Jika error izin disebabkan oleh kebijakan izin, Anda dapat menyelesaikan akses langsung dari panel tersebut.
Di panel permintaan akses, Anda dapat meninjau detail permintaan dan memilih cara Anda ingin merespons permintaan tersebut. Anda dapat merespons dengan cara berikut:
- Memberikan peran yang diminta
- Tambahkan pengguna ke grup yang sudah ada dan memiliki akses yang diperlukan
- Menolak permintaan
Melihat detail tambahan di Pemecah Masalah Kebijakan: Permintaan akses juga berisi link ke Pemecah Masalah Kebijakan, yang memungkinkan Anda melihat kebijakan mana yang memblokir akses pengguna. Anda dapat menggunakan informasi ini untuk memutuskan cara menyelesaikan masalah akses pengguna. Untuk informasi selengkapnya, lihat Mengidentifikasi kebijakan yang menyebabkan error izin di halaman ini.
Mengatasi error izin secara manual
Jika Anda adalah administrator dengan izin untuk mengubah kebijakan terkait akses di organisasi Anda, Anda dapat menggunakan strategi ini untuk mengatasi error izin, terlepas dari jenis kebijakan yang menyebabkan error.
Untuk mengatasi error izin, Anda harus menentukan kebijakan mana (izinkan, tolak, atau batas akses akun utama) yang menyebabkan error terlebih dahulu. Kemudian, Anda dapat menyelesaikan error tersebut.
Mengidentifikasi kebijakan yang menyebabkan error izin
Untuk menentukan kebijakan mana yang menyebabkan error izin, gunakan Pemecah Masalah Kebijakan.
Pemecah Masalah Kebijakan membantu Anda memahami apakah akun utama dapat mengakses resource. Dengan mempertimbangkan akun utama, resource, dan izin, Pemecah Masalah Kebijakan memeriksa kebijakan izinkan, kebijakan tolak, dan kebijakan batas akses akun utama (PAB) yang memengaruhi akses akun utama. Kemudian, class memberi tahu Anda apakah, berdasarkan kebijakan tersebut, akun utama dapat menggunakan izin yang ditentukan untuk mengakses resource. Bagian ini juga mencantumkan kebijakan yang relevan dan menjelaskan pengaruhnya terhadap akses akun utama.Untuk mempelajari cara memecahkan masalah akses dan menafsirkan hasil Pemecah Masalah Kebijakan, lihat Memecahkan masalah izin IAM.
Pesan error di konsol Google Cloud berisi link ke halaman hasil Pemecah Masalah Kebijakan untuk prinsipal, izin, dan resource yang terlibat dalam permintaan. Untuk melihat link ini, klik Lihat detail pemecahan masalah, lalu temukan nilai di kolom URL Pemecahan Masalah.
Memperbarui akses untuk mengatasi error izin
Setelah mengetahui kebijakan mana yang menyebabkan error izin, Anda dapat melakukan langkah-langkah untuk mengatasi error tersebut.
Sering kali, menyelesaikan error melibatkan pembuatan atau pembaruan kebijakan batas akses akun utama, izinkan, atau tolak.
Namun, ada opsi lain untuk menyelesaikan error yang tidak melibatkan pembaruan kebijakan. Misalnya, Anda dapat menambahkan pengguna ke grup yang memiliki izin yang diperlukan atau menambahkan tag untuk mengecualikan resource dari kebijakan.
Untuk mempelajari berbagai cara mengatasi error izin karena setiap jenis kebijakan yang berbeda, lihat artikel berikut:
Mengatasi error izin kebijakan izinkan
Untuk mengatasi error izin karena kebijakan izin, lakukan salah satu tindakan berikut.
Memberikan peran dengan izin yang diperlukan
Untuk menemukan dan memberikan peran dengan izin yang diperlukan, lakukan hal berikut:
Identifikasi peran IAM yang berisi izin yang tidak ada.
Untuk melihat semua peran yang menyertakan izin tertentu, telusuri izin tersebut dalam indeks peran dan izin IAM, lalu klik nama izin.
Jika tidak ada peran bawaan yang sesuai dengan kasus penggunaan Anda, Anda dapat membuat peran khusus.
Identifikasi akun utama yang akan diberi peran:
- Jika pengguna adalah satu-satunya individu yang memerlukan izin, berikan peran langsung kepada pengguna.
- Jika pengguna adalah bagian dari grup Google yang berisi pengguna yang semuanya memerlukan izin serupa, pertimbangkan untuk memberikan peran kepada grup tersebut. Jika Anda memberikan peran kepada grup, semua anggota grup tersebut dapat menggunakan izin tersebut, kecuali jika mereka telah ditolak secara eksplisit untuk menggunakannya.
Berikan peran kepada akun utama.
Tambahkan pengguna ke grup Google
Jika grup Google diberi peran pada resource, semua anggota grup tersebut dapat menggunakan izin dalam peran tersebut untuk mengakses resource.
Jika grup yang ada telah diberi peran dengan izin yang diperlukan, Anda dapat memberi pengguna izin yang diperlukan dengan menambahkannya ke grup tersebut:
Identifikasi grup yang memiliki peran dengan izin yang diperlukan. Jika Anda telah menggunakan Pemecah Masalah Kebijakan untuk memecahkan masalah permintaan, Anda dapat meninjau hasil Pemecah Masalah Kebijakan untuk mengidentifikasi grup dengan izin yang diperlukan.
Atau, Anda dapat menggunakan Penganalisis Kebijakan untuk mengidentifikasi grup dengan izin yang diperlukan.
Mengatasi error izin kebijakan penolakan
Untuk mengatasi error izin terkait kebijakan penolakan, lakukan salah satu tindakan berikut.
Mengecualikan diri Anda dari kebijakan penolakan
Jika aturan penolakan memblokir akses pengguna ke suatu resource, Anda dapat melakukan salah satu tindakan berikut untuk mengecualikan pengguna dari aturan tersebut:
Tambahkan pengguna sebagai prinsipal pengecualian dalam aturan penolakan. Akun utama pengecualian adalah akun utama yang tidak terpengaruh oleh aturan penolakan, meskipun akun utama tersebut merupakan bagian dari grup yang disertakan dalam aturan penolakan.
Untuk menambahkan akun utama pengecualian ke aturan penolakan, ikuti langkah-langkah untuk memperbarui kebijakan penolakan. Saat memperbarui kebijakan penolakan, temukan aturan penolakan yang memblokir akses, lalu tambahkan ID akun utama pengguna sebagai akun utama pengecualian.
Tambahkan pengguna ke grup yang dikecualikan dari aturan. Jika grup tercantum sebagai prinsipal pengecualian, semua anggota grup tersebut akan dikecualikan dari aturan penolakan.
Untuk menambahkan pengguna ke grup yang dikecualikan, lakukan hal berikut:
- Gunakan Pemecah Masalah Kebijakan untuk mengidentifikasi kebijakan penolakan yang memblokir akses ke resource.
- Lihat kebijakan penolakan.
- Periksa daftar prinsipal pengecualian untuk grup.
- Jika Anda mengidentifikasi grup yang dikecualikan, tambahkan pengguna ke grup tersebut.
Menghapus izin dari kebijakan penolakan
Aturan tolak mencegah akun utama yang tercantum menggunakan izin tertentu. Jika aturan penolakan memblokir akses pengguna ke resource, Anda dapat menghapus izin yang mereka butuhkan dari aturan penolakan.
Untuk menghapus izin dari aturan penolakan, ikuti langkah-langkah untuk memperbarui kebijakan penolakan. Saat memperbarui kebijakan penolakan, temukan aturan penolakan yang memblokir akses, lalu lakukan salah satu hal berikut:
- Jika kebijakan penolakan mencantumkan izin yang diperlukan secara terpisah, temukan izin yang diperlukan dan hapus dari aturan penolakan.
- Jika aturan penolakan menggunakan grup izin, tambahkan izin yang diperlukan sebagai izin pengecualian. Izin pengecualian adalah izin yang tidak diblokir oleh aturan penolakan, meskipun izin tersebut merupakan bagian dari grup izin yang disertakan dalam aturan.
Mengecualikan resource dari kebijakan penolakan
Anda dapat menggunakan kondisi dalam kebijakan penolakan untuk menerapkan aturan penolakan berdasarkan tag resource. Jika tag resource tidak memenuhi kondisi dalam aturan penolakan, aturan penolakan tidak berlaku.
Jika aturan penolakan memblokir akses ke resource, Anda dapat mengedit kondisi dalam aturan penolakan atau tag pada resource untuk memastikan bahwa aturan penolakan tidak berlaku untuk resource tersebut.
Untuk mempelajari cara menggunakan kondisi dalam aturan penolakan, lihat Kondisi dalam kebijakan penolakan.
Untuk mempelajari cara memperbarui kebijakan tolak, lihat Memperbarui kebijakan tolak.
Untuk mempelajari cara mengedit tag resource, lihat Membuat dan mengelola tag.
Menyelesaikan error izin kebijakan batas akses prinsipal
Secara default, akun utama memenuhi syarat untuk mengakses resource Google Cloud apa pun. Namun, jika mereka tunduk pada kebijakan batas akses akun utama, maka mereka hanya memenuhi syarat untuk mengakses resource yang tercantum dalam kebijakan batas akses akun utama yang mereka tunduk. Dalam kasus ini, kebijakan batas akses akun utama dapat mencegah akun utama mengakses resource.
Untuk mengatasi error terkait kebijakan batas akses akun utama, lakukan salah satu tindakan berikut.
Menambahkan resource ke kebijakan batas akses utama
Jika resource disertakan dalam kebijakan batas akses akun utama yang berlaku bagi pengguna, maka pengguna tersebut memenuhi syarat untuk mengakses resource tersebut.
Untuk menambahkan resource ke kebijakan batas akses utama, lakukan salah satu hal berikut:
Buat kebijakan batas akses utama baru:
- Buat kebijakan batas akses utama baru yang mencakup resource.
Ikat kebijakan ke set prinsipal yang menyertakan pengguna.
Untuk mempelajari lebih lanjut set utama, lihat Set utama yang didukung.
Memperbarui kebijakan batas akses utama yang ada:
- Mencantumkan binding kebijakan batas akses utama untuk kumpulan utama yang menyertakan pengguna. Setiap binding merepresentasikan kebijakan batas akses utama yang terikat ke set utama.
- Dari daftar binding, identifikasi kebijakan batas akses akun utama yang akan diubah.
- Opsional: Mencantumkan binding kebijakan batas akses akun utama untuk kebijakan guna melihat akun utama mana yang terikat dengan kebijakan tersebut. Memperbarui kebijakan akan memengaruhi akses untuk semua set akun utama yang terikat dengan kebijakan tersebut.
- Edit kebijakan batas akses akun utama sehingga mencakup resource.
Menambahkan kondisi untuk mengecualikan principal tertentu
Anda dapat menggunakan kondisi dalam binding kebijakan batas akses akun utama untuk menentukan akun utama yang akan menerapkan kebijakan batas akses akun utama.
Jika Anda tidak ingin pengguna tunduk pada kebijakan batas akses akun utama, gunakan kondisi dalam binding kebijakan batas akses akun utama untuk mengecualikan pengguna dari kebijakan batas akses akun utama.
Agar pendekatan ini dapat mengatasi error, Anda harus mengecualikan pengguna dari setiap kebijakan batas akses akun utama yang berlaku untuknya. Dengan demikian, pengguna akan memenuhi syarat untuk mengakses resource Google Cloud apa pun.
Kami tidak merekomendasikan pendekatan ini. Sebagai gantinya, pertimbangkan untuk menambahkan resource ke kebijakan batas akses utama.
Untuk melihat kebijakan batas akses akun utama yang berlaku bagi pengguna, cantumkan binding kebijakan untuk set akun utama yang mencakup pengguna tersebut. Setiap binding merepresentasikan kebijakan batas akses akun utama yang terikat ke set akun utama.
Untuk mempelajari cara menambahkan kondisi ke binding kebijakan batas akses akun utama, lihat Mengedit binding kebijakan yang ada untuk kebijakan batas akses akun utama.
Langkah berikutnya
- Menguji perubahan peran dengan Policy Simulator
- Menguji perubahan kebijakan penolakan dengan Policy Simulator
- Menguji perubahan kebijakan batas akses utama