data_models 模块

此模块包含用于表示以下内容的数据类:

  • 数据模型
  • 提醒
  • 变量容器
  • 常规参数
  • 连接器参数

class TIPCommon.data_models.AlertCard

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)

代码库:对象

表示提醒的摘要卡片,其中包含提醒的关键详细信息和元数据。

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

根据表示 AlertCard 对象属性的 JSON 字典创建该对象。

class TIPCommon.data_models.AlertEvent

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])

代码库:对象

表示与案例中的提醒关联的单个事件。

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

根据 JSON 字典创建 AlertEvent 对象。

class TIPCommon.data_models.AlertPriority

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

基类:Enum

表示提醒的优先级。

常量

  • CRITICAL = 100

  • HIGH = 80

  • INFORMATIVE = -1

  • LOW = 40

  • MEDIUM = 60

  • UNCHANGED = 0

class TIPCommon.data_models.BaseAlert

TIPCommon.data_models.BaseAlert(raw_data, alert_id)

代码库:对象

表示基本提醒。它具有以下属性:

属性

raw_data 相应提醒的原始数据。
alert_id 提醒的 ID。

方法

  • to_json()→ dict
示例
>>> 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

TIPCommon.data_models.BaseDataModel(raw_data)

代码库:对象

表示基本数据模型。

属性

属性 说明
raw_data 数据模型的原始数据。

方法

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

class TIPCommon.data_models.CaseDataStatus

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

基类:Enum

常量

  • ALL = 3

  • CLOSED = 2

  • CREATION_PENDING = 5

  • MERGED = 4

  • NEW = 0

  • OPENED = 1

class TIPCommon.data_models.CaseDetails

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)

代码库:对象

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

根据 JSON 字典创建 CaseDetails 对象。

媒体资源 is_closed

property is_closed: bool

指示相应支持请求是否已关闭。

property is_open

property is_open: bool

指示支持请求是否处于未解决状态。

class TIPCommon.data_models.CasePriority

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

基类:Enum

表示提醒的优先级。

常量

  • CRITICAL = 100

  • HIGH = 80

  • INFORMATIVE = -1

  • LOW = 40

  • MEDIUM = 60

  • UNCHANGED = 0

class TIPCommon.data_models.CaseWallAttachment

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

代码库:对象

表示要添加到案例墙的附件。

属性

属性 说明 类型
base64_blob 附件的 base64 编码内容。 str
case_id 附件所属的支持请求的 ID。 int | None
file_type 附件的文件类型。 str
is_important 指示附件是否标记为重要附件。 bool
name 附件文件的名称。 str

class TIPCommon.data_models.ConnectorCard

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

代码库:对象

表示连接器实例的摘要卡。

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

根据 JSON 字典创建 ConnectorCard 对象。

class TIPCommon.data_models.ConnectorConnectivityStatusEnum

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

基类:Enum

表示连接器的连接状态。

常量

  • LIVE = 0

  • NO_CONNECTIVITY = 1

class TIPCommon.data_models.ConnectorParamTypes

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

基类:Enum

常量

表示连接器参数的类型。

  • BOOLEAN = 0

  • DOMAIN = 7

  • EMAIL = 8

  • HOST = 5

  • INTEGER = 1

  • IP = 4

  • NULL = -1

  • PASSWORD = 3

  • SCRIPT = 12

  • STRING = 2

  • URL = 6

TIPCommon.data_models.ConnectorParameter

TIPCommon.data_models.ConnectorParameter(raw_param)

基类:Parameter

表示连接器参数。

属性

属性 说明
name 参数的名称。
value 参数值。
type 参数的类型(根据 ConnectorParamTypes)。
mode 参数的模式。
is_mandatory 定义参数是否为必需参数。
示例
>>> 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

代码库:对象

表示变量的容器。

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

class TIPCommon.data_models.CustomField

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

代码库:对象

表示平台中的自定义字段定义。

属性

属性 说明
description str

自定义字段的说明。

display_name str

自定义字段的显示名称。

id int

自定义字段的唯一 ID。

scopes list[CustomFieldScope]

范围(例如 提醒、支持请求)中,自定义字段适用。

type str

自定义字段的数据类型。

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

根据 JSON 字典创建 CustomField 对象。

class TIPCommon.data_models.CustomFieldScope

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

基类:Enum

表示可应用自定义字段的可能范围。

常量

  • ALERTS = 'Alert'

  • CASE = 'Case'

方法

  • build_parent_path(identifier: int)→ str 根据标识符构建自定义字段值的父路径。

class TIPCommon.data_models.CustomFieldValue

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

代码库:对象

表示为特定自定义字段设置的值。

属性

属性 说明
custom_field_id int

自定义字段的 ID。

identifier int

值所属的实体(支持请求/提醒)的 ID。

scope CustomFieldScope

范围(例如,自定义字段值适用的对象(例如“提醒”“支持请求”)。

values list[str]

为自定义字段设置的值的列表。

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

根据 JSON 字典创建 CustomFieldValue 对象。

class TIPCommon.data_models.DatabaseContextType

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

基类:Enum

表示用于数据存储的数据库上下文类型。

常量

  • ALERT = 2

  • CASE = 1

  • CONNECTOR = 4

  • GLOBAL = 0

  • JOB = 3

class TIPCommon.data_models.EventPropertyField

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

代码库:对象

表示活动属性中的字段组。

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

根据 JSON 字典创建 EventPropertyField 对象。

class TIPCommon.data_models.FieldGroupItem

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

代码库:对象

表示事件字段组中的单个键值项。

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

根据 JSON 字典创建 FieldGroupItem 对象。

class TIPCommon.data_models.FieldItem

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

代码库:对象

表示字段中的单个项,包含其原始名称、格式化名称和值。

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

根据 JSON 字典创建 FieldItem 对象。

class TIPCommon.data_models.FieldsGroup

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

代码库:对象

表示较大数据结构中的一组字段,通常用于显示。

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

根据 JSON 字典创建 FieldsGroup 对象。

class TIPCommon.data_models.GoogleServiceAccount

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)

代码库:对象

表示 Google 服务账号的属性。

方法

  • to_dict()→ dict 将数据模型序列化为字典。

返回值

服务账号 JSON 字典。

返回类型

dict

TIPCommon.data_models.InstalledIntegrationInstance

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

代码库:对象

表示环境中已安装的集成实例。

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

根据 JSON 字典创建 InstalledIntegrationInstance 对象。

参数
参数
integration_env_json SingleJson

包含集成环境信息的 JSON 数据。

返回值

使用 raw_data 中的数据初始化的指定类的实例。

返回类型

InstalledIntegrationInstance

class TIPCommon.data_models.JobParamType

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

基类:Enum

常量

  • BOOLEAN = 0

  • DOMAIN = 7

  • HOST = 5

  • INTEGER = 1

  • IP = 4

  • NULL = -1

  • PASSWORD = 3

  • STRING = 2

  • URL = 6

TIPCommon.data_models.Parameter

TIPCommon.data_models.Parameter(raw_param)

代码库:对象

表示参数的父类。

属性

属性 说明
raw_data 参数的原始数据。
示例
>>> from data_models import Parameter
>>> p = Parameter({'foo': 'bar'})
>>> print(p)
Parameter(raw_data={'foo': 'bar'})

class TIPCommon.data_models.SLA

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

代码库:对象

表示支持请求或提醒的服务等级协议 (SLA) 详细信息。

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

根据 JSON 字典创建 SLA 对象。

class TIPCommon.data_models.ScriptContext

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)

代码库:对象

表示脚本或操作的执行上下文,提供对各种运行时参数和数据的访问权限。

属性

属性 说明
action_definition_name str

正在执行的操作定义的名称。

默认值为 ''

alert_id str

与当前执行相关的提醒的 ID。

默认值为 ''

async_polling_interval_in_sec int

异步轮询的间隔时间(以秒为单位)。

默认值为 0

async_total_duration_deadline int

异步操作的总时长截止时间。

默认值为 0

case_id int | str | None

与当前执行关联的支持请求的 ID。

默认值为 None

connector_context ConnectorContext | None

特定于连接器执行的上下文。

默认值为 None

default_result_value str

操作结果的默认值。

默认值为 ''

environment str

执行环境。

默认值为 ''

environment_api_key str | None

相应环境的 API 密钥。

默认值为 None

execution_deadline_unix_time_ms int

表示执行截止时间的 Unix 时间戳(以毫秒为单位)。

默认值为 0

integration_identifier str

所用集成的标识符。

默认值为 ''

integration_instance str

所用集成实例的名称。

默认值为 ''

job_api_key str

特定于作业的 API 密钥。

默认值为 ''

max_json_result_size int

JSON 结果允许的最大大小。

默认值为 15

original_requesting_user str

最初发起请求的用户。

默认值为 ''

parameters SingleJson

包含脚本/操作参数的 JSON 对象。

script_timeout_deadline int

脚本执行超时时间。

默认值为 0

target_entities str

以英文逗号分隔的目标实体字符串。

默认值为 ''

unique_identifier str

执行上下文的唯一标识符。

默认值为 ''

use_proxy_settings bool

指示是否应使用代理设置。

默认值为 False

vault_settings SiemplifyVault | None

用于安全检索凭据的 Vault 设置。

默认值为 None

workflow_id str

工作流的 ID。

默认值为 ''

workflow_instance_id str | None

工作流实例的 ID。

默认值为 None

方法

  • to_json()→ MutableMapping[str, Any] 将上下文对象序列化为可变映射(JSON 字典)。

  • update(attributes: MutableMapping[str, Any])→ None 使用来自可变映射的新属性更新上下文对象。

class TIPCommon.data_models.SmimeEmailConfig

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

代码库:对象

表示用于发送 S/MIME 加密或签名电子邮件的配置。

属性

属性 说明
ca_certificate_b64 str

Base64 编码的 CA 证书。

certificate_b64 str

采用 base64 编码的证书。

email Message

电子邮件消息对象。

private_key_b64 str

base64 编码的私钥。

class TIPCommon.data_models.SmimeType

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

基类:Enum

表示 S/MIME 操作的类型。

常量

  • ENCRYPTED = 'encrypted'

  • SIGNED = 'signed'

class TIPCommon.data_models.TypedContainer

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

基类:Generic[T]

用于提供类型智能感知的特定类型的容器。

TIPCommon.data_models.UserProfileCard

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

代码库:对象

表示用户个人资料摘要卡片。

classmethod from_json(user_profile_card_response: dict)→ UserProfileCard

根据 JSON 字典创建 UserProfileCard 对象。

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。