Questa pagina fornisce una panoramica dei moduli personalizzati di Security Health Analytics. Per informazioni sui moduli integrati, vedi Rilevatori integrati di Security Health Analytics.
Con i moduli personalizzati, puoi estendere le capacità di rilevamento di Security Health Analytics creando rilevatori personalizzati che analizzano le risorse e i criteri Google Cloud che specifichi utilizzando regole da te definite per verificare la presenza di vulnerabilità, configurazioni errate o violazioni della conformità.
La configurazione o la definizione di un modulo personalizzato, indipendentemente dal fatto che venga creato nella console Google Cloud o che venga codificato personalmente, determina le risorse controllate dal rilevatore, le proprietà valutate dal rilevatore e le informazioni che il rilevatore restituisce quando viene rilevata una vulnerabilità o una configurazione.
Puoi creare moduli personalizzati per qualsiasi risorsa o asset supportato da Security Command Center.
Se codifichi personalmente le definizioni di moduli personalizzati, usa le espressioni YAML e CEL (Common Expression Language). Se utilizzi la console Google Cloud per creare moduli personalizzati, la maggior parte della programmazione viene eseguita automaticamente, anche se devi codificare le espressioni CEL.
Per un esempio di definizione di modulo personalizzato in un file YAML, consulta Esempio di definizione di modulo personalizzato.
I moduli personalizzati vengono eseguiti insieme ai rilevatori integrati di Security Health Analytics nelle scansioni in tempo reale e batch. In modalità in tempo reale, le analisi vengono attivate ogni volta che la configurazione di un asset viene modificata. Le scansioni in modalità batch vengono eseguite con tutti i rilevatori per le organizzazioni o i progetti registrati una volta al giorno.
Durante una scansione, ogni rilevatore personalizzato viene applicato a tutti gli asset corrispondenti in ogni organizzazione, cartella o progetto per cui è abilitato.
I risultati dei rilevatori personalizzati vengono scritti in Security Command Center.
Per ulteriori informazioni, consulta le seguenti risorse:
- Creazione di moduli personalizzati
- Tipi di analisi di Security Health Analytics
- Tipi di risorse supportate
- YAML
- Introduzione a CEL
Confronto tra rilevatori integrati e moduli personalizzati
Puoi rilevare elementi con moduli personalizzati che non riesci a rilevare con i rilevatori integrati di Security Health Analytics; tuttavia, i rilevatori integrati supportano alcune funzionalità di Security Command Center non supportate dai moduli personalizzati.
Supporto delle funzionalità
I moduli personalizzati di Security Health Analytics non sono supportati dalle simulazioni dei percorsi di attacco, pertanto i risultati prodotti dai moduli personalizzati non ricevono punteggi di esposizione agli attacchi o percorsi di attacco.
Confronto della logica di rilevamento
Come esempio di alcune delle cose che puoi fare con un modulo personalizzato, confronta ciò che controlla il rilevatore integrato PUBLIC_SQL_INSTANCE
con quello che puoi fare con un modulo personalizzato.
Il rilevatore integrato PUBLIC_SQL_INSTANCE
controlla se la proprietà authorizedNetworks
delle istanze Cloud SQL è impostata su 0.0.0.0/0
. In questo caso, il rilevatore genera un risultato che indica che l'istanza Cloud SQL è aperta al pubblico, perché accetta connessioni da tutti gli indirizzi IP.
Con un modulo personalizzato puoi implementare logica di rilevamento più complessa per controllare le istanze Cloud SQL, ad esempio:
- Indirizzi IP con prefissi specifici, utilizzando caratteri jolly.
- Il valore della proprietà
state
, che puoi utilizzare per ignorare le istanze se il valore è impostato suMAINTENANCE
o attivare i risultati se il valore è un altro. - Il valore della proprietà
region
, che puoi utilizzare per attivare i risultati solo per le istanze con indirizzi IP pubblici in regioni specifiche.
Ruoli e autorizzazioni IAM richiesti
I ruoli IAM determinano le azioni che puoi eseguire con i moduli personalizzati di Security Health Analytics.
La seguente tabella contiene un elenco delle autorizzazioni dei moduli personalizzati di Security Health Analytics e i ruoli IAM predefiniti che le includono. Queste autorizzazioni sono valide almeno fino al 22 gennaio 2024. Dopo questa data, saranno necessarie le autorizzazioni elencate nella seconda tabella seguente.
Puoi utilizzare la console Google Cloud o l'API Security Command Center per applicare questi ruoli a livello di organizzazione, cartella o progetto.
Autorizzazioni richieste prima del 22 gennaio 2024 | Ruoli |
---|---|
securitycenter.securityhealthanalyticscustommodules.create |
roles/securitycenter.settingsEditor |
securitycenter.securityhealthanalyticscustommodules.get |
roles/securitycenter.settingsViewer |
securitycenter.securityhealthanalyticscustommodules.test |
roles/securitycenter.securityHealthAnalyticsCustomModulesTester |
La seguente tabella contiene un elenco delle autorizzazioni del modulo personalizzato di Security Health Analytics che saranno necessarie a partire dal 22 gennaio 2024, nonché i ruoli IAM predefiniti che le includono.
Puoi utilizzare la console Google Cloud o l'API Security Command Center per applicare questi ruoli a livello di organizzazione, cartella o progetto.
Autorizzazioni richieste a partire dal 22 gennaio 2024 | Ruoli |
---|---|
securitycentermanagement.securityHealthAnalyticsCustomModules.create
|
roles/securitycentermanagement.shaCustomModulesEditor |
securitycentermanagement.securityHealthAnalyticsCustomModules.list
|
roles/securitycentermanagement.shaCustomModulesViewer
|
Per saperne di più sulle autorizzazioni e i ruoli IAM e su come concederli, vedi Concedere un ruolo IAM utilizzando la console Google Cloud.
Quote per i moduli personalizzati
I moduli personalizzati di Security Health Analytics sono soggetti a limiti di quota.
Il limite di quota predefinito per la creazione di moduli personalizzati è 100, ma puoi richiedere un aumento della quota, se necessario.
Anche le chiamate API a metodi di moduli personalizzati sono soggette a limiti di quota. La tabella seguente mostra i limiti di quota predefiniti per le chiamate API dei moduli personalizzati.
Tipo di chiamata API | Limite |
---|---|
Richieste di lettura CustomModules (Get, List) | 1000 chiamate API al minuto per organizzazione |
Richieste di scrittura CustomModules (Crea, Aggiorna, Elimina) | 60 chiamate API al minuto per organizzazione |
Richieste di test CustomModules | 12 chiamate API al minuto per organizzazione |
Per gli aumenti delle quote, invia una richiesta nella console Google Cloud nella pagina Quote.
Per saperne di più sulle quote di Security Command Center, consulta Quote e limiti.
Tipi di risorse supportati
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
Image
-
compute.googleapis.com/Image
Instance
-
compute.googleapis.com/Instance
Instance Group
-
compute.googleapis.com/InstanceGroup
Instance Group Manager
-
compute.googleapis.com/InstanceGroupManagers
Interconnect Attachment
-
compute.googleapis.com/InterconnectAttachment
Keyring
-
cloudkms.googleapis.com/KeyRing
KMS Import Job
-
cloudkms.googleapis.com/ImportJob
Kubernetes Service
-
k8s.io/Service
Log Bucket
-
logging.googleapis.com/LogBucket
Log Metric
-
logging.googleapis.com/LogMetric
Log Sink
-
logging.googleapis.com/LogSink
Managed Zone
-
dns.googleapis.com/ManagedZone
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
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
Router
-
compute.googleapis.com/Router
Role
-
rbac.authorization.k8s.io/Role
Role Binding
-
rbac.authorization.k8s.io/RoleBinding
Secret Manager
-
secretmanager.googleapis.com/Secret
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
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/DataLabelingJob
-
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
Passaggi successivi
- Per utilizzare i moduli personalizzati, vedi Utilizzo dei moduli personalizzati per Security Health Analytics.
- Per programmare personalmente le definizioni di moduli personalizzati, consulta Codificare i moduli personalizzati per Security Health Analytics.
- Per testare i moduli personalizzati, consulta Testare i moduli personalizzati per Security Health Analytics.