Atlassian Confluence Server in Google SecOps einbinden

In diesem Dokument wird beschrieben, wie Sie Atlassian Confluence Server in Google Security Operations (Google SecOps) einbinden.

Integrationsversion: 3.0

Vorbereitung

Wählen Sie eine der folgenden Optionen aus, um sich beim Confluence-Server zu authentifizieren:

  • Der Nutzername und das Passwort für ein dediziertes Konto.
  • Das persönliche Zugriffstoken (PAT).

Wenn beide Authentifizierungsoptionen für die Integration verfügbar sind, hat das PAT Vorrang vor dem Nutzernamen und dem Passwort.

Für die Authentifizierung mit Nutzername und Passwort muss ein separates Konto erstellt werden, das für die Integration verwendet wird.
Für die Authentifizierung auf Grundlage des Zugriffstokens müssen Kontoberechtigungen konfiguriert werden. Das neue PAT entspricht dem aktuellen Berechtigungsniveau des Kontos.

So erstellen Sie ein Token:

  1. Gehen Sie in Confluence zu Konto > Kontoeinstellungen > Persönliche Zugriffstokens.
  2. Wählen Sie Token erstellen aus.
  3. Geben Sie einen Namen für das Token ein, das Sie erstellen.
  4. Optional: Für zusätzliche Sicherheit können Sie festlegen, dass Ihr Token nach einer bestimmten Anzahl von Tagen automatisch abläuft.
  5. Klicken Sie auf Erstellen.

Integrationsparameter

Für die Integration sind die folgenden Parameter erforderlich:

Parametername Typ Standardwert Ist obligatorisch Beschreibung
API-Stamm String https://ip_address Wahr Geben Sie den Confluence Server-API-Root an, mit dem eine Verbindung hergestellt werden soll.
Nutzername String Falsch Geben Sie einen Nutzernamen für die Verbindung an. Die Integration unterstützt die Authentifizierung mit Nutzername und Passwort oder mit einem persönlichen Zugriffstoken.
Passwort Passwort Falsch Geben Sie ein Passwort für die Verbindung an. Die Integration unterstützt die Authentifizierung mit Nutzername und Passwort oder mit einem persönlichen Zugriffstoken.
Persönliches Zugriffstoken Passwort Falsch Geben Sie ein Token an, das für die Verbindung verwendet werden soll. Die Integration unterstützt die Authentifizierung mit Nutzername und Passwort oder mit einem persönlichen Zugriffstoken.
SSL überprüfen Kästchen Kästchen angeklickt Falsch Wenn diese Option aktiviert ist, wird das für den API-Root konfigurierte Zertifikat validiert.

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

Weitere Informationen zu Aktionen finden Sie unter Ausstehende Aktionen über „Mein Arbeitsbereich“ bearbeiten und Manuelle Aktion ausführen.

Ping

Verbindung testen

Parameter

Ausführen am

Die Aktion wird nicht für Entitäten ausgeführt.

Aktionsergebnisse

Scriptergebnis
Name des Scriptergebnisses Wertoptionen Beispiel
is_success Wahr/falsch is_success:False

Wenn die Aktion erfolgreich ist (es gibt ein JSON in der Antwort und die Serverantwort ist 200), sollte is_success auf True gesetzt werden. Andernfalls False.

Fall-Repository
Ergebnistyp Wert/Beschreibung Typ (Entität/Allgemein)
Ausgabemeldung* Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen:
  • Bei Erfolg:
    print "Successfully connected to the Atlassian Confluence Server instance with the provided connection parameters!"
  • Wenn sowohl Nutzername und Passwort als auch das persönliche Zugriffstoken angegeben werden:
    „Sowohl Nutzername und Passwort als auch das persönliche Zugriffstoken werden für die Integration angegeben. Das persönliche Zugriffstoken wird verwendet, um eine Verbindung herzustellen.“

Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden:
  • Wenn weder (Nutzername + Passwort) noch PAT angegeben werden
    :
    print "Failed to connect to Atlassian Confluence Server, expecting either username and password, or personal access token to connect with!"
  • Bei kritischem Fehler, z. B. falsche Anmeldedaten oder Verbindungsverlust:
    print "Failed to connect to the Atlassian Confluence Server instance! Fehler: {0}".format(exception.stacktrace)
Allgemein

Seiten auflisten

Listet Seiten auf, die in der Atlassian Confluence Server-Instanz basierend auf den angegebenen Kriterien verfügbar sind.

Parameter

Parametername Typ Standardwert Ist obligatorisch Beschreibung
Filterschlüssel DDL Select One

Mögliche DDL-Werte:
  • Titel
  • Name des Gruppenbereichs
  • Status
Falsch Geben Sie den Schlüssel an, der zum Filtern von Seiten verwendet werden muss.
Filterlogik DDL Nicht angegeben

Mögliche Werte für DDL:
  • Nicht angegeben
  • Gleich
  • Enthält
Falsch Geben Sie an, welche Filterlogik angewendet werden soll. Die Filterlogik basiert auf dem im Parameter Filter Key angegebenen Wert.
Filterwert String Falsch Geben Sie an, welcher Wert im Filter verwendet werden soll.
Wenn Equal ausgewählt ist, wird versucht, in den Ergebnissen die genaue Übereinstimmung zu finden.
Wenn Contains ausgewählt ist, versucht die Aktion, Ergebnisse zu finden, die diesen Teilstring enthalten.
Wenn für diesen Parameter nichts angegeben wird, wird der Filter nicht angewendet.
Die Filterlogik basiert auf dem Wert, der im Parameter Filter Key angegeben ist.
Maximale Anzahl zurückzugebender Datensätze Integer 50 Falsch Geben Sie an, wie viele Datensätze zurückgegeben werden sollen.
Wenn nichts angegeben wird, werden 50 Datensätze zurückgegeben.

Ausführen am

Die Aktion wird nicht für Entitäten ausgeführt.

Aktionsergebnisse

Scriptergebnis
Name des Scriptergebnisses Wertoptionen Beispiel
is_success Wahr/falsch is_success:False

Wenn die Aktion erfolgreich ausgeführt wird (keine Fehler zurückgegeben, Serverantwort ist 200 OK), sollte is_success auf True gesetzt werden.

JSON-Ergebnis
{
   "results": [
       {
           "id": "PAGE_ID",
           "type": "page",
           "status": "current",
           "title": "Tell people what you think in a comment (step 8 of 9)",
           "space": {
               "id": 131073,
               "key": "ds",
               "name": "Demonstration Space",
               "type": "global",
               "_links": {
                   "webui": "/display/ds",
                   "self": "http://192.0.2.45:8090/rest/api/space/ds"
               },
               "_expandable": {
                   "metadata": "",
                   "icon": "",
                   "description": "",
                   "retentionPolicy": "",
                   "homepage": "/rest/api/content/PAGE_ID"
               }
           },
           "extensions": {
               "position": 7
           },
           "_links": {
               "webui": "/pages/viewpage.action?pageId=PAGE_ID",
               "edit": "/pages/resumedraft.action?draftId=DRAFT_ID",
               "tinyui": "/x/AYAB",
               "self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
           },
           "_expandable": {
               "container": "/rest/api/space/ds",
               "metadata": "",
               "operations": "",
               "children": "/rest/api/content/PAGE_ID/child",
               "restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
               "history": "/rest/api/content/PAGE_ID/history",
               "ancestors": "",
               "body": "",
               "version": "",
               "descendants": "/rest/api/content/PAGE_ID/descendant"
           }
       },
       ...
   ],
   "start": 0,
   "limit": 5,
   "size": 5,
   "_links": {
       "self": "http://192.0.2.45:8090/rest/api/content?expand=space",
       "next": "/rest/api/content?expand=space&limit=5&start=5",
       "base": "http://192.0.2.45:8090",
       "context": ""
   }
}
Fall-Repository
Ergebnistyp Wert/Beschreibung Typ (Entität/Allgemein)
Ausgabemeldung* Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen:

  • Wenn Daten verfügbar sind(is_success = true):
print "Successfully found pages for the provided criteria in Atlassian Confluence Server".

  • Wenn keine Daten verfügbar sind (is_success=false)
print "No pages were found for the provided criteria in Atlassian Confluence Server"

  • Wenn „Filter Value“ leer ist (is_success=true):
Der Filter wurde nicht angewendet, da der Parameter „Filterwert“ einen leeren Wert hat.

Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden:

  • Wenn „Filterschlüssel“ == „Select One“ (Auswählen) und „Filterlogik“ == „Equal“ (Gleich) oder „Contains“ (Enthält):
Fehler beim Ausführen der Aktion „{action name}“. Grund: Sie müssen ein Feld aus dem Parameter Filter Key auswählen.

  • Wenn ein ungültiger Wert für „Max. zurückzugebende Datensätze“ angegeben wird :
Fehler beim Ausführen der Aktion „{action name}“. Grund: „Für ‚Max. zurückzugebende Datensätze‘ wurde ein ungültiger Wert angegeben: <angegebener Wert>. Es muss eine positive Zahl angegeben werden.“

  • Bei schwerwiegenden Fehlern wie falschen Anmeldedaten, fehlender Verbindung zum Server oder anderen:
„Fehler beim Ausführen der Aktion ‚{action name}‘. Grund: {0}''.format(error.Stacktrace)

  • Wenn weder Nutzername und Passwort noch ein PAT angegeben werden :
print "Failed to connect to Atlassian Confluence Server, expecting either username and password, or personal access token to connect with!"
Allgemein
Tabelle „Fall-Repository“ Name:Available Confluence Pages
Spalten:
  • ID
  • Titel
  • Gruppenbereich
  • Status
  • Erstellt
Allgemein

Seite nach ID abrufen

Rufen Sie eine Atlassian Confluence Server-Seite anhand der ID ab.

Parameter

Parametername Typ Standardwert Ist obligatorisch Beschreibung
Seiten-ID String Wahr Geben Sie die Seiten-ID an, die zurückgegeben werden soll.
Maximieren CSV body.storage Falsch Geben Sie den Parameter „expand“ an, um zusätzliche Informationen zur Seite zurückzugeben. Für den Parameter können mehrere Werte als durch Kommas getrennte Liste angegeben werden.
Standardmäßig werden die Inhalte der Seite mit body.storage abgerufen.

Ausführen am

Die Aktion wird nicht für Entitäten ausgeführt.

Aktionsergebnisse

Scriptergebnis
Name des Scriptergebnisses Wertoptionen Beispiel
is_success Wahr/falsch is_success:False

Wenn die Aktion erfolgreich ausgeführt wird (Seite wird zurückgegeben, Serverantwort ist 200 OK), sollte is_success auf True gesetzt werden.

JSON-Ergebnis
{
   "id": "PAGE_ID",
   "type": "page",
   "status": "current",
   "title": "title",
   "body": {
       "storage": {
           "value": "<p>test page</p><p>11</p><p>aa</p><p>aa</p><p>aa</p><p><br /></p><p><br /></p>",
           "representation": "storage",
           "_expandable": {
               "content": "/rest/api/content/PAGE_ID"
           }
       },
       "_expandable": {
           "editor": "",
           "view": "",
           "export_view": "",
           "styled_view": "",
           "anonymous_export_view": ""
       }
   },
   "extensions": {
       "position": "none"
   },
   "_links": {
       "webui": "/display/SIEM/111",
       "edit": "/pages/resumedraft.action?draftId=PAGE_ID&draftShareId=cf8b3a21-8e36-4a83-a696-51fcb4428d1c",
       "tinyui": "/x/TIAB",
       "collection": "/rest/api/content",
       "base": "http://192.0.2.45:8090",
       "context": "",
       "self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
   },
   "_expandable": {
       "container": "/rest/api/space/SIEM",
       "metadata": "",
       "operations": "",
       "children": "/rest/api/content/PAGE_ID/child",
       "restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
       "history": "/rest/api/content/PAGE_ID/history",
       "ancestors": "",
       "version": "",
       "descendants": "/rest/api/content/PAGE_ID/descendant",
       "space": "/rest/api/space/SIEM"
   }
}
Fall-Repository
Ergebnistyp Wert/Beschreibung Typ (Entität/Allgemein)
Ausgabemeldung* Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen:

  • Wenn die Seite gefunden wird (is_success = true):
print "Successfully fetched page information with id: <id>"

  • Wenn keine Daten verfügbar sind (is_success=false):
print "The following page id was not found in the Atlassian Confluence Server: <page id>"

Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden:

  • Bei schwerwiegenden Fehlern wie falschen Anmeldedaten, fehlender Verbindung zum Server oder anderen:
"Fehler beim Ausführen der Aktion "<Action name>". Grund: {0}''.format(error.Stacktrace)

  • Wenn weder Nutzername und Passwort noch ein PAT angegeben werden :
print "Failed to connect to Atlassian Confluence Server, expecting either username and password, or personal access token to connect with!"
Allgemein

Untergeordnete Seiten abrufen

Untergeordnete Seiten für die Atlassian Confluence Server-Seite abrufen.

Parameter

Parametername Typ Standardwert Ist obligatorisch Beschreibung
Seiten-ID String Wahr Geben Sie die Seiten-ID an, die zurückgegeben werden soll.
Maximale Anzahl der zurückzugebenden Datensätze Integer 10 Wahr Geben Sie die Anzahl der untergeordneten Seiten an, die zurückgegeben werden sollen.

Ausführen am

Die Aktion wird nicht für Entitäten ausgeführt.

Aktionsergebnisse

Scriptergebnis
Name des Scriptergebnisses Wertoptionen Beispiel
is_success Wahr/falsch is_success:False

Wenn die Aktion erfolgreich ausgeführt wird (Seite wird zurückgegeben, Serverantwort ist 200 OK), sollte is_success auf True gesetzt werden.

JSON-Ergebnis
{
   "results": [
       {
           "id": "PAGE_ID",
           "type": "page",
           "status": "current",
           "title": "test child page!",
           "extensions": {
               "position": "none"
           },
           "_links": {
               "webui": "/pages/viewpage.action?pageId=PAGE_ID",
               "edit": "/pages/resumedraft.action?draftId=PAGE_ID&draftShareId=799fd068-5053-4889-9120-c1a3c970fdbd",
               "tinyui": "/x/T4AB",
               "self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID"
           },
           "_expandable": {
               "container": "/rest/api/space/SIEM",
               "metadata": "",
               "operations": "",
               "children": "/rest/api/content/PAGE_ID/child",
               "restrictions": "/rest/api/content/PAGE_ID/restriction/byOperation",
               "history": "/rest/api/content/PAGE_ID/history",
               "ancestors": "",
               "body": "",
               "version": "",
               "descendants": "/rest/api/content/PAGE_ID/descendant",
               "space": "/rest/api/space/SIEM"
           }
       }
   ],
   "start": 0,
   "limit": 1,
   "size": 1,
   "_links": {
       "self": "http://192.0.2.45:8090/rest/api/content/PAGE_ID/child/page",
       "base": "http://192.0.2.45:8090",
       "context": ""
   }
}
Fall-Repository
Ergebnistyp Wert/Beschreibung Typ (Entität/Allgemein)
Ausgabemeldung* Die Aktion darf nicht fehlschlagen und die Ausführung des Playbooks nicht stoppen:

Wenn Daten verfügbar sind (is_success = true):
print "Successfully found child pages for the provided Atlassian Confluence Server page id: <page_id>".

Wenn keine Daten verfügbar sind (is_success=false):
print "No child pages were found for the provided Atlassian Confluence Server page id <page_id>"

Die Aktion muss fehlschlagen und die Ausführung des Playbooks stoppen:

  • Wenn ein ungültiger Wert für „Max. zurückzugebende Datensätze“ angegeben wird :
Fehler beim Ausführen der Aktion „{action name}“. Grund: „Für ‚Max. zurückzugebende Datensätze‘ wurde ein ungültiger Wert angegeben: <angegebener Wert>. Es muss eine positive Zahl angegeben werden.“

  • Bei schwerwiegenden Fehlern wie falschen Anmeldedaten, fehlender Verbindung zum Server oder anderen:
„Fehler beim Ausführen der Aktion ‚{action name}‘. Grund: {0}''.format(error.Stacktrace)
  • Wenn weder Nutzername und Passwort noch ein PAT angegeben werden :
print "Failed to connect to Atlassian Confluence Server, expecting either username and password, or personal access token to connect with!"
Allgemein

Seitenkommentare abrufen

Kommentare für die Atlassian Confluence Server-Seite abrufen.

Parameter

Parametername Typ Standardwert Ist obligatorisch Beschreibung
Seiten-ID String Wahr Geben Sie die Seiten-ID an, die zurückgegeben werden soll.
Maximieren CSV body.storage Falsch Geben Sie den Parameter „expand“ an, um zusätzliche Informationen zur Seite zurückzugeben. Für den Parameter können mehrere Werte als durch Kommas getrennte Liste angegeben werden.
Standardmäßig werden die Inhalte der Seite mit body.storage abgerufen.
Maximale Anzahl der zurückzugebenden Datensätze Integer 10 Wahr Geben Sie die Anzahl der untergeordneten Seiten an, die zurückgegeben werden sollen.

Ausführen am

Die Aktion wird nicht für Entitäten ausgeführt.

Aktionsergebnisse

Scriptergebnis
Name des Scriptergebnisses Wertoptionen Beispiel
is_success Wahr/falsch is_success:False

Wenn die Aktion erfolgreich ausgeführt wird (Kommentare werden zurückgegeben, Serverantwort ist 200 OK), sollte is_success auf True gesetzt werden.

JSON-Ergebnis
{
   "results": [
       {
           "id": "ID",
           "type": "comment",
           "status": "current",
           "title": "Re: 111",
           "body": {
               "storage": {
                   "value": "<p>comment1</p>",
                   "representation": "storage",
                   "_expandable": {
                       "content": "/rest/api/content/ID"
                   }
               },
               "_expandable": {
                   "editor": "",
                   "view": "",
                   "export_view": "",
                   "styled_view": "",
                   "anonymous_export_view": ""
               }
           },
           "extensions": {
               "location": "footer",
               "_expandable": {
                   "resolution": ""
               }
           },
           "_links": {
               "webui": "/display/SIEM/111?focusedCommentId=98387#comment-ID",
               "self": "http://203.0.113.1:8090/rest/api/content/ID"
           },
           "_expandable": {
               "container": "/rest/api/content/ID",
               "metadata": "",
               "operations": "",
               "children": "/rest/api/content/ID/child",
               "restrictions": "/rest/api/content/ID/restriction/byOperation",
               "history": "/rest/api/content/ID/history",
               "ancestors": "",
               "version": "",
               "descendants": "/rest/api/content/ID/descendant",
               "space": "/rest/api/space/SIEM"
           }
       },
       ...
   ],
   "start": 0,
   "limit": 10,
   "size": 2,
   "_links": {
       "self": "http://203.0.113.1:8090/rest/api/content/ID/child/comment?expand=body.storage",
       "base": "http://203.0.113.1:8090",
       "context": ""
   }
}
Fall-Repository
Ergebnistyp Wert/Beschreibung Typ (Entität/Allgemein)
Ausgabemeldung* Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen:

  • Wenn Daten verfügbar sind(is_success = true):
print "Successfully fetched page comments for the provided Atlassian Confluence Server page id: <page_id>".

  • Wenn keine Daten verfügbar sind (is_success=false)
print "No page comments were found for the provided Atlassian Confluence Server page id <page_id>"

Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden:

  • Wenn ein ungültiger Wert für „Max. zurückzugebende Datensätze“ angegeben wird :
Fehler beim Ausführen der Aktion „{action name}“. Grund: „Für ‚Max. zurückzugebende Datensätze‘ wurde ein ungültiger Wert angegeben: <angegebener Wert>. Es muss eine positive Zahl angegeben werden.“

  • Bei schwerwiegenden Fehlern wie falschen Anmeldedaten, fehlender Verbindung zum Server oder anderen:
„Fehler beim Ausführen der Aktion ‚{action name}‘. Grund: {0}''.format(error.Stacktrace)

  • Wenn weder Nutzername und Passwort noch ein PAT angegeben werden :
print "Failed to connect to Atlassian Confluence Server, expecting either username and password, or personal access token to connect with!"
Allgemein

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten