סקירה כללית על מודולים מותאמים אישית ב-Security Health Analytics

בדף הזה יש סקירה כללית על מודולים בהתאמה אישית של Security Health Analytics. מידע על מודולים מובנים זמין במאמר גלאים מובנים ב-Security Health Analytics.

בעזרת מודולים בהתאמה אישית, אתם יכולים להרחיב את יכולות הזיהוי של Security Health Analytics על ידי יצירת גלאים בהתאמה אישית שסורקים את המשאבים והמדיניות שאתם מציינים באמצעות כללים שאתם מגדירים כדי לבדוק אם יש נקודות חולשה, הגדרות שגויות או הפרות של דרישות התאימות. Google Cloud

ההגדרה או ההגדרה של מודול בהתאמה אישית, בין אם יוצרים אותו במסוףGoogle Cloud או מקודדים אותו בעצמכם, קובעות את המשאבים שהגלאי בודק, את המאפיינים שהגלאי מעריך ואת המידע שהגלאי מחזיר כשמתגלה נקודת חולשה או הגדרה שגויה.

אפשר ליצור מודולים בהתאמה אישית לכל משאב או נכס ש-Security Command Center תומך בהם.

אם אתם כותבים בעצמכם הגדרות של מודולים בהתאמה אישית, אתם משתמשים ב-YAML ובביטויים של Common Expression Language ‏ (CEL). אם משתמשים במסוףGoogle Cloud כדי ליצור מודולים מותאמים אישית, רוב הקוד נוצר באופן אוטומטי, אבל עדיין צריך לקודד את ביטויי ה-CEL.

דוגמה להגדרת מודול בהתאמה אישית בקובץ YAML מופיעה במאמר דוגמה להגדרת מודול בהתאמה אישית.

מודולים בהתאמה אישית פועלים לצד גלאים מובנים של Security Health Analytics בסריקות בזמן אמת ובסריקות אצווה. במצב זמן אמת, הסריקות מופעלות בכל פעם שמשתנה ההגדרה של נכס. סריקות במצב אצווה מופעלות עם כל הגלאים בארגונים או בפרויקטים רשומים פעם ביום.

במהלך סריקה, כל גלאי בהתאמה אישית מופעל על כל הנכסים התואמים בכל ארגון, תיקייה או פרויקט שבהם הוא מופעל.

הממצאים מגלאים בהתאמה אישית נכתבים ב-Security Command Center.

למידע נוסף, קראו את המאמרים הבאים:

השוואה בין מזהים מובנים לבין מודולים בהתאמה אישית

אפשר לזהות דברים באמצעות מודולים בהתאמה אישית שלא ניתן לזהות באמצעות גלאי Security Health Analytics המובנים. עם זאת, גלאים מובנים תומכים בתכונות מסוימות של Security Command Center שמודולים בהתאמה אישית לא תומכים בהן.

תמיכה בתכונות

מודולים מותאמים אישית של Security Health Analytics לא נתמכים על ידי סימולציות של נתיבי תקיפה, ולכן ממצאים שנוצרים על ידי מודולים מותאמים אישית לא מקבלים ציוני חשיפה להתקפה או נתיבי תקיפה.

השוואה בין לוגיקות זיהוי

כדי להבין מה אפשר לעשות עם מודול מותאם אישית, נשווה בין מה שגלאי PUBLIC_SQL_INSTANCEבודק לבין מה שאפשר לעשות עם מודול מותאם אישית.

הגלאי המובנה PUBLIC_SQL_INSTANCE בודק אם המאפיין authorizedNetworks של מכונות Cloud SQL מוגדר לערך 0.0.0.0/0. אם כן, הגלאי יוצר ממצא שמציין שהמכונה של Cloud SQL פתוחה לציבור, כי היא מקבלת חיבורים מכל כתובות ה-IP.

באמצעות מודול בהתאמה אישית, אפשר להטמיע לוגיקה מורכבת יותר של זיהוי כדי לבדוק מכונות Cloud SQL לגבי דברים כמו:

  • כתובות IP עם קידומות ספציפיות, באמצעות תווים כלליים לחיפוש.
  • הערך של המאפיין state, שבו אפשר להשתמש כדי להתעלם ממופעים אם הערך מוגדר כ-MAINTENANCE, או כדי להפעיל ממצאים אם הערך הוא משהו אחר.
  • הערך של המאפיין region, שבו אפשר להשתמש כדי להפעיל ממצאים רק למקרים עם כתובות IP ציבוריות באזורים ספציפיים.

תפקידים והרשאות נדרשים ב-IAM

תפקידי IAM קובעים את הפעולות שאפשר לבצע באמצעות מודולים בהתאמה אישית של Security Health Analytics.

בטבלה הבאה מפורטת רשימה של הרשאות מודול מותאם אישית ב-Security Health Analytics שנדרשות, וגם תפקידי ה-IAM שמוגדרים מראש וכוללים את ההרשאות האלה.

אפשר להשתמש במסוף Google Cloud או ב-Security Command Center API כדי להקצות את התפקידים האלה ברמת הארגון, התיקייה או הפרויקט. Google Cloud

ההרשאות הנדרשות תפקידים
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

מידע נוסף על הרשאות ותפקידים ב-IAM ועל אופן ההקצאה שלהם זמין במאמר הקצאת תפקיד ב-IAM באמצעות מסוף Google Cloud .

מכסות של מודולים בהתאמה אישית

מודולים מותאמים אישית של Security Health Analytics כפופים למגבלות מכסת השימוש.

מגבלת ברירת המחדל של המכסה ליצירת מודולים מותאמים אישית היא 100, אבל אפשר לבקש הגדלה של המכסה, אם צריך.

קריאות ל-API לשיטות של מודולים בהתאמה אישית כפופות גם למגבלות מכסה. בטבלה הבאה מוצגות הגבלות המכסה שמוגדרות כברירת מחדל לקריאות ל-API של מודולים בהתאמה אישית.

סוג הקריאה ל-API הגבלה
בקשות קריאה של CustomModules (Get, List) ‫1,000 קריאות ל-API לדקה, לכל ארגון
בקשות כתיבה של CustomModules (יצירה, עדכון, מחיקה) ‫60 קריאות ל-API לדקה, לכל ארגון
בקשות בדיקה של CustomModules ‫12 קריאות ל-API לדקה, לכל ארגון

כדי לבקש הגדלה של המכסה, שולחים בקשה במסוף Google Cloud בדף Quotas.

מידע נוסף על מכסות ב-Security Command Center זמין במאמר מכסות ומגבלות.

סוגי המשאבים שנתמכים

Access Context Manager
accesscontextmanager.googleapis.com/AccessLevel
accesscontextmanager.googleapis.com/AccessPolicy
accesscontextmanager.googleapis.com/ServicePerimeter
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
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 Model
bigquery.googleapis.com/Model
BigQuery Table
bigquery.googleapis.com/Table
Bucket
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 Profile
datastream.googleapis.com/ConnectionProfile
Datastream Private Connection
datastream.googleapis.com/PrivateConnection
Datastream Stream
datastream.googleapis.com/Stream
Dialogflow 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
batch.k8s.io/CronJob
Kubernetes DaemonSet
apps.k8s.io/DaemonSet
Kubernetes Deployment
apps.k8s.io/Deployment
Kubernetes Ingress
networking.k8s.io/Ingress
Kubernetes NetworkPolicy
networking.k8s.io/NetworkPolicy
Kubernetes ReplicaSet
apps.k8s.io/ReplicaSet
Kubernetes Service
k8s.io/Service
Kubernetes StatefulSet
apps.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
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
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

המאמרים הבאים