Module data_models

Ce module contient des classes de données permettant de représenter les éléments suivants :

  • Modèles de données
  • Alertes
  • Conteneurs de variables
  • Paramètres généraux
  • Paramètres du connecteur

class TIPCommon.data_models.AlertCard

class TIPCommon.data_models.AlertCard(id_: int, creation_time_unix_time_ms: int, modification_time_unix_time_ms: int, identifier: str, status: int, name: str, priority: int, workflow_status: int, sla_expiration_unix_time: int | None, sla_critical_expiration_unix_time: int | None, start_time: int, end_time: int, alert_group_identifier: str, events_count: int, title: str, rule_generator: str, device_product: str, playbook_attached: str | None, playbook_run_count: int, is_manual_alert: bool, sla: SLA, fields_groups: list[FieldsGroup], source_url: str | None, source_rule_url: str | None, siem_alert_id: str | None)

Bases : objet

Représente une fiche récapitulative d'une alerte, contenant ses principaux détails et métadonnées.

classmethod from_json(alert_card_json: Dict[str, Any])→ AlertCard

Crée un objet AlertCard à partir d'un dictionnaire JSON représentant ses attributs.

class TIPCommon.data_models.AlertEvent

class TIPCommon.data_models.AlertEvent(fields: list[EventPropertyField], identifier: str, case_id: int, alert_identifier: str, name: str, product: str, port: str | None, source_system_name: str, outcome: str | None, time: int, type_: str, artifact_entities: list[str])

Bases : objet

Représente un événement unique associé à une alerte dans une demande.

classmethod from_json(event_json: MutableMapping[str, Any])→ AlertEvent

Crée un objet AlertEvent à partir d'un dictionnaire JSON.

class TIPCommon.data_models.AlertPriority

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

Bases : Enum

Représente les niveaux de priorité d'une alerte.

Constantes

  • CRITICAL = 100

  • HIGH = 80

  • INFORMATIVE = -1

  • LOW = 40

  • MEDIUM = 60

  • UNCHANGED = 0

class TIPCommon.data_models.BaseAlert

class TIPCommon.data_models.BaseAlert(raw_data, alert_id)

Bases : objet

Représente une alerte de base. Il présente les propriétés suivantes :

Attributs

raw_data Données brutes de l'alerte.
alert_id ID de l'alerte.

Méthodes

  • to_json()→ dict
Exemple
>>> from data_models import BaseAlert
>>> alert = BaseAlert({'foo': 'bar'}, 100)
>>> alert.raw_data
{'foo': 'bar'}
>>> alert.alert_id
100
>>> alert.to_json()
{'foo': 'bar'}

class TIPCommon.data_models.BaseDataModel

class TIPCommon.data_models.BaseDataModel(raw_data)

Bases : objet

Représente un modèle de données de base.

Attributs

Attribut Description
raw_data Données brutes du modèle de données.

Méthodes

  • to_json()→ dict
Exemple
>>> from data_models import BaseDataModel
>>> data = BaseDataModel({'foo': 'bar'})
>>> data.raw_data
{'foo': 'bar'}
>>> data.to_json()
{'foo': 'bar'}

class TIPCommon.data_models.CaseDataStatus

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

Bases : Enum

Constantes

  • ALL = 3

  • CLOSED = 2

  • CREATION_PENDING = 5

  • MERGED = 4

  • NEW = 0

  • OPENED = 1

class TIPCommon.data_models.CaseDetails

class TIPCommon.data_models.CaseDetails(id_: int, creation_time_unix_time_ms: int, modification_time_unix_time_ms: int, name: str, priority: int, is_important: bool, is_incident: bool, start_time_unix_time_ms: int, end_time_unix_time_ms: int, assigned_user: str, description: str | None, is_test_case: bool, type_: int, stage: str, environment: str, status: CaseDataStatus, incident_id: int | None, tags: list[str], alerts: list[AlertCard], is_overflow_case: bool, is_manual_case: bool, sla_expiration_unix_time: int | None, sla_critical_expiration_unix_time: int | None, stage_sla_expiration_unix_time_ms: int | None, stage_sla__critical_expiration_unix_time_in_ms: int | None, can_open_incident: bool, sla:SLA, stage_sla: SLA)

Bases : objet

classmethod from_json(case_details_json: Dict[str, Any])→ CaseDetails

Crée un objet CaseDetails à partir d'un dictionnaire JSON.

property is_closed

property is_closed: bool

Indique si la demande est close.

property is_open

property is_open: bool

Indique si la demande est ouverte.

class TIPCommon.data_models.CasePriority

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

Bases : Enum

Représente les niveaux de priorité d'une alerte.

Constantes

  • CRITICAL = 100

  • HIGH = 80

  • INFORMATIVE = -1

  • LOW = 40

  • MEDIUM = 60

  • UNCHANGED = 0

class TIPCommon.data_models.CaseWallAttachment

class TIPCommon.data_models.CaseWallAttachment(name: 'str', file_type: 'str', base64_blob: 'str', is_important: 'bool', case_id: 'int | None' = None)

Bases : objet

Représente une pièce jointe à ajouter au mur d'une demande.

Attributs

Attribut Description Type
base64_blob Contenu de la pièce jointe encodé en base64. str
case_id ID de la demande à laquelle appartient la pièce jointe. int | None
file_type Type de fichier de la pièce jointe. str
is_important Indique si la pièce jointe est marquée comme importante. bool
name Nom du fichier en pièce jointe. str

class TIPCommon.data_models.ConnectorCard

class TIPCommon.data_models.ConnectorCard(integration: str, display_name: str, identifier: str, is_enabled: bool, is_remote: bool, status: ConnectorConnectivityStatusEnum)

Bases : objet

Représente une fiche récapitulative pour une instance de connecteur.

classmethod from_json(connector_card_json: MutableMapping[str, Any])→ ConnectorCard

Crée un objet ConnectorCard à partir d'un dictionnaire JSON.

class TIPCommon.data_models.ConnectorConnectivityStatusEnum

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

Bases : Enum

Représente l'état de connectivité d'un connecteur.

Constantes

  • LIVE = 0

  • NO_CONNECTIVITY = 1

class TIPCommon.data_models.ConnectorParamTypes

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

Bases : Enum

Constantes

Représente les types de paramètres de connecteur.

  • BOOLEAN = 0

  • DOMAIN = 7

  • EMAIL = 8

  • HOST = 5

  • INTEGER = 1

  • IP = 4

  • NULL = -1

  • PASSWORD = 3

  • SCRIPT = 12

  • STRING = 2

  • URL = 6

class TIPCommon.data_models.ConnectorParameter

class TIPCommon.data_models.ConnectorParameter(raw_param)

Bases : Parameter

Représente un paramètre de connecteur.

Attributs

Attribut Description
name Nom du paramètre.
value Valeur du paramètre.
type Type du paramètre (selon ConnectorParamTypes).
mode Mode du paramètre.
is_mandatory Indiquez si le paramètre est obligatoire.
Exemple
>>> from data_models import ConnectorParameter, ConnectorParamTypes
>>> p = ConnectorParameter({
    'param_name': 'api_root',
    'type': ConnectorParamTypes.STRING,
    'param_value': 'http://foo.bar',
    'is_mandatory': True,
    'mode': 0
    })
>>> print(p)
ConnectorParameter(name='api_root', value='http://foo.bar', type=2, mode=0, is_mandatory=True)

class TIPCommon.data_models.Container

Bases : objet

Représente un conteneur de variables.

Exemple
>>> from data_models import Container
>>> container = Container()
>>> container.one = 1
>>> container.one
1

class TIPCommon.data_models.CustomField

class TIPCommon.data_models.CustomField(id: 'int', display_name: 'str', description: 'str', type: 'str', scopes: 'list[CustomFieldScope]')

Bases : objet

Représente une définition de champ personnalisé dans la plate-forme.

Attributs

Attribut Description
description str

Description du champ personnalisé.

display_name str

Nom à afficher du champ personnalisé.

id int

Identifiant unique du champ personnalisé.

scopes list[CustomFieldScope]

Les niveaux d'accès (par exemple, Alerte, Demande) où le champ personnalisé est applicable.

type str

Type de données du champ personnalisé.

classmethod from_json(json_data: MutableMapping[str, Any])→ CustomField

Crée un objet CustomField à partir d'un dictionnaire JSON.

class TIPCommon.data_models.CustomFieldScope

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

Bases : Enum

Représente les champs d'application possibles pour un champ personnalisé.

Constantes

  • ALERTS = 'Alert'

  • CASE = 'Case'

Méthodes

  • build_parent_path(identifier: int)→ str Crée le chemin parent pour la valeur du champ personnalisé en fonction de l'identifiant.

class TIPCommon.data_models.CustomFieldValue

class TIPCommon.data_models.CustomFieldValue(custom_field_id: 'int', values: 'list[str]', scope: 'CustomFieldScope', identifier: 'int')

Bases : objet

Représente la valeur définie pour un champ personnalisé spécifique.

Attributs

Attribut Description
custom_field_id int

ID du champ personnalisé.

identifier int

ID de l'entité (demande/alerte) à laquelle appartient la valeur.

scope CustomFieldScope

Champ d'application (par exemple, Alerte, Demande) où la valeur du champ personnalisé s'applique.

values list[str]

Liste des valeurs définies pour le champ personnalisé.

classmethod from_json(json_data: MutableMapping[str, Any])→ CustomFieldValue

Crée un objet CustomFieldValue à partir d'un dictionnaire JSON.

class TIPCommon.data_models.DatabaseContextType

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

Bases : Enum

Représente les types de contextes de base de données pour le stockage des données.

Constantes

  • ALERT = 2

  • CASE = 1

  • CONNECTOR = 4

  • GLOBAL = 0

  • JOB = 3

class TIPCommon.data_models.EventPropertyField

class TIPCommon.data_models.EventPropertyField(order: int, group_name: str, is_integration: bool, is_highlight: bool, items: list[FieldItem])

Bases : objet

Représente un groupe de champs dans les propriétés d'un événement.

classmethod from_json(event_property_field: MutableMapping[str, Any])→ EventPropertyField

Crée un objet EventPropertyField à partir d'un dictionnaire JSON.

class TIPCommon.data_models.FieldGroupItem

class TIPCommon.data_models.FieldGroupItem(original_name: str, name: str, value: str)

Bases : objet

Représente un seul élément clé-valeur dans le groupe de champs d'un événement.

classmethod from_json(field_group_json: MutableMapping[str, Any])→ FieldGroupItem

Crée un objet FieldGroupItem à partir d'un dictionnaire JSON.

class TIPCommon.data_models.FieldItem

class TIPCommon.data_models.FieldItem(original_name: str, name: str, value: str)

Bases : objet

Représente un seul élément dans un champ, contenant son nom d'origine, son nom mis en forme et sa valeur.

classmethod from_json(field_json: MutableMapping[str, Any])→ FieldItem

Crée un objet FieldItem à partir d'un dictionnaire JSON.

class TIPCommon.data_models.FieldsGroup

class TIPCommon.data_models.FieldsGroup(order: int, group_name: str, is_integration: bool, is_highlight: bool, items: list[[FieldGroupItem]])

Bases : objet

Représente un groupe de champs au sein d'une structure de données plus grande, souvent utilisé pour l'affichage.

classmethod from_json(field_group_json: Dict[str, Any])→ FieldsGroup

Crée un objet FieldsGroup à partir d'un dictionnaire JSON.

class TIPCommon.data_models.GoogleServiceAccount

class TIPCommon.data_models.GoogleServiceAccount(account_type: str, project_id: str, private_key_id: str, private_key: str, client_email: str, client_id: str, auth_uri: str, token_uri: str, auth_provider_x509_url: str, client_x509_cert_url: str)

Bases : objet

Représente les attributs d'un compte de service Google.

Méthodes

  • to_dict()→ dict Sérialise le modèle de données dans un dictionnaire.

Renvoie

Dictionnaire JSON de compte de service.

Type renvoyé

dict

class TIPCommon.data_models.InstalledIntegrationInstance

class TIPCommon.data_models.InstalledIntegrationInstance(instance: MutableMapping[str, Any], identifier: str, integration_identifier: str, environment_identifier: str, instance_name: str)

Bases : objet

Représente une instance installée d'une intégration dans un environnement.

classmethod from_json(integration_env_json: MutableMapping[str, Any])→ InstalledIntegrationInstance

Crée un objet InstalledIntegrationInstance à partir d'un dictionnaire JSON.

Paramètres
Paramètres
integration_env_json SingleJson

Données JSON contenant des informations sur l'environnement d'intégration.

Renvoie

Instance de la classe spécifiée, initialisée avec les données de raw_data.

Type renvoyé

InstalledIntegrationInstance

class TIPCommon.data_models.JobParamType

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

Bases : Enum

Constantes

  • BOOLEAN = 0

  • DOMAIN = 7

  • HOST = 5

  • INTEGER = 1

  • IP = 4

  • NULL = -1

  • PASSWORD = 3

  • STRING = 2

  • URL = 6

class TIPCommon.data_models.Parameter

class TIPCommon.data_models.Parameter(raw_param)

Bases : objet

Classe parente représentant un paramètre.

Attributs

Attribut Description
raw_data Données brutes du paramètre.
Exemple
>>> from data_models import Parameter
>>> p = Parameter({'foo': 'bar'})
>>> print(p)
Parameter(raw_data={'foo': 'bar'})

class TIPCommon.data_models.SLA

class TIPCommon.data_models.SLA(sla_expiration_time: int | None, critical_expiration_time: int | None, expiration_status: int, remaining_time_since_last_pause: int | None)

Bases : objet

Représente les détails du contrat de niveau de service (SLA) pour une demande ou une alerte.

classmethod from_json(sla_json: Dict[str, Any])→ SLA

Crée un objet SLA à partir d'un dictionnaire JSON.

class TIPCommon.data_models.ScriptContext

class TIPCommon.data_models.ScriptContext(target_entities: 'str' = '', case_id: 'int | str | None' = None, alert_id: 'str' = '', environment: 'str' = '', workflow_id: 'str' = '', workflow_instance_id: 'str | None' = None, parameters: 'SingleJson' = <factory>, integration_identifier: 'str' = '', integration_instance: 'str' = '', action_definition_name: 'str' = '', original_requesting_user: 'str' = '', execution_deadline_unix_time_ms: 'int' = 0, async_polling_interval_in_sec: 'int' = 0, async_total_duration_deadline: 'int' = 0, script_timeout_deadline: 'int' = 0, default_result_value: 'str' = '', use_proxy_settings: 'bool' = False, max_json_result_size: 'int' = 15, vault_settings: 'SiemplifyVault | None' = None, environment_api_key: 'str | None' = None, unique_identifier: 'str' = '', job_api_key: 'str' = '', connector_context: 'ConnectorContext | None' = None)

Bases : objet

Représente le contexte d'exécution d'un script ou d'une action, en fournissant l'accès à divers paramètres et données d'exécution.

Attributs

Attribut Description
action_definition_name str

Nom de la définition d'action en cours d'exécution.

La valeur par défaut est ''.

alert_id str

ID de l'alerte associée à l'exécution actuelle.

La valeur par défaut est ''.

async_polling_interval_in_sec int

Intervalle d'interrogation asynchrone en secondes.

La valeur par défaut est 0.

async_total_duration_deadline int

Délai de durée totale pour les opérations asynchrones.

La valeur par défaut est 0.

case_id int | str | None

ID du cas associé à l'exécution actuelle.

La valeur par défaut est None.

connector_context ConnectorContext | None

Contexte spécifique à l'exécution du connecteur.

La valeur par défaut est None.

default_result_value str

Valeur par défaut du résultat de l'action.

La valeur par défaut est ''.

environment str

Environnement d'exécution.

La valeur par défaut est ''.

environment_api_key str | None

Clé API de l'environnement.

La valeur par défaut est None.

execution_deadline_unix_time_ms int

Code temporel Unix (en millisecondes) indiquant le délai d'exécution.

La valeur par défaut est 0.

integration_identifier str

Identifiant de l'intégration utilisée.

La valeur par défaut est ''.

integration_instance str

Nom de l'instance d'intégration utilisée.

La valeur par défaut est ''.

job_api_key str

Clé API spécifique au job.

La valeur par défaut est ''.

max_json_result_size int

Taille maximale autorisée pour les résultats JSON.

La valeur par défaut est 15.

original_requesting_user str

Utilisateur qui a lancé la demande à l'origine.

La valeur par défaut est ''.

parameters SingleJson

Objet JSON contenant les paramètres du script/de l'action.

script_timeout_deadline int

Délai d'exécution du script.

La valeur par défaut est 0.

target_entities str

Chaîne d'entités cibles séparées par une virgule.

La valeur par défaut est ''.

unique_identifier str

Identifiant unique du contexte d'exécution.

La valeur par défaut est ''.

use_proxy_settings bool

Indique si les paramètres de proxy doivent être utilisés.

La valeur par défaut est False.

vault_settings SiemplifyVault | None

Paramètres du coffre-fort pour la récupération sécurisée des identifiants.

La valeur par défaut est None.

workflow_id str

ID du workflow.

La valeur par défaut est ''.

workflow_instance_id str | None

ID de l'instance de workflow.

La valeur par défaut est None.

Méthodes

  • to_json()→ MutableMapping[str, Any] Sérialise l'objet de contexte dans un mappage mutable (dictionnaire JSON).

  • update(attributes: MutableMapping[str, Any])→ None Met à jour l'objet de contexte avec de nouveaux attributs à partir d'un mappage mutable.

class TIPCommon.data_models.SmimeEmailConfig

class TIPCommon.data_models.SmimeEmailConfig(email: 'email.message.Message', private_key_b64: 'str', certificate_b64: 'str', ca_certificate_b64: 'str')

Bases : objet

Représente la configuration pour l'envoi d'e-mails chiffrés ou signés avec le protocole S/MIME.

Attributs

Attribut Description
ca_certificate_b64 str

Certificat CA encodé en base64.

certificate_b64 str

Certificat encodé en base64.

email Message

Objet du message électronique.

private_key_b64 str

Clé privée encodée en base64.

class TIPCommon.data_models.SmimeType

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

Bases : Enum

Représente les types d'opérations S/MIME.

Constantes

  • ENCRYPTED = 'encrypted'

  • SIGNED = 'signed'

class TIPCommon.data_models.TypedContainer

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

Bases : Generic[T]

Conteneur pour un type spécifique qui fournit l'intellisense de type.

class TIPCommon.data_models.UserProfileCard

class TIPCommon.data_models.UserProfileCard(raw_data: dict, first_name: str, last_name: str, user_name: str, account_state: int)

Bases : objet

Représente une fiche récapitulative du profil utilisateur.

classmethod from_json(user_profile_card_response: dict)→ UserProfileCard

Crée un objet UserProfileCard à partir d'un dictionnaire JSON.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.