Dengan Cloud Asset API, Anda dapat menggunakan bahasa kueri kustom untuk menelusuri kebijakan yang diizinkan di project, folder, atau organisasi.
Sebelum memulai
Aktifkan Cloud Asset API untuk project Anda.
Pastikan pemanggil telah diberi peran yang berisi izin
cloudasset.assets.searchAllIamPolicies
. Lihat topik Kontrol akses untuk informasi selengkapnya.
Melusuri kebijakan yang diizinkan
Konsol
Untuk menelusuri semua kebijakan izin IAM, selesaikan langkah-langkah berikut.
Buka halaman Asset Inventory di Konsol Google Cloud.
Untuk menetapkan cakupan penelusuran, buka kotak daftar Project di panel menu, lalu pilih organisasi, folder, atau project yang akan dikueri.
Pilih tab Kebijakan IAM.
Untuk menelusuri kebijakan izinkan, Anda dapat menggunakan kueri preset atau membuatnya sendiri.
Untuk menggunakan kueri preset, pilih opsi dari Query Presets di panel Filter results. Untuk memfilter hasil, pilih opsi dari Filter.
Untuk membuat kueri sendiri, masukkan teks kueri dalam panel Filter. Pilih kotak teks, lalu daftar kolom yang dapat ditelusuri akan ditampilkan. Penelusuran kebijakan mendukung banyak kolom. Pelajari sintaksis kueri lebih lanjut.
Kebijakan izinkan yang cocok dengan kueri tercantum dalam tabel Result.
Untuk melihat kueri sebagai perintah Google Cloud CLI, pilih View query.
Untuk mengekspor hasil, pilih Download CSV.
gcloud
Anda dapat memanggil
SearchAllIamPolicies
menggunakan perintah
gcloud asset search-all-iam-policies
. Anda harus menjalankan Google Cloud CLI versi 302.0.0 atau yang lebih baru. Anda dapat memeriksa versi Anda dengan perintah gcloud version
:
gcloud asset search-all-iam-policies \
--scope=SCOPE \
--query="QUERY" \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--order-by=ORDER_BY
Berikan nilai berikut:
SCOPE
: Wajib diisi. Ruang lingkup dapat berupa project, folder, atau organisasi. Penelusuran ini terbatas pada kebijakan izin IAM dalam cakupan ini. Pemanggil harus diberi peran yang berisi izincloudasset.assets.searchAllIamPolicies
pada cakupan yang dipilih. Jika tidak ditentukan, properti project yang dikonfigurasi akan digunakan.Nilai yang diizinkan adalah:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Cara menemukan nomor project Google Cloud
Konsol
Untuk menemukan nomor project Google Cloud, selesaikan langkah-langkah berikut:
-
Buka halaman Dasbor di Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Pilih organisasi Anda dari kotak Select from, lalu telusuri nama project Anda.
- Klik nama project untuk beralih ke project tersebut. Nomor project ditampilkan di kartu Project info.
gcloud CLI
Anda dapat mengambil nomor project Google Cloud dengan perintah berikut:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Cara menemukan ID folder Google Cloud
Konsol
Untuk menemukan ID folder Google Cloud, selesaikan langkah-langkah berikut:
-
Buka Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Klik kotak Pilih dari, lalu pilih organisasi Anda.
- Telusuri nama folder Anda. ID folder ditampilkan di samping nama folder.
gcloud CLI
Anda dapat mengambil ID folder Google Cloud yang berada di tingkat organisasi dengan perintah berikut:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Dengan TOP_LEVEL_FOLDER_NAME dapat berupa pencocokan string penuh atau sebagian. Hapus opsi
--format
untuk melihat informasi selengkapnya tentang folder yang ditemukan.Untuk mendapatkan ID folder dalam folder lain, cantumkan subfolder:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Cara menemukan ID organisasi Google Cloud
Konsol
Untuk menemukan ID organisasi Google Cloud, selesaikan langkah-langkah berikut:
-
Buka Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Klik kotak Pilih dari, lalu pilih organisasi Anda.
- Klik tab Semua. ID organisasi ditampilkan di samping nama organisasi.
gcloud CLI
Anda dapat mengambil ID organisasi Google Cloud dengan perintah berikut:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
QUERY
: Opsional. Pernyataan kueri. Lihat Sintaksis kueri untuk mengetahui informasi selengkapnya. Jika tidak ditentukan atau kosong, semua kebijakan izin IAM dalamscope
yang ditentukan akan ditelusuri. Perlu diperhatikan bahwa string kueri dibandingkan dengan setiap binding kebijakan yang mengizinkan, termasuk akun utama, peran, dan kondisi IAM-nya. Kebijakan izinkan yang ditampilkan hanya berisi binding yang cocok dengan kueri Anda. Untuk mempelajari struktur kebijakan izinkan lebih lanjut, lihat Memahami kebijakan.Contoh:
policy:amy@gmail.com
untuk menemukan binding kebijakan izinkan yang menentukan pengguna "amy@gmail.com".policy:roles/compute.admin
untuk menemukan binding kebijakan izinkan yang menentukan peran Compute Admin.policy:comp*
untuk menemukan binding kebijakan izinkan yang berisi "comp" sebagai awalan dari kata apa pun dalam binding.policy.role.permissions:storage.buckets.update
untuk menemukan binding kebijakan izinkan yang menentukan peran yang berisi izin "storage.buckets.update". Perhatikan bahwa jika pemanggil belum diberi peran yang berisi iziniam.roles.get
pada peran yang diinginkan, izinkan binding kebijakan yang menentukan peran ini akan dihapus dari hasil penelusuran.policy.role.permissions:upd*
untuk menemukan binding kebijakan izin yang menentukan peran yang berisi "upd" sebagai awalan dari kata apa pun dalam binding. Perlu diketahui bahwa jika pemanggil belum diberi peran yang berisi iziniam.roles.get
pada peran yang diinginkan, izinkan binding kebijakan yang menentukan peran ini akan dihapus dari hasil penelusuran.resource:organizations/123456
untuk menemukan binding kebijakan izin yang ditetapkan di "organizations/123456".resource=//cloudresourcemanager.googleapis.com/projects/myproject
untuk menemukan binding kebijakan izinkan yang ditetapkan pada project bernama "myproject".Important
untuk menemukan binding kebijakan izinkan yang berisi "Penting" sebagai kata di setiap kolom yang dapat ditelusuri (kecuali untuk izin yang disertakan).resource:(instance1 OR instance2) policy:amy
untuk menemukan binding kebijakan izinkan yang ditetapkan pada resource "instance1" atau "instance2" dan juga menentukan pengguna "amy".roles:roles/compute.admin
untuk menemukan binding kebijakan izinkan yang menentukan peran Compute Admin.memberTypes:user
untuk menemukan binding kebijakan izinkan yang berisi jenis utama "pengguna".
ASSET_TYPE
: Opsional. Daftar jenis aset yang dilampirkan oleh kebijakan Identity and Access Management. Jika kosong, layanan ini akan menelusuri Identity and Access Management mengizinkan kebijakan yang disertakan ke semua jenis aset yang dapat ditelusuri. Ekspresi reguler didukung. Jika ekspresi reguler tidak cocok dengan jenis aset apa pun yang didukung, errorINVALID_ARGUMENT
akan ditampilkan.ORDER_BY
: Opsional. Daftar kolom yang dipisahkan koma, yang menentukan urutan penyortiran hasil. Urutan defaultnya adalah menaik. TambahkanDESC
setelah nama kolom untuk menunjukkan urutan menurun. Karakter spasi yang berlebihan akan diabaikan. Contoh:"assetType DESC, resource"
. Hanya kolom primitif tunggal dalam respons yang dapat diurutkan:resource
assetType
project
Semua kolom lain seperti kolom berulang (misalnya,
folders
) dan kolom non-primitif (misalnya,policy
) tidak didukung.
Berikut adalah contoh perintah gcloud
:
Temukan semua binding kebijakan yang mengizinkan IAM di
organizations/123456
yang berisi domainmycompany.com
:gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="policy:\"domain:mycompany.com\""
Temukan semua binding kebijakan izin IAM di
organizations/123456
tempatmyuser@mycompany.com
telah diberi peran dasar Pemilik (roles/owner
):gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="policy:(roles/owner myuser@mycompany.com)"
Temukan semua binding kebijakan yang mengizinkan IAM di
organizations/123456
yang ditetapkan diprojects/12345678
:gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="resource:projects/12345678"
REST
Anda dapat memanggil SearchAllIamPolicies
menggunakan token OAuth yang valid untuk sebuah project. Untuk memanggil metode SearchAllIamPolicies
dari Cloud Shell atau konsol mana pun yang menyediakan perintah gcloud
:
Jika belum mengonfigurasi layar izin OAuth project, Anda harus melakukannya. Alamat email dan nama produk diperlukan untuk layar izin OAuth.
Buka layar izin OAuth untuk project Anda.
Masukkan Application name yang ingin ditampilkan.
Di bagian Email dukungan, pilih alamat email yang ingin Anda tampilkan sebagai kontak publik. Ini harus berupa alamat email Anda, atau Google Grup yang Anda miliki.
Tambahkan detail opsional yang Anda inginkan.
Klik Simpan.
Buat token OAuth untuk project Anda. Lihat Menyiapkan OAuth 2.0 untuk informasi selengkapnya.
Buka halaman Buat client ID OAuth.
Pilih Aplikasi desktop sebagai Jenis aplikasi Anda.
Klik Create.
Download file
client_secret.json
.Buka halaman Credentials.
Di sebelah kanan Client ID baru, klik
Download JSON.Simpan file dengan aman di lokasi yang hanya dapat diakses oleh aplikasi Anda.
Login menggunakan file JSON dengan perintah berikut.
gcloud auth application-default login --client-id-file=YOUR_JSON_FILE
Perintah ini meminta Anda untuk membuka link. Pastikan halaman menampilkan Nama aplikasi yang Anda tetapkan di layar izin OAuth.
Anda kini dapat mengkueri kebijakan izinkan IAM menggunakan perintah
curl
.curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": PAGE_SIZE, "query": "QUERY" }' \ https://cloudasset.googleapis.com/v1/SCOPE:searchAllIamPolicies
Berikan detail berikut:
ASSET_TYPE
: Opsional. Daftar jenis aset yang dapat dilampirkan oleh kebijakan Identity and Access Management. Jika kosong, layanan ini akan menelusuri kebijakan "Izinkan Identity and Access Management" yang dilampirkan ke semua jenis aset yang dapat ditelusuri. Ekspresi reguler didukung. Jika ekspresi reguler tidak cocok dengan jenis aset apa pun yang didukung, errorINVALID_ARGUMENT
akan ditampilkan.ORDER_BY
: Opsional. Daftar kolom yang dipisahkan koma yang menentukan urutan penyortiran hasil. Urutan defaultnya adalah menaik. TambahkanDESC
setelah nama kolom untuk menunjukkan urutan menurun. Karakter spasi yang berlebihan akan diabaikan. Contoh:"assetType DESC, resource"
. Hanya kolom primitif tunggal dalam respons yang dapat diurutkan:resource
assetType
project
Semua kolom lain seperti kolom berulang (misalnya,
folders
) dan kolom non-primitif (misalnya,policy
) tidak didukung.PAGE_SIZE
: Opsional. Jumlah hasil yang akan ditampilkan per halaman. Jumlah maksimumnya adalah 2.000. Jika nilai ditetapkan ke0
atau nilai negatif, default yang sesuai akan dipilih.nextPageToken
ditampilkan untuk mengambil hasil berikutnya.QUERY
: Opsional. Pernyataan kueri. Lihat Sintaksis kueri untuk mengetahui informasi selengkapnya. Jika tidak ditentukan atau kosong, kolom akan menelusuri semua kebijakan izinkan IAM dalamscope
yang ditentukan. Perlu diperhatikan bahwa string kueri dibandingkan dengan setiap binding kebijakan izinkan, termasuk akun utama, peran, dan kondisi IAM-nya. Kebijakan izinkan yang ditampilkan hanya berisi binding yang cocok dengan kueri Anda. Untuk mempelajari struktur kebijakan izin lebih lanjut, lihat Memahami kebijakan izin.Contoh:
policy:amy@gmail.com
untuk menemukan binding kebijakan izinkan yang menentukan pengguna "amy@gmail.com".policy:roles/compute.admin
untuk menemukan binding kebijakan izinkan yang menentukan peran Compute Admin.policy:comp*
untuk menemukan binding kebijakan izinkan yang berisi "comp" sebagai awalan dari kata apa pun dalam binding.policy.role.permissions:storage.buckets.update
untuk menemukan binding kebijakan izinkan yang menentukan peran yang berisi izin "storage.buckets.update". Perhatikan bahwa jika pemanggil belum diberi peran yang berisi iziniam.roles.get
pada peran yang diinginkan, izinkan binding kebijakan yang menentukan peran ini akan dihapus dari hasil penelusuran.policy.role.permissions:upd*
untuk menemukan binding kebijakan izinkan yang menentukan peran yang berisi "upd" sebagai awalan dari kata apa pun dalam izin peran. Perhatikan bahwa jika pemanggil belum diberi peran yang berisi iziniam.roles.get
pada peran yang diinginkan, izinkan binding kebijakan yang menentukan peran ini akan dihapus dari hasil penelusuran.resource:organizations/123456
untuk menemukan binding kebijakan izin yang ditetapkan di "organizations/123456".resource=//cloudresourcemanager.googleapis.com/projects/myproject
untuk menemukan binding kebijakan izinkan yang ditetapkan pada project bernama "myproject".Important
untuk menemukan binding kebijakan izinkan yang berisi "Penting" sebagai kata di setiap kolom yang dapat ditelusuri (kecuali untuk izin yang disertakan).resource:(instance1 OR instance2) policy:amy
untuk menemukan binding kebijakan izinkan yang ditetapkan pada resource "instance1" atau "instance2" dan juga menentukan pengguna "amy".roles:roles/compute.admin
untuk menemukan binding kebijakan izinkan yang menentukan peran Compute Admin.memberTypes:user
untuk menemukan binding kebijakan izinkan yang berisi jenis utama "pengguna".
SCOPE
: Cakupan dapat berupa project, folder, atau organisasi. Penelusuran ini terbatas pada IAM izinkan kebijakan dalam cakupan ini. Pemanggil harus diberi peran yang berisi izincloudasset.assets.searchAllIamPolicies
pada cakupan yang dipilih. Jika tidak ditentukan, properti project yang dikonfigurasi akan digunakan.Nilai yang diizinkan adalah:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Cara menemukan nomor project Google Cloud
Konsol
Untuk menemukan nomor project Google Cloud, selesaikan langkah-langkah berikut:
-
Buka halaman Dasbor di Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Pilih organisasi Anda dari kotak Select from, lalu telusuri nama project Anda.
- Klik nama project untuk beralih ke project tersebut. Nomor project ditampilkan di kartu Project info.
gcloud CLI
Anda dapat mengambil nomor project Google Cloud dengan perintah berikut:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Cara menemukan ID folder Google Cloud
Konsol
Untuk menemukan ID folder Google Cloud, selesaikan langkah-langkah berikut:
-
Buka Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Klik kotak Pilih dari, lalu pilih organisasi Anda.
- Telusuri nama folder Anda. ID folder ditampilkan di samping nama folder.
gcloud CLI
Anda dapat mengambil ID folder Google Cloud yang berada di tingkat organisasi dengan perintah berikut:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Dengan TOP_LEVEL_FOLDER_NAME dapat berupa pencocokan string penuh atau sebagian. Hapus opsi
--format
untuk melihat informasi selengkapnya tentang folder yang ditemukan.Untuk mendapatkan ID folder dalam folder lain, cantumkan subfolder:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Cara menemukan ID organisasi Google Cloud
Konsol
Untuk menemukan ID organisasi Google Cloud, selesaikan langkah-langkah berikut:
-
Buka Konsol Google Cloud.
- Klik kotak switcher di panel menu.
- Klik kotak Pilih dari, lalu pilih organisasi Anda.
- Klik tab Semua. ID organisasi ditampilkan di samping nama organisasi.
gcloud CLI
Anda dapat mengambil ID organisasi Google Cloud dengan perintah berikut:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Library klien dan referensi API
SearchAllIamPolicies
:
Cara membuat kueri
Lihat Sintaksis kueri untuk mempelajari bahasa kueri lebih lanjut.
Baca artikel Menelusuri contoh kebijakan IAM memungkinkan untuk mempelajari lebih lanjut contoh kueri untuk berbagai kasus penggunaan yang sebenarnya.
Mengkueri IAM mengizinkan kebijakan dengan informasi binding
Untuk menelusuri kebijakan izin di IAM, ekspresi kueri memiliki format berikut:
policy:QUERY
Anda juga dapat menelusuri jenis atau peran utama secara eksklusif dengan format berikut:
Pencocokan persis:
memberTypes=QUERY
roles=QUERY
Kecocokan parsial:
memberTypes:QUERY
roles:QUERY
Akun utama
IAM mengizinkan binding kebijakan mendukung lima jenis akun utama:
Akun Google, seperti
user:user@gmail.com
Grup Google, seperti
group:devs@googlegroups.com
Domain Cloud Identity dan G Suite, seperti
domain:google.com
Akun layanan, seperti
serviceAccount:my-other-app@appspot.gserviceaccount.com
ID khusus, seperti
allUsers
danallAuthenticatedUsers
Anda dapat membatasi kueri untuk mengizinkan kebijakan yang terkait dengan pengguna tertentu menggunakan sintaksis berikut:
policy:"user:amy@mycompany.com"
Perhatikan bahwa Anda harus mengutip user:amy@mycompany.com
dengan tanda kutip ganda, karena
berisi karakter khusus :
. Anda dapat menghapus awalan user:
atau group:
dalam string kueri jika nilai kuerinya cukup unik atau jika Anda ingin menelusuri alamat email, terlepas dari jenis utamanya. Misalnya, kueri berikut
mungkin hanya cocok dengan pengguna:
policy:amy@mycompany.com
Anda juga dapat membatasi kueri untuk kebijakan yang terkait dengan jenis utama tertentu menggunakan sintaksis berikut:
policy:user
memberTypes:user
memberTypes=user
policy:user
mungkin cocok dengan jenis utama yang berbeda. Contoh: group:test-user@mycompany.com
. Gunakan memberTypes
untuk membatasi penelusuran ke jenis utama tertentu.
Contoh: Kueri menurut akun utama
Temukan semua binding kebijakan yang mengizinkan IAM yang menentukan
Amy
pengguna:policy:amy
Temukan semua binding kebijakan yang mengizinkan IAM yang menentukan domain
mydomain.com
:policy:mydomain.com
Temukan semua binding kebijakan yang mengizinkan IAM yang menentukan
Amy
danJohn
pengguna:policy:(amy john)
Temukan semua binding kebijakan yang mengizinkan IAM yang menentukan
Amy
atauJohn
pengguna:policy:(amy OR john)
Temukan semua binding kebijakan yang mengizinkan IAM di organisasi Anda yang berisi
amy@mycompany.com
:policy:amy@mycompany.com
Temukan semua binding kebijakan yang mengizinkan IAM di organisasi Anda yang berisi domain
mycompany.com
:policy:"domain:mycompany.com"
Temukan semua binding kebijakan yang mengizinkan IAM yang menetapkan peran ke akun layanan
mycompany.gserviceaccount.com
:policy:"serviceAccount:mycompany.gserviceaccount.com"
Temukan semua binding kebijakan yang mengizinkan IAM yang menetapkan peran ke grup
admins
:policy:"group:admins"
Menemukan semua binding kebijakan yang mengizinkan IAM yang menetapkan peran ke semua pengguna:
memberTypes:allUsers
Temukan semua IAM mengizinkan binding kebijakan yang menetapkan peran ke semua pengguna terautentikasi:
memberTypes:allAuthenticatedUsers
Temukan semua binding kebijakan yang mengizinkan IAM yang menetapkan peran ke
amy@mycompany.com
atau ke domainmycompany.com
:policy:(amy@mycompany.com OR "domain:mycompany.com")
Peran
IAM mengizinkan binding kebijakan mendukung berbagai jenis peran.
Semua nama peran IAM diawali dengan awalan roles/
.
Peran dasar: Ada tiga peran yang ada sebelum pengenalan IAM: Pemilik (
roles/owner
), Editor (roles/editor
), dan Viewer (roles/viewer
).Peran yang telah ditetapkan: IAM menyediakan peran tambahan yang telah ditetapkan yang memberi akses terperinci ke berbagai resource. Lihat semua peran standar.
Peran khusus: Peran IAM yang ditentukan pengguna yang berisi daftar izin yang diseleksi.
Anda dapat membatasi kueri untuk mengizinkan kebijakan terkait peran tertentu menggunakan sintaksis berikut:
policy:roles/role-name
roles:roles/role-name
roles=roles/role-name
Perhatikan bahwa Anda dapat menghilangkan imbuhan roles/
dalam string kueri jika nilai kuerinya cukup unik. Misalnya, kueri berikut mungkin hanya cocok dengan peran roles/cloudasset.owner
:
policy:cloudasset.owner
roles:cloudasset.owner
Ada kemungkinan policy:cloudasset.owner
cocok dengan peran lain. Misalnya, saat peran diberikan ke user:cloudasset.owner@mycompany.com
akun utama. Gunakan roles
untuk membatasi penelusuran berdasarkan peran.
Contoh: Kueri berdasarkan peran
Menemukan semua binding kebijakan yang mengizinkan IAM yang menentukan peran
owner
.policy:roles/owner roles:roles/owner roles=roles/owner
Temukan semua binding kebijakan yang mengizinkan IAM yang menetapkan
amy@mycompany.com
peran pemilik:policy:(roles/owner amy@mycompany.com)
Temukan semua IAM mengizinkan binding kebijakan yang menetapkan peran
compute.admin
ke akun utama yang alamat emailnya berisi katajohn
:policy:(roles/compute.admin john)
Menemukan semua binding kebijakan yang mengizinkan IAM yang memberikan peran
viewer
kepada pengguna yang memiliki "swe" atau "sde" sebagai awalan.policy:(roles/viewer (swe* OR sde*))
Kondisi IAM
IAM mengizinkan binding kebijakan dapat berisi objek condition
, yang
memungkinkan Anda menentukan dan menerapkan kontrol akses berbasis atribut bersyarat untuk
resource Google Cloud. Lihat Ringkasan Kondisi IAM untuk mengetahui informasi selengkapnya.
Anda dapat membatasi kueri untuk mengizinkan kebijakan terkait kondisi tertentu menggunakan sintaksis berikut:
policy:condition_information
Contoh: Kueri menurut kondisi
Temukan semua binding kebijakan yang mengizinkan IAM yang menentukan kondisi, dengan judul/deskripsi yang berisi kata "myCondition":
policy:myCondition
Menemukan semua binding kebijakan yang mengizinkan IAM yang menentukan kondisi, yang ekspresinya berisi atribut "request.time":
policy:"request.time"
Mengkueri kebijakan izinkan IAM dengan izin yang disertakan
Peran dalam kebijakan izinkan dapat mencakup daftar izin. Lihat referensi izin IAM untuk mengetahui detail selengkapnya. Anda dapat membatasi kueri untuk mengizinkan kebijakan yang berisi izin tertentu. Ekspresi kueri memiliki format berikut:
- Pencocokan persis:
policy.role.permissions=QUERY
- Kecocokan sebagian:
policy.role.permissions:QUERY
Contoh: Kueri menurut izin
Temukan semua binding kebijakan yang mengizinkan IAM yang berisi izin
compute.instances.create
:policy.role.permissions:compute.instances.create policy.role.permissions=compute.instances.create
Temukan semua binding kebijakan yang mengizinkan IAM yang berisi izin terkait
compute.instances
:policy.role.permissions:compute.instances
Temukan semua binding kebijakan yang mengizinkan IAM yang berisi izin
cloudasset.assets.export...
(misalnya,cloudasset.assets.exportAssets
dancloudasset.assets.exportIamPolicyAnalysis
):policy.role.permissions:cloudasset.assets.export*
Temukan semua binding kebijakan yang mengizinkan IAM yang memberikan izin kepada seseorang untuk mengubah kebijakan yang mengizinkan IAM:
policy.role.permissions:setIamPolicy
Temukan semua binding kebijakan yang mengizinkan IAM dengan peran yang berisi izin
compute.instances.create
dancompute.disks.create
:policy.role.permissions:(compute.instances.create compute.disks.create)
Temukan semua binding kebijakan yang mengizinkan IAM yang berisi izin
compute.instances.create
dan menentukanamy
pengguna:policy.role.permissions:compute.instances.create policy:amy policy.role.permissions=compute.instances.create policy:amy
Mengkueri kebijakan izin berdasarkan resource terkait
Saat melakukan penelusuran, Anda dapat menentukan nama resource lengkap agar hanya menelusuri kebijakan izinkan yang langsung ditetapkan pada resource. Anda juga dapat menentukan project, folder, atau organisasi untuk hanya menelusuri kebijakan izinkan yang ditetapkan pada resource yang berada di project/folder/organisasi yang ditentukan. Ekspresi kueri memiliki format berikut:
Pencocokan persis:
resource=QUERY
project=QUERY
folders=QUERY
organization=QUERY
Kecocokan parsial:
resource:QUERY
project:QUERY
folders:QUERY
organization:QUERY
Contoh: Kueri berdasarkan resource terkait
Menemukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan langsung pada resource yang nama resource lengkapnya sama persis dengan
//cloudresourcemanager.googleapis.com/projects/myproject
:resource=//cloudresourcemanager.googleapis.com/projects/myproject
Menemukan semua binding kebijakan yang diizinkan IAM yang ditetapkan langsung di resource dengan nama resource lengkap yang berisi kata
myproject
:resource:myproject
Menemukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan langsung pada resource yang nama resource lengkapnya berisi kata dengan awalan
myproj
tertentu:resource:myproj*
Temukan semua binding kebijakan yang diizinkan IAM yang ditetapkan langsung di resource dari jenis layanan tertentu:
resource:cloudresourcemanager
Temukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan di
myproject
ataumyfolder
:resource:(myproject OR myfolder)
Temukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan pada resource
cloudresourcemanager
dan tetapkan peran pemilik kepada penggunagmail.com
:resource:cloudresourcemanager policy:(roles/owner gmail.com)
Temukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan pada resource yang
project
memiliki angka123
:project:123
Temukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan pada resource yang ada di
folder
dengan angka123
:folders:123
Temukan semua binding kebijakan yang mengizinkan IAM yang ditetapkan pada resource yang
organization
memiliki angka123
:organization:123
Mengkueri kebijakan izin dengan teks bebas
Anda juga dapat menggunakan kueri teks bebas tanpa menentukan bidang. Respons akan menampilkan kebijakan izinkan selama ada kolom yang dapat ditelusuri (misalnya, izinkan kolom binding kebijakan atau kolom resource) yang cocok dengan kueri.
Contoh: Kueri dengan teks bebas
Temukan semua IAM mengizinkan binding kebijakan di
scope
yang kolom metadatanya (misalnya, mengizinkan binding kebijakan atau kolom resource) berisiImportant
sebagai kata:Important
Temukan semua binding kebijakan yang diizinkan IAM di
scope
yang kolom metadatanya (misalnya, mengizinkan binding kebijakan atau kolom resource) berisiimport
sebagai awalan dari kata apa pun:import*