Google Chat
Integrationsversion: 2.0
Produktberechtigungen
Dienstkonto erstellen
- Wählen Sie in der Google Cloud Console ein vorhandenes Google Cloud Projekt aus oder erstellen Sie ein neues. Das ausgewählte Google Cloud Projekt muss Teil der Organisation in Google Cloudsein.
- Klicken Sie auf das ☰ Menü und wählen Sie den Menüpunkt APIs & Dienste > Anmeldedaten aus.
- Klicken Sie oben auf der Seite auf + ANMELDEDATEN ERSTELLEN > Dienstkonto.
- Geben Sie einen Dienstkontonamen ein, der in der Console angezeigt werden soll.
- Optional: Geben Sie eine Beschreibung für das Dienstkonto ein.
- Klicken Sie auf ERSTELLEN, dann auf WEITER und schließlich auf FERTIG, um das Erstellen des Dienstkontos abzuschließen.
Anmeldedaten für ein Dienstkonto erstellen
- Nachdem Sie das Dienstkonto erstellt haben, werden Sie zur Liste der Anmeldedaten weitergeleitet, die Sie für das Google Cloud Projekt verwenden können. Klicken Sie im Abschnitt Dienstkonten auf das neu erstellte Dienstkonto. Der Name lautet: service-account-name@project-name-XXXXXX.iam.gserviceaccount.com.
- Klicken Sie auf SCHLÜSSEL HINZUFÜGEN > Neuen Schlüssel erstellen.
- Lassen Sie JSON ausgewählt und klicken Sie auf ERSTELLEN.
Dadurch wird die Datei mit den Anmeldedaten heruntergeladen, die Sie für den Zugriff auf die API als dieses Dienstkonto benötigen.
Neues Apps Script-Projekt einrichten
- Rufen Sie Google Apps Script auf.
- Erstellen Sie ein neues Apps Script-Projekt.
Fügen Sie dem neu erstellten Projekt den folgenden Code hinzu, um die Integrationsfunktionen auszuführen:
var SCOPE = 'https://www.googleapis.com/auth/chat.bot'; // The values below are copied from the JSON file downloaded upon // service account creation. // For SERVICE_ACCOUNT_PRIVATE_KEY, remember to include the BEGIN and END lines of the private key var SERVICE_ACCOUNT_PRIVATE_KEY = '...'; var SERVICE_ACCOUNT_EMAIL = 'service-account@project-id.iam.gserviceaccount.com'; // Posts a message into the given space ID via the API, using // service account authentication. function postMessage(spaceId, message) { var service = OAuth2.createService('chat') .setTokenUrl('https://accounts.google.com/o/oauth2/token') .setPrivateKey(SERVICE_ACCOUNT_PRIVATE_KEY) .setClientId(SERVICE_ACCOUNT_EMAIL) .setPropertyStore(PropertiesService.getUserProperties()) .setScope(SCOPE); if (!service.hasAccess()) { Logger.log('Authentication error: %s', service.getLastError()); return; } var url = 'https://chat.googleapis.com/v1/' + spaceId + '/messages'; UrlFetchApp.fetch(url, { method: 'post', headers: { 'Authorization': 'Bearer ' + service.getAccessToken() }, contentType: 'application/json', payload: JSON.stringify(message), }); }
Öffnen Sie die Datei mit den Anmeldedaten für das Dienstkonto, die Sie aus derGoogle Cloud Console heruntergeladen haben.
Kopieren Sie den Wert von „private_key“ (der mit „-----BEGIN PRIVATE KEY-----“ beginnt) und fügen Sie ihn in SERVICE_ACCOUNT_PRIVATE_KEY im Apps Script-Projekt ein.
Kopieren Sie den Wert von „client_email“ aus der Anmeldedatendatei und fügen Sie ihn in „SERVICE_ACCOUNT_EMAIL“ im Apps Script-Projekt ein.
Verknüpfen Sie das Apps Script-Projekt mit dem von Ihnen erstellten Google Cloud -Projekt.
Kehren Sie zur Google Cloud Console zurück und wählen Sie das Menüelement ☰ > IAM & Verwaltung > Einstellungen aus.
Kopieren Sie die auf dieser Seite definierte Projektnummer.
Wählen Sie in Ihrem Apps Script-Projekt das Menüelement Projekteinstellungen > Projekt aus und fügen Sie die Projektnummer in das Dialogfeld „Projektnummer hier eingeben“ ein. Google Cloud
Klicken Sie auf Projekt festlegen.
Google Chat API aktivieren
- Rufen Sie ☰ > APIs & Dienste auf und wählen Sie Bibliothek aus.
- Suchen Sie nach Google Chat API und klicken Sie auf das einzige Ergebnis.
- Klicken Sie auf AKTIVIEREN.
Dadurch wird die API für Ihr Projekt aktiviert.
Bot bereitstellen
- Klicken Sie in der Apps Script-Benutzeroberfläche auf Bereitstellen > Neue Bereitstellung.
- Wählen Sie für den neuen Bereitstellungstyp Add-on aus.
- Geben Sie einen Namen und eine Beschreibung für die Bereitstellung ein und klicken Sie auf Speichern.
- Klicken Sie nach dem Speichern neben der gerade erstellten Bereitstellung auf ID abrufen und kopieren Sie den Wert der Bereitstellungs-ID.
Google Chat-Bot konfigurieren:
- Rufen Sie in der Google Cloud Console ☰ > APIs & Dienste > Dashboard auf.
- Wählen Sie in der Liste der aktivierten APIs die Google Chat API aus.
- Klicken Sie auf Verwalten, um die Google Chat API-Seite zu öffnen.
Wählen Sie auf der geöffneten Seite den Tab Konfiguration aus und richten Sie die Bot-Konfiguration ein:
- Geben Sie im Feld App-Name „Google Security Operations Chat App“ ein.
- Geben Sie im Feld Avatar-URL https://developers.google.com/chat/images/chat-product-icon.png ein.
- Geben Sie im Feld Description (Beschreibung) „Google SecOps Chat App that can be used to send messages from Google SecOps to a Google Chat Spaces“ (Google SecOps Chat-App, mit der Nachrichten von Google SecOps an einen Google Chat-Gruppenbereich gesendet werden können) ein.
- Wählen Sie im Abschnitt Funktionen die Option Anwendung funktioniert in Bereichen mit mehreren Nutzern aus.
- Wählen Sie im Bereich Verbindungseinstellungen die Option Apps Script-Projekt aus und fügen Sie die Bereitstellungs-ID ein, die Sie im Rahmen der Anleitung Bot bereitstellen erhalten haben.
- Wählen Sie im Bereich Berechtigungen die Option Bestimmte Personen und Gruppen in Ihrer Domain aus und geben Sie an, wer mit dem Bot interagieren darf.
- Klicken Sie auf Speichern. Die App-Konfiguration ist abgeschlossen.
Da die Google Chat App keine Gruppenbereiche erstellen (Unterhaltungen starten) kann, muss die Google SecOps Chat App den Gruppenbereichen hinzugefügt werden, an die sie Nachrichten senden soll.
Nachdem die Integration konfiguriert wurde, kann mit der Aktion „List Spaces“ (Projektbereiche auflisten) abgerufen werden, auf welche Projektbereiche die Google SecOps-App Zugriff hat (an die Nachrichten gesendet werden können).
Wenn bei der Aktion „Bereiche auflisten“ keine verfügbaren Bereiche angezeigt werden, kann Ihre App keine Nachrichten in Bereichen senden. Bitte kehren Sie zur detaillierten Anleitung oben zurück und prüfen Sie, ob Sie alle Schritte sorgfältig ausgeführt haben.
Google Chat-Integration in Google SecOps konfigurieren
Eine ausführliche Anleitung zum Konfigurieren einer Integration in Google SecOps finden Sie unter Integrationen konfigurieren.
Integrationsparameter
Verwenden Sie die folgenden Parameter, um die Integration zu konfigurieren:
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
API-Stamm-URL | String | https://chat.googleapis.com/ | Ja | Die API-Stamm-URL, die von der Integration verwendet wird, um eine Verbindung zum Google Chat-Dienst herzustellen. |
Dienstkonto | Passwort | – | Ja | Inhalt der JSON-Datei des Dienstkontos, die der Chatbot für die Arbeit mit dem Google Chat-Dienst verwendet. |
SSL überprüfen | Kästchen | Aktiviert | Ja | Wenn diese Option aktiviert ist, prüfen Sie, ob das SSL-Zertifikat für die Verbindung zum Google Chat-Dienst gültig ist. |
Aktionen
Ping
Beschreibung
Testen Sie die Verbindung zu Google Chat mit den Parametern, die auf der Seite mit der Integrationskonfiguration auf dem Tab „Google Security Operations Marketplace“ angegeben sind.
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 |
Fall-Repository
Ergebnistyp | Wert/Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Bei Erfolg: „Successfully connected to the Google Chat service with the provided connection parameters!“ (Die Verbindung zum Google Chat-Dienst wurde mit den angegebenen Verbindungsparametern erfolgreich hergestellt.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten oder Verbindungsverlust: „Verbindung zum Google Chat-Dienst konnte nicht hergestellt werden. Fehler: {0}".format(exception.stacktrace)" |
Allgemein |
Spaces auflisten
Beschreibung
Listet Gruppenbereiche auf, denen der aktuell konfigurierte Google Chat-Bot hinzugefügt wurde.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Filterschlüssel | DDL | Wählen Sie eine Option aus. Mögliche Werte:
|
Nein | Geben Sie den Schlüssel an, der zum Filtern von Google Chat-Bereichen verwendet werden muss. |
Filterlogik | DDL | Nicht angegeben Mögliche Werte:
|
Nein | Geben Sie an, welche Filterlogik angewendet werden soll. Die Filterlogik basiert auf dem Wert, der im Parameter „Filterschlüssel“ angegeben ist. |
Filterwert | String | – | Nein | Geben Sie an, welcher Wert im Filter verwendet werden soll. Wenn „Gleich“ ausgewählt ist, wird in den Ergebnissen nach der genauen Übereinstimmung gesucht. Wenn „Enthält“ ausgewählt ist, versucht die Aktion, Ergebnisse zu finden, die den angegebenen Teilstring enthalten. Wenn für diesen Parameter nichts angegeben wird, wird der Filter nicht angewendet. Die Filterlogik basiert auf dem Wert, der im Parameter „Filterschlüssel“ angegeben ist. |
Maximale Anzahl zurückzugebender Datensätze | Ganzzahl | 50 | Nein | Geben Sie die Anzahl der zurückzugebenden Datensätze an. Wenn nichts angegeben wird, werden 50 Datensätze zurückgegeben. |
Nutzer-Mitgliedschaften einschließen | Kästchen | Deaktiviert | Nein | Wenn diese Option aktiviert ist, werden Informationen zur Mitgliedschaft von Nutzern der Tabelle „Vorgangswand“ und dem JSON-Ergebnis der Aktion hinzugefügt. |
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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn Daten verfügbar sind (is_success=true): „Successfully found added spaces for the provided criteria in Google Chat.“ (Für die angegebenen Kriterien wurden in Google Chat erfolgreich hinzugefügte Bereiche gefunden.) Wenn keine Daten verfügbar sind (is_success=false): „Für die angegebenen Kriterien wurden in Google Chat keine Gruppenbereiche gefunden.“ Wenn der Parameter „Filter Value“ keinen Wert hat (is_success=true): „Der Filter wurde nicht angewendet, da der Parameter ‚Filterwert‘ einen leeren Wert hat.“ Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn der Parameter „Filterschlüssel“ auf „Select One“ (Einen auswählen) und der Parameter „Filterlogik“ auf „Equal“ (Gleich) oder „Contains“ (Enthält) festgelegt ist: „Fehler beim Ausführen der Aktion ‚List Spaces‘.“ Grund: Sie müssen ein Feld aus dem Parameter „Filterschlüssel“ auswählen.“ Wenn ein ungültiger Wert für den Parameter „Max. zurückzugebende Datensätze“ angegeben wird: „Fehler beim Ausführen der Aktion ‚List Spaces‘.“ Grund: Für „Max. zurückzugebende Datensätze“ wurde ein ungültiger Wert angegeben. Es muss eine positive Zahl angegeben werden.“ Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚List Spaces‘.“ Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Tabelle „Fall-Repository“ | Tabellenname:Verfügbare Spaces, denen der Bot hinzugefügt wurde Tabellenspalten: {fields} Hinweis:Wenn das Kästchen „Nutzer-Mitgliedschaften einbeziehen“ aktiviert ist, werden zusätzliche Spalten mit einem Anzeigenamen für die Gruppenbereichsmitglieder hinzugefügt. |
Allgemein |
Nachricht senden
Beschreibung
Senden Sie eine Nachricht an einen Google Chat-Bereich, dem die Google SecOps-Anwendung hinzugefügt wurde.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Name des Gruppenbereichs | String | – | Ja | Geben Sie den Namen des Gruppenbereichs an, an den die Nachricht gesendet werden soll. Beispiel für einen Projektbereichsnamen: AAAAdaTsel0 |
Nachrichtentext | String | – | Ja | Geben Sie den Text der Nachricht an, die gesendet 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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Nachricht erfolgreich gesendet wurde (is_success=true): „Die Nachricht wurde gesendet.“ Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein kritischer Fehler gemeldet wird, z. B. keine Verbindung oder falsche Anmeldedaten: „Fehler beim Ausführen der Aktion ‚Nachricht senden‘. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Erweiterte Nachricht senden
Beschreibung
Senden Sie eine erweiterte Nachricht an einen Google Chat-Bereich basierend auf der bereitgestellten JSON-Nutzlast der Nachricht.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Name des Gruppenbereichs | String | – | Ja | Geben Sie den Namen des Gruppenbereichs an, an den die Nachricht gesendet werden soll. Beispiel für einen Projektbereichsnamen: AAAAdaTsel0 |
JSON-Nutzlast für Nachrichten | String | {"cards":[{"sections":[{"widgets":[{"image":{"imageUrl":"https://..."}},{"buttons":[{"textButton":{"text":"OPEN IN GOOGLE MAPS","onClick":{"openLink":{"url":"https://..."}}}}]}]}]}]} | Ja | Geben Sie die JSON-Nutzlast an, die mit der Nachricht gesendet werden soll. Beispiele für eine Nachrichtennutzlast finden Sie in diesem Artikel. |
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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Nachricht erfolgreich gesendet wurde (is_success=True): „Message was sent successfully.“ (Die Nachricht wurde erfolgreich gesendet.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn die bereitgestellte JSON-Nutzlast ungültig ist: „Fehler beim Ausführen der Aktion ‚Erweiterte Nachricht senden‘. Grund: Die bereitgestellte JSON-Nutzlast der Nachricht ist ungültig. " Wenn ein kritischer Fehler gemeldet wird, z. B. keine Verbindung oder falsche Anmeldedaten: „Fehler beim Ausführen der Aktion ‚Erweiterte Nachricht senden‘. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten