Panoramica dei moduli personalizzati per Security Health Analytics

Questa pagina fornisce una panoramica dei moduli personalizzati di Security Health Analytics. Per informazioni sui moduli integrati, consulta Rilevatori integrati di Security Health Analytics.

Con i moduli personalizzati, puoi estendere le funzionalità di rilevamento di Security Health Analytics creando rilevatori personalizzati che eseguono la scansione delle risorse e delle policy che specifichi utilizzando regole che definisci per verificare la presenza di vulnerabilità, configurazioni errate o violazioni della conformità. Google Cloud

La configurazione o la definizione di un modulo personalizzato, che tu lo crei nella consoleGoogle Cloud o lo codifichi autonomamente, determina le risorse che il rilevatore controlla, le proprietà che valuta e le informazioni che restituisce quando viene rilevata una vulnerabilità o una configurazione errata.

Puoi creare moduli personalizzati per qualsiasi risorsa o asset supportato da Security Command Center.

Se codifichi autonomamente le definizioni dei moduli personalizzati, utilizzi YAML e le espressioni Common Expression Language (CEL). Se utilizzi la consoleGoogle Cloud per creare i tuoi moduli personalizzati, la maggior parte della codifica viene eseguita automaticamente, anche se devi codificare le espressioni CEL.

Per un esempio di definizione di modulo personalizzato in un file YAML, vedi 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 scansioni vengono attivate ogni volta che la configurazione di un asset cambia. Le scansioni in modalità batch vengono eseguite una volta al giorno con tutti i rilevatori per le organizzazioni o i progetti registrati.

Durante una scansione, ogni rilevatore personalizzato viene applicato a tutte le risorse 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:

Confronto tra rilevatori integrati e moduli personalizzati

I moduli personalizzati offrono funzionalità di rilevamento più ampie rispetto ai rilevatori integrati di Security Health Analytics. Tuttavia, i moduli personalizzati non supportano alcune funzionalità di Security Command Center fornite dai rilevatori integrati.

Funzionalità supportate

I moduli personalizzati di Security Health Analytics non sono supportati dalle simulazioni del percorso di attacco. I risultati prodotti dai moduli personalizzati non includono punteggi di esposizione agli attacchi o percorsi di attacco.

Confronto della logica di rilevamento

Per farti un'idea di cosa puoi fare con un modulo personalizzato, confronta i controlli eseguiti dal rilevatore integrato PUBLIC_SQL_INSTANCE con quelli che puoi eseguire con un modulo personalizzato.

Il rilevatore integrato PUBLIC_SQL_INSTANCE verifica 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 una logica di rilevamento più complessa per controllare le istanze Cloud SQL per elementi quali:

  • Indirizzi IP con prefissi specifici, utilizzando caratteri jolly.
  • Il valore della proprietà state, che puoi utilizzare per ignorare le istanze se il valore è impostato su MAINTENANCE o per attivare i risultati se il valore è diverso.
  • 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 tabella seguente contiene un elenco delle autorizzazioni dei moduli personalizzati di Security Health Analytics richieste, 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 obbligatorie Ruoli
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

Per saperne di più sui ruoli e sulle autorizzazioni IAM e su come concederli, consulta Concedi un ruolo IAM utilizzando la console Google Cloud .

Quote dei 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 ai metodi dei moduli personalizzati sono soggette a limiti di quota. La tabella seguente mostra i limiti di quota predefiniti per le chiamate API del modulo personalizzato.

Tipo di chiamata API Limite
CustomModules Read Requests (Get, List) 1000 chiamate API al minuto per organizzazione
CustomModules Write Requests (Create, Update, Delete) 60 chiamate API al minuto per organizzazione
CustomModules Test Requests 12 chiamate API al minuto per organizzazione

Per gli aumenti di quota, 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

Questa sezione riepiloga i tipi di risorse Google Cloud supportati con i moduli personalizzati.

Nome servizio Nome risorsa
Gestore contesto accesso accesscontextmanager.googleapis.com/AccessLevel
accesscontextmanager.googleapis.com/AccessPolicy
accesscontextmanager.googleapis.com/ServicePerimeter
Piattaforma agentica Gemini Enterprise 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/NotebookRuntimeTemplate
aiplatform.googleapis.com/SpecialistPool
aiplatform.googleapis.com/Tensorboard
aiplatform.googleapis.com/TrainingPipeline
AlloyDB alloydb.googleapis.com/Backup
alloydb.googleapis.com/Cluster
alloydb.googleapis.com/Instance
Chiavi API apikeys.googleapis.com/Key
Repository Artifact Registry artifactregistry.googleapis.com/Repository
BigQuery bigquery.googleapis.com/Dataset
bigquery.googleapis.com/Model
bigquery.googleapis.com/Table
bigquerydatatransfer.googleapis.com/TransferConfig
Informazioni di fatturazione del progetto di fatturazione Cloud cloudbilling.googleapis.com/ProjectBillingInfo
Cloud Run Functions cloudfunctions.googleapis.com/CloudFunction
Cloud KMS cloudkms.googleapis.com/CryptoKey
cloudkms.googleapis.com/CryptoKeyVersion
cloudkms.googleapis.com/ImportJob
cloudkms.googleapis.com/KeyRing
Resource Manager cloudresourcemanager.googleapis.com/Folder
cloudresourcemanager.googleapis.com/Organization
cloudresourcemanager.googleapis.com/Project
cloudresourcemanager.googleapis.com/TagBinding
Ambiente Managed Service for Apache Airflow composer.googleapis.com/Environment
Compute Engine compute.googleapis.com/Address
compute.googleapis.com/Autoscaler
compute.googleapis.com/BackendBucket
compute.googleapis.com/BackendService
compute.googleapis.com/Commitment
compute.googleapis.com/Disk
compute.googleapis.com/Firewall
compute.googleapis.com/FirewallPolicy
compute.googleapis.com/ForwardingRule
compute.googleapis.com/GlobalForwardingRule
compute.googleapis.com/HealthCheck
compute.googleapis.com/Image
compute.googleapis.com/Instance
compute.googleapis.com/InstanceGroup
compute.googleapis.com/InstanceGroupManagers
compute.googleapis.com/InstanceTemplate
compute.googleapis.com/InterconnectAttachment
compute.googleapis.com/MachineImage
compute.googleapis.com/Network
compute.googleapis.com/NetworkEndpointGroup
compute.googleapis.com/NodeGroup
compute.googleapis.com/NodeTemplate
compute.googleapis.com/PacketMirroring
compute.googleapis.com/Project
compute.googleapis.com/RegionBackendService
compute.googleapis.com/RegionDisk
compute.googleapis.com/Reservation
compute.googleapis.com/ResourcePolicy
compute.googleapis.com/Route
compute.googleapis.com/Router
compute.googleapis.com/SecurityPolicy
compute.googleapis.com/Snapshot
compute.googleapis.com/SslCertificate
compute.googleapis.com/SslPolicy
compute.googleapis.com/Subnetwork
compute.googleapis.com/TargetHttpProxy
compute.googleapis.com/TargetHttpsProxy
compute.googleapis.com/TargetInstance
compute.googleapis.com/TargetPool
compute.googleapis.com/TargetSslProxy
compute.googleapis.com/TargetVpnGateway
compute.googleapis.com/UrlMap
compute.googleapis.com/VpnGateway
compute.googleapis.com/VpnTunnel
Google Kubernetes Engine container.googleapis.com/Cluster
container.googleapis.com/NodePool
Dataflow dataflow.googleapis.com/Job
Cloud Data Fusion datafusion.googleapis.com/Instance
Managed Service for Apache Spark dataproc.googleapis.com/AutoscalingPolicy
dataproc.googleapis.com/Batch
dataproc.googleapis.com/Cluster
dataproc.googleapis.com/Job
Datastream datastream.googleapis.com/ConnectionProfile
datastream.googleapis.com/PrivateConnection
datastream.googleapis.com/Stream
Dialogflow CX dialogflow.googleapis.com/Agent
Sensitive Data Protection dlp.googleapis.com/DeidentifyTemplate
dlp.googleapis.com/DlpJob
dlp.googleapis.com/InspectTemplate
dlp.googleapis.com/JobTrigger
dlp.googleapis.com/StoredInfoType
Cloud DNS dns.googleapis.com/ManagedZone
dns.googleapis.com/Policy
Filestore file.googleapis.com/Instance
Hub (noto anche come flotte) gkehub.googleapis.com/Feature
gkehub.googleapis.com/Membership
IAM iam.googleapis.com/Role
iam.googleapis.com/ServiceAccountKey
Kubernetes k8s.io/Namespace
k8s.io/Node
k8s.io/Pod
k8s.io/Service
apps.k8s.io/DaemonSet
apps.k8s.io/Deployment
apps.k8s.io/ReplicaSet
apps.k8s.io/StatefulSet
batch.k8s.io/CronJob
networking.k8s.io/Ingress
networking.k8s.io/NetworkPolicy
rbac.authorization.k8s.io/ClusterRole
rbac.authorization.k8s.io/ClusterRoleBinding
rbac.authorization.k8s.io/Role
rbac.authorization.k8s.io/RoleBinding
Cloud Logging logging.googleapis.com/LogBucket
logging.googleapis.com/LogMetric
logging.googleapis.com/LogSink
Cloud Monitoring monitoring.googleapis.com/AlertPolicy
monitoring.googleapis.com/NotificationChannel
NetApp Volumes
netapp.googleapis.com/Snapshot
netapp.googleapis.com/Volume
Workbench di Gemini Enterprise Agent Platform notebooks.googleapis.com/Instance
Servizio Criteri dell'organizzazione v2 orgpolicy.googleapis.com/CustomConstraint
orgpolicy.googleapis.com/Policy
Certificate Authority Service privateca.googleapis.com/Certificate
privateca.googleapis.com/CertificateRevocationList
Pub/Sub pubsub.googleapis.com/Snapshot
pubsub.googleapis.com/Subscription
pubsub.googleapis.com/Topic
Memorystore for Redis redis.googleapis.com/Cluster
redis.googleapis.com/Instance
Cloud Run run.googleapis.com/DomainMapping
run.googleapis.com/Execution
run.googleapis.com/Job
run.googleapis.com/Revision
run.googleapis.com/Service
Secret Manager secretmanager.googleapis.com/Secret
secretmanager.googleapis.com/SecretVersion
Utilizzo dei servizi serviceusage.googleapis.com/Service
Spanner spanner.googleapis.com/Backup
spanner.googleapis.com/Database
spanner.googleapis.com/Instance
Cloud SQL per MySQL sqladmin.googleapis.com/BackupRun
sqladmin.googleapis.com/Instance
Cloud Storage storage.googleapis.com/Bucket
Google Cloud VMware Engine vmwareengine.googleapis.com/Cluster
vmwareengine.googleapis.com/ExternalAccessRule
vmwareengine.googleapis.com/ExternalAddress
vmwareengine.googleapis.com/NetworkPeering
vmwareengine.googleapis.com/NetworkPolicy
vmwareengine.googleapis.com/PrivateCloud
vmwareengine.googleapis.com/PrivateConnection
vmwareengine.googleapis.com/VmwareEngineNetwork
Connettore VPC vpcaccess.googleapis.com/Connector
Cloud Workstations workstations.googleapis.com/Workstation
workstations.googleapis.com/WorkstationConfig

Passaggi successivi