FortiAnalyzer
Integrationsversion: 5.0
Hinweis
Bevor Sie die FortiAnalyzer-Integration in Google SecOps konfigurieren, müssen Sie ein dediziertes Administratorprofil mit den folgenden Berechtigungen erstellen:
| Kategorie | Berechtigungsstufe |
|---|---|
| Systemeinstellungen | Keine |
| Administrative Domain | Keine |
| Geräte-Manager | Schreibgeschützt: |
| Geräte/Gruppen hinzufügen/löschen/bearbeiten | Schreibgeschützt: |
| Log View/FortiView | Schreibgeschützt: |
| Vorfälle und Ereignisse | Lesen/Schreiben |
| Vorfälle erstellen und aktualisieren | Lesen/Schreiben |
| Triage-Ereignis | Keine |
| Playbook ausführen | Keine |
| Berichte | Keine |
| Bericht erstellen | Keine |
| Stoffansicht | Keine |
Integrationsparameter
Verwenden Sie die folgenden Parameter, um die Integration zu konfigurieren:
| Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
|---|---|---|---|---|
| API-Stamm | String | https://{ip address} | Ja | API-Stammverzeichnis der FortiAnalyzer-Instanz. |
| Nutzername | String | – | Ja | Nutzername des FortiAnalyzer-Kontos. Achten Sie darauf, dass die angegebenen Anmeldedaten zu einem Nutzerkonto gehören, das dem in Vorbereitung definierten Profil zugewiesen ist. |
| Passwort | Passwort | – | Ja | Das Passwort des FortiAnalyzer-Kontos. Achten Sie darauf, dass die angegebenen Anmeldedaten zu einem Nutzerkonto gehören, das dem in Vorbereitung definierten Profil zugewiesen ist. |
| SSL überprüfen | Kästchen | Geprüft | Ja | Wenn diese Option aktiviert ist, wird überprüft, ob das SSL-Zertifikat für die Verbindung zum FortiAnalyzer gültig ist. |
Eine Anleitung zum Konfigurieren einer Integration in Google SecOps finden Sie unter Integrationen konfigurieren.
Bei Bedarf können Sie später Änderungen vornehmen. Nachdem Sie eine Integrationsinstanz konfiguriert haben, können Sie sie in Playbooks verwenden. Weitere Informationen zum Konfigurieren und Unterstützen mehrerer Instanzen finden Sie unter Mehrere Instanzen unterstützen.
Aktionen
Benachrichtigung kommentieren
Beschreibung
Fügen Sie der Benachrichtigung in FortiAnalyzer einen Kommentar hinzu.
Parameter
| Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
|---|---|---|---|---|
| Benachrichtigungs-ID | String | – | Ja | Geben Sie die ID der Benachrichtigung an, die aktualisiert werden muss. |
| Kommentar | String | – | Ja | Geben Sie den Kommentar für die Benachrichtigung an. |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
| Name des Scriptergebnisses | Wertoptionen | Beispiel |
|---|---|---|
| is_success | Wahr/Falsch | is_success=False |
JSON-Ergebnis
{
"jsonrpc": "2.0",
"id": "string",
"result": {
"status": "done"
}
}
Fall-Repository
| Ergebnistyp | Wert / Beschreibung | Typ |
|---|---|---|
| Ausgabenachricht* | Die Aktion darf nicht fehlschlagen oder die Ausführung eines Playbooks stoppen: Wenn zurückgegebene Informationen (is_success=true): „Successfully added a comment to the alert with ID {id} in FortiAnalyzer.“ (Dem Alert mit der ID {id} in FortiAnalyzer wurde erfolgreich ein Kommentar hinzugefügt.) Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚Kommentar zur Benachrichtigung hinzufügen‘. Grund: {0}''.format(error.Stacktrace)" Wenn die Benachrichtigung nicht gefunden wird: „Fehler beim Ausführen der Aktion ‚Kommentar zur Benachrichtigung hinzufügen‘. Grund: Die Warnmeldung mit der ID {alert id} wurde in FortiAnalyzer nicht gefunden. Bitte überprüfen Sie die Rechtschreibung.“ |
Allgemein |
Entitäten anreichern
Beschreibung
Entitäten mit Informationen aus FortiAnalyzer anreichern Unterstützte Einheiten: Hostname, IP-Adresse.
Parameter
–
Ausführen am
Diese Aktion wird für die folgenden Einheiten ausgeführt:
- Hostname
- IP-Adresse
Aktionsergebnisse
Scriptergebnis
| Name des Scriptergebnisses | Wertoptionen | Beispiel |
|---|---|---|
| is_success | Wahr/Falsch | is_success=False |
JSON-Ergebnis
{
"adm_pass": [
"ENC",
"FLP+Dq8f3t2/S+GQ6DfPL2iRhtmk1CEZzEeH8+nVkRkFd72IUbBZM6uDyw0fQ1j1i28H1wtfqf6HlGEK2ubxs0rXE4L+Uqj433si+AmEF9gEB5gLw/4P5YYRkw/aOYF74k8/8bincoa31jBe0u0HWRNdWYQSyG7IWgvZGsPK4at0gwZI"
],
"adm_usr": "admin",
"app_ver": "",
"av_ver": "",
"beta": -1,
"branch_pt": 1255,
"build": 1255,
"checksum": "",
"conf_status": 0,
"conn_mode": 0,
"conn_status": 0,
"db_status": 0,
"desc": "",
"dev_status": 0,
"eip": "",
"fap_cnt": 0,
"faz.full_act": 0,
"faz.perm": 15,
"faz.quota": 0,
"faz.used": 0,
"fex_cnt": 0,
"first_tunnel_up": 0,
"flags": 2097152,
"foslic_cpu": 0,
"foslic_dr_site": 0,
"foslic_inst_time": 0,
"foslic_last_sync": 0,
"foslic_ram": 0,
"foslic_type": 0,
"foslic_utm": 0,
"fsw_cnt": 0,
"ha_group_id": 0,
"ha_group_name": "",
"ha_mode": 0,
"ha_slave": null,
"hdisk_size": 0,
"hostname": "",
"hw_rev_major": 0,
"hw_rev_minor": 0,
"hyperscale": 0,
"ip": "172.30.203.248",
"ips_ext": 0,
"ips_ver": "",
"last_checked": 1665664693,
"last_resync": 0,
"latitude": "0.0",
"lic_flags": 0,
"lic_region": "",
"location_from": "",
"logdisk_size": 0,
"longitude": "0.0",
"maxvdom": 10,
"mgmt.__data[0]": 0,
"mgmt.__data[1]": 0,
"mgmt.__data[2]": 0,
"mgmt.__data[3]": 0,
"mgmt.__data[4]": 0,
"mgmt.__data[5]": 0,
"mgmt.__data[6]": 0,
"mgmt.__data[7]": 0,
"mgmt_if": "",
"mgmt_mode": 2,
"mgmt_uuid": "1841991674",
"mgt_vdom": "",
"module_sn": "",
"mr": 2,
"name": "FGVMEV2YKQ61YQD5",
"node_flags": 0,
"nsxt_service_name": "",
"oid": 181,
"onboard_rule": null,
"opts": 0,
"os_type": 0,
"os_ver": 7,
"patch": 2,
"platform_str": "FortiGate-VM64",
"prefer_img_ver": "",
"prio": 0,
"private_key": "",
"private_key_status": 0,
"psk": "",
"role": 0,
"sn": "FGVMEV2YKQ61YQD5",
"source": 2,
"tab_status": "",
"tunnel_cookie": "",
"tunnel_ip": "",
"vdom": [
{
"comments": null,
"devid": "FGVMEV2YKQ61YQD5",
"ext_flags": 0,
"flags": 0,
"name": "root",
"node_flags": 0,
"oid": 3,
"opmode": 1,
"rtm_prof_id": 0,
"status": null,
"tab_status": null,
"vdom_type": 1,
"vpn_id": 0
}
],
"version": 700,
"vm_cpu": 0,
"vm_cpu_limit": 0,
"vm_lic_expire": 0,
"vm_mem": 0,
"vm_mem_limit": 0,
"vm_status": 0
}
Entitätsanreicherung – Präfix „FortiAn_“
| Name des Anreicherungsfelds | Quelle (JSON-Schlüssel) | Logik – Wann anwenden? |
|---|---|---|
| adm_usr | adm_usr | Wenn in JSON verfügbar |
| Build | Build | Wenn in JSON verfügbar |
| ip | ip | Wenn in JSON verfügbar |
| last_checked | last_checked | Wenn in JSON verfügbar |
| last_resync | last_resync | Wenn in JSON verfügbar |
| name | name | Wenn in JSON verfügbar |
| sn | sn | Wenn in JSON verfügbar |
| os_type | os_type | Wenn in JSON verfügbar |
| os_ver | os_ver | Wenn in JSON verfügbar |
| patch | patch | Wenn in JSON verfügbar |
| platform\_str | platform\_str | Wenn in JSON verfügbar |
| Version | Version | Wenn in JSON verfügbar |
| Ab | Ab | Wenn in JSON verfügbar |
Fall-Repository
| Ergebnistyp | Wert / Beschreibung | Typ |
|---|---|---|
| Ausgabenachricht* | Die Aktion darf nicht fehlschlagen oder die Ausführung eines Playbooks stoppen: Wenn Daten für eine Entität verfügbar sind (is_success=true): „Successfully enriched the following entities using information from FortiAnalyzer: {entity.identifier}“ (Die folgenden Entitäten wurden mit Informationen aus FortiAnalyzer angereichert: {entity.identifier}). Wenn für ein Element keine Daten verfügbar sind (is_success=true): „Die Aktion konnte die folgenden Elemente nicht mit Informationen aus FortiAnalyzer anreichern: {entity.identifier}“ Wenn für nicht alle Entitäten Daten verfügbar sind (is_success=false): „None of the provided entities were enriched.“ (Keine der angegebenen Entitäten wurde angereichert.) Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚Enrich Entities‘.“ Grund: {0}''.format(error.Stacktrace) |
Allgemein |
| Tabelle mit Fall-Repository | Titel: {entity.identifier} Columns: Schlüsselwert |
Entität |
Ping
Beschreibung
Testen Sie die Verbindung zu FortiAnalyzer mit Parametern, die auf der Seite für die Integrationskonfiguration auf dem Tab „Google Security Operations Marketplace“ angegeben sind.
Parameter
–
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt und hat keine obligatorischen Eingabeparameter.
Aktionsergebnisse
Scriptergebnis
| Name des Scriptergebnisses | Wertoptionen | Beispiel |
|---|---|---|
| is_success | Wahr/Falsch | is_success=False |
JSON-Ergebnis
N/A
Fall-Repository
| Ergebnistyp | Wert / Beschreibung | Typ |
|---|---|---|
| Ausgabenachricht* | Die Aktion darf nicht fehlschlagen oder die Ausführung eines Playbooks stoppen: Bei Erfolg: „Successfully connected to the BitSight server with the provided connection parameters!“ (Die Verbindung zum BitSight-Server mit den angegebenen Verbindungsparametern wurde hergestellt.) Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Wenn nicht erfolgreich: „Failed to connect to the BitSight server! Fehler: {0}".format(exception.stacktrace) |
Allgemein |
Suchprotokolle
Beschreibung
Suchen Sie in FortiAnalyzer nach Logs.
Parameter
| Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
|---|---|---|---|---|
| Logtyp | DDL | Traffic Mögliche Werte:
|
Nein | Geben Sie den Logtyp an, der durchsucht werden soll. |
| Filter mit Berücksichtigung der Groß-/Kleinschreibung | Kästchen | Deaktiviert | Nein | Wenn diese Option aktiviert ist, wird bei Filtern zwischen Groß- und Kleinschreibung unterschieden. |
| Abfragefilter | String | – | Nein | Geben Sie den Abfragefilter für die Suche an. |
| Geräte-ID | String | All\_Fortigate | Nein | Geben Sie die ID des Geräts an, das gesucht werden soll. Wenn nichts angegeben wird, wird in „All_Fortigate“ gesucht. Beispiele für Werte: All_FortiGate, All_FortiMail, All_FortiWeb, All_FortiManager, All_Syslog, All_FortiClient, All_FortiCache, All_FortiProxy, All_FortiAnalyzer, All_FortiSandbox, All_FortiAuthenticator, All_FortiDDoS |
| Zeitraum | DDL | Letzter Monat Mögliche Werte:
|
Nein | Geben Sie einen Zeitraum für die Ergebnisse an. Wenn „Benutzerdefiniert“ ausgewählt ist, müssen Sie auch den Parameter „Startzeit“ angeben. |
| Beginn | String | – | Nein | Geben Sie die Startzeit für die Ergebnisse an. Dieser Parameter ist erforderlich, wenn für den Parameter „Zeitrahmen“ die Option „Benutzerdefiniert“ ausgewählt ist. Format: ISO 8601 |
| Ende | String | – | Nein | Geben Sie die Endzeit für die Ergebnisse an. Format: ISO 8601. Wenn nichts angegeben ist und für den Parameter „Zeitrahmen“ die Option „Benutzerdefiniert“ ausgewählt ist, wird für diesen Parameter die aktuelle Zeit verwendet. |
| Time Order | DDL | DESC Mögliche Werte:
|
Nein | Geben Sie die zeitliche Reihenfolge in der Suche an. |
| Maximale Anzahl zurückzugebender Logs | Ganzzahl | 20 | Nein | Geben Sie die Anzahl der Protokolle an, die zurückgegeben werden sollen. Standard: 20. Maximum: 1.000 |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
| Name des Scriptergebnisses | Wertoptionen | Beispiel |
|---|---|---|
| is_success | Wahr/Falsch | is_success=False |
JSON-Ergebnis
{
"sessionid": "29658",
"srcip": "172.30.201.188",
"dstip": "173.243.138.210",
"srcport": "17453",
"dstport": "443",
"trandisp": "noop",
"duration": "1",
"proto": "6",
"sentbyte": "216",
"rcvdbyte": "112",
"sentpkt": "4",
"rcvdpkt": "2",
"logid": "0001000014",
"service": "HTTPS",
"app": "HTTPS",
"appcat": "unscanned",
"srcintfrole": "undefined",
"dstintfrole": "undefined",
"eventtime": "1665752066921638736",
"srccountry": "Reserved",
"dstcountry": "Canada",
"srcintf": "root",
"dstintf": "port1",
"dstowner": "540",
"tz": "-0700",
"devid": "FGVMEV2YKQ61YQD5",
"vd": "root",
"csf": "FortiNetFabric",
"dtime": "2022-10-14 05:54:27",
"itime_t": "1665752069",
"devname": "FGVMEV2YKQ61YQD5"
}{
"date": "2022-10-14",
"time": "05:54:27",
"id": "7154350659607724033",
"itime": "2022-10-14 05:54:29",
"euid": "102",
"epid": "102",
"dsteuid": "102",
"dstepid": "102",
"logver": "702021255",
"type": "traffic",
"subtype": "local",
"level": "notice",
"action": "close",
"policyid": "0"
}
Fall-Repository
| Ergebnistyp | Wert / Beschreibung | Typ |
|---|---|---|
| Ausgabenachricht* | Die Aktion darf nicht fehlschlagen oder die Ausführung eines Playbooks stoppen: Bei zurückgegebenen Informationen (is_success=true): „Successfully retrieved logs for the provided criteria in FortiAnalyzer.“ (Protokolle für die angegebenen Kriterien in FortiAnalyzer erfolgreich abgerufen.) Wenn keine Informationen zurückgegeben werden (is_success=true): „No logs were found for the provided criteria in FortiAnalyzer.“ (Für die angegebenen Kriterien wurden in FortiAnalyzer keine Protokolle gefunden.) Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten oder keine Verbindung zum Server, wird folgende Meldung angezeigt: „Fehler beim Ausführen der Aktion ‚Protokolle durchsuchen‘“. Grund: {0}''.format(error.Stacktrace)" Wenn in der Antwort ein Fehler gemeldet wird: „Error executing action ‚Search Logs‘. Grund: {0}''.format(error/message)" |
Allgemein |
Alert aktualisieren
Beschreibung
Aktualisieren Sie eine Benachrichtigung in FortiAnalyzer.
Parameter
| Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
|---|---|---|---|---|
| Benachrichtigungs-ID | String | – | Ja | Geben Sie die ID der Benachrichtigung an, die aktualisiert werden muss. |
| Bestätigungsstatus | DDL | Option auswählen Mögliche Werte:
|
Nein | Geben Sie den Bestätigungsstatus für die Benachrichtigung an. |
| Als gelesen markieren | Kästchen | Deaktiviert | Nein | Wenn diese Option aktiviert ist, wird die Benachrichtigung durch die Aktion als gelesen markiert. |
| Zuweisen zu | String | – | Nein | Geben Sie an, wem die Benachrichtigung zugewiesen werden soll. |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
| Name des Scriptergebnisses | Wertoptionen | Beispiel |
|---|---|---|
| is_success | Wahr/Falsch | is_success=False |
JSON-Ergebnis
{
"alerttime": "1665653864",
"logcount": "17",
"alertid": "202210131000040003",
"adom": "root",
"epid": "1",
"epname": "not implemented dev type",
"subject": "desc:Trim local db",
"euid": "1",
"euname": "N/A",
"devname": "fortianalyzer",
"logtype": "event",
"devtype": "FortiAnalyzer",
"devid": "FAZ-VMTM22013516",
"vdom": "_self_locallog_",
"groupby1": "desc:Trim local db",
"triggername": "Local Device Event",
"tag": "Default,System,Local",
"eventtype": "event",
"severity": "medium",
"extrainfo": "{ \"msg\": \"Requested to trim database tables older than 60 days to enforce the retention policy of Adom FortiAuthenticator.\" }",
"ackflag": "no",
"readflag": "yes",
"filterkey": "3377053565526629289",
"firstlogtime": "1665653864",
"multiflag": "",
"lastlogtime": "1665653887",
"updatetime": "1665747977",
"filtercksum": "2072153473",
"filterid": "1",
"assignto": "api_user",
"ackby": "admin",
"acktime": "1665747892"
}
Fall-Repository
| Ergebnistyp | Wert / Beschreibung | Typ |
|---|---|---|
| Ausgabenachricht* | Die Aktion darf nicht fehlschlagen oder die Ausführung eines Playbooks stoppen: Bei zurückgegebenen Informationen (is_success=true): „Successfully updated alert with ID {alert id} in FortiAnalyzer.“ (Die Benachrichtigung mit der ID {alert id} wurde in FortiAnalyzer aktualisiert.) Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚Benachrichtigung aktualisieren‘. Grund: {0}''.format(error.Stacktrace) Wenn die Benachrichtigung nicht gefunden wird: „Fehler beim Ausführen der Aktion ‚Benachrichtigung aktualisieren‘. Grund: Die Warnmeldung mit der ID {alert id} wurde in FortiAnalyzer nicht gefunden. Bitte überprüfen Sie die Rechtschreibung.“ Wenn der Parameter „Acknowledge Status“ auf „Select One“ festgelegt ist, der Parameter „Mark as Read“ auf „False“ und im Parameter „Assign To“ nichts angegeben ist: „Error executing action ‚Update Alert‘. Grund: Mindestens einer der Parameter „Acknowledge Status“, „Mark As Read“ oder „Assign To“ sollte einen Wert haben.“ |
Allgemein |
Connectors
FortiAnalyzer – Alerts Connector
Beschreibung
Informationen zu Warnungen aus FortiAnalyzer abrufen
FortiAnalyzer-Alerts-Connector in Google SecOps konfigurieren
Eine ausführliche Anleitung zum Konfigurieren eines Connectors in Google SecOps finden Sie unter Connector konfigurieren.
Connector-Parameter
Verwenden Sie die folgenden Parameter, um den Connector zu konfigurieren:
| Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
|---|---|---|---|---|
| Name des Produktfelds | String | siemplify_type | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Produktfelds abzurufen. |
| Name des Ereignisfelds | String | event_type | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Ereignisfelds abzurufen. |
| Name des Umgebungsfelds | String | "" | Nein | Beschreibt den Namen des Felds, in dem der Umgebungsname gespeichert ist. Wenn das Feld „environment“ nicht gefunden wird, ist die Umgebung die Standardumgebung. |
| Regex-Muster für Umgebung | String | .* | Nein | Ein regulärer Ausdruck, der auf den Wert im Feld „Name des Umgebungsfelds“ angewendet wird. Der Standardwert ist „.*“, um alle Werte zu erfassen und unverändert zurückzugeben. Ermöglicht dem Nutzer, das Feld „environment“ (Umgebung) über Regex-Logik zu bearbeiten. Wenn das reguläre Ausdrucksmuster null oder leer ist oder der Umgebungswert null ist, ist das endgültige Umgebungsergebnis die Standardumgebung. |
| Zeitlimit für Script (Sekunden) | Ganzzahl | 180 | Ja | Zeitlimit für den Python-Prozess, in dem das aktuelle Skript ausgeführt wird. |
| API-Stamm | String | https://{ip address} | Ja | API-Stammverzeichnis der FortiAnalyzer-Instanz. |
| Nutzername | String | – | Ja | Nutzername des FortiAnalyzer-Kontos. |
| Passwort | Passwort | – | Ja | Das Passwort des FortiAnalyzer-Kontos. |
| Niedrigster abzurufender Schweregrad | String | Mittel | Nein | Der niedrigste Schweregrad, der zum Abrufen von Benachrichtigungen verwendet werden muss. Mögliche Werte: niedrig, mittel, hoch, kritisch. Wenn nichts angegeben ist, werden Warnungen mit allen Schweregraden aufgenommen. |
| Maximale Stunden zurück | Ganzzahl | 1 | Nein | Anzahl der Stunden, ab denen Benachrichtigungen abgerufen werden sollen. |
| Max. Anzahl der abzurufenden Benachrichtigungen | Ganzzahl | 20 | Nein | Anzahl der Warnungen pro Typ, die pro Connector-Iteration verarbeitet werden sollen. |
| Dynamische Liste als Sperrliste verwenden | Kästchen | Deaktiviert | Ja | Wenn diese Option aktiviert ist, wird die dynamische Liste als Sperrliste verwendet. |
| SSL überprüfen | Kästchen | Geprüft | Ja | Wenn diese Option aktiviert ist, prüft der Connector, ob das SSL-Zertifikat für die Verbindung zum FortiAnalyzer-Server gültig ist. |
| Proxyserveradresse | String | – | Nein | Die Adresse des zu verwendenden Proxyservers. |
| Proxy-Nutzername | String | – | Nein | Der Proxy-Nutzername für die Authentifizierung. |
| Proxy-Passwort | Passwort | – | Nein | Das Proxy-Passwort für die Authentifizierung. |
Connector-Regeln
Proxyunterstützung.
Der Connector unterstützt Proxys.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten