Halaman ini memberikan ringkasan tentang modul kustom Security Health Analytics. Untuk informasi tentang modul bawaan, lihat Detektor bawaan Security Health Analytics.
Dengan modul kustom, Anda dapat memperluas kemampuan deteksi Security Health Analytics dengan membuat detektor kustom yang memindai resource dan kebijakan Google Cloudyang Anda tentukan menggunakan aturan yang Anda tetapkan untuk memeriksa kerentanan, kesalahan konfigurasi, atau pelanggaran kepatuhan.
Konfigurasi atau definisi modul kustom, baik Anda membuatnya di konsolGoogle Cloud atau membuat kodenya sendiri, menentukan resource yang diperiksa detektor, properti yang dievaluasi detektor, dan informasi yang ditampilkan detektor saat kerentanan atau kesalahan konfigurasi terdeteksi.
Anda dapat membuat modul kustom untuk resource atau aset apa pun yang didukung Security Command Center.
Jika Anda membuat kode definisi modul kustom sendiri, Anda menggunakan YAML dan ekspresi Common Expression Language (CEL). Jika Anda menggunakan konsolGoogle Cloud untuk membuat modul kustom, sebagian besar pengodean dilakukan untuk Anda, meskipun Anda perlu mengodekan ekspresi CEL.
Untuk contoh definisi modul kustom dalam file YAML, lihat Contoh definisi modul kustom.
Modul kustom berjalan bersama 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 yang mengaktifkannya.
Temuan dari detektor kustom ditulis ke Security Command Center.
Untuk informasi selengkapnya, lihat referensi berikut:
- Membuat modul kustom
- Jenis pemindaian Security Health Analytics
- Jenis resource yang didukung
- YAML
- Pengantar CEL
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 detektor 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 disetel ke 0.0.0.0/0.
Jika ya, detektor akan membuat 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 terkait hal-hal seperti:
- Alamat IP dengan awalan tertentu, menggunakan karakter pengganti.
- Nilai properti
state, yang dapat Anda gunakan untuk mengabaikan instance jika nilainya ditetapkan keMAINTENANCEatau memicu temuan jika nilainya adalah sesuatu yang lain. - Nilai properti
region, yang dapat Anda gunakan untuk memicu temuan hanya untuk instance dengan alamat IP publik di wilayah 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 yang diperlukan serta peran IAM bawaan 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 | Peran |
|---|---|
securitycentermanagement.securityHealthAnalyticsCustomModules.create
|
roles/securitycentermanagement.shaCustomModulesEditor |
securitycentermanagement.securityHealthAnalyticsCustomModules.list
|
roles/securitycentermanagement.shaCustomModulesViewer
|
Untuk mengetahui informasi selengkapnya tentang izin dan peran IAM serta cara memberikannya, lihat Memberikan peran IAM dengan menggunakan Google Cloud konsol.
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 |
|---|---|
| Permintaan Baca CustomModules (Get, List) | 1.000 panggilan API per menit, per organisasi |
| Permintaan Penulisan CustomModules (Buat, Perbarui, Hapus) | 60 panggilan API per menit, per organisasi |
| Permintaan Pengujian CustomModules | 12 panggilan API per menit, per organisasi |
Untuk penambahan kuota, kirimkan permintaan di konsol pada halaman Google Cloud Kuota.
Untuk mengetahui informasi selengkapnya tentang kuota Security Command Center, lihat Kuota dan batas.
Jenis resource yang didukung
Access Context Manager-
accesscontextmanager.googleapis.com/AccessLevel -
accesscontextmanager.googleapis.com/AccessPolicy -
accesscontextmanager.googleapis.com/ServicePerimeter Address-
compute.googleapis.com/Address Alert Policymonitoring.googleapis.com/AlertPolicyAlloyDB for PostgreSQL-
alloydb.googleapis.com/Backup -
alloydb.googleapis.com/Cluster -
alloydb.googleapis.com/Instance Api Keys-
apikeys.googleapis.com/Key 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 Modelbigquery.googleapis.com/ModelBigQuery Tablebigquery.googleapis.com/TableBucket-
storage.googleapis.com/Bucket Cloud Billing Project Billing Info-
cloudbilling.googleapis.com/ProjectBillingInfo 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 Autoscaling Policy-
dataproc.googleapis.com/AutoscalingPolicy Dataproc Batch-
dataproc.googleapis.com/Batch Dataproc Cluster-
dataproc.googleapis.com/Cluster Dataproc Job-
dataproc.googleapis.com/Job Dataset-
bigquery.googleapis.com/Dataset Datastream Connection Profiledatastream.googleapis.com/ConnectionProfileDatastream Private Connectiondatastream.googleapis.com/PrivateConnectionDatastream Streamdatastream.googleapis.com/StreamDialogflow CX-
dialogflow.googleapis.com/Agent Disk-
compute.googleapis.com/Disk DLP Deidentify Template-
dlp.googleapis.com/DeidentifyTemplate DLP Inspect Template-
dlp.googleapis.com/InspectTemplate DLP Job-
dlp.googleapis.com/DlpJob DLP Job Trigger-
dlp.googleapis.com/JobTrigger DLP Stored Info Type-
dlp.googleapis.com/StoredInfoType 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 Monitoring Notification Channel-
monitoring.googleapis.com/NotificationChannel Namespace-
k8s.io/Namespace NetApp Snapshot-
netapp.googleapis.com/Snapshot NetApp Volume-
netapp.googleapis.com/Volume 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 Nodepoolcontainer.googleapis.com/NodePoolOrganization-
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 Private CA Certificate Revocation List-
privateca.googleapis.com/CertificateRevocationList Project-
cloudresourcemanager.googleapis.com/Project Pubsub Snapshot-
pubsub.googleapis.com/Snapshot Pubsub Subscription-
pubsub.googleapis.com/Subscription Pubsub Topic-
pubsub.googleapis.com/Topic Redis Cluster-
redis.googleapis.com/Cluster Redis Instance-
redis.googleapis.com/Instance 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 Backup-
spanner.googleapis.com/Backup Spanner Database-
spanner.googleapis.com/Database Spanner Instance-
spanner.googleapis.com/Instance SQL Backup Run-
sqladmin.googleapis.com/BackupRun 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/Featurestore -
aiplatform.googleapis.com/HyperparameterTuningJob -
aiplatform.googleapis.com/Index -
aiplatform.googleapis.com/MetadataStore -
aiplatform.googleapis.com/Model -
aiplatform.googleapis.com/SpecialistPool -
aiplatform.googleapis.com/Tensorboard -
aiplatform.googleapis.com/TrainingPipeline -
aiplatform.googleapis.com/NotebookRuntimeTemplate Vertex AI Workbench-
notebooks.googleapis.com/Instance VMware Engine-
vmwareengine.googleapis.com/Cluster -
vmwareengine.googleapis.com/ExternalAccessRule -
vmwareengine.googleapis.com/ExternalAddress -
vmwareengine.googleapis.com/VmwareEngineNetwork -
vmwareengine.googleapis.com/NetworkPeering -
vmwareengine.googleapis.com/NetworkPolicy -
vmwareengine.googleapis.com/PrivateCloud -
vmwareengine.googleapis.com/PrivateConnection VPC Connector-
vpcaccess.googleapis.com/Connector VPN Gateway-
compute.googleapis.com/VpnGateway VPN Tunnel-
compute.googleapis.com/VpnTunnel Workstations-
workstations.googleapis.com/Workstation -
workstations.googleapis.com/WorkstationConfig
Langkah berikutnya
- Untuk menggunakan modul kustom, lihat Menggunakan modul kustom untuk Security Health Analytics.
- Untuk membuat kode definisi modul kustom sendiri, lihat Membuat kode modul kustom untuk Security Health Analytics.
- Untuk menguji modul kustom, lihat Menguji modul kustom untuk Security Health Analytics.