TIPCommon.base

Das Modul TIPCommon.base dient als grundlegende technische Referenz für die Entwicklung von Integrationen in Google SecOps und bietet die Kernlogik für Aktionen, Hintergrundjobs und plattformübergreifende Datennormalisierung.

Parsing von Aktionsdaten

Dieser Abschnitt enthält Hilfsfunktionen, die erforderlich sind, um Falldaten aus Roh-API-Antworten in strukturierte Objekte für die Verwendung in Automatisierungsaufgaben zu parsen.

TIPCommon.base.action.action_parser.parse_case_attachment

TIPCommon.base.action.action_parser.parse_case_attachment(attachment: MutableMapping[str, Any]) → CaseAttachment

Mit diesem Dienstprogramm werden Rohdaten für JSON-Anhänge aus einer API-Antwort in ein strukturiertes CaseAttachment-Objekt konvertiert.

Parameter

Parameter
attachment Die Roh-JSON-Daten des Anhangs, wie sie aus der API-Antwort abgerufen wurden.

TIPCommon.base.action.action_parser.parse_case_comment

TIPCommon.base.action.action_parser.parse_case_comment(comment: MutableMapping[str, Any]) → CaseComment

Mit dieser Funktion werden Rohdaten von JSON-Kommentaren in ein CaseComment-Objekt geparst, um den Zugriff auf Kommentar-Metadaten zu erleichtern.

Parameter

Parameter
comment Die Roh-JSON-Daten des Kommentars, wie sie aus der API-Antwort abgerufen wurden.

class TIPCommon.base.action.base_action.Action

class TIPCommon.base.action.base_action.Action(name: str)

Basen: ABC, Generic[ApiClient]

Die Basisklasse Action bietet eine einheitliche Infrastruktur für die Entwicklung von Automatisierungen, einschließlich der Verwaltung von Properties und allgemeinen Ausführungsabläufen.

Parameter

Parameter
name Die Kennung für das Aktionsscript.

Attribute

Die folgenden Attribute verwalten den internen Status der Aktion und ermöglichen den Zugriff auf SDK-Ressourcen und Integrationsclients.

Attribute
_soar_action

SiemplifyAction

Das SiemplifyAction-SDK-Objekt.

_api_client

Apiable

Der API-Client der Integration.

_name

str

Der Name des Skripts, in dem diese Aktion verwendet wird.

_action_start_time

int

Die Startzeit der Aktion in Unix.

_logger

SiemplifyLogger

Das Logger-Objekt, das für das Logging in Aktionen verwendet wird.

_params

Container

Der Parametercontainer für diese Aktion.

global_context

dict

Ein Dictionary zum Speichern des Kontexts, falls erforderlich.

_entity_types

list[EntityTypesEnum]

Die von der Aktion unterstützten Entitätstypen.

_entities_to_update

list[Entity]

Die Einheiten, die aktualisiert werden sollen, wenn die Aktion endet.

json_results

JSON

Die JSON-Ergebnisse der Aktion.

_attachments

list[Attachment]

Die Anhänge mit den Fallergebnissen, die hinzugefügt werden sollen.

_contents

list[Content]

Die Inhalte des Fallergebnisses, die hinzugefügt werden sollen.

_data_tables

list[DataTable]

Die Fallergebnis-Datentabellen, die hinzugefügt werden sollen.

_html_reports

list[HTMLReport]

Die HTML-Berichte mit Testergebnissen, die hinzugefügt werden sollen.

list[Link]

Die hinzuzufügenden Links zum Fallergebnis.

_markdowns

list[Markdown]

Die hinzuzufügenden Fallresultat-Markdowns.

_entity_insights

list[EntityInsight]

Die hinzuzufügenden Case-Entitätsstatistiken.

_case_insights

list[CaseInsight]

Die hinzuzufügenden Fallstatistiken.

_execution_state

ExecutionState

Anzeige des endgültigen Ausführungsstatus der Aktion.

_result_value

bool

Der Wert des Endergebnisses der Aktion.

_output_message

str

Die Ausgabemeldung der Aktion bei Erfolg.

_error_output_message

str

Die Ausgabenachricht der Aktion, wenn sie fehlschlägt.

Methoden

Standardmethoden zum Verwalten des Lebenszyklus und der Ausgabeformatierung eines Aktionsskripts.

- run() Führt die Aktion aus.
- _get_adjusted_json_results() Passt das JSON-Ergebnis an eine bestimmte Struktur an.

Abstrakte Methoden

Entwickler müssen diese Methoden überschreiben, um die eindeutige Logik für eine benutzerdefinierte Aktion zu definieren.

Abstrakte Methoden
_validate_params() Validiert die Parameter für diese Aktion.
_init_api_clients() Initialisiert die API-Clients der Aktion.
_perform_action() Führt die Hauptlogik der Aktion aus.

Zusätzliche Methoden

Diese optionalen Methoden werden in bestimmten Phasen des Lebenszyklus der Aktionsausführung ausgelöst, um Benachrichtigungen zu verarbeiten oder Ressourcen zu bereinigen.

  • _get_entity_types()
  • _finalize_action_on_success()
  • _finalize_action_on_failure()
  • _on_entity_failure()
  • _handle_timeout()
  • _extract_action_parameters()
  • _finalize()

SDK-Wrapper-Methoden

Diese Methoden bieten einen einfachen Zugriff auf das zugrunde liegende SDK, sodass Aktionen mit Fällen, Benachrichtigungen und Plattformkonfigurationen interagieren können.

  • _add_attachment_to_current_case()
  • _get_current_case_attachments()
  • _add_comment_to_case()
  • _get_current_case_comments()
  • _assign_case_to_user()
  • _add_tag_to_case()
  • _attach_playbook_to_current_alert()
  • _get_similar_cases_to_current_case()
  • _get_alerts_ticket_ids_from_cases_closed_since_timestamp()
  • _change_current_case_stage()
  • _change_current_case_priority()
  • _close_current_case()
  • _close_alert()
  • _escalate_case()
  • _mark_case_as_important()
  • _raise_incident()
  • _add_entity_to_case()
  • _update_alerts_additional_data()
  • _get_current_integration_configuration()
  • _any_alert_entities_in_custom_list()
  • _add_alert_entities_to_custom_list()
  • _remove_alert_entities_from_custom_list()

Beispielimplementierung

Das folgende Beispiel zeigt, wie Sie eine benutzerdefinierte Aktion implementieren, indem Sie von der Basisklasse Action erben.

from TIPCommon.base.actions.action_base import Action
from TIPCommon.validation import ParameterValidator

SOME_ACTION_SCRIPT_NAME = 'Some Integration - Some Action'

class SomeAction(Action):

 def _validate_params(self) -> None:
 validator = ParameterValidator(self.soar_action)
 ... # validation logic

 def _perform_action(self, entity: Entity) -> None:
 try:
 self.logger.info('Querying Api client')
 data = self.api_client.do_something(
 param=self.params.query,
 entity=entity.original_identifier
 )

 ... # Some logic to process the data

 except SomeCustomException as err:
 self.error_output_message = (
 "Action wasn't able to successfully do its thing."

 )
 raise err from err


def main() -> None:
 SomeAction(SEARCH_GRAPHS_SCRIPT_NAME).run()


if __name__ == '__main__':
 main()

Eigenschaften

Die folgenden Eigenschaften bieten schreibgeschützten oder verwalteten Zugriff auf Aktionsmetadaten, Ergebnisse und SDK-Objekte.

action_start_time

property action_start_time: int

Gibt einen int zurück, der die Startzeit der Aktion im Unix-Format darstellt.

api_client

property api_client: ApiClient | Collection[ApiClient] | Type[Tuple[ApiClient, ...]] | None

Gibt ein Apiable-Objekt zurück, das den für die Integration konfigurierten API-Client darstellt.

Anhänge

property attachments: list[Attachment]

Gibt eine Liste von Attachment-Objekten zurück, die die mit dieser Aktion verknüpften Anhänge des Fallergebnisses darstellen. Alle Anhänge in dieser Liste werden standardmäßig an das Ergebnis des Falls gesendet.

case_insights

property case_insights: list[CaseInsight]

Gibt eine Liste von CaseInsight-Objekten zurück, die übergeordnete Ergebnisse im Zusammenhang mit dieser Aktion darstellen. Alle Fallstatistiken in dieser Liste werden standardmäßig an das Fallergebnis gesendet.

Inhalt

property contents: list[Content]

Gibt eine Liste von Content-Objekten zurück, die Text-Ergebnisse für den Fall darstellen. Alle Inhalte in dieser Liste werden standardmäßig an das Fallergebnis gesendet.

data_tables

property data_tables: list[DataTable]

Gibt eine Liste von DataTable-Objekten zurück, die tabellarische Datenstatistiken für den Fall darstellen. Alle Datentabellen in dieser Liste werden standardmäßig an das Fallergebnis gesendet.

entities_to_update

property entities_to_update: list[DomainEntityInfo]

Gibt eine Liste von Entity-Objekten zurück, die nach Abschluss der Aktion auf der Plattform aktualisiert werden sollen.

entity_insights

property entity_insights: list[EntityInsight]

Gibt eine Liste von EntityInsight-Objekten zurück, die Ergebnisse darstellen, die mit bestimmten Einheiten verknüpft sind. Alle Entitätsstatistiken in dieser Liste werden standardmäßig an das Ergebnis des Falls gesendet.

entity_types

property entity_types: list[EntityTypesEnum]

Gibt eine Liste von EntityTypesEnum-Objekten zurück, die die Entitätstypen darstellen, die von der Aktion verarbeitet werden sollen. Wenn eine Aktion für Entitäten ausgeführt wird, werden nur die in dieser Liste aufgeführten Typen verarbeitet.

error_output_message

property error_output_message: str

Ruft die Meldung ab, die im Falle eines fehlgeschlagenen Laufs auf der Plattform angezeigt wird, oder legt sie fest. Der Standardwert ist Action ACTION_NAME failed.

execution_state

property execution_state: ExecutionState

Gibt ein ExecutionState-Objekt zurück, das den endgültigen Status der Verarbeitung darstellt. Folgende Status sind möglich:

  • ExecutionState.COMPLETED = 0
  • ExecutionState.IN_PROGRESS = 1
  • ExecutionState.FAILED = 2
  • ExecutionState.TIMED_OUT = 3

global_context

global_context: dict

Ein Dictionary, das zum Speichern und Abrufen von Kontextinformationen während der Ausführung von Aktionen verwendet wird.

html_reports

property html_reports: list[HTMLReport]

Gibt eine Liste von HTMLReport-Objekten zurück, die visuelle Berichte für das Fallergebnis darstellen. Alle HTML-Berichte in dieser Liste werden standardmäßig an das Testergebnis gesendet.

is_first_run

property is_first_run: bool

Gibt true zurück, wenn dies die erste Ausführung der Aktion ist, andernfalls false.

json_results

property json_results: Dict[str, Any] | List[Dict[str, Any]]

Gibt das formatierte JSON-Ergebnis zurück, das in der Fallübersicht angezeigt und in der nachgelagerten Playbook-Logik verwendet werden soll.

property links: list[Link]

Gibt eine Liste von Link-Objekten zurück, die externe Referenz-URLs für das Fallergebnis darstellen. Alle Links in dieser Liste werden standardmäßig an das Fallergebnis gesendet.

logger

property logger: NewLineLogger

Gibt die NewLineLogger-Instanz zurück, die für skriptspezifisches Logging verwendet wird.

Preisabschläge

property markdowns: list[Markdown]

Gibt eine Liste von Markdown-Objekten zurück, die formatierte Text-Insights darstellen. Alle Markdowns in dieser Liste werden standardmäßig an das Ergebnis des Falls gesendet.

Name

property name: str

Gibt den Stringnamen des Aktionsscripts zurück.

output_message

property output_message: str

Ruft die Meldung ab, die auf der Plattform angezeigt wird, um eine Zusammenfassung eines erfolgreichen Aktionslaufs zu geben, oder legt sie fest.

params

property params: Container

Gibt ein Container-Objekt zurück, das die Eingabeparameter der Aktion beschreibt. Jeder Parameter wird als snake_case-Attribut verfügbar gemacht.

result_value

property result_value: bool

Ruft den Erfolgsindikator ab, der an die Plattform zurückgegeben wird, oder legt ihn fest.

  • True: Die Aktion wurde erfolgreich ausgeführt.
  • False: Die Aktion ist fehlgeschlagen.

run

run(**kwargs)

Standardmethode zum Auslösen der Logik für die Ausführung der Aktion.

soar_action

property soar_action: SiemplifyAction

Gibt das zugrunde liegende SDK-SiemplifyAction-Objekt zurück, das für die direkte Plattforminteraktion verwendet wird.

class TIPCommon.base.action.base_enrich_action.EnrichAction

class TIPCommon.base.action.base_enrich_action.EnrichAction(name: str)

Basen: Action

EnrichAction ist eine spezielle Basisklasse für Aktionen, mit denen Entitätseigenschaften mit externen Daten aktualisiert werden.

Parameter

Der folgende Parameter ist erforderlich, um die Anreicherungsaktion zu initialisieren und auf der Plattform zu registrieren.

Parameter
name Die eindeutige Kennung für das Script der Anreicherungsaktion.

Attribute

Mit den folgenden Attributen werden die Daten verwaltet, die während der Entitätsiterationen verwendet werden, und der Inhalt definiert, der in den Ausgaberesultaten der Aktion enthalten ist.

Attribute
enrichment_data

dict

Die Anreicherungsdaten für die aktuelle Entität in jeder der Entitätsiterationen. Am Ende jeder Iteration wird das Attribut additional_properties der Entität mit self.enrichment_data aktualisiert. Das bedeutet, dass dieser Wert jedes Mal mit dem neuen Wert festgelegt wird.

entity_results

Any

Entitätsergebnisse, die in der JSON-Ausgabe für dieses Objekt enthalten sind.

global_context

dict

Ein Dictionary, das zum Speichern und Freigeben von Kontextdaten in verschiedenen Phasen der Ausführung der Anreicherungsaktion verwendet wird.

Abstrakte Methoden

Die folgenden abstrakten Methoden müssen in abgeleiteten Klassen implementiert werden, um die spezifischen Entitätstypen und die Anreicherungslogik für die Aktion zu definieren.

Abstrakte Methoden
_get_entity_types() Ruft den Typ der Entitäten ab, für die die Aktion ausgeführt wird.
_perform_enrich_action() Führen Sie die Hauptanreicherungslogik für eine Entität aus.

Private Methoden

Diese internen Methoden verarbeiten die Orchestrierung der Anreicherungslogik und sollten nicht geändert werden.

Private Methoden
_perform_action()

Bei dieser Methode werden die anderen abstrakten Methoden mit zusätzlicher OOTB-Anreicherungslogik kombiniert und an die übergeordnete Klasse übergeben, damit sie in der Methode start() verwendet werden kann.

Modul „Datenmodelle“

Dieses Modul enthält strukturierte Definitionen für Objekte, Enums und Konstanten für die Integration.

class TIPCommon.base.action.data_models.ActionParamType

class TIPCommon.base.action.data_models.ActionParamType(value)

Basis: Enum

ActionParamType definiert die unterstützten UI-Datentypen für Aktionsskriptparameter.

Konstanten

KonstanteWert
BOOLEAN1
CASE_PRIORITIES7
CLOSE_CASE_REASONS5
CLOSE_ROOT_CAUSE6
CODE20
CONTENT11
DDL15
EMAIL_CONTENT10
ENTITY_TYPE13
MULTI_VALUES14
NULL-1
PASSWORD12
PLAYBOOK_NAME2
STAGE4
STRING0
USER3

class TIPCommon.base.action.data_models.Attachment

class TIPCommon.base.action.data_models.Attachment(filename: str, file_contents: bytes, title: str = 'Script Result Attachment', additional_data: dict | None = None)

Basiert auf: object

Dieses Modell stellt eine Anlage mit einem Skriptergebnis dar, die in die Fallwand hochgeladen werden soll.

Parameter

Die folgenden Parameter sind erforderlich, um ein Anlageobjekt zu initialisieren und seine Metadaten und die Binärdaten zu definieren, die in den Fall hochgeladen werden sollen.

Parameter
filename Der Name der Datei, die in den Fallergebnissen erstellt werden soll.
file_contents Die binären Rohdaten, die den Inhalt der Datei darstellen.
title Der Anzeigetitel für den Anhang, wie er auf der Plattform-Benutzeroberfläche angezeigt wird. Der Standardwert ist 'Script Result Attachment'.

Attribute

Die folgenden Attribute definieren die Metadaten und den binären Inhalt des Dateianhangs, der vom Aktionsskript generiert wird.

Attribute
title

str | None

Der Titel des Anhangs, der auf der Plattformoberfläche angezeigt wird.

filename

str

Der genaue Name der zu erstellenden Datei.

file_contents

bytes

Der binäre Rohinhalt der angehängten Datei.

additional_data

dict | None

Ein Dictionary mit zusätzlichen Daten, die dem Anhang zugeordnet sind.

class TIPCommon.base.action.data_models.CaseAttachment

class TIPCommon.base.action.data_models.CaseAttachment(attachment_id: int, attachment_type: str, description: str, is_favorite: bool)

Basiert auf: object

Diese Klasse stellt einen unveränderlichen Anhang dar, der mit einem Fall verknüpft ist.

Attribute

Die folgenden Attribute stellen die spezifischen Metadaten eines Anhangs dar, der bereits einem Fall auf der Plattform zugeordnet wurde.

Attribute
attachment_id

int

Die eindeutige, von der Plattform zugewiesene Kennung für den Anhang.

attachment_type

str

Die Klassifizierung oder der MIME-Typ des Anhangs, z. B. txt, csv oder json.

description

str

Eine vom Nutzer definierte oder vom System generierte Beschreibung des Inhalts des Anhangs.

is_favorite

bool

Gibt an, ob der Anhang als Favorit markiert wurde, um schnell über die Fallwand darauf zugreifen zu können.

class TIPCommon.base.action.data_models.CaseComment

class TIPCommon.base.action.data_models.CaseComment(comment: str, creator_user_id: str, comment_id: int, comment_type: int, case_id: int, is_favorite: bool, modification_time_unix_time_in_ms: int, creation_time_unix_time_in_ms: int, alert_identifier: str, creator_full_name: str | None = None, is_deleted: bool | None = None, last_editor: str | None = None, last_editor_full_name: str | None = None, modification_time_unix_time_in_ms_for_client: int | None = None, comment_for_client: str | None = None)

Basiert auf: object

CaseComment stellt einen unveränderlichen Datensatz eines Kommentars dar, der mit einem Fall oder einer Benachrichtigung verknüpft ist. Er enthält Details zum Ersteller und Audit-Zeitstempel.

Attribute

Die folgenden Attribute definieren die Inhalts- und administrativen Metadaten eines Fallkommentars.

Attribute
comment

str

Der primäre Textinhalt des Kommentars.

comment_for_client

str | None

Eine optionale Version des Kommentars, die für Kunden sichtbar ist.

modification_time_unix_time_in_ms_for_client

int

Der Änderungszeitstempel für comment_for_client in Unix-Millisekunden.

last_editor

str

Die ID des letzten Editors, z. B. 77bdb7a4-8484-481d-9482-2449e33f9518.

last_editor_full_name

str

Der vollständige Anzeigename des Nutzers, der den Kommentar zuletzt bearbeitet hat, z. B. admin admin.

is_deleted

bool

Gibt an, ob der Kommentar als gelöscht markiert wurde.

creator_user_id

str

Die Nutzer-ID des Erstellers, z. B. 77bdb7a4-8484-481d-9482-2449e33f9518.

creator_full_name

str

Der vollständige Anzeigename des Erstellers, z. B. System.

comment_id

int

Die eindeutige, von der Plattform zugewiesene Ganzzahl-ID für den Kommentar.

comment_type

int

Die Typklassifizierung des Kommentars.

case_id

int

Die ID des Falls, der mit diesem Kommentar verknüpft ist.

is_favorite

bool

Gibt an, ob der Kommentar als Favorit angepinnt ist.

modification_time_unix_time_in_ms

int

Der Zeitpunkt der letzten Änderung des Kommentars in Unix-Millisekunden, z. B. 1686040471269.

creation_time_unix_time_in_ms

int

Die Erstellungszeit des Kommentars in Unix-Millisekunden, z. B. 1686040471269.

alert_identifier

str

Die spezifische Kennung der Benachrichtigung, die sich auf den Kommentar bezieht, z. B. SUSPICIOUS PHISHING EMAIL_83765943-9437-4771-96F6-BD0FB291384E.

class TIPCommon.base.action.data_models.CaseInsight

class TIPCommon.base.action.data_models.CaseInsight(triggered_by: str, title: str, content: str, severity: InsightSeverity, insight_type: InsightType, entity_identifier: str = '', additional_data: Any | None = None, additional_data_type: Any | None = None, additional_data_title: str | None = None)

Basiert auf: object

CaseInsight stellt eine unveränderliche strukturierte Zusammenfassung von Ergebnissen oder Warnungen dar, die auf der Fallwand angezeigt wird.

Attribute

Mit den folgenden Attributen wird gesteuert, wie Statistiken kategorisiert und Analysten auf der Plattform präsentiert werden.

Attribute
title

str

Der Anzeigentitel, der für den Insight im Fall-Repository angezeigt wird.

triggered_by

str

Der Name der Integration oder des Nutzers, der den Insight generiert hat.

content

str

Der detaillierte Nachrichtentext oder das Ergebnis der Analyse.

severity

InsightSeverity

Der Dringlichkeitsgrad der Statistik.

Folgende Werte sind möglich:

  • info
  • warning
  • error
  • insight_type

    InsightType

    Kategorisiert den Insight.

    Folgende Werte sind möglich:

  • general
  • entity
  • entity_identifier

    str | None

    Die spezifische Kennung für eine Entität, wenn die Statistik entitätsbezogen ist.

    additional_data

    Any | None

    Zusätzliche Daten, die mit dem Insight verknüpft sind.

    additional_data_type

    Any | None

    Die Datenklassifizierung für das Attribut additional_data.

    additional_data_title

    str | None

    Der Anzeigetitel für den Block mit zusätzlichen Daten.

    class TIPCommon.base.action.data_models.CasePriority

    class TIPCommon.base.action.data_models.CasePriority(value)

    Basis: Enum

    CasePriority definiert die ganzzahligen Schweregrade, die Anfragen innerhalb der Plattform zugewiesen werden.

    Konstanten

    Konstante Wert
    CRITICAL100
    HIGH80
    INFORMATIONAL0
    LOW40
    MEDIUM60

    class TIPCommon.base.action.data_models.CaseStage

    class TIPCommon.base.action.data_models.CaseStage(value)

    Basis: Enum

    CaseStage gibt die Betriebsphasen an, die ein Fall während seines Lebenszyklus durchlaufen kann.

    Konstanten

    Konstante Wert
    ASSESSMENT„Bewertung“
    IMPROVEMENT„Verbesserung“
    INCIDENT„Vorfall“
    INVESTIGATION„Untersuchung“
    RESEARCH„Recherche“
    TRIAGE„Triage“

    class TIPCommon.base.action.data_models.CloseCaseOrAlertInconclusiveRootCauses

    class TIPCommon.base.action.data_models.CloseCaseOrAlertInconclusiveRootCauses(value)

    Basis: Enum

    CloseCaseOrAlertInconclusiveRootCauses bietet Optionen für die Ursache für Szenarien, in denen keine endgültige Entscheidung getroffen werden kann.

    Konstanten

    Konstante Wert
    NO_CLEAR_CONCLUSION„Keine eindeutige Schlussfolgerung“

    class TIPCommon.base.action.data_models.CloseCaseOrAlertMaintenanceRootCauses

    class TIPCommon.base.action.data_models.CloseCaseOrAlertMaintenanceRootCauses(value)

    Basis: Enum

    CloseCaseOrAlertMaintenanceRootCauses definiert Ursachen im Zusammenhang mit geplanten Tests, Systemwartung oder Regelentwicklung.

    Konstanten

    Konstante Wert
    LAB_TEST„Labortest“
    OTHER„Sonstiges“
    RULE_UNDER_CONSTRUCTION„Regel in Bearbeitung“

    class TIPCommon.base.action.data_models.CloseCaseOrAlertMaliciousRootCauses

    class TIPCommon.base.action.data_models.CloseCaseOrAlertMaliciousRootCauses(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

    Basis: Enum

    CloseCaseOrAlertMaliciousRootCauses bietet spezifische Kategorien für bestätigte Bedrohungen, Infrastrukturprobleme oder Systemstörungen.

    Konstanten

    Konstante Wert
    EXTERNAL_ATTACK„Externer Angriff“
    INFRASTRUCTURE_ISSUE„Infrastrukturproblem“
    IRRELEVANT_TCP_UDP_PORT„Irrelevant TCP/UDP port“ (Irrelevanter TCP/UDP-Port)
    MISCONFIGURED_SYSTEM„Falsch konfiguriertes System“
    OTHER„Sonstiges“
    SIMILAR_CASE_IS_ALREADY_UNDER_INVESTIGATION „Ein ähnlicher Fall wird bereits untersucht“
    SYSTEM_APPLICATION_MALFUNCTION „System-/Anwendungsfehlfunktion“
    SYSTEM_CLOCKED_THE_ATTACK„System hat den Angriff blockiert“
    UNFORESEEN_EFFECTS_OF_CHANGE„Unvorhergesehene Auswirkungen von Änderungen“
    UNKNOWN'Unknown'

    class TIPCommon.base.action.data_models.CloseCaseOrAlertNotMaliciousRootCauses

    class TIPCommon.base.action.data_models.CloseCaseOrAlertNotMaliciousRootCauses(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

    Basis: Enum

    Mit CloseCaseOrAlertNotMaliciousRootCauses werden Kategorien für gutartige Aktivitäten, legitime Aktionen oder Fehler definiert, die keine Bedrohung darstellen.

    Konstanten

    Konstante Wert
    EMPLOYEE_ERROR„Fehler von Mitarbeitern“
    HUMAN_ERROR„Menschlicher Fehler“
    LAB_TEST„Labortest“
    LEGIT_ACTION„Legit action“
    MISCONFIGURED_SYSTEM„Falsch konfiguriertes System“
    NONE„Keine“
    NORMAL_BEHAVIOR„Normales Verhalten“
    OTHER„Sonstiges“
    PENETRATION_TEST„Penetrationstest“
    RULE_UNDER_CONSTRUCTION„Regel in Bearbeitung“
    SIMILAR_CASE_IS_ALREADY_UNDER_INVESTIGATION „Ein ähnlicher Fall wird bereits untersucht“
    UNKNOWN'Unknown'
    USER_MISTAKE„Nutzerfehler“

    class TIPCommon.base.action.data_models.CloseCaseOrAlertReasons

    class TIPCommon.base.action.data_models.CloseCaseOrAlertReasons(value)

    Basis: Enum

    CloseCaseOrAlertReasons bietet standardisierte Kategorien auf hoher Ebene für die Gründe, warum ein Fall oder eine Benachrichtigung geschlossen wird.

    Konstanten

    Konstante Wert
    MALICIOUS0
    NOT_MALICIOUS1
    MAINTENANCE2
    INCONCLUSIVE3

    class TIPCommon.base.action.data_models.Content

    class TIPCommon.base.action.data_models.Content(content: str, title: str = 'Script Result Content')

    Basiert auf: object

    Content steht für ein unveränderliches Textergebnis, das von einem Skript generiert wurde und der Fallwand hinzugefügt werden soll.

    Attribute

    Die folgenden Attribute definieren den Text- oder Markdown-basierten Inhalt, der in den Fallergebnissen auf der Plattform angezeigt wird.

    Attribute
    title

    str | None

    Der Anzeigetitel für den Inhaltsblock, wie er in der Benutzeroberfläche für Skriptergebnisse angezeigt wird.

    content

    str

    Der Inhalt der Kernbotschaft, der als Rohtextstring oder im Markdown-Format bereitgestellt werden kann.

    class TIPCommon.base.action.data_models.DataTable

    class TIPCommon.base.action.data_models.DataTable(data_table: list[str], title: str = 'Script Result Data Table')

    Basiert auf: object

    DataTable steht für eine Liste von CSV-formatierten Strings, die in den Fallergebnissen als strukturierte Tabelle gerendert werden.

    Attribute

    Die folgenden Attribute definieren die Struktur und Darstellung von tabellarischen Daten im Ergebnissatz der Aktion.

    Attribute
    title

    str | None

    Die Überschrift, die über der Datentabelle auf der Plattformoberfläche angezeigt wird.

    data_table

    list[str]

    Eine Liste von Strings, wobei jedes Element eine CSV-formatierte Zeile darstellt, aus der die Tabelle erstellt wird.

    class TIPCommon.base.action.data_models.EntityInsight

    class TIPCommon.base.action.data_models.EntityInsight(entity: DomainEntityInfo, message: str, triggered_by: str | None = None, original_requesting_user: str | None = None)

    Basiert auf: object

    Mit EntityInsight werden spezifische Statistiken für eine Entität erstellt, die häufig in der Detailansicht der Entität angezeigt werden.

    Attribute

    Die folgenden Attribute definieren die Beziehung zwischen einer Entität und den Ergebnissen, die von einem Integrationsskript generiert werden.

    Attribute
    entity

    Entity

    Das Entitätsobjekt, das mit neuen Ergebnissen angereichert wird.

    message

    str

    Die wichtigste Beobachtung, der wichtigste Befund oder die wichtigste beschreibende Nachricht für die Einheit.

    triggered_by

    str | None

    Der Name der Integration, die das Ergebnis ermittelt hat.

    original_requesting_user

    str | None

    Die eindeutige Kennung des Nutzers, der die Anfrage ursprünglich initiiert hat.

    class TIPCommon.base.action.data_models.EntityTypesEnum

    class TIPCommon.base.action.data_models.EntityTypesEnum(value)

    Basis: Enum

    EntityTypesEnum stellt Konstanten für alle von Google SecOps erkannten Entitätstypen bereit.

    Konstanten

    Die folgenden Konstanten definieren die standardisierten Entitätstypen, die von der Plattform für Anreicherungs- und Automatisierungsaufgaben unterstützt werden.

    Konstante Wert
    ADDRESS'ADDRESS'
    ALERT„ALERT“
    APPLICATION'APPLICATION'
    CHILD_HASH'CHILDHASH'
    CHILD_PROCESS'CHILDPROCESS'
    CLUSTER'CLUSTER'
    CONTAINER'CONTAINER'
    CREDIT_CARD'CREDITCARD'
    CVE„CVE“
    CVE_ID'CVEID'
    DATABASE„DATABASE“
    DEPLOYMENT'DEPLOYMENT'
    DESTINATION_DOMAIN'DESTINATIONDOMAIN'
    DOMAIN'DOMAIN'
    EMAIL_MESSAGE'EMAILSUBJECT'
    EVENT'EVENT'
    FILE_HASH'FILEHASH'
    FILE_NAME'FILENAME'
    GENERIC'GENERICENTITY'
    HOST_NAME'HOSTNAME'
    IP_SET'IPSET'
    MAC_ADDRESS'MacAddress'
    PARENT_HASH'PARENTHASH'
    PARENT_PROCESS'PARENTPROCESS'
    PHONE_NUMBER'PHONENUMBER'
    POD„POD“
    PROCESS„PROCESS“
    SERVICE„SERVICE“
    SOURCE_DOMAIN'SOURCEDOMAIN'
    THREAT_ACTOR'THREATACTOR'
    THREAT_CAMPAIGN'THREATCAMPAIGN'
    THREAT_SIGNATURE'THREATSIGNATURE'
    URL'DestinationURL'
    USB„USB“
    USER'USERUNIQNAME'

    class TIPCommon.base.action.data_models.ExecutionState

    class TIPCommon.base.action.data_models.ExecutionState(value)

    Basis: Enum

    ExecutionState stellt den endgültigen Statusindikator dar, der an die Plattform zurückgegeben wird, um den Erfolg oder Misserfolg einer Aktion zu ermitteln.

    Konstanten

    Konstante Wert
    COMPLETED0
    IN_PROGRESS1
    FAILED2
    TIMED_OUT3

    class TIPCommon.base.action.data_models.FullDetailsConfigurationParameter

    class TIPCommon.base.action.data_models.FullDetailsConfigurationParameter(input_dict: dict[str, Any])

    Basiert auf: object

    FullDetailsConfigurationParameter kapselt einen allgemeinen Integrationskonfigurationsparameter mit seinen vollständigen Metadaten, die über die API abgerufen wurden.

    Attribute

    Mit den folgenden Attributen werden Metadaten, die Identifizierung und Konfigurationseinschränkungen von Parametern verwaltet.

    table> Attribute full_dict

    dict[str, Any]

    Das ursprüngliche Dictionary, das aus der API-Antwort empfangen wurde.

    id

    int | None

    Die eindeutige, plattformseitig zugewiesene Kennung für den Parameter.

    integration_identifier

    str

    Die Kennung für die mit diesem Parameter verknüpfte Integration, z. B. VirusTotalV3.

    creation_time

    int

    Der Zeitstempel, der angibt, wann der Parameter erstellt wurde, in Unix-Millisekunden.

    modification_time

    int

    Der Zeitstempel, der angibt, wann der Parameter zuletzt geändert wurde, in Unix-Millisekunden.

    is_mandatory

    bool

    Gibt an, ob der Parameter für die Funktion der Integration erforderlich ist.

    description

    str | None

    Die ausführliche Beschreibung des Zwecks des Parameters.

    name

    str

    Der interne Name des Parameters.

    display_name

    str

    Der menschenlesbare Name des Parameters, wie er auf der Plattformoberfläche angezeigt wird.

    value

    Any

    Der dem Parameter zugewiesene Standardwert.

    type

    IntegrationParamType

    Die Datentypklassifizierung des Parameters.

    optional_values

    list

    Eine Liste optionaler Werte für Parameter vom Typ „Drop-down-Liste“ (DDL).

    class TIPCommon.base.action.data_models.HTMLReport

    class TIPCommon.base.action.data_models.HTMLReport(report_name: str, report_contents: str, ...)

    Basiert auf: object

    HTMLReport steht für eine benutzerdefinierte HTML-basierte Visualisierung, die den Fallergebnissen hinzugefügt werden kann.

    Attribute

    Attribute
    title

    str | None

    Der Anzeigetitel für den Bericht im Fall-Repository.

    report_name

    str

    Die interne Kennung oder der Dateiname für den Bericht.

    report_contents

    str

    Der Roh-HTML-String, der den Inhalt des Berichts definiert.

    class TIPCommon.base.action.data_models.IntegrationParamType

    class TIPCommon.base.action.data_models.IntegrationParamType(value)

    Basis: Enum

    IntegrationParamType gibt die unterstützten Datentypen für Einstellungen der Integrationskonfiguration an.

    Konstanten

    Konstante Wert
    NULL-1
    BOOLEAN0
    INTEGER1
    STRING2
    PASSWORD3
    IP4
    EMAIL8

    class TIPCommon.base.action.data_models.Link(link: str, title: str = 'Script Result Link')

    Basiert auf: object

    Link steht für ein externes URL-Ergebnis, das als Hyperlink auf der Fallwand angezeigt werden soll.

    Attribute

    Attribute

    str | None

    Der Anzeigetext für den Hyperlink.

    str

    Die Ziel-URL für den Link.

    class TIPCommon.base.action.data_models.Markdown

    class TIPCommon.base.action.data_models.Markdown(markdown_name: str, markdown_content: str, ...)

    Basiert auf: object

    Markdown bietet eine strukturierte Möglichkeit, Inhalte im Rich-Text-Format mithilfe der Markdown-Syntax zurückzugeben.

    Attribute

    Attribute
    title

    str | None

    Der Anzeigetitel für den Markdown-Block.

    markdown_content

    str

    Der Inhalt ist mit Markdown-Syntax formatiert.

    markdown_name

    str

    Der eindeutige Name, der diesem Markdown-Ergebnis zugewiesen ist.

    class TIPCommon.base.action.data_models.ScriptParameter

    class TIPCommon.base.action.data_models.ScriptParameter(input_dict: dict[str, Any])

    Basiert auf: object

    ScriptParameter stellt einen einzelnen Eingabeparameter für ein Aktionsskript dar und verwaltet seinen Wert, seinen Standardstatus und seine Sichtbarkeit in Playbooks oder manuellen Aktionen.

    Attribute

    Die folgenden Attribute verwalten die Metadaten, die Priorisierung von Werten und die Datenbeschränkungen für einzelne Skriptparameter.

    Attribute
    full_dict

    dict[str, Any]

    Das ursprüngliche Dictionary, das aus der API-Antwort empfangen wurde.

    id

    int | None

    Die eindeutige, plattformseitig zugewiesene Kennung für den Parameter.

    creation_time

    int

    Der Zeitstempel, der angibt, wann der Parameter erstellt wurde, in Unix-Millisekunden.

    modification_time

    int

    Der Zeitstempel, der angibt, wann der Parameter zuletzt geändert wurde, in Unix-Millisekunden.

    custom_action_id

    int | None

    Die Kennung der benutzerdefinierten Aktion, die mit diesem Parameter verknüpft ist.

    is_mandatory

    bool

    Gibt an, ob der Parameter für die Ausführung des Aktionsskripts angegeben werden muss.

    default_value

    Any

    Der Standardwert des Parameters.

    Dieser Wert hat bei der Ausführung von Playbooks Vorrang vor value.

    description

    str | None

    Die ausführliche Beschreibung des Zwecks des Parameters.

    name

    str | None

    Der interne Name des Parameters.

    value

    Any

    Der aktuelle Wert des Parameters.

    Dieser Wert hat bei der manuellen Ausführung von Aktionen Vorrang vor default_value.

    type

    ActionParamType

    Die Datentypklassifizierung des Parameters.

    optional_values

    list

    Eine Liste optionaler Werte für Parameter vom Typ „Drop-down-Liste“ (DDL).

    Ergebnisse der Skriptausführung

    Die folgenden Klassen und Funktionen definieren die standardisierten Strukturen für die Rückgabe von Daten aus Aktionen und Connectors an die Plattform.

    class TIPCommon.base.data_models.ActionJsonOutput

    class TIPCommon.base.data_models.ActionJsonOutput(title='JsonResult', content='', type=None, is_for_entity=False, json_result=None)

    Basiert auf: object

    ActionJsonOutput stellt die strukturierte JSON-Nutzlast für eine Aktion dar und ermöglicht eine spezifische Kategorisierung und Ausrichtung auf Entitätsebene.

    Attribute

    Attribute
    title

    str

    Der Anzeigetitel für den JSON-Ergebnisblock.

    content

    str

    Textinhalte oder eine Zusammenfassung, die die JSON-Daten begleitet.

    type

    str | None

    Ein optionaler Klassifizierungstyp für die JSON-Ausgabe.

    is_for_entity

    bool

    Gibt an, ob das JSON-Ergebnis speziell mit einer Entität verknüpft ist.

    json_result

    JSON | None

    Die eigentliche Nutzlast mit strukturierten JSON-Daten.

    class TIPCommon.base.data_models.ActionOutput

    class TIPCommon.base.data_models.ActionOutput(output_message, result_value, execution_state, json_output, debug_output='')

    Basiert auf: object

    ActionOutput kapselt die vollständige Ergebnisstruktur für eine Aktion und kombiniert für Menschen lesbare Nachrichten, Status und strukturiertes JSON.

    Attribute

    Attribute
    output_message

    str

    Die wichtigste Zusammenfassung, die dem Analysten angezeigt wird.

    result_value

    str | bool

    Das logische Ergebnis der Aktion (z.B. Erfolg/Fehler).

    execution_state

    ExecutionState

    Der endgültige Lebenszyklusstatus der Ausführung der Aktion.

    json_output

    ActionJsonOutput | None

    Die strukturierten JSON-Ergebnisse der Aktion.

    debug_output

    str

    Optionale Diagnoseinformationen zur Fehlerbehebung.

    class TIPCommon.base.data_models.ConnectorJsonOutput

    class TIPCommon.base.data_models.ConnectorJsonOutput(alerts, overflow_alerts=<factory>, log_items=<factory>, log_rows=<factory>, variables=<factory>)

    Basiert auf: object

    ConnectorJsonOutput definiert die strukturierten Daten, die von einem Connector zurückgegeben werden, einschließlich aufgenommener Benachrichtigungen, Überlaufdetails und Ausführungsprotokolle.

    Attribute

    Attribute
    alerts

    list[AlertInfo | CaseInfo]

    Eine Liste der erfolgreich aufgenommenen Benachrichtigungs- oder Fallobjekte.

    overflow_alerts

    list[OverflowAlertDetails]

    Eine Liste der Benachrichtigungen, die die Erfassungslimits überschritten haben und als Überlauf behandelt wurden.

    log_items

    list

    Eine Liste der strukturierten Logeinträge, die während der Ausführung des Connectors generiert wurden.

    variables

    dict

    Ein Wörterbuch mit Statusvariablen, die zwischen Connector-Ausführungen beibehalten werden.

    class TIPCommon.base.data_models.ConnectorOutput

    class TIPCommon.base.data_models.ConnectorOutput(json_output, debug_output='')

    Basiert auf: object

    ConnectorOutput ist der Container der obersten Ebene für die Ergebnisse der Connectorausführung. Er umschließt die strukturierten JSON-Daten und optionalen Debug-Strings.

    Attribute

    Attribute
    json_output

    ConnectorJsonOutput | None

    Die strukturierten JSON-Ergebnisse mit Ingestion- und Logdaten.

    debug_output

    str

    Optionaler Debugging-String für das interne Diagnosetracking.

    TIPCommon.base.data_models.alert_info_from_json

    TIPCommon.base.data_models.alert_info_from_json(json_) → AlertInfo

    Erstellt ein AlertInfo-Objekt durch Parsen eines Attribut-Dictionarys. Dies wird in der Regel verwendet, um Benachrichtigungsobjekte während der Datentransformation oder beim Testen zu rekonstruieren.

    Gibt Folgendes zurück:

    Gibt ein vollständig initialisiertes AlertInfo-Objekt basierend auf den im bereitgestellten JSON-Dictionary definierten Attributen zurück.

    Modul „Schnittstellen“

    In diesem Modul werden standardmäßige abstrakte Verträge für grundlegende Skriptkomponenten definiert.

    class TIPCommon.base.interfaces.apiable.Apiable

    class TIPCommon.base.interfaces.apiable.Apiable(authenticated_session: AuthenticatedSession, configuration: ApiParams)

    Basis: ABC, Generic[ApiParams]

    Apiable ist eine abstrakte Basisschnittstelle für Klassen, die die API-Kommunikationslogik kapseln und so eine konsistente Struktur für Interaktionen mit externen Diensten gewährleisten.

    class TIPCommon.base.interfaces.authable.Authable

    class TIPCommon.base.interfaces.authable.Authable

    Basis: ABC, Generic[AuthParams]

    Authable ist eine abstrakte Basisschnittstelle für Klassen, die Authentifizierungsworkflows verwalten. Sie bietet eine standardisierte Vorlage für das Einrichten sicherer Sitzungen mit externen Diensten.

    Abstrakte Methoden

    Die folgenden abstrakten Methoden müssen in Unterklassen implementiert werden, um die spezifische Authentifizierungslogik zu definieren, die für den Zieldienst erforderlich ist.

    Abstrakte Methoden
    authenticate_session()

    authenticate_session(params: AuthParams) → None

    Authentifiziert das Attribut self.session mit dem bereitgestellten params (z. B. dataclass, TypedDict oder namedtuple).

    Mit dieser Methode können Sie die Authentifizierung beim Dienst, der der Sitzung zugeordnet ist, herstellen, nachdem das Sitzungsobjekt initialisiert wurde.

    class TIPCommon.base.interfaces.logger.Logger

    class TIPCommon.base.interfaces.logger.Logger

    Basis: ABC

    Die Logger-Schnittstelle sorgt dafür, dass Marketplace-Skripts eine standardisierte Diagnoseausgabe liefern.

    Abstrakte Methoden

    Die folgenden Methoden müssen implementiert werden, um verschiedene Protokollierungsstufen und die Ausnahmeberichterstattung zu verarbeiten.

    Abstrakte Methoden
    debug()

    debug(msg: str, *args, **kwargs) → None

    Protokolliert eine Meldung mit dem Schweregrad DEBUG.

    info()

    info(msg: str, *args, **kwargs) → None

    Protokolliert eine Meldung mit dem Schweregrad INFO.

    warn()

    warn(warning_msg: str, *args, **kwargs) → None

    Protokolliert eine Meldung mit dem Schweregrad WARNING.

    error()

    error(error_msg: str, *args, **kwargs) → None

    Protokolliert eine Meldung mit dem Schweregrad ERROR.

    exception()

    exception(ex: Exception, *args, **kwargs) → None

    Protokolliert eine Meldung mit der Wichtigkeitsstufe ERROR, einschließlich des Stacktrace der Ausnahme.

    class TIPCommon.base.interfaces.session.Session

    class TIPCommon.base.interfaces.session.Session

    Basen: ABC, Generic[_R]

    Die Session-Schnittstelle bietet eine konsistente Vorlage für die Verwaltung von API-Sitzungen mit verschiedenen HTTP-Bibliotheken.

    Attribute

    Die folgenden Attribute verwalten die Konfigurations- und Sicherheitseinstellungen der eingerichteten HTTP-Kommunikationssitzung.

    Attribute
    headers

    dict

    Ein Dictionary mit den HTTP-Headern, die mit jeder Anfrage in der Sitzung gesendet werden sollen.

    verify

    bool

    Ein boolescher Wert, der angibt, ob das SSL-Zertifikat des Servers in der Sitzung überprüft werden soll.

    Abstrakte Methoden

    Die folgenden abstrakten Methoden definieren die standardmäßigen HTTP-Verben und den primären Anfragedispatcher, den abgeleitete Klassen implementieren müssen.

    Abstrakte Methoden
    get()

    get(url: str, *args, **kwargs) → _R

    Ruft eine Ressource vom Server mit einer HTTP-GET-Anfrage ab.

    post()

    post(url: str, *args, **kwargs) → _R

    Sendet Daten an den Server, um eine Ressource mit einer HTTP-POST-Anfrage zu erstellen.

    put()

    put(url: str, *args, **kwargs) → _R

    Aktualisiert oder erstellt eine Ressource auf dem Server mit einer HTTP-PUT-Anfrage.

    patch()

    patch(url: str, *args, **kwargs) → _R

    Wendet mit einer HTTP-PATCH-Anfrage teilweise Änderungen an einer Ressource an.

    delete()

    delete(url: str, *args, **kwargs) → _R

    Entfernt eine angegebene Ressource vom Server mithilfe einer HTTP-DELETE-Anfrage.

    request()

    request(method: str, *args, **kwargs) → _R

    Der zentrale Request-Dispatcher, der zum Ausführen einer HTTP-Anfrage mit einer angegebenen Methode verwendet wird.

    Modul „Jobs“

    Dies bietet den Rahmen für Hintergrundverarbeitungsskripts, die nach einem definierten Zeitplan auf der Plattform ausgeführt werden.

    class TIPCommon.base.job.base_job.Job

    class TIPCommon.base.job.base_job.Job(name: str)

    Basis: ABC, Generic[ApiClient]

    Job ist eine abstrakte Basisklasse für geplante Aufgaben, die unabhängige Hintergrundvorgänge wie die Datensynchronisierung oder Gesundheitschecks ausführen.

    Parameter

    Der folgende Parameter ist erforderlich, um den Job zu initialisieren und auf der Plattform zu registrieren.

    Parameter
    name Die eindeutige Kennung, die zum Registrieren und Identifizieren des Job-Skripts verwendet wird.

    Attribute

    Die folgenden Eigenschaften bieten Zugriff auf den Ausführungskontext, die Konfiguration und die integrierten Dienstclients des Jobs.

    Attribute
    api_client

    ApiClient | None

    Stellt den initialisierten API-Client oder die Sammlung von Clients für die Interaktion mit externen Diensten bereit.

    error_msg

    str

    Speichert alle Fehlermeldungen, die während der Ausführung des Jobs aufgetreten sind, für die Diagnoseberichterstellung.

    job_start_time

    int

    Der Unix-Zeitstempel für den Beginn der Jobausführung.

    logger

    ScriptLogger

    Bietet die Logging-Schnittstelle zum Erfassen von Informations-, Warn- und Fehlerdaten während der Ausführung.

    name

    str

    Der registrierte Name des Job-Scripts.

    params

    Container

    Ein Container mit den spezifischen Konfigurationsparametern, die der Jobinstanz bereitgestellt werden.

    soar_job

    SiemplifyJob

    Stellt die zugrunde liegende Plattformjob-Instanz dar und bietet Zugriff auf Ausführungshooks auf niedriger Ebene.

    Methoden

    Mit den folgenden Methoden wird der Orchestrierungs- und Ausführungslebenszyklus des Jobs verwaltet.

    Methoden
    start()

    Unterschrift:start(**kwargs) → None

    Der primäre Einstiegspunkt, der die Ausführungslogik des Jobs auslöst.

    class TIPCommon.base.job.base_job_refresh_token.RefreshTokenRenewalJob

    class TIPCommon.base.job.base_job_refresh_token.RefreshTokenRenewalJob(name: str, integration_identifier: str)

    Basis: Job, Generic[ApiClient]

    RefreshTokenRenewalJob stellt die Lebenszyklusmethoden bereit, die die Jobverarbeitung für die Tokenwartung beeinflussen. Unterklassen müssen diese Methoden nicht überschreiben.

    Attribute

    Attribute
    api_client

    ApiClient | Collection[ApiClient] | Type[Tuple[ApiClient, ...]] | None

    Der initialisierte API-Client oder die initialisierten API-Clients, die für Interaktionen mit externen Diensten verwendet werden.

    class TIPCommon.base.job.base_job_refresh_token.SuccessFailureTuple

    class TIPCommon.base.job.base_job_refresh_token.SuccessFailureTuple(success_list, failure_list)

    Basen: Tupel

    SuccessFailureTuple ist ein spezielles benanntes Tupel, mit dem die Ergebnisse von Batchjobvorgängen in Erfolge und Fehler kategorisiert werden.

    Attribute

    Attribute
    success_list

    list

    Eine Liste mit den Kennungen oder Objekten, die erfolgreich verarbeitet wurden.

    failure_list

    list

    Eine Liste mit den Kennungen oder Objekten, die nicht verarbeitet werden konnten.

    TIPCommon.base.job.base_job_refresh_token.validate_param_csv_to_multi_value

    TIPCommon.base.job.base_job_refresh_token.validate_param_csv_to_multi_value(param_name, param_csv_value, delimiter=',') → list[str]

    Mit dieser Funktion wird ein durch Kommas getrennter (CSV-)Parameterstring in eine Liste eindeutiger Elemente aufgeteilt und validiert. Sie ist für die Verarbeitung komplexer Formate konzipiert, darunter einzelne Werte, in Anführungszeichen gesetzte Strings und gemischte Eingaben.

    Parameter

    Parameter
    param_name

    str

    Der Name oder Schlüssel des Parameters, der validiert wird.

    param_csv_value

    str | None

    Der in der Jobkonfiguration angegebene Roh-CSV-String. Gibt eine leere Liste zurück, wenn None.

    Löst aus

    Die Ausnahme ValueError wird ausgelöst, wenn die Eingabezeichenfolge eine ungültige Anzahl von doppelten Anführungszeichen oder nicht übereinstimmende Anführungszeichen enthält oder wenn einzelne Werte in der CSV-Datei die Validierung nicht bestehen.

    Gibt Folgendes zurück:

    Eine list[str]-Liste mit eindeutigen, validierten Strings, die aus der Eingabe geparst wurden. Wenn keine gültigen Werte gefunden werden oder die Eingabe None ist, wird eine leere Liste zurückgegeben.

    class TIPCommon.base.job.data_models.JobParameter

    class TIPCommon.base.job.data_models.JobParameter(input_dict: MutableMapping[str, Any])

    Basiert auf: object

    JobParameter stellt einen einzelnen Konfigurationsparameter für ein Jobskript dar und verwaltet dessen Metadaten und Wertstatus.

    Attribute

    Attribute
    full_dict

    dict[str, Any]

    Das ursprüngliche Dictionary, das während der Jobinitialisierung von der API empfangen wurde.

    id

    int | None

    Die eindeutige, von der Plattform zugewiesene Kennung für den Jobparameter.

    is_mandatory

    bool

    Gibt an, ob der Parameter für die Ausführung des Jobs angegeben werden muss.

    name

    str | None

    Der interne Name des Parameters.

    type

    ActionParamType

    Die Datentypklassifizierung des Parameters.

    value

    Any

    Der Standardwert des Parameters. Dieser Wert wird in der Regel bei automatisierten Jobausführungen priorisiert.

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