Ringkasan modul kustom untuk Security Health Analytics

Halaman ini memberikan ringkasan tentang modul kustom Security Health Analytics. Untuk mengetahui informasi tentang modul bawaan, lihat Detektor bawaan Security Health Analytics.

Dengan modul kustom, Anda dapat memperluas kemampuan deteksi Security Health Analytics dengan membuat pendeteksi kustom yang memindai resource dan kebijakan Google Cloud yang Anda tentukan menggunakan aturan yang Anda tentukan untuk memeriksa kerentanan, kesalahan konfigurasi, atau pelanggaran kepatuhan.

Konfigurasi atau definisi modul kustom, baik Anda membuatnya di konsol Google Cloud atau membuat kodenya sendiri, menentukan resource yang diperiksa pendeteksi, properti yang dievaluasi pendeteksi, dan informasi yang ditampilkan pendeteksi saat kerentanan atau konfigurasi salah terdeteksi.

Anda dapat membuat modul kustom untuk resource atau aset apa pun yang didukung Security Command Center.

Jika Anda sendiri yang membuat kode definisi modul kustom, Anda akan menggunakan ekspresi YAML dan Common Expression Language (CEL). Jika Anda menggunakan konsol Google Cloud untuk membuat modul kustom, sebagian besar coding akan dilakukan untuk Anda, meskipun Anda perlu membuat kode ekspresi CEL.

Untuk contoh definisi modul kustom dalam file YAML, lihat Contoh definisi modul kustom.

Modul kustom berjalan bersama dengan detektor bawaan Security Health Analytics dalam pemindaian real-time dan batch. Dalam mode real-time, pemindaian dipicu setiap kali konfigurasi aset berubah. Pemindaian mode batch dijalankan dengan semua detektor untuk organisasi atau project yang terdaftar sekali sehari.

Selama pemindaian, setiap detektor kustom diterapkan ke semua aset yang cocok di setiap organisasi, folder, atau project tempat detektor diaktifkan.

Temuan dari detektor kustom ditulis ke Security Command Center.

Untuk informasi selengkapnya, lihat referensi berikut:

Membandingkan pendeteksi bawaan dan modul kustom

Anda dapat mendeteksi hal-hal dengan modul kustom yang tidak dapat dideteksi dengan detektor Security Health Analytics bawaan; namun, detektor bawaan mendukung fitur Security Command Center tertentu yang tidak didukung oleh modul kustom.

Dukungan fitur

Modul kustom Security Health Analytics tidak didukung oleh simulasi jalur serangan, sehingga temuan yang dihasilkan oleh modul kustom tidak mendapatkan skor eksposur serangan atau jalur serangan.

Membandingkan logika deteksi

Sebagai contoh beberapa hal yang dapat Anda lakukan dengan modul kustom, bandingkan apa yang diperiksa oleh pendeteksi bawaan PUBLIC_SQL_INSTANCE dengan apa yang dapat Anda lakukan dengan modul kustom.

Detektor bawaan PUBLIC_SQL_INSTANCE memeriksa apakah properti authorizedNetworks instance Cloud SQL ditetapkan ke 0.0.0.0/0. Jika demikian, detektor akan mengeluarkan temuan yang menyatakan bahwa instance Cloud SQL terbuka untuk publik, karena menerima koneksi dari semua alamat IP.

Dengan modul kustom, Anda dapat menerapkan logika deteksi yang lebih kompleks untuk memeriksa instance Cloud SQL untuk hal-hal seperti:

  • Alamat IP dengan awalan tertentu, menggunakan karakter pengganti.
  • Nilai properti state, yang dapat Anda gunakan untuk mengabaikan instance jika nilai ditetapkan ke MAINTENANCE atau memicu temuan jika nilainya adalah yang lain.
  • Nilai properti region, yang dapat Anda gunakan untuk memicu temuan hanya untuk instance dengan alamat IP publik di region tertentu.

Peran dan izin IAM yang diperlukan

Peran IAM menentukan tindakan yang dapat Anda lakukan dengan modul kustom Security Health Analytics.

Tabel berikut berisi daftar izin modul kustom Security Health Analytics dan peran IAM bawaan yang menyertakannya. Izin ini berlaku hingga setidaknya 22 Januari 2024. Setelah tanggal tersebut, izin yang tercantum dalam tabel kedua berikut akan diperlukan.

Anda dapat menggunakan konsol Google Cloud atau Security Command Center API untuk menerapkan peran ini di tingkat organisasi, folder, atau project.

Izin yang diperlukan sebelum 22 Januari 2024 Peran
securitycenter.securityhealthanalyticscustommodules.create
securitycenter.securityhealthanalyticscustommodules.update
securitycenter.securityhealthanalyticscustommodules.delete
roles/securitycenter.settingsEditor
roles/securitycenter.admin
securitycenter.securityhealthanalyticscustommodules.get
securitycenter.securityhealthanalyticscustommodules.list
roles/securitycenter.settingsViewer
roles/securitycenter.adminViewer
roles/securitycenter.admin
securitycenter.securityhealthanalyticscustommodules.test roles/securitycenter.securityHealthAnalyticsCustomModulesTester
roles/securitycenter.adminViewer
roles/securitycenter.adminEditor
roles/securitycenter.admin

Tabel berikut berisi daftar izin modul kustom Security Health Analytics yang akan diperlukan pada atau setelah 22 Januari 2024, serta peran IAM standar yang menyertakannya.

Anda dapat menggunakan konsol Google Cloud atau Security Command Center API untuk menerapkan peran ini di tingkat organisasi, folder, atau project.

Izin diperlukan pada atau setelah 22 Januari 2024 Peran
securitycentermanagement.securityHealthAnalyticsCustomModules.create
securitycentermanagement.securityHealthAnalyticsCustomModules.update
securitycentermanagement.securityHealthAnalyticsCustomModules.delete
securitycentermanagement.securityHealthAnalyticsCustomModules.list
securitycentermanagement.securityHealthAnalyticsCustomModules.get
securitycentermanagement.effectiveSecurityHealthAnalyticsCustomModules.list
securitycentermanagement.effectiveSecurityHealthAnalyticsCustomModules.get
securitycentermanagement.securityHealthAnalyticsCustomModules.simulate
securitycentermanagement.securityHealthAnalyticsCustomModules.test
roles/securitycentermanagement.shaCustomModulesEditor
roles/securitycenter.settingsEditor
roles/securitycenter.admin
securitycentermanagement.securityHealthAnalyticsCustomModules.list
securitycentermanagement.securityHealthAnalyticsCustomModules.get
securitycentermanagement.effectiveSecurityHealthAnalyticsCustomModules.list
securitycentermanagement.effectiveSecurityHealthAnalyticsCustomModules.get
securitycentermanagement.securityHealthAnalyticsCustomModules.simulate
securitycentermanagement.securityHealthAnalyticsCustomModules.test
roles/securitycentermanagement.shaCustomModulesViewer
roles/securitycenter.settingsViewer
roles/securitycenter.adminViewer
roles/securitycenter.admin

Untuk mengetahui informasi selengkapnya tentang peran dan izin IAM serta cara memberikannya, lihat Memberikan peran IAM menggunakan Konsol Google Cloud.

Kuota modul kustom

Modul kustom Security Health Analytics tunduk pada batas kuota.

Batas kuota default untuk pembuatan modul kustom adalah 100, tetapi Anda dapat meminta penambahan kuota, jika perlu.

Panggilan API ke metode modul kustom juga tunduk pada batas kuota. Tabel berikut menunjukkan batas kuota default untuk panggilan API modul kustom.

Jenis Panggilan API Batas
CustomModules Read Requests (Get, List) 1.000 panggilan API per menit, per organisasi
Permintaan Tulis CustomModules (Buat, Perbarui, Hapus) 60 panggilan API per menit, per organisasi
Permintaan Pengujian CustomModules 12 panggilan API per menit, per organisasi

Untuk peningkatan kuota, kirimkan permintaan di konsol Google Cloud di halaman Kuota.

Untuk mengetahui informasi selengkapnya tentang kuota Security Command Center, lihat Kuota dan batas.

Jenis resource yang didukung

Address
compute.googleapis.com/Address
Alert Policy
monitoring.googleapis.com/AlertPolicy
AlloyDB for PostgreSQL
alloydb.googleapis.com/Backup
alloydb.googleapis.com/Cluster
alloydb.googleapis.com/Instance
Artifact Registry Repository
artifactregistry.googleapis.com/Repository
Autoscaler
compute.googleapis.com/Autoscaler
Backend Bucket
compute.googleapis.com/BackendBucket
Backend Service
compute.googleapis.com/BackendService
BigQuery Data Transfer Service
bigquerydatatransfer.googleapis.com/TransferConfig
BigQuery Table
bigquery.googleapis.com/Table
Bucket
storage.googleapis.com/Bucket
Cloud Data Fusion
datafusion.googleapis.com/Instance
Cloud Function
cloudfunctions.googleapis.com/CloudFunction
Cloud Run
run.googleapis.com/DomainMapping
run.googleapis.com/Execution
run.googleapis.com/Job
run.googleapis.com/Revision
run.googleapis.com/Service
Cluster
container.googleapis.com/Cluster
Cluster Role
rbac.authorization.k8s.io/ClusterRole
Cluster Role Binding
rbac.authorization.k8s.io/ClusterRoleBinding
Commitment
compute.googleapis.com/Commitment
Composer Environment
composer.googleapis.com/Environment
Compute Project
compute.googleapis.com/Project
compute.googleapis.com/SecurityPolicy
CryptoKey
cloudkms.googleapis.com/CryptoKey
CryptoKey Version
cloudkms.googleapis.com/CryptoKeyVersion
Dataflow Job
dataflow.googleapis.com/Job
Dataproc Cluster
dataproc.googleapis.com/Cluster
Dataset
bigquery.googleapis.com/Dataset
Datastream Connection Profile
datastream.googleapis.com/ConnectionProfile
Datastream Private Connection
datastream.googleapis.com/PrivateConnection
Datastream Stream
datastream.googleapis.com/Stream
Disk
compute.googleapis.com/Disk
DNS Policy
dns.googleapis.com/Policy
File Instance
file.googleapis.com/Instance
Firewall
compute.googleapis.com/Firewall
Firewall Policy
compute.googleapis.com/FirewallPolicy
Folder
cloudresourcemanager.googleapis.com/Folder
Forwarding Rule
compute.googleapis.com/ForwardingRule
Global Forwarding Rule
compute.googleapis.com/GlobalForwardingRule
Health Check
compute.googleapis.com/HealthCheck
Hub
gkehub.googleapis.com/Feature
gkehub.googleapis.com/Membership
IAM Role
iam.googleapis.com/Role
Image
compute.googleapis.com/Image
Instance
compute.googleapis.com/Instance
Instance Group
compute.googleapis.com/InstanceGroup
Instance Group Manager
compute.googleapis.com/InstanceGroupManagers
Instance Template
compute.googleapis.com/InstanceTemplate
Interconnect Attachment
compute.googleapis.com/InterconnectAttachment
Keyring
cloudkms.googleapis.com/KeyRing
KMS Import Job
cloudkms.googleapis.com/ImportJob
Kubernetes CronJob
k8s.io/CronJob
Kubernetes DaemonSet
k8s.io/DaemonSet
Kubernetes Deployment
k8s.io/Deployment
Kubernetes Ingress
k8s.io/Ingress
Kubernetes NetworkPolicy
k8s.io/NetworkPolicy
Kubernetes ReplicaSet
k8s.io/ReplicaSet
Kubernetes Service
k8s.io/Service
Kubernetes StatefulSet
k8s.io/StatefulSet
Log Bucket
logging.googleapis.com/LogBucket
Log Metric
logging.googleapis.com/LogMetric
Log Sink
logging.googleapis.com/LogSink
Managed Zone
dns.googleapis.com/ManagedZone
Machine Image
compute.googleapis.com/MachineImage
Namespace
k8s.io/Namespace
Network
compute.googleapis.com/Network
Network Endpoint Group
compute.googleapis.com/NetworkEndpointGroup
Node
k8s.io/Node
Node Group
compute.googleapis.com/NodeGroup
Node Template
compute.googleapis.com/NodeTemplate
Nodepool
container.googleapis.com/NodePool
Organization
cloudresourcemanager.googleapis.com/Organization
Organization Policy Service v2
orgpolicy.googleapis.com/CustomConstraint
orgpolicy.googleapis.com/Policy
Packet Mirroring
compute.googleapis.com/PacketMirroring
Pod
k8s.io/Pod
Private CA Certificate
privateca.googleapis.com/Certificate
Project
cloudresourcemanager.googleapis.com/Project
Pubsub Snapshot
pubsub.googleapis.com/Snapshot
Pubsub Subscription
pubsub.googleapis.com/Subscription
Pubsub Topic
pubsub.googleapis.com/Topic
Region Backend Service
compute.googleapis.com/RegionBackendService
Region Disk
compute.googleapis.com/RegionDisk
Reservation
compute.googleapis.com/Reservation
Resource Policy
compute.googleapis.com/ResourcePolicy
Route
compute.googleapis.com/Route
Router
compute.googleapis.com/Router
Role
rbac.authorization.k8s.io/Role
Role Binding
rbac.authorization.k8s.io/RoleBinding
Secret Manager
secretmanager.googleapis.com/Secret
Secret Version
secretmanager.googleapis.com/SecretVersion
Service Account Key
iam.googleapis.com/ServiceAccountKey
ServiceUsage Service
serviceusage.googleapis.com/Service
Snapshot
compute.googleapis.com/Snapshot
Spanner Database
spanner.googleapis.com/Database
Spanner Instance
spanner.googleapis.com/Instance
SQL Instance
sqladmin.googleapis.com/Instance
SSL Certificate
compute.googleapis.com/SslCertificate
SSL Policy
compute.googleapis.com/SslPolicy
Subnetwork
compute.googleapis.com/Subnetwork
Tag Binding
cloudresourcemanager.googleapis.com/TagBinding
Target HTTP Proxy
compute.googleapis.com/TargetHttpProxy
Target HTTPS Proxy
compute.googleapis.com/TargetHttpsProxy
Target Instance
compute.googleapis.com/TargetInstance
Target Pool
compute.googleapis.com/TargetPool
Target SSL Proxy
compute.googleapis.com/TargetSslProxy
Target VPN Gateway
compute.googleapis.com/TargetVpnGateway
URL Map
compute.googleapis.com/UrlMap
Vertex AI
aiplatform.googleapis.com/BatchPredictionJob
aiplatform.googleapis.com/CustomJob
aiplatform.googleapis.com/Dataset
aiplatform.googleapis.com/Endpoint
aiplatform.googleapis.com/HyperparameterTuningJob
aiplatform.googleapis.com/Model
aiplatform.googleapis.com/SpecialistPool
aiplatform.googleapis.com/TrainingPipeline
VPC Connector
vpcaccess.googleapis.com/Connector
VPN Gateway
compute.googleapis.com/VpnGateway
VPN Tunnel
compute.googleapis.com/VpnTunnel

Langkah selanjutnya