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: [AlertPriority](#TIPCommon.data_models.AlertPriority) | int | None, workflow_status: int | None, 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, device_vendor: str, playbook_attached: bool | None, playbook_run_count: int | None, is_manual_alert: bool | None, sla: [SLA](#TIPCommon.data_models.SLA) | None, fields_groups: list[[FieldsGroup](#TIPCommon.data_models.FieldsGroup)], source_url: str | None, source_rule_url: str | None, siem_alert_id: str | None, additional_properties: str | None, case_id: int | None, ticket_id: str | None, closure_details: MutableMapping[str, Any] | None, event_count: int | None = None, product_families: list[str] | None = None, entity_cards: list[MutableMapping[str, Any]] | None = None, security_event_cards: list[MutableMapping[str, Any]] | None = None, involved_relations: list[MutableMapping[str, Any]] | None = None)
Bases : objet
AlertCard représente une fiche récapitulative pour une alerte, qui contient des métadonnées et des indicateurs d'état essentiels utilisés pour la visualisation et le suivi dans la plate-forme.
Méthodes
Les méthodes suivantes facilitent la sérialisation et la reconstruction des cartes d'alerte à partir de données structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principaux attributs structurels et les modèles de données complexes associés à l'alerte.
| Attributs | |
|---|---|
fields_groups |
Liste des champs groupés associés à l'alerte, utilisée pour la présentation structurée des données dans l'UI. |
sla |
Objet "Contrat de niveau de service" définissant les délais de réponse et de résolution pour l'alerte. |
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
AlertEvent représente un événement individuel associé à une alerte, contenant des données de télémétrie spécifiques, des propriétés de champ et des relations entre entités.
Méthodes
La méthode suivante facilite la reconstruction des objets d'événement à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée une instance |
Attributs
Le tableau suivant met en évidence les principaux attributs structurels et les modèles de données complexes associés à l'événement.
| Attributs | |
|---|---|
fields |
Liste des champs de propriété spécifiques à l'événement, définissant ses points de données uniques. |
artifact_entities |
Liste des identifiants d'entité extraits de la télémétrie des événements. |
class TIPCommon.data_models.AlertPriority
class TIPCommon.data_models.AlertPriority(value)
Bases : Enum
AlertPriority définit les niveaux de gravité standardisés basés sur des nombres entiers utilisés pour catégoriser et hiérarchiser les alertes sur la plate-forme.
Constantes
Les constantes suivantes représentent les valeurs de priorité spécifiques attribuées aux alertes.
| Constantes | |
|---|---|
CRITICAL |
100 |
HIGH |
80 |
MEDIUM |
60 |
LOW |
40 |
UNCHANGED |
0 |
INFORMATIVE |
-1 |
class TIPCommon.data_models.AttachmentMetadata
class TIPCommon.data_models.AttachmentMetadata(raw_data: SingleJson)
Bases : objet
AttachmentMetadata encapsule les données descriptives et les propriétés associées à une pièce jointe, et fournit des méthodes pour la conversion et la récupération de données structurées.
Méthodes
La méthode suivante fournit un moyen standardisé de reconstruire des objets de requête à partir de charges utiles JSON.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une nouvelle instance |
to_json() |
Sérialise l'objet |
Attributs
Le tableau suivant met en évidence les principales structures de données utilisées pour stocker les propriétés de métadonnées de la pièce jointe.
| Attributs | |
|---|---|
raw_data |
Dictionnaire sous-jacent contenant les attributs de métadonnées brutes tels qu'ils ont été reçus de la source. |
class TIPCommon.data_models.BaseAlert
class TIPCommon.data_models.BaseAlert(raw_data, alert_id)
Bases : objet
BaseAlert est un modèle de base représentant une alerte de sécurité générique. Il fournit une structure standardisée pour stocker les données de télémétrie brutes ainsi qu'un identifiant de plate-forme unique.
Méthodes
La méthode suivante permet de sérialiser l'alerte dans un format standard.
| Méthodes | |
|---|---|
to_json() |
Convertit l'alerte en dictionnaire sérialisable JSON tel que renvoyé par |
Attributs
Le tableau suivant met en évidence les principaux points de données gérés par ce modèle.
| Attributs | |
|---|---|
raw_data |
Charge utile des données brutes associées à l'alerte. |
alert_id |
Identifiant unique attribué à l'alerte. |
Exemple
L'exemple suivant montre comment initialiser un BaseAlert et accéder à ses données brutes et à sa sortie sérialisée.
>>> 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
BaseDataModel sert de classe parente pour différentes structures de données au sein de la bibliothèque, ce qui garantit une gestion cohérente des données d'entrée brutes et de la sérialisation.
Méthodes
La méthode suivante permet de s'assurer que les données brutes sont récupérées dans un format compatible avec les opérations JSON.
| Méthodes | |
|---|---|
to_json() |
Sérialise les données brutes stockées dans le modèle au format dictionnaire. |
Attributs
Le tableau suivant décrit le stockage de données principal pour le modèle de base.
| Attributs | |
|---|---|
raw_data |
Charge utile des données brutes d'origine utilisée pour initialiser le modèle. |
Exemple
L'exemple suivant montre l'initialisation de base du modèle de données et l'utilisation de la méthode de sérialisation.
>>> 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)
Bases : Enum
CaseDataStatus définit les états opérationnels acceptés pour les demandes sur la plate-forme, de l'ingestion initiale à la clôture ou à la fusion finale.
Constantes
Les constantes suivantes représentent les indicateurs d'état spécifiques attribués aux données de cas.
| Constantes | |
|---|---|
NEW |
0 |
OPENED |
1 |
CLOSED |
2 |
ALL |
3 |
MERGED |
4 |
CREATION_PENDING |
5 |
class TIPCommon.data_models.CaseDetails
Bases : objet
CaseDetails offre une vue détaillée d'une demande de sécurité, y compris des propriétés de vérification de l'état et des méthodes de reconstruction ou de sérialisation des données de la demande.
Méthodes
Les méthodes suivantes gèrent la conversion des détails des demandes entre les instances d'objet et les formats JSON structurés.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Les propriétés suivantes fournissent des indicateurs logiques concernant l'état actuel de la demande.
| Attributs | |
|---|---|
is_closed |
Propriété booléenne indiquant si l'étui est fermé. |
is_open |
Propriété booléenne indiquant si la demande est active ou ouverte. |
class TIPCommon.data_models.CaseOverviewInfo
class TIPCommon.data_models.CaseOverviewInfo(id: 'int', create_time_ms: 'int', update_time_ms: 'int', display_id: 'str', display_name: 'str', alert_count: 'int', stage: 'str', priority: 'CasePriority', important: 'bool', description: 'str | None' = None, type: 'int | None' = None, assignee_full_name: 'str | None' = None, environment_data: 'EnvironmentData | None' = None, status: 'CaseDataStatus | None' = None, score: 'int | None' = None, case_sla: 'CaseSLAInfo | None' = None, alerts_sla: 'CaseSLAInfo | None' = None, incident: 'bool | None' = None, has_suspicious_entity: 'bool | None' = None, workflow_status: 'int | None' = None, tags: 'list[str]' = <factory>, products: 'list[str]' = <factory>, touched: 'bool | None' = None, merged: 'bool | None' = None, has_incident: 'bool | None' = None, alert_names: 'list[str]' = <factory>)
Bases : objet
CaseOverviewInfo fournit un résumé général d'une demande liée à la sécurité, en agrégeant les métadonnées, l'état du contrat de niveau de service (SLA) et les informations sur l'organisation utilisées pour les tableaux de bord et la gestion des files d'attente.
Méthodes
La méthode suivante facilite la reconstruction des objets d'aperçu des cas à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les principaux attributs structurels, énumérations et métriques opérationnelles clés associés à l'aperçu des demandes.
| Attributs | |
|---|---|
priority |
Niveau de gravité attribué à la demande. |
status |
État opérationnel actuel des données de la fiche. |
workflow_status |
Étape ou état actuel dans le moteur de workflow automatisé de la plate-forme. |
score |
Score de risque ou d'importance calculé attribué à la demande. |
case_sla |
Informations de suivi des SLA spécifiques au cycle de vie de la résolution des demandes. |
alerts_sla |
Informations de suivi du SLA pour les alertes individuelles contenues dans la demande. |
environment_data |
Métadonnées concernant l'environnement organisationnel spécifique dans lequel la demande a été créée. |
tags |
Liste des libellés définis par l'utilisateur ou générés par le système associés à la demande. |
class TIPCommon.data_models.CasePriority
class TIPCommon.data_models.CasePriority(value)
Bases : Enum
CasePriority définit les niveaux de gravité standardisés basés sur des nombres entiers utilisés pour catégoriser et hiérarchiser les demandes dans la plate-forme.
Constantes
Les constantes suivantes représentent les valeurs de priorité spécifiques attribuées aux demandes.
| Constantes | |
|---|---|
CRITICAL |
100 |
HIGH |
80 |
MEDIUM |
60 |
LOW |
40 |
UNCHANGED |
0 |
INFORMATIVE |
-1 |
class TIPCommon.data_models.CaseSLAInfo
class TIPCommon.data_models.CaseSLAInfo(expiration_time_ms: int | None = None, critical_expiration_time_ms: int | None = None, expiration_status: int | None = None, last_pause_remaining_time_ms: int | None = None)
Bases : objet
CaseSLAInfo encapsule les données de suivi du contrat de niveau de service (SLA), en fournissant des codes temporels pour l'expiration et des indicateurs d'état afin de garantir une réponse rapide aux incidents.
Méthodes
La méthode suivante permet de créer des objets d'informations sur le SLA à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les principaux attributs de timing et d'état utilisés pour surveiller les délais des demandes.
| Attributs | |
|---|---|
expiration_time_ms |
Code temporel Unix (en millisecondes) auquel le SLA standard doit expirer. |
critical_expiration_time_ms |
Code temporel Unix (en millisecondes) lorsque le seuil de SLA critique est atteint. |
expiration_status |
Indicateur entier représentant l'état actuel du SLA. |
last_pause_remaining_time_ms |
Temps restant sur le compteur du contrat de niveau de service au moment de la dernière mise en pause. |
class TIPCommon.data_models.CaseWallAttachment
class TIPCommon.data_models.CaseWallAttachment(name, file_type, base64_blob, is_important, case_id=None, description=None)
Bases : objet
CaseWallAttachment représente un fichier ou un objet de données joint au mur de preuves d'une demande, y compris le contenu brut au format Base64 et les métadonnées associées.
Attributs
Le tableau suivant met en évidence les principales propriétés et données de contenu associées à la pièce jointe.
| Attributs | |
|---|---|
name |
Nom de fichier ou nom à afficher de la pièce jointe. |
file_type |
Type MIME ou extension de fichier indiquant le format des données jointes. |
base64_blob |
Contenu réel du fichier, encodé sous forme de chaîne Base64. |
is_important |
Indicateur indiquant si la pièce jointe est marquée comme preuve essentielle pour l'enquête. |
class TIPCommon.data_models.ConnectorCard
class TIPCommon.data_models.ConnectorCard(integration, display_name, identifier, is_enabled, is_remote, status)
Bases : objet
ConnectorCard fournit un récapitulatif de la configuration d'un connecteur spécifique et
l'état opérationnel actuel sur la plate-forme.
Méthodes
La méthode suivante facilite la création d'instances de cartes de connecteur à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant présente l'état opérationnel et les propriétés d'identification du connecteur.
| Attributs | |
|---|---|
status |
État actuel de la connectivité et de l'intégrité du connecteur. |
is_enabled |
Indique si le connecteur est actif et traite les données. |
class TIPCommon.data_models.ConnectorConnectivityStatusEnum
class TIPCommon.data_models.ConnectorConnectivityStatusEnum(value)
Bases : Enum
ConnectorConnectivityStatusEnum définit les états de connectivité possibles pour un connecteur, indiquant s'il communique correctement avec son intégration cible.
Constantes
Les constantes suivantes représentent l'état de santé de la connexion du connecteur.
| Constantes | |
|---|---|
LIVE |
0 |
NO_CONNECTIVITY |
1 |
class TIPCommon.data_models.ConnectorParamTypes
class TIPCommon.data_models.ConnectorParamTypes(value)
Bases : Enum
ConnectorParamTypes définit les types de données acceptés pour les paramètres de configuration du connecteur. Ces types garantissent une validation et un rendu de l'UI appropriés dans les paramètres de la plate-forme.
Constantes
Les constantes suivantes représentent les types de données spécifiques disponibles pour les paramètres.
| Constantes | |
|---|---|
BOOLEAN |
0 (bouton booléen) |
INTEGER |
1 (nombre entier) |
STRING |
2 (chaîne de texte standard) |
PASSWORD |
3 (champ du mot de passe masqué) |
IP |
4 (adresse IP) |
HOST |
5 (nom de l'hôte) |
URL |
6 (chaîne d'URL) |
DOMAIN |
7 (nom de domaine) |
EMAIL |
8 (adresse e-mail) |
SCRIPT |
12 (ancien paramètre de script) |
NULL |
-1 (type de paramètre non valide) |
class TIPCommon.data_models.ConnectorParameter
class TIPCommon.data_models.ConnectorParameter(raw_param)
Bases : paramètre
ConnectorParameter représente un paramètre de configuration individuel pour un connecteur. Il étend le modèle de paramètre de base pour inclure des métadonnées spécifiques telles que les types de validation et les exigences obligatoires.
Attributs
Les propriétés suivantes permettent d'accéder aux détails de configuration et aux contraintes du paramètre de connecteur.
| Attributs | |
|---|---|
name |
Nom unique utilisé pour identifier le paramètre dans la configuration du connecteur. |
value |
Valeur actuelle attribuée au paramètre. |
type |
Type de données du paramètre, utilisé pour la validation et le rendu de l'UI. |
mode |
Mode opérationnel ou paramètre de visibilité du paramètre. |
is_mandatory |
Indique si une valeur doit être fournie pour ce paramètre avant que le connecteur ne soit enregistré ou exécuté. |
Exemple
L'exemple suivant montre comment initialiser un ConnectorParameter à l'aide d'un dictionnaire brut et comment accéder à ses propriétés.
>>> from data_models import ConnectorParameter, ConnectorParamTypes
>>> p = ConnectorParameter({
'param_name': 'api_root',
'type': ConnectorParamTypes.STRING,
'param_value': '[http://foo.bar](http://foo.bar)',
'is_mandatory': True,
'mode': 0
})
>>> print(p)
ConnectorParameter(name='api_root', value='[http://foo.bar](http://foo.bar)', type=2, mode=0, is_mandatory=True)
class TIPCommon.data_models.Container
class TIPCommon.data_models.Container()
Bases : objet
Container agit comme un objet générique et dynamique pour stocker les variables en tant qu'attributs. Il est utile pour transmettre des collections de données arbitraires entre différents composants de la plate-forme.
Exemple
L'exemple suivant montre comment initialiser un conteneur, et attribuer et récupérer une variable de manière dynamique.
>>> from data_models import Container
>>> container = Container()
>>> container.one = 1
>>> container.one
1
class TIPCommon.data_models.CreateEntity
class TIPCommon.data_models.CreateEntity(case_id, alert_identifier, entity_type, entity_identifier, entity_to_connect_regex, types_to_connect=None, is_primary_link=False, is_directional=False)
Bases : objet
CreateEntity encapsule les instructions nécessaires pour créer et associer une entité à un cas et une alerte existants. Il inclut la logique pour le mappage des connexions et des relations basées sur les expressions régulières.
Méthodes
La méthode suivante gère la conversion des instructions de création d'entités dans un format compatible avec la plate-forme.
| Méthodes | |
|---|---|
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principales propriétés utilisées pour définir la nouvelle entité et ses relations au sein de la plate-forme.
| Attributs | |
|---|---|
case_id |
Identifiant unique de la demande dans laquelle l'entité sera créée. |
alert_identifier |
Identifiant de l'alerte à laquelle cette entité est associée. |
entity_type |
Classification de l'entité. |
entity_identifier |
Valeur ou nom spécifique identifiant l'entité. |
entity_to_connect_regex |
Expression régulière utilisée pour identifier les autres entités à associer à celle-ci. |
types_to_connect |
Liste spécifique des types d'entités pouvant être associés en fonction de l'expression régulière. |
is_primary_link |
Indique si cette connexion représente la relation principale entre les entités. |
is_directional |
Détermine si la connexion a une direction définie (source vers cible) ou si elle est réciproque. |
class TIPCommon.data_models.CustomField
class TIPCommon.data_models.CustomField(id, display_name, description, type, scopes)
Bases : objet
CustomField représente un champ de données défini par l'utilisateur dans la plate-forme. Il permet d'étendre les modèles de données standards en ajoutant des métadonnées spécifiques adaptées aux exigences de l'organisation.
Méthodes
La méthode suivante permet de reconstruire des objets de champs personnalisés à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les principales propriétés et contraintes de portée du champ personnalisé.
| Attributs | |
|---|---|
id |
Identifiant unique du champ personnalisé. |
display_name |
Libellé lisible affiché dans l'UI de la plate-forme. |
type |
Type de données du champ. |
scopes |
Liste des domaines d'application dans lesquels ce champ est disponible |
class TIPCommon.data_models.CustomFieldScope
class TIPCommon.data_models.CustomFieldScope(value)
Bases : Enum
CustomFieldScope définit les cibles valides auxquelles un champ personnalisé est appliqué dans la hiérarchie de la plate-forme.
Méthodes
La méthode suivante permet de résoudre le chemin d'accès de l'objet à portée.
| Méthodes | |
|---|---|
build_parent_path() |
Construit le chemin de plate-forme interne pour l'identifiant de l'objet parent spécifié. |
Constantes
Les constantes suivantes représentent les différents niveaux disponibles pour les champs personnalisés.
| Constantes | |
|---|---|
ALERTS |
'Alert' |
CASE |
'Case' |
class TIPCommon.data_models.CustomFieldValue
class TIPCommon.data_models.CustomFieldValue(custom_field_id, values, scope, identifier)
Bases : objet
CustomFieldValue représente les données spécifiques attribuées à une instance de champ personnalisé. Il associe la définition du champ au contenu réel fourni par un utilisateur ou un processus automatisé.
Méthodes
La méthode suivante facilite la reconstruction des valeurs de champs personnalisés à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les principales propriétés et les identifiants contextuels de la valeur du champ personnalisé.
| Attributs | |
|---|---|
custom_field_id |
Identifiant de la définition |
values |
Liste de chaînes représentant les données réelles stockées dans le champ. |
scope |
Domaine d'application de cette valeur spécifique. |
identifier |
Identifiant unique de l'objet spécifique qui contient cette valeur. |
class TIPCommon.data_models.DataAccessContext
class TIPCommon.data_models.DataAccessContext(global_access, assigned_scopes)
Bases : objet
DataAccessContext définit les autorisations et les contraintes de visibilité pour un utilisateur ou un processus, en déterminant les niveaux de données accessibles lors de l'exécution.
Méthodes
Les méthodes suivantes gèrent la conversion des données de contexte d'accès entre les instances d'objet et les formats JSON.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principaux contrôles d'accès définis dans le contexte.
| Attributs | |
|---|---|
global_access |
Indique si le contexte autorise un accès illimité à tous les niveaux de données. |
assigned_scopes |
Liste des unités organisationnelles ou des niveaux d'accès spécifiques auxquels l'accès a été explicitement accordé. |
class TIPCommon.data_models.DatabaseContextType
class TIPCommon.data_models.DatabaseContextType(value)
Bases : Enum
DatabaseContextType spécifie le contexte opérationnel des interactions avec la base de données, ce qui garantit que les données sont conservées ou récupérées à partir du segment logique approprié de la plate-forme.
Constantes
Les constantes suivantes représentent les zones spécifiques de la plate-forme où les opérations de base de données ont lieu.
| Constantes | |
|---|---|
GLOBAL |
0 (contexte global à l'échelle du système) |
CASE |
1 (contexte de cas de sécurité spécifique) |
ALERT |
2 (contexte d'alerte individuelle) |
JOB |
3 (contexte de tâche planifiée ou d'automatisation) |
CONNECTOR |
4 (contexte du connecteur de données) |
class TIPCommon.data_models.DynamicParameter
class TIPCommon.data_models.DynamicParameter(key: str, value: str)
Bases : objet
DynamicParameter représente une paire clé/valeur flexible utilisée pour transmettre la configuration d'exécution ou des métadonnées personnalisées entre les composants du système.
Méthodes
La méthode suivante gère la reconstruction des paramètres dynamiques à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant décrit les propriétés du paramètre dynamique.
| Attributs | |
|---|---|
key |
Nom ou identifiant du paramètre. |
value |
Contenu des données associé à la clé. |
class TIPCommon.data_models.EmailTemplate
class TIPCommon.data_models.EmailTemplate(template_type, name, content, creator_user_name, for_migration, environments, _id, creation_time_unix_time_in_ms, modification_time_unix_time_in_ms)
Bases : objet
EmailTemplate représente un format de communication standardisé utilisé pour les notifications et les rapports sur la plate-forme. Il encapsule le contenu du message, les métadonnées et les contraintes environnementales.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des modèles d'e-mails.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principales propriétés et données structurelles du modèle d'e-mail.
| Attributs | |
|---|---|
content |
Texte du corps ou structure HTML du modèle d'e-mail. |
environments |
Liste des environnements organisationnels dans lesquels ce modèle est disponible. |
template_type |
Classification ou catégorie du modèle. |
class TIPCommon.data_models.Entity
class TIPCommon.data_models.Entity(raw_data, case_id, entity_type, enriched, artifact, vulnerable, suspicious, attacker, pivot, internal, manually_created, fields)
Bases : objet
Entité représente un objet ou un élément observable spécifique dans une demande de sécurité (adresse IP, hachage de fichier ou utilisateur, par exemple). Il suit à la fois la télémétrie brute et divers "tags" booléens qui indiquent le rôle ou le niveau de risque de l'entité dans l'enquête.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des objets d'entité.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principaux indicateurs de classification et les structures de données associés à l'entité.
| Attributs | |
|---|---|
entity_type |
Catégorie de l'entité. |
suspicious |
Indique si l'entité a été signalée comme potentiellement malveillante par la logique du système ou des renseignements externes. |
vulnerable |
Indique si l'entité est connue pour présenter des failles de sécurité existantes. |
attacker |
Signalé si l'entité est identifiée comme la source d'une activité malveillante. |
internal |
Indique si l'entité appartient au réseau ou à l'infrastructure internes de l'organisation. |
fields |
Liste des propriétés supplémentaires ou des points de données enrichis associés à l'entité. |
class TIPCommon.data_models.EntityCard
class TIPCommon.data_models.EntityCard(identifier, entity_type, is_suspicious, linked_entities)
Bases : objet
EntityCard représente une vue récapitulative d'une entité, généralement utilisée pour les composants d'UI. Il regroupe l'identification, le type et les relations de l'entité avec d'autres entités dans une structure simplifiée.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des fiches d'entité.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant présente les principales propriétés utilisées pour identifier et associer des entités dans la fiche.
| Attributs | |
|---|---|
identifier |
Valeur ou nom unique qui identifie l'entité. |
entity_type |
Catégorie de classification de l'entité. |
is_suspicious |
Indicateur de chaîne (souvent |
linked_entities |
Liste des identifiants d'autres entités associées à cette fiche d'entité spécifique. |
class TIPCommon.data_models.EnvironmentData
class TIPCommon.data_models.EnvironmentData(environment, dynamic_parameters=<factory>, base64_image=None, platform=None)
Bases : objet
EnvironmentData encapsule les informations de configuration et de branding pour un environnement organisationnel spécifique. Cela inclut les paramètres spécifiques à l'environnement et les éléments visuels utilisés pour les déploiements multitenants ou multi-environnements.
Méthodes
La méthode suivante facilite la création d'objets de données d'environnement à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les paramètres de configuration et les éléments de branding associés à l'environnement.
| Attributs | |
|---|---|
environment |
Nom de l'environnement organisationnel. |
dynamic_parameters |
Liste de paires clé/valeur personnalisées spécifiques à la configuration de cet environnement. |
base64_image |
Chaîne encodée en base64 facultative représentant le logo ou l'icône de l'environnement. |
platform |
Identifiant entier représentant la plate-forme ou le fournisseur d'infrastructure spécifique. |
class TIPCommon.data_models.EventCard
class TIPCommon.data_models.EventCard(case_id, alert_identifier, event_id, name, time, product, port, outcome, artifact_entities, fields)
Bases : objet
EventCard représente un résumé concis et visuel d'un événement de sécurité spécifique. Elle est conçue pour faire apparaître la télémétrie la plus critique (comme le timing, le produit source et le résultat) à utiliser dans les tableaux de bord d'investigation et les files d'événements.
Méthodes
Les méthodes suivantes gèrent la conversion des données de la fiche d'événement entre les instances d'objet et les formats JSON.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principaux identifiants de télémétrie et d'organisation stockés dans la fiche d'événement.
| Attributs | |
|---|---|
event_id |
Identifiant unique de l'enregistrement d'événement spécifique. |
time |
Horodatage Unix indiquant le moment où l'événement s'est produit. |
product |
Produit ou outil de sécurité ayant généré la télémétrie de l'événement. |
outcome |
Résultat enregistré de l'événement. |
artifact_entities |
Liste des entités identifiées dans la télémétrie des événements qui servent d'artefacts pour la demande. |
fields |
Collection de propriétés clé-valeur supplémentaires spécifiques à la charge utile de données de cet événement. |
class TIPCommon.data_models.EventPropertyField
class TIPCommon.data_models.EventPropertyField(order, group_name, is_integration, is_highlight, items)
Bases : objet
EventPropertyField définit une collection structurée d'attributs d'événement, organisés par priorité et par regroupement. Il permet de catégoriser les données de télémétrie pour l'affichage, en mettant en évidence les champs critiques sur lesquels se concentrer pour les investigations.
Méthodes
La méthode suivante gère la reconstruction des objets de champ de propriété à partir de données JSON structurées.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
Attributs
Le tableau suivant met en évidence les métadonnées et les éléments de contenu qui définissent le champ de propriété de l'événement.
| Attributs | |
|---|---|
group_name |
Nom du groupe logique auquel appartiennent ces champs. |
is_highlight |
Indique si ce champ doit être visuellement mis en évidence dans l'UI de la plate-forme en tant que point de données à priorité élevée. |
items |
Liste des éléments de données spécifiques contenus dans ce groupe de propriétés. |
class TIPCommon.data_models.FieldGroupItem
class TIPCommon.data_models.FieldGroupItem(original_name, name, value)
Bases : objet
FieldGroupItem représente un point de données spécifique dans un groupe de champs, en conservant un mappage entre le nom de la source d'origine et le nom à afficher lisible par l'utilisateur.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des éléments de groupe de champs.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
class TIPCommon.data_models.FieldItem
class TIPCommon.data_models.FieldItem(original_name, name, value)
Bases : objet
FieldItem est une structure de données de base pour les propriétés individuelles. Elle stocke la clé brute, le libellé mappé et la valeur associée.
Méthodes
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée une instance |
class TIPCommon.data_models.FieldsGroup
class TIPCommon.data_models.FieldsGroup(order, group_name, is_integration, is_highlight, hide_options, items)
Bases : objet
FieldsGroup sert de conteneur pour organiser plusieurs éléments de champ dans une collection logique. Il est principalement utilisé pour contrôler la mise en page et la visibilité des données dans l'interface utilisateur de la plate-forme.
Méthodes
Les méthodes suivantes gèrent la conversion des données de groupe de champs entre les instances d'objet et le JSON structuré.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les propriétés qui définissent le comportement d'affichage et le contenu du groupe.
| Attributs | |
|---|---|
group_name |
Libellé utilisé pour identifier le groupe dans l'UI. |
is_highlight |
Détermine si le groupe doit être mis en évidence visuellement. |
items |
Liste des points de données spécifiques contenus dans le groupe. |
class TIPCommon.data_models.GoogleServiceAccount
class TIPCommon.data_models.GoogleServiceAccount(account_type, project_id, private_key_id, private_key, client_email, client_id, auth_uri, token_uri, auth_provider_x509_url, client_x509_cert_url)
Bases : objet
GoogleServiceAccount fournit une représentation structurée des identifiants de compte de service Google Cloud. Il permet de gérer les informations d'authentification pour les intégrations interagissant avec les services Google.
Méthodes
La méthode suivante facilite l'exportation des données d'identifiants au format standard requis par les bibliothèques clientes.
| Méthodes | |
|---|---|
to_dict() |
Sérialise les propriétés du compte de service dans un dictionnaire compatible avec le format |
class TIPCommon.data_models.Insight
class TIPCommon.data_models.Insight(raw_data)
Bases : objet
Un insight représente une observation ou un résultat analytique distinct généré par la plate-forme ou une intégration. Il encapsule les données brutes qui fournissent un contexte supplémentaire ou des actions recommandées pour une enquête sur la sécurité.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des objets Insight.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée une instance |
to_json() |
Sérialise l'objet |
Attributs
| Attributs | |
|---|---|
raw_data |
Charge utile de données brutes sous-jacente contenant les conclusions et les métriques spécifiques de l'insight. |
class TIPCommon.data_models.InstalledIntegrationInstance
class TIPCommon.data_models.InstalledIntegrationInstance(instance, identifier, integration_identifier, environment_identifier, instance_name)
Bases : objet
InstalledIntegrationInstance représente une instance configurée spécifique d'une intégration qui a été déployée dans un environnement. Il associe la définition générale de l'intégration à son déploiement et à sa dénomination spécifiques à l'environnement.
Méthodes
Les méthodes suivantes gèrent la conversion des données d'instance d'intégration entre les instances d'objet et le JSON structuré.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui analyse les données JSON dans un objet |
to_json() |
Sérialise les données de l'instance d'intégration dans un format de dictionnaire compatible JSON. |
Attributs
Le tableau suivant met en évidence les identifiants utilisés pour suivre l'intégration dans différents environnements organisationnels.
| Attributs | |
|---|---|
instance_name |
Nom défini par l'utilisateur pour cette instance d'intégration spécifique. |
integration_identifier |
Identifiant unique de l'intégration parente. |
environment_identifier |
Identifiant de l'environnement organisationnel dans lequel cette instance est installée. |
class TIPCommon.data_models.InternalDomain
class TIPCommon.data_models.InternalDomain(alias_name, id_, domain_display_name, environments_json, creation_time_unix_time_in_ms, modification_time_unix_time_in_ms)
Bases : objet
InternalDomain représente un identifiant de domaine reconnu comme faisant partie de l'infrastructure interne de l'organisation. Ces journaux sont essentiels pour faire la distinction entre le trafic interne et les menaces externes lors des enquêtes sur la sécurité.
Méthodes
Les méthodes suivantes gèrent la sérialisation et la reconstruction des enregistrements de domaine internes.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée un objet |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les propriétés utilisées pour identifier et catégoriser les domaines internes.
| Attributs | |
|---|---|
domain_display_name |
Nom de domaine principal. |
alias_name |
Autre nom ou libellé utilisé pour identifier le domaine dans la plate-forme. |
environments_json |
Chaîne au format JSON listant les environnements dans lesquels ce domaine est considéré comme interne. |
class TIPCommon.data_models.JobParamType
class TIPCommon.data_models.JobParamType(value)
Bases : Enum
JobParamType définit les types de données acceptés pour les paramètres utilisés dans les tâches planifiées ou les tâches d'automatisation. Ces types facilitent la validation correcte des entrées et la gestion au niveau de la plate-forme.
Constantes
Les constantes suivantes représentent les types de données spécifiques disponibles pour les paramètres de job.
| Constantes | |
|---|---|
BOOLEAN |
0 |
INTEGER |
1 |
STRING |
2 |
PASSWORD |
3 |
IP |
4 |
HOST |
5 |
URL |
6 |
DOMAIN |
7 |
EMAIL |
8 |
NULL |
-1 |
class TIPCommon.data_models.Parameter
class TIPCommon.data_models.Parameter(raw_param)
Bases : objet
Parameter sert de classe de base principale pour tous les modèles liés aux paramètres de la bibliothèque. Il fournit une interface cohérente pour gérer les données de configuration brutes.
Attributs
La propriété suivante permet d'accéder aux données sous-jacentes utilisées pour initialiser le paramètre.
| Attributs | |
|---|---|
raw_data |
Charge utile du dictionnaire d'origine contenant la configuration du paramètre. |
Exemple
L'exemple suivant montre comment initialiser la classe de base Parameter et accéder à ses données brutes.
>>> 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, critical_expiration_time, expiration_status, remaining_time_since_last_pause)
Bases : objet
Le SLA (Service Level Agreement, contrat de niveau de service) englobe les contraintes de timing et l'état d'une alerte. Il permet de suivre avec précision les délais standards et critiques, y compris la logique pour les pauses gérées.
Méthodes
Les méthodes suivantes gèrent la conversion des données SLA entre les instances d'objet et le JSON structuré.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principaux attributs de timing utilisés pour suivre l'expiration des alertes.
| Attributs | |
|---|---|
sla_expiration_time |
Code temporel Unix représentant le délai d'expiration du SLA standard. |
critical_expiration_time |
Code temporel Unix représentant l'échéance du SLA critique. |
expiration_status |
État actuel du SLA. |
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
ScriptContext est un conteneur complet qui fournit l'environnement, les identifiants et les paramètres nécessaires à l'exécution du script. Il suit tout, des entités cibles et des ID de workflow aux paramètres de sécurité tels que les configurations de proxy et de coffre-fort.
Méthodes
Les méthodes suivantes permettent de modifier et de sérialiser le contexte d'exécution du script.
| Méthodes | |
|---|---|
to_json() |
Sérialise |
update() |
Met à jour les attributs de contexte avec les valeurs d'un dictionnaire fourni. |
Attributs
Compte tenu de la nature étendue du contexte, le tableau suivant met en évidence les identifiants d'exécution et d'environnement les plus critiques.
| Attributs | |
|---|---|
case_id |
Identifiant de la demande associée à l'exécution du script actuel. |
workflow_id |
ID du workflow en cours de traitement. |
parameters |
Dictionnaire contenant les paramètres d'exécution transmis au script. |
execution_deadline_unix_time_ms |
Horodatage Unix indiquant la date et l'heure de fin de l'exécution du script. |
vault_settings |
Paramètres de configuration permettant d'accéder aux données sensibles stockées dans le coffre-fort de la plate-forme. |
class TIPCommon.data_models.SmimeEmailConfig
class TIPCommon.data_models.SmimeEmailConfig(email, private_key_b64, certificate_b64, ca_certificate_b64)
Bases : objet
SmimeEmailConfig encapsule les éléments de chiffrement nécessaires et le message électronique requis pour effectuer des opérations S/MIME, telles que la signature ou le chiffrement. Il contient l'e-mail brut, ainsi que les clés et les certificats encodés en base64.
Attributs
Le tableau suivant décrit les composants cryptographiques gérés par ce modèle de configuration.
| Attributs | |
|---|---|
email |
Objet de message e-mail Python standard à traiter. |
private_key_b64 |
Clé privée encodée en base64 utilisée pour la signature ou le déchiffrement. |
certificate_b64 |
Certificat public encodé en base64 associé à la clé privée. |
ca_certificate_b64 |
Certificat de l'autorité de certification (AC) encodé en base64 utilisé pour valider la chaîne de confiance. |
class TIPCommon.data_models.SmimeType
class TIPCommon.data_models.SmimeType(value)
Bases : Enum
SmimeType définit le mode de fonctionnement du traitement S/MIME, en distinguant la sécurisation du contenu par chiffrement de la validation de l'expéditeur à l'aide d'une signature numérique.
Constantes
Les constantes suivantes représentent les types de messages S/MIME acceptés.
| Constantes | |
|---|---|
SIGNED |
'signed' (Le message est signé numériquement pour garantir son authenticité.) |
ENCRYPTED |
'encrypted' (Le corps du message est chiffré pour des raisons de confidentialité) |
class TIPCommon.data_models.TypedContainer
class TIPCommon.data_models.TypedContainer()
Bases : Generic[T]
TypedContainer est un wrapper générique conçu pour contenir des données d'un type spécifique. Il améliore la productivité des développeurs en fournissant des indications de type et IntelliSense, ce qui garantit que l'objet stocké est traité correctement par les IDE et les outils d'analyse statique.
class TIPCommon.data_models.UserDetails
class TIPCommon.data_models.UserDetails(id_: int, creation_time_unix_time_in_ms: int, modification_time_unix_time_in_ms: int, permission_group: str, permission_groups: list[str], soc_roles: list[str], is_disabled: bool, login_identifier: str, first_name: str, last_name: str, permission_type: int, role: int, soc_role_id: int, soc_role_ids: list[int], email: str, user_name: str, user_type: int, identity_provider: int, provider_name: str, advanced_reports_access: int, account_state: int, last_login_time: int, previous_login_time: int, last_password_change_time: int, last_password_change_notification_time: int, login_wrong_password_count: int, is_deleted: bool, deletion_time_unix_time_in_ms: int, environments: list[str], allowed_platforms: list[int], data_access_context: [DataAccessContext](#TIPCommon.data_models.DataAccessContext), soc_role: str | None, image_base64: str | None)
Bases : objet
UserDetails fournit un profil complet d'un utilisateur de la plate-forme, comprenant des métadonnées d'authentification, des rôles organisationnels et des autorisations d'accès aux données précises. Il est essentiel pour gérer les sessions utilisateur et appliquer le contrôle des accès basé sur les rôles (RBAC).
Méthodes
Les méthodes suivantes facilitent la reconstruction et la sérialisation des données de profil utilisateur.
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Convertit l'objet |
Attributs
Le tableau suivant met en évidence les principales structures d'identification et d'autorisation pour l'utilisateur.
| Attributs | |
|---|---|
user_name |
Nom d'utilisateur unique du système utilisé pour la connexion et l'identification. |
soc_roles |
Liste des rôles SOC attribués à l'utilisateur, qui définissent ses autorisations opérationnelles. |
data_access_context |
Contexte définissant les unités organisationnelles et les niveaux d'accès aux données auxquels l'utilisateur est autorisé à accéder. |
is_disabled |
Indicateur booléen indiquant si l'utilisateur ne peut actuellement pas se connecter à son compte. |
class TIPCommon.data_models.UserProfileCard
class TIPCommon.data_models.UserProfileCard(raw_data, first_name, last_name, user_name, account_state)
Bases : objet
UserProfileCard fournit un résumé léger du profil d'un utilisateur, destiné à être affiché dans des composants d'interface utilisateur tels que des en-têtes ou des fiches de contact où les informations complètes ne sont pas requises.
Méthodes
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui crée une instance |
class TIPCommon.data_models.WallData
class TIPCommon.data_models.WallData(raw_data, case_id, activity_kind, activity_data_json, favorite)
Bases : objet
WallData représente une entrée sur le mur ou la chronologie d'une demande. Ce modèle suit les journaux d'activité, les notes et les actions système qui se produisent au cours du cycle de vie d'une enquête.
Méthodes
| Méthodes | |
|---|---|
from_json() |
Méthode de classe qui initialise une instance |
to_json() |
Sérialise l'objet |
Attributs
| Attributs | |
|---|---|
activity_kind |
Catégorie de l'activité. |
activity_data_json |
Chaîne au format JSON contenant les détails ou la charge utile spécifiques de l'activité. |
favorite |
Indique si l'entrée d'activité a été épinglée ou marquée comme favorite pour une consultation rapide. |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.