Regelausschlüsse verwalten
In diesem Dokument wird beschrieben, wie Sie Regelausschlüsse in Google Security Operations programmatisch über die API verwalten. Ausschlüsse dienen als Filter, die Sie auf Grundlage von Unified Data Model-Feldern (UDM) definieren, um zu verhindern, dass bei bestimmten Erkennungen Benachrichtigungen generiert werden. Durch die Identifizierung bekannter oder sicherer Aktivitäten wird unnötiges Rauschen in Ihrem Dashboard vermieden.
Ausschluss mit Ergebnisfiltern erstellen
Sie können programmatisch eine neue Ausschlussregel erstellen, um bestimmte Erkennungsergebnisse zu unterdrücken, die Ihren definierten Kriterien entsprechen. So können Sie Rauschen reduzieren und Warnungen mit hoher Genauigkeit priorisieren.
Verwenden Sie den POST-Endpunkt, um die Unterdrückungslogik zu definieren. Alle Filter mit dem Array outcomeFilters sind durch eine implizite AND-Klausel verknüpft.
Methode: POST
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
Beispiel:
POST https://us-chronicle.googleapis.com/v1/projects/my-project/locations/us/instances/my-instance/findingsRefinements
Anfragetext:
{
"displayName": "Exclusion with outcome filters",
"type": "DETECTION_EXCLUSION",
"query": "principal.hostname = \"altostrat.com\"",
"outcomeFilters": [
{
"outcome_variable": "ip",
"outcome_value": "127.0.01",
"outcome_filter_operator": "EQUAL"
},
{
"outcome_variable": "hostnames",
"outcome_value": "altostrat.com",
"outcome_filter_operator": "CONTAINS"
}
]
}
Das Beispiel zeigt, wie Sie eine Unterdrückungslogik definieren, in der mehrere Filter im outcomeFilters-Array durch eine implizite AND-Klausel verknüpft werden.
Erforderliche Felder: displayName, type, query
Systemgenerierte Felder: Geben Sie name, createTime oder updateTime nicht an.
Diese werden vom System verwaltet und ignoriert oder verursachen Fehler, wenn sie in der Anfrage enthalten sind.
Die Unterdrückungslogik folgt einer AND-Beziehung. Mit der Anfrage wird ein Ausschluss erstellt, mit dem alle Erkennungen unterdrückt werden, die ein Ereignis mit den folgenden Eigenschaften haben:
„altostrat.com“ als primärer Hostname
Eine Ergebnisvariable
ipmit dem Wert127.0.0.1Eine Ergebnisvariable
hostnames, bei der mindestens einer der aggregierten Wertealtostrat.comist.
Alle in der Ausnahme angegebenen Filter sind implizit durch eine AND-Klausel verknüpft.
API-Antwort: Die API gibt den Ressourcennamen FindingsRefinement zurück.
Die Ressource FindingsRefinement enthält die grundlegende Unterdrückungslogik (die Abfrage- und Ergebnisfilter). Der Ressourcenname (ID) wird für nachfolgende Vorgänge für den Ausschluss verwendet.
Auf eine Ausnahme zugreifen
Mit dem GET-Endpunkt können Sie Folgendes tun:
Ruft die Details einer einzelnen Ausschlussdefinition anhand ihrer eindeutigen ID ab.
Wenn Sie ein bestimmtes
refinement-idhaben und die genauen Abfrage- oder Ergebnisfilter überprüfen müssen, die es enthält.
Methode: GET
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/findingsRefinements
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
Beispiel:
GET https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210/findingsRefinements/fr_00001111-2222-3333-4444-555566667777
Ausschluss auf eine Regel oder einen Regelsatz anwenden
Sie müssen den Ausschluss auf bestimmte Regeln oder kuratierte Regelsätze anwenden.
Wenn Sie den Ausschluss auf eine Regel oder einen Regelsatz anwenden, wird eine FindingsRefinementDeployment-Ressource erstellt. Mit dieser Ressource können Sie die benutzerdefinierten Regeln, kuratierten Regeln oder kuratierten Regelsätze ermitteln, die für die FindingsRefinement-Ressource gelten. Anschließend können Sie den Parameter „update_mask“ in der API-Anfrage angeben, um festzulegen, welche Felder in FindingsRefinementDeployment aktualisiert werden sollen.
Methode: PATCH
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/findingsRefinements/REFINEMENT_ID
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
REFINEMENT_ID: Die eindeutige ID der Optimierung von Ergebnissen.
Beispiel:
PATCH https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210/findingsRefinements/fr_00001111-2222-3333-4444-555566667777?update_mask=enabled,detectionExclusionApplication
Anfragetext:
{
"name": "projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210/findingsRefinements/fr_00001111-2222-3333-4444-555566667777"
"enabled": true,
"detectionExclusionApplication": {
"curatedRuleSets": [
...list curated rule set resource names
],
"curatedRules": [
...list curated rule resource names
],
"rules": [
...list rule resource names
],
}
}
Wenn Sie den Ausschluss auf eine Regel oder einen Regelsatz anwenden, erstellt das System eine FindingsRefinementDeployment-Ressource. Mit dieser Ressource wird festgelegt, welche benutzerdefinierten Regeln, ausgewählten Regeln und ausgewählten Regelsätze für die FindingsRefinement-Ressource gelten. Sie können auch den Parameter update_mask in die API-Anfrage einfügen, um anzugeben, welche Felder im FindingsRefinementDeployment aktualisiert werden sollen.
Auf die Bereitstellung für den Ausschluss zugreifen
Nachdem Sie einen Ausschluss erstellt oder aktualisiert haben, können Sie mit diesem Endpunkt prüfen, für welche Regeln oder Regelsätze der Ausschluss bereitgestellt wird.
Methode: GET
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/findingsRefinements/REFINEMENT_ID
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
REFINEMENT_ID: Die eindeutige ID der Optimierung von Ergebnissen.
Beispiel:
GET https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210/findingsRefinements/fr_00001111-2222-3333-4444-555566667777/deployment
Alle Ausschlüsse auflisten
Mit diesem Endpunkt können Sie die Liste der findingsRefinements-Ressourcen abrufen.
Methode: GET
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/findingsRefinements
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
Beispiel:
GET https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210/findingsRefinements
Optionale Suchparameter: pageSize, pageToken
Mit den optionalen Parametern können Sie mehr Ergebnisse auflisten, ähnlich wie bei anderen Listenendpunkten in der API.
Alle Ausschlussbereitstellungen auflisten
Mit diesem Endpunkt können Sie die Liste der FindingsRefinement-Ressourcen abrufen, die in Ihrer Instanz erstellt wurden.
Methode: GET
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/findingsRefinements
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
Beispiel:
GET https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210:listAllFindingsRefinementDeployments
Optionale Abfrageparameter:
Verwenden Sie die Parameter
pageSizeundpageToken, um weitere Ergebnisse aufzulisten, die anderen Listenendpunkten in der API ähneln.Mit dem Parameter
filterkönnen Sie nach den Regeln oder Regelsätzen filtern, auf die Ausschlüsse angewendet wurden.
Ausschluss mit der API testen
Mit diesem Endpunkt wird der Ausschluss anhand von Erkennungen aus den angegebenen Regeln und Regelsätzen getestet. Anschließend wird die Effektivität des Ausschlusses beim Unterdrücken unerwünschter Erkennungen validiert. In der Benutzeroberfläche werden die Erkennungen der letzten 30 Tage für Tests verwendet.
Methode: POST
Endpunkt:
https://REGION-chronicle.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:testFindingsRefinement
Ersetzen Sie Folgendes:
REGION: Die Google Cloud Region für die Google SecOps-Instanz.
PROJECT_ID: Ihre Google Cloud Projekt-ID
LOCATION: Der Standort der Google SecOps-Instanz (oft derselbe wie die Region).
INSTANCE_ID: Die ID der Google SecOps-Instanz.
Beispiel:
POST https://us-chronicle.googleapis.com/v1/projects/0123456789/locations/us/instances/01234567-89ab-cdef-fedc-ba9876543210:testFindingsRefinement
Anfragetext:
{
"type": "DETECTION_EXCLUSION",
"query": "principal.hostname = \"altostrat.com\"",
"outcomeFilters": [
{
"outcome_variable": "ip",
"outcome_value": "127.0.01",
"outcome_filter_operator": "EQUAL",
},
{
"outcome_variable": "hostnames",
"outcome_value": "altostrat.com",
"outcome_filter_operator": "CONTAINS",
},
]
"interval": {
"start_time": {
"seconds": 1756684800, // Sep. 1 2025 00:00 UTC
},
"end_time": {
"seconds": 1759276800, // Oct. 1 2025 00:00 UTC
},
},
"detectionExclusionApplication": {
"curatedRuleSets": [
...curated rule set resource names
],
"curatedRules": [
...curated rule resource names
],
"rules": [
...rule resource names
],
}
}
Mit diesem Endpunkt wird der Ausschluss für Erkennungen getestet, die in den im Antrag angegebenen Regeln und Regelsätzen generiert wurden. So lässt sich feststellen, wie effektiv der Ausschluss ist, um Erkennungen zu unterdrücken, die nicht generiert werden sollten. Das System verwendet die Erkennungen der letzten 30 Tage als Zeitraum für die Tests der Ausschlüsse.
Beschränkungen
Für alle Ausschlüsse (mit oder ohne Ergebnisfilter) muss ein
query-Feld angegeben werden. Wenn Sie einen Ausschluss nur mitoutcomeFilterserstellen möchten, geben Sie einen regulären Ausdruck fürmatch-allan....other fields in FindingsRefinement query: "principal.hostname = /.*/" outcomeFilters: [ your outcome filters ]Der reguläre Ausdruck stimmt mit jedem Hostnamen überein. Daher stimmt diese Abfrage mit allen erkannten Ereignissen überein. Die effektive Filterung wird daher ausschließlich durch die Ergebnisfilter bestimmt.
Ausschlüsse unterstützen keine TTL-Konfiguration (Time-to-Live). Sie können jedoch eine einmalige TTL erstellen, indem Sie die spezifische Ablaufzeit berechnen und eine Zeitstempelbedingung in die Ausschlussdefinition einfügen. Wenn Sie beispielsweise festlegen möchten, dass ein Ausschluss am Ende des Jahres abläuft, geben Sie die Abfrage so an:
...other fields in FindingsRefinement query: "metadata.event_timestamp.seconds < 1767225600" // Jan 1 2026 00:00 UTC outcomeFilters: [your outcome filters]In diesem Beispiel wird bestätigt, dass nur Erkennungen unterdrückt werden, die durch Ereignisse mit einem Zeitstempel vor dem Jahresende erstellt wurden.
Hinweis: Das wird im Fenster Ausschlüsse bearbeiten der Benutzeroberfläche möglicherweise nicht richtig angezeigt, da dort nur
string-Felder unterstützt werden.Zusammengesetzte Regeln: UDM-Feldausschlüsse werden anhand von Rohereignissen ausgewertet. Wenn Sie versuchen, bestimmte UDM-Werte aus einer zusammengesetzten Regel auszuschließen, die auf Grundlage anderer Erkennungen und nicht auf Grundlage von Rohereignissen ausgelöst wird, müssen Sie den Ausschluss auf die zugrunde liegenden Regeln anwenden, die in die zusammengesetzte Regel einfließen.
Um die zugrunde liegende Regel zu finden, können Sie die Definition der zusammengesetzten Regel in der Google SecOps-Konsole (unter Content Hub > Kuratierte Erkennungen) untersuchen und den Abschnitt
events:der YARA-L-Logik prüfen, um die Namen der zugrunde liegenden Regeln zu ermitteln.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten