Aset adalah Google Cloud resource organisasi, seperti instance Compute Engine atau bucket Cloud Storage.
Panduan ini menunjukkan cara menggunakan library klien Security Command Center untuk mengakses catatan yang tidak digunakan lagi yang dikelola Security Command Center untuk aset dalam project atau organisasi.
Security Command Center menyimpan catatan hanya untuk sebagian kecil aset di Cloud Asset Inventory. Untuk mendapatkan daftar aset yang paling lengkap di lingkungan Anda, gunakan Inventaris Aset Cloud untuk mencantumkan aset.
Untuk informasi selengkapnya, lihat referensi berikut:
Tingkat pemberian untuk peran IAM
Peran IAM untuk Security Command Center dapat diberikan di tingkat organisasi, folder, atau project. Kemampuan Anda untuk melihat, mengedit, membuat, atau memperbarui temuan, aset, dan sumber keamanan bergantung pada tingkat akses yang diberikan kepada Anda. Untuk mempelajari lebih lanjut peran Security Command Center, lihat Kontrol akses.
Sebelum memulai
Sebelum menyiapkan sumber, Anda harus menyelesaikan langkah-langkah berikut:
Ukuran Halaman
Semua API daftar Security Command Center dipaginasi. Setiap respons menampilkan halaman hasil dan token untuk menampilkan halaman berikutnya. Ukuran halaman dapat dikonfigurasi. pageSize default adalah 10, dapat disetel ke minimum 1, dan maksimum 1000.
Jenis resource
Atribut resourceType
di Security Command Center menggunakan konvensi penamaan yang berbeda dengan Inventaris Aset Cloud. Untuk
daftar format jenis resource, lihat Jenis aset yang didukung di
Security Command Center.
Mencantumkan semua aset
Contoh berikut menunjukkan cara mencantumkan semua aset:
gcloud
Untuk mencantumkan semua aset dalam project, folder, atau organisasi, jalankan perintah berikut:
gcloud scc assets list PARENT_ID
Ganti PARENT_ID
dengan salah satu nilai berikut:
- ID organisasi dalam format berikut:
ORGANIZATION_ID
(hanya ID numerik) - ID folder dalam format berikut:
folders/FOLDER_ID
- Project ID dalam format berikut:
projects/PROJECT_ID
Untuk contoh lainnya, jalankan:
gcloud scc assets list --help
Untuk contoh dalam dokumentasi, lihat gcloud scc assets list.
Python
Java
Go
Node.js
Output untuk setiap aset adalah objek JSON yang menyerupai berikut:
asset:
createTime: '2020-10-05T17:55:14.823Z'
iamPolicy:
policyBlob: '{"bindings":[{"role":"roles/owner","members":["serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com","user:USER_EMAIL@gmail.com"]}]}'
name: organizations/ORGANIZATION_ID/assets/ASSET_ID
resourceProperties:
createTime: '2020-10-05T17:36:17.915Z'
lifecycleState: ACTIVE
name: PROJECT_ID
parent: '{"id":"ORGANIZATION_ID","type":"organization"}'
projectId: PROJECT_ID
projectNumber: 'PROJECT_NUMBER'
securityCenterProperties:
resourceDisplayName: PROJECT_ID
resourceName: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER
resourceOwners:
- serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
- user:USER_EMAIL@gmail.com
resourceParent: //cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID
resourceParentDisplayName: ORGANIZATION_NAME
resourceProject: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER
resourceProjectDisplayName: PROJECT_ID
resourceType: google.cloud.resourcemanager.Project
securityMarks:
name: organizations/ORGANIZATION_ID/assets/ASSET_ID/securityMarks
updateTime: '2020-10-05T17:55:14.823Z'
Memfilter aset
Project, folder, atau organisasi mungkin memiliki banyak aset. Contoh sebelumnya tidak menggunakan filter apa pun, sehingga semua aset ditampilkan. Security Command Center memungkinkan Anda menggunakan filter aset untuk mendapatkan informasi tentang aset tertentu. Filter seperti klausa "where" dalam pernyataan SQL, tetapi bukan kolom, filter diterapkan ke objek yang ditampilkan oleh API.
Output sampel dalam contoh sebelumnya menunjukkan beberapa kolom dan sub-kolom, serta propertinya, yang dapat digunakan dalam filter aset. Security Command Center mendukung array dan objek JSON lengkap sebagai jenis properti potensial. Anda dapat memfilter berdasarkan:
- Elemen array
- Objek JSON lengkap dengan kecocokan string parsial dalam objek
- Sub-bidang objek JSON
Sub-kolom harus berupa angka, string, atau boolean dan ekspresi filter harus menggunakan operator perbandingan berikut:
- String:
- Kesetaraan penuh
=
- Pencocokan string parsial
:
- Kesetaraan penuh
- Angka:
- Ketidaksetaraan
<
,>
,<=
,>=
- Kesetaraan
=
- Ketidaksetaraan
- Boolean:
- Kesetaraan
=
- Kesetaraan
Contoh berikut memfilter aset:
gcloud
Gunakan perintah berikut untuk memfilter aset:
gcloud scc assets list PARENT_ID --filter="FILTER"
Ganti kode berikut:
FILTER
dengan filter yang perlu Anda gunakan. Misalnya, filter berikut hanya menampilkan resource project:--filter="security_center_properties.resource_type=\"google.cloud.resourcemanager.Project\""
PARENT_ID
dengan salah satu nilai berikut:- ID organisasi dalam format berikut:
ORGANIZATION_ID
(hanya ID numerik) - ID folder dalam format berikut:
folders/FOLDER_ID
- Project ID dalam format berikut:
projects/PROJECT_ID
- ID organisasi dalam format berikut:
Untuk contoh lainnya, jalankan:
gcloud scc assets list --help
Untuk contoh dalam dokumentasi, lihat gcloud scc assets list.
Python
Java
Go
Node.js
Daftar pada waktu tertentu
Contoh sebelumnya menunjukkan cara membuat daftar kumpulan aset saat ini. Security Command Center juga memungkinkan Anda melihat snapshot historis aset. Contoh berikut menampilkan status semua aset pada titik waktu tertentu. Security Command Center mendukung resolusi waktu milidetik.
gcloud
Gunakan perintah berikut untuk mencantumkan aset pada waktu tertentu:
gcloud scc assets list PARENT_ID --read-time="READ_TIME"
Ganti kode berikut:
READ_TIME
dengan waktu pencantuman aset. Gunakan format berikut:YYYY-MM-DDThh:mm:ss.ffffffZ
. Contoh:--read-time="2022-12-21T07:00:06.861Z"
PARENT_ID
dengan salah satu nilai berikut:- ID organisasi dalam format berikut:
ORGANIZATION_ID
(hanya ID numerik) - Project ID dalam format berikut:
projects/PROJECT_ID
- ID folder dalam format berikut:
folders/FOLDER_ID
- ID organisasi dalam format berikut:
Untuk contoh lainnya, jalankan:
gcloud scc assets list --help
Untuk contoh dalam dokumentasi, lihat gcloud scc assets list.
Python
Java
Go
Node.js
Mencantumkan aset dengan perubahan status
Security Command Center memungkinkan Anda membandingkan aset pada dua titik waktu untuk mengidentifikasi apakah aset tersebut ditambahkan, dihapus, atau ada selama jangka waktu yang ditentukan. Contoh
berikut membandingkan project yang ada di READ_TIME
dengan
titik waktu sebelumnya yang ditentukan oleh COMPARE_DURATION
. COMPARE_DURATION
diberikan dalam
detik.
Jika COMPARE_DURATION
disetel, atribut stateChange
pada hasil aset daftar akan diperbarui dengan salah satu nilai berikut:
ADDED
: aset tidak ada di awalcompareDuration
, tetapi ada direadTime
.REMOVED
: aset ada di awalcompareDuration
, tetapi tidak ada direadTime
.ACTIVE
: aset ada di awal dan akhir jangka waktu yang ditentukan olehcompareDuration
danreadTime
.
gcloud
Gunakan perintah berikut untuk membandingkan status aset pada dua titik waktu:
gcloud scc assets list PARENT_ID \ --filter="FILTER" \ --read-time=READ_TIME \ --compare-duration=COMPARE_DURATION
Ganti kode berikut:
COMPARE_DURATION
dengan jumlah detik yang menentukan titik waktu sebelum waktu yang ditentukan pada flag--read-time
. Contoh:--compare-duration=84600s
FILTER
dengan filter yang perlu Anda gunakan. Misalnya, filter berikut hanya menampilkan resource project:--filter="security_center_properties.resource_type=\"google.cloud.resourcemanager.Project\""
PARENT_ID
dengan salah satu nilai berikut:- ID organisasi dalam format berikut:
ORGANIZATION_ID
(hanya ID numerik) - Project ID dalam format berikut:
projects/PROJECT_ID
- ID folder dalam format berikut:
folders/FOLDER_ID
- ID organisasi dalam format berikut:
READ_TIME
dengan waktu pencantuman aset. Gunakan format berikut:YYYY-MM-DDThh:mm:ss.ffffffZ
. Contoh: Untuk contoh lainnya, jalankan:--read-time="2022-12-21T07:00:06.861Z"
gcloud scc assets list --help
Untuk contoh dalam dokumentasi, lihat gcloud scc assets list.
Python
Java
Go
Node.js
Contoh filter
Berikut beberapa filter aset berguna lainnya. Anda dapat menggunakan AND
dan OR
dalam
filter untuk menggabungkan parameter dan memperluas atau mempertajam hasil.
Menemukan Aset Project dengan pemilik tertentu
"security_center_properties.resource_type = \"google.cloud.resourcemanager.Project\" AND security_center_properties.resource_owners : \"$USER\""
$USER
biasanya dalam format user:someone@domain.com
. Perbandingan
untuk user
menggunakan operator substring :
dan kecocokan yang sama persis tidak diperlukan.
Aturan firewall yang memiliki Port HTTP terbuka
"security_center_properties.resource_type = \"google.compute.Firewall\" AND resource_properties.name =\"default-allow-http\""
Resource yang termasuk dalam project tertentu
"security_center_properties.resource_parent = \"$PROJECT_1_NAME\" OR security_center_properties.resource_parent = \"$PROJECT_2_NAME\""
$PROJECT_1_NAME
dan $PROJECT_2_NAME
adalah ID resource dalam bentuk
//cloudresourcemanager.googleapis.com/projects/$PROJECT_ID
, dengan
$PROJECT_ID
adalah nomor project. Contoh lengkapnya adalah sebagai
berikut: //cloudresourcemanager.googleapis.com/projects/100090906
Menemukan image Compute Engine yang namanya berisi string tertentu
Filter ini menampilkan image Compute Engine yang berisi substring "Debia":
"security_center_properties.resource_type = \"google.compute.Image\" AND resource_properties.name : \"Debia\""
Resource yang propertinya berisi key-value pair
Filter ini menampilkan bucket Cloud Storage tempat bucketPolicyOnly
dinonaktifkan. Nilai resourceProperties.iamConfiguration
dienkode sebagai
string. Anda menggunakan karakter \
untuk meng-escape karakter khusus dalam string,
termasuk operator :
antara nama kunci dan nilai.
"resourceProperties.iamConfiguration:"\"bucketPolicyOnly\"\:{\"enabled\"\:false""
Menemukan Aset Project yang dibuat pada atau sebelum waktu tertentu
Contoh filter ini cocok dengan aset yang dibuat pada atau sebelum 18 Juli 2019 pukul 20.26.21 GMT. Dengan filter create_time
, Anda dapat menyatakan waktu menggunakan format dan jenis berikut:
Waktu Unix (dalam milidetik) sebagai literal bilangan bulat
"create_time <= 1563481581000"
RFC 3339 sebagai literal string
"create_time <= \"2019-07-18T20:26:21+00:00\""
Mengecualikan aset dari hasil
Untuk mengecualikan aset dari hasil, gunakan negasi dengan menempatkan karakter -
di depan parameter. Operasi ini mirip dengan penggunaan operator NOT dalam pernyataan SQL.
Filter ini menampilkan semua resource project kecuali Debia
:
"security_center_properties.resource_type = \"google.cloud.resourcemanager.Project\" AND -resource_properties.projectId = \"Debia\""
Langkah berikutnya
Pelajari lebih lanjut cara mengakses Security Command Center menggunakan library klien.