TIPCommon.base
TIPCommon.base.action.action_parser.parse_case_attachment
TIPCommon.base.action.action_parser.parse_case_attachment(attachment: MutableMapping[str, Any]) → CaseAttachment
Mengurai lampiran JSON dan menampilkan objek CaseAttachment.
Parameter
| Parameter | |
|---|---|
attachment |
Objek JSON respons yang merepresentasikan lampiran. |
Hasil
Objek CaseAttachment yang diuraikan.
Jenis hasil yang ditampilkan
CaseAttachment
TIPCommon.base.action.action_parser.parse_case_comment
TIPCommon.base.action.action_parser.parse_case_comment(comment: MutableMapping[str, Any]) → CaseComment
Mengurai komentar JSON dan menampilkan objek CaseComment.
Parameter
| Parameter | |
|---|---|
comment |
Objek JSON respons yang merepresentasikan komentar. |
Hasil
Objek CaseComment yang diuraikan.
Jenis hasil yang ditampilkan
CaseComment
class TIPCommon.base.action.base_action.Action
class TIPCommon.base.action.base_action.Action(name: str)
Dasar: ABC, Generic[ApiClient]
Implementasi infrastruktur generik terpadu untuk pengembangan tindakan Google SecOps.
Class dasar Action menyediakan metode abstrak template untuk diganti di class tindakan yang diwarisi, properti generik, dan alur umum sebagai metode yang dijalankan saat memanggil metode run tindakan.
Parameter
| Parameter | |
|---|---|
name |
str
Nama skrip tindakan. |
Atribut
| Atribut | |
|---|---|
_soar_action |
Objek SiemplifyAction SDK.
Jenis: |
_api_client |
Klien API integrasi.
Jenis: |
_name |
Nama skrip yang menggunakan tindakan ini.
Jenis: |
_action_start_time |
Waktu mulai tindakan.
Jenis: |
_logger |
Objek logger yang digunakan untuk mencatat tindakan.
Jenis: |
_params |
Penampung parameter untuk tindakan ini.
Jenis: |
global_context |
Kamus untuk menyimpan konteks, jika diperlukan.
Jenis: |
_entity_types |
Jenis entitas yang didukung oleh tindakan.
Jenis: |
_entities_to_update |
Entitas yang akan diperbarui saat tindakan berakhir.
Jenis: |
json_results |
Hasil JSON tindakan.
Jenis: |
_attachments |
Lampiran hasil kasus yang akan ditambahkan.
Jenis: |
_contents |
Konten hasil kasus yang akan ditambahkan.
Jenis: |
_data_tables |
Tabel data hasil kasus yang akan ditambahkan.
Jenis: |
_html_reports |
Laporan HTML hasil kasus yang akan ditambahkan.
Jenis: |
_links |
Link hasil kasus yang akan ditambahkan.
Jenis: |
_entity_insights |
Insight entity kasus yang akan ditambahkan.
Jenis: |
_case_insights |
Insight kasus yang akan ditambahkan.
Jenis: |
_execution_state |
Status eksekusi akhir tindakan.
Jenis: |
_result_value |
Nilai hasil akhir tindakan.
Jenis: |
_output_message |
Pesan output tindakan saat berhasil.
Jenis: |
_error_output_message |
Pesan output tindakan saat gagal.
Jenis: |
Metode
- run() |
Menjalankan eksekusi tindakan. |
- _get_adjusted_json_results() |
Menyesuaikan hasil JSON ke struktur tertentu. |
Metode abstrak
| Metode abstrak | |
|---|---|
_validate_params() |
Memvalidasi parameter untuk tindakan ini. |
_init_managers() |
Melakukan inisialisasi dan menampilkan objek pengelola. |
_perform_action() |
Melakukan logika utama tindakan. |
Metode tambahan
Metode ini dipanggil selama eksekusi tindakan dan memengaruhi fase pemrosesan pemberitahuan, tetapi tidak wajib diganti.
_get_entity_types()_finalize_action_on_success()_finalize_action_on_failure()_on_entity_failure()_handle_timeout()_extract_action_parameters()_finalize()
Metode wrapper SDK
_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()
Contoh
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()
property action_start_time
property action_start_time: int
Menampilkan int yang merepresentasikan waktu mulai tindakan dalam Unix.
property api_client
propertyapi_client: ApiClient | Collection[ApiClient] | Type[Tuple[ApiClient, ...]] | None
Menampilkan objek yang dapat di-API-kan.
Lampiran properti
property attachments: list[Attachment]
Semua lampiran dalam daftar dikirim ke hasil kasus secara default.
Menampilkan daftar objek Attachment yang mewakili insight untuk kasus ini.
property case_insights
property case_insights: list[CaseInsight]
Semua insight kasus dalam daftar dikirim ke hasil kasus secara default.
Menampilkan daftar objek CaseInsight yang mewakili insight untuk kasus ini.
Isi properti
property contents: list[Content]
Semua konten daftar dikirim ke hasil kasus secara default.
Menampilkan daftar objek Konten yang mewakili insight untuk kasus ini.
Tabel data property
property data_tables: list[DataTable]
Secara default, semua tabel data dalam daftar dikirim ke hasil kasus.
Menampilkan daftar objek DataTable yang merepresentasikan insight untuk kasus ini.
Entitas property yang akan diperbarui
property entities_to_update: list[DomainEntityInfo]
Semua entity dalam daftar dikirim ke platform untuk diperbarui.
Menampilkan daftar objek Entity yang merepresentasikan entitas yang harus
diperbarui dalam kasus ini.
Insight entitas property
property entity_insights:
list[EntityInsight]
Semua insight entitas dalam daftar dikirim ke hasil kasus secara default.
Menampilkan daftar objek EntityInsight yang mewakili insight untuk kasus ini.
Jenis entitas property
property entity_types:
list[EntityTypesEnum]
Jika tindakan berfungsi dengan entity, tindakan hanya akan memproses entity yang jenisnya ada dalam daftar entity_types. Jika tidak, tindakan akan melewati entitas.
Menampilkan daftar objek EntityTypesEnum yang merepresentasikan jenis entity yang dapat diproses oleh tindakan.
property error_output_message
property error_output_message: str
Pesan output tindakan jika terjadi kegagalan eksekusi.
Pesan output yang akan muncul jika terjadi kegagalan selama runtime tindakan. Nilai defaultnya adalah ActionSCRIPT_NAMEfailed.
Status eksekusi property
property execution_state: ExecutionState
Status eksekusi tindakan—indikator status yang diwakili oleh bilangan bulat untuk diteruskan kembali ke platform.
Kemungkinan statusnya adalah sebagai berikut:
ExecutionState.COMPLETED = 0ExecutionState.IN_PROGRESS = 1ExecutionState.FAILED = 2ExecutionState.TIMED_OUT = 3
Menampilkan objek ExecutionState yang mewakili status eksekusi saat ini.
property html_reports
property html_reports: list[HTMLReport]
Semua laporan HTML dalam daftar akan dikirim ke hasil kasus secara default.
Menampilkan daftar objek HTMLReport yang mewakili insight untuk kasus ini.
property is_first_run
property is_first_run: bool
Menunjukkan apakah ini adalah peluncuran pertama.
Menampilkan:
True jika ini adalah proses pertama, False jika tidak.
property json_results
property json_results: Dict[str, Any] | List[Dict[str, Any]]
Menampilkan hasil JSON tindakan yang akan dikirim ke dinding kasus.
Link properti
property links: list[Link]
Semua link dalam daftar akan dikirim ke hasil kasus secara default.
Menampilkan daftar objek Link yang mewakili insight untuk kasus ini.
Pencatat properti
property logger: NewLineLogger
Menampilkan objek NewLineLogger untuk tindakan.
Nama properti
property name: str
property output_message
property output_message: str
Pesan output tindakan jika berhasil dijalankan.
Pesan output yang merangkum hasil tindakan.
Parameter property
property params:
[Container]
Menampilkan objek Container yang menjelaskan parameter tindakan, dengan setiap
parameter ditampilkan sebagai atribut snake_case.
property result_value
property result_value: bool
Nilai hasil tindakan yang akan dikirim kembali ke platform.
Nilai yang memungkinkan:
True: Tindakan BerhasilFalse: Tindakan Gagal
property soar_action
property soar_action: SiemplifyAction
Menampilkan objek SiemplifyAction SDK.
class TIPCommon.base.action.base_enrich_action.EnrichAction
class TIPCommon.base.action.base_enrich_action.EnrichAction(name: str)
Dasar: Tindakan
Class yang merepresentasikan tindakan pengayaan entitas.
Class ini mewarisi dari class TIPCommon.base.actions.base_action::Action.
Parameter
| Parameter | |
|---|---|
name |
strNama tindakan. |
Atribut
| Atribut | |
|---|---|
enrichment_data |
Atribut ini menyimpan data pengayaan untuk entitas saat ini di
setiap iterasi entitas. Di akhir setiap iterasi, atribut
Jenis: |
entity_results |
Hasil entity yang disertakan dalam output JSON untuk objek ini.
Jenis: Apa pun |
global_context |
Kamus untuk menyimpan konteks jika diperlukan. Jenis: |
Metode abstrak
| Metode abstrak | |
|---|---|
_get_entity_types() |
Mendapatkan jenis entitas yang menjalankan tindakan. |
_perform_enrich_action() |
Lakukan logika pengayaan utama pada entity. |
Metode pribadi
| Metode pribadi | |
|---|---|
_perform_action() |
Metode ini menggabungkan metode abstrak lainnya dengan logika pengayaan OOTB
lainnya dan meneruskannya ke class induk untuk digunakan dalam metode
|
class TIPCommon.base.action.data_models.ActionParamType
class TIPCommon.base.action.data_models.ActionParamType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
BOOLEAN = 1CASE_PRIORITIES = 7CLOSE_CASE_REASONS = 5CLOSE_ROOT_CAUSE = 6CODE = 20CONTENT = 11DDL = 15EMAIL_CONTENT = 10ENTITY_TYPE = 13MULTI_VALUES = 14NULL = -1PASSWORD = 12PLAYBOOK_NAME = 2STAGE = 4STRING = 0USER = 3
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)
Dasar: object
Lampiran hasil skrip tindakan.
Class ini tidak dapat diubah: setelah dibuat, atributnya tidak dapat diubah. Objek ini mendukung hashing (misalnya, digunakan dalam set atau sebagai kunci kamus) dan perbandingan kesetaraan menggunakan operator ==.
Atribut
| Atribut | |
|---|---|
title |
Judul lampiran. Jenis: |
filename |
Nama file lampiran. Jenis: |
file_contents |
Konten file lampiran. Jenis: |
additional_data |
Data tambahan. Jenis: |
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)
Dasar: object
Lampiran kasus.
Class ini tidak dapat diubah; setelah menetapkan nilai dan membuat objek,
nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
attachment_id |
intID lampiran. |
attachment_type |
strJenis lampiran. |
description |
strDeskripsi lampiran. |
is_favorite |
boolMenunjukkan apakah lampiran ditandai sebagai favorit. |
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)
Dasar: object
Komentar kasus.
Class ini tidak dapat diubah; setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
comment |
strKomentar. |
comment_for_client |
str | NoneKomentar untuk klien. |
modification_time_unix_time_in_ms_for_client |
int
Waktu modifikasi untuk |
last_editor |
str
ID editor terakhir, seperti 77bdb7a4-8484-481d-9482-2449e33f9518. |
last_editor_full_name |
str
Nama lengkap pengguna editor terakhir, seperti admin admin. |
is_deleted |
bool
Menunjukkan apakah komentar sudah dihapus. |
creator_user_id |
str
ID pengguna pembuat, seperti 77bdb7a4-8484-481d-9482-2449e33f9518. |
creator_full_name |
str
Nama lengkap kreator, seperti System. |
comment_id |
intID komentar. |
comment_type |
intJenis komentar. |
case_id |
intID kasus. |
is_favorite |
bool
Menunjukkan apakah komentar ditandai sebagai favorit. |
modification_time_unix_time_in_ms |
int
Waktu modifikasi terakhir komentar dalam Unix, seperti 1686040471269. |
creation_time_unix_time_in_ms |
int
Waktu pembuatan komentar dalam Unix, seperti 1686040471269. |
alert_identifier |
strID pemberitahuan, seperti 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)
Dasar: object
Insight kasus.
Class ini tidak dapat diubah: setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
title |
strJudul insight. |
triggered_by |
strNama integrasi. |
content |
strPesan insight. |
severity |
InsightSeverityTingkat keparahan insight. Nilainya dapat berupa:
|
insight_type |
InsightTypeJenis insight. Nilainya dapat berupa:
|
entity_identifier |
str | NoneID entitas. |
additional_data |
Any | NoneData tambahan. |
additional_data_type |
Any | NoneJenis data tambahan. |
additional_data_title |
str | NoneJudul data tambahan. |
class TIPCommon.base.action.data_models.CasePriority
class TIPCommon.base.action.data_models.CasePriority(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
CRITICAL = 100HIGH = 80INFORMATIONAL = 0LOW = 40MEDIUM = 60
class TIPCommon.base.action.data_models.CaseStage
class TIPCommon.base.action.data_models.CaseStage(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
ASSESSMENT = 'Assessment'IMPROVEMENT = 'Improvement'INCIDENT = 'Incident'INVESTIGATION = 'Investigation'RESEARCH = 'Research'TRIAGE = 'Triage'
class TIPCommon.base.action.data_models.CloseCaseOrAlertInconclusiveRootCauses
class TIPCommon.base.action.data_models.CloseCaseOrAlertInconclusiveRootCauses(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
NO_CLEAR_CONCLUSION = 'No clear conclusion'
class TIPCommon.base.action.data_models.CloseCaseOrAlertMaintenanceRootCauses
class TIPCommon.base.action.data_models.CloseCaseOrAlertMaintenanceRootCauses(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
LAB_TEST = 'Lab test'OTHER = 'Other'RULE_UNDER_CONSTRUCTION = 'Rule under construction'
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)
Dasar: Enum
Konstanta
EXTERNAL_ATTACK = 'External attack'INFRASTRUCTURE_ISSUE = 'Infrastructure issue'IRRELEVANT_TCP_UDP_PORT = 'Irrelevant TCP/UDP port'MISCONFIGURED_SYSTEM = 'Misconfigured system'OTHER = 'Other'SIMILAR_CASE_IS_ALREADY_UNDER_INVESTIGATION = 'Similar case is already under investigation'SYSTEM_APPLICATION_MALFUNCTION = 'System/application malfunction'SYSTEM_CLOCKED_THE_ATTACK = 'System blocked the attack'UNFORESEEN_EFFECTS_OF_CHANGE = 'Unforeseen effects of change'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)
Dasar: Enum
Konstanta
EMPLOYEE_ERROR = 'Employee error'HUMAN_ERROR = 'Human error'LAB_TEST = 'Lab test'LEGIT_ACTION = 'Legit action'MISCONFIGURED_SYSTEM = 'Misconfigured system'NONE = 'None'NORMAL_BEHAVIOR = 'Normal behavior'OTHER = 'Other'PENETRATION_TEST = 'Penetration test'RULE_UNDER_CONSTRUCTION = 'Rule under construction'SIMILAR_CASE_IS_ALREADY_UNDER_INVESTIGATION = 'Similar case is already under investigation'UNKNOWN = 'Unknown'USER_MISTAKE = 'User mistake'
class TIPCommon.base.action.data_models.CloseCaseOrAlertReasons
class TIPCommon.base.action.data_models.CloseCaseOrAlertReasons(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
### Konstanta
INCONCLUSIVE = 3MAINTENANCE = 2MALICIOUS = 0NOT_MALICIOUS = 1
class TIPCommon.base.action.data_models.Content
class TIPCommon.base.action.data_models.Content(content: str, title: str = 'Script Result Content')
Dasar: object
Konten hasil skrip tindakan.
Class ini tidak dapat diubah: setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
title |
str | NoneJudul konten. |
content |
strKonten yang akan ditambahkan ke hasil skrip. |
class TIPCommon.base.action.data_models.DataTable
class TIPCommon.base.action.data_models.DataTable(data_table: list[str], title: str = 'Script Result Data Table')
Dasar: object
Tabel data hasil skrip tindakan.
Class ini tidak dapat diubah; setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
title |
str | NoneJudul tabel. |
data_table |
list[str]Daftar baris CSV yang menyusun tabel. |
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)
Dasar: object
Insight entitas.
Class ini tidak dapat diubah: setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
entity |
EntityObjek entity. |
message |
strPesan insight. |
triggered_by |
str | NoneNama integrasi. |
original_requesting_user |
str | NonePengguna asli. |
class TIPCommon.base.action.data_models.EntityTypesEnum
class TIPCommon.base.action.data_models.EntityTypesEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
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, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
COMPLETED = 0FAILED = 2IN_PROGRESS = 1TIMED_OUT = 3
class TIPCommon.base.action.data_models.FullDetailsConfigurationParameter
class TIPCommon.base.action.data_models.FullDetailsConfigurationParameter(input_dict: dict[str, Any])
Dasar: object
Objek parameter skrip umum.
Atribut
| Atribut | |
|---|---|
full_dict |
dict[str, Any]Kamus asli yang diterima dari API. |
id |
int | NoneID parameter. |
integration_identifier |
strID integrasi, seperti VirusTotalV3. |
creation_time |
intWaktu saat parameter dibuat. |
modification_time |
intWaktu saat parameter terakhir diubah. |
is_mandatory |
boolTentukan apakah parameter wajib diisi atau tidak. |
description |
str | NoneDeskripsi parameter. |
name |
strNama parameter. |
display_name |
strNama parameter yang ditampilkan. |
value |
AnyNilai default parameter. |
type |
IntegrationParamTypeJenis parameter. |
optional_values |
listDDL nilai opsional untuk DDL jenis. |
class TIPCommon.base.action.data_models.HTMLReport
class TIPCommon.base.action.data_models.HTMLReport(report_name: str, report_contents: str, title: str = 'Script Result HTML Report')
Dasar: object
Link hasil skrip tindakan.
Class ini tidak dapat diubah: setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
title |
str | NoneJudul link. |
report_name |
strNama laporan. |
report_contents |
strKonten HTML laporan. |
class TIPCommon.base.action.data_models.IntegrationParamType
class TIPCommon.base.action.data_models.IntegrationParamType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Dasar: Enum
Konstanta
BOOLEAN = 0EMAIL = 8INTEGER = 1IP = 4NULL = -1PASSWORD = 3STRING = 2
class TIPCommon.base.action.data_models.Link
class TIPCommon.base.action.data_models.Link(link: str, title: str = 'Script Result Link')
Dasar: object
Link hasil skrip tindakan.
Class ini tidak dapat diubah: setelah menetapkan nilai dan membuat objek, nilai baru tidak dapat ditetapkan ke atribut. Class ini mendukung hashing
(disimpan dalam set atau sebagai kunci dict) dan operator ==.
Atribut
| Atribut | |
|---|---|
title |
str | NoneJudul link. |
link |
strLink. |
class TIPCommon.base.action.data_models.ScriptParameter
class TIPCommon.base.action.data_models.ScriptParameter(input_dict: dict[str, Any]
Dasar: object
Objek parameter skrip umum.
Atribut
| Atribut | |
|---|---|
full_dict |
dict[str, Any]Kamus asli yang diterima dari API. |
id |
int | NoneID parameter. |
creation_time |
intWaktu saat parameter dibuat. |
modification_time |
intWaktu saat parameter terakhir diubah. |
custom_action_id |
int | NoneID tindakan. |
is_mandatory |
boolMenunjukkan apakah parameter wajib diisi atau tidak. |
default_value |
AnyNilai default parameter. Parameter ini diprioritaskan daripada parameter |
description |
str | NoneDeskripsi parameter. |
name |
str | NoneNama parameter. |
value |
AnyNilai parameter. Nilai ini diprioritaskan daripada parameter |
type |
ActionParamTypeJenis parameter. |
optional_values |
listDDL nilai opsional untuk DDL jenis. |
class TIPCommon.base.interfaces.apiable.Apiable
class TIPCommon.base.interfaces.apiable.Apiable(authenticated_session: AuthenticatedSession, configuration: ApiParams)
Dasar: ABC, Generic[ApiParams]
Antarmuka untuk class yang mengelola panggilan API ke layanan eksternal.
class TIPCommon.base.interfaces.authable.Authable
class TIPCommon.base.interfaces.authable.Authable
Dasar: ABC, Generic[AuthParams]
Antarmuka untuk class yang mengelola autentikasi dengan layanan eksternal.
Metode abstrak
| Metode abstrak | |
|---|---|
authenticat_session(params: Authparams) → None |
Lakukan autentikasi atribut self.session class menggunakan params.
Metode ini mengautentikasi Anda ke layanan yang berinteraksi dengan sesi, setelah pembuatan objek menggunakan sesi tersebut. |
Atribut
| Atribut | |
|---|---|
params |
object, dataclass, TypedDict, namedtuple, atau apa pun yang menyimpan semua parameter autentikasi.Parameter autentikasi. |
class TIPCommon.base.interfaces.logger.Logger
class TIPCommon.base.interfaces.logger.Logger
Basis: ABC
Antarmuka logger yang dirancang untuk skrip marketplace, yang memverifikasi kompatibilitas saat logger yang diteruskan diganti atau di-mock.
Metode abstrak
| Metode abstrak | |
|---|---|
debug(msg: str, *args, **kwargs) → None |
Mencatat pesan debug. |
error(error_msg: str, *args, **kwargs) → None |
Mencatat pesan error. |
exception(ex: Exception, *args, **kwargs) → None |
Mencatat pesan pengecualian. |
info(msg: str, *args, **kwargs) → None |
Mencatat pesan informasi. |
warn(warning_msg: str, *args, **kwargs) → None |
Mencatat pesan peringatan. |
class TIPCommon.base.interfaces.session.Session
class TIPCommon.base.interfaces.session.Session
Dasar: ABC, Generic[_R]
Class ini mengelola sesi API menggunakan objek sesi. Class ini mendukung berbagai jenis sesi dan tiruan dengan library seperti requests atau httpx.
Atribut
| Atribut | |
|---|---|
headers |
dict |
verify |
bool |
Metode abstrak
| Metode abstrak | |
|---|---|
delete(url: str, *args, **kwargs)→ _R |
Menghapus resource dari server. |
get(url: str, *args, **kwargs)→ _R |
Mendapatkan resource dari server. |
patch(url: str, *args, **kwargs) → _R |
Membuat patch resource di server. |
post(url: str, *args, **kwargs) → _R |
Memposting resource ke server. |
put(url: str, *args, **kwargs) → _R |
Menempatkan (mengupdate atau membuat) resource di server. |
request(method: str, *args, **kwargs) → _R |
Membuat permintaan ke server. |
class TIPCommon.base.job.base_job.Job
class TIPCommon.base.job.base_job.Job(name: str)
Dasar: ABC, Generic[ApiClient]
Class yang merepresentasikan skrip tugas di SOAR Google Security Operations.
Metode
start(**kwargs) → None
property api_client
property api_client: ApiClient | Collection[ApiClient] | Type[Tuple[ApiClient, ...]] | None
Menyediakan klien API untuk berinteraksi dengan layanan eksternal.
property error_msg
property error_msg: str
Menyimpan pesan error yang terjadi selama eksekusi tugas.
property job_start_time
property job_start_time: int
Menampilkan stempel waktu saat tugas dimulai.
Pencatat properti
property logger: ScriptLogger
Menyediakan fungsi logging untuk skrip tugas.
Nama properti
property name: str
Menyimpan nama skrip tugas.
Parameter property
property params: Container
Berisi parameter konfigurasi yang diberikan ke tugas.
property soar_job
property soar_job: SiemplifyJob
Mewakili instance tugas SOAR Google Security Operations yang mendasarinya.
class TIPCommon.base.job.base_job_refresh_token.RefreshTokenRenewalJob
class TIPCommon.base.job.base_job_refresh_token.RefreshTokenRenewalJob(name: str, integration_identifier: str)
Dasar: Job, Generic[ApiClient]
Bagian ini menjelaskan metode siklus proses yang memengaruhi pemrosesan tugas. Subclass tidak diwajibkan untuk menggantinya.
property api_client
property api_client: ApiClient | Collection[ApiClient] | Type[Tuple[ApiClient, ...]] | None
Menampung klien API yang digunakan untuk interaksi layanan eksternal.
class TIPCommon.base.job.base_job_refresh_token.SuccessFailureTuple
class TIPCommon.base.job.base_job_refresh_token.SuccessFailureTuple(success_list, failure_list)
Dasar: tuple
Atribut
| Atribut | |
|---|---|
success_list |
Alias untuk nomor kolom 0. |
failure_list |
Alias untuk kolom nomor 1. |
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: str, param_csv_value: str | None, delimiter: str = ',') → list[str]
Memvalidasi dan mengurai nilai parameter yang dipisahkan koma menjadi daftar elemen unik. Fungsi ini menangani nilai tunggal, string yang diapit tanda petik, dan format campuran.
Parameter
| Parameter | |
|---|---|
param_name |
Kunci parameter. |
param_csv_value |
Nilai parameter yang diberikan dalam parameter job.
Jika None, daftar kosong akan ditampilkan. |
Meningkatkan
ValueError – Jika jumlah tanda petik ganda tidak valid, beberapa nilai tidak valid,
atau beberapa nilai memiliki tanda petik ganda yang tidak cocok.
Hasil
Daftar nilai unik yang diberikan dalam parameter tugas. Jika tidak ditemukan nilai yang valid, daftar kosong akan ditampilkan.
Jenis hasil yang ditampilkan
list[str]
class TIPCommon.base.job.data_models.JobParameter
class TIPCommon.base.job.data_models.JobParameter(input_dict: MutableMapping[str, Any])
Dasar: object
Objek parameter skrip umum.
Atribut
| Atribut | |
|---|---|
full_dict |
dict[str, Any]Dict asli yang diterima dari API. |
id |
int | NoneID parameter. |
is_mandatory |
boolTentukan apakah parameter wajib diisi atau tidak. Catatan: Atribut ini diprioritaskan daripada |
name |
str | NoneNama parameter. |
type |
ActionParamTypeJenis parameter. |
value |
AnyNilai default parameter. Catatan: Atribut ini diprioritaskan daripada |
class TIPCommon.base.data_models.ActionJsonOutput
class TIPCommon.base.data_models.ActionJsonOutput(title: 'str' = 'JsonResult', content: 'str' = '', type: 'str | None' = None, is_for_entity: 'bool' = False, json_result: 'JSON | None' = None)
Dasar: object
Mewakili output JSON terstruktur untuk suatu tindakan.
class TIPCommon.base.data_models.ActionOutput
class TIPCommon.base.data_models.ActionOutput(output_message: 'str', result_value: 'str | bool', execution_state: 'ExecutionState', json_output: 'ActionJsonOutput | None', debug_output: 'str' = '')
Dasar: object
Mewakili struktur output lengkap untuk suatu tindakan.
class TIPCommon.base.data_models.ConnectorJsonOutput
class TIPCommon.base.data_models.ConnectorJsonOutput(alerts: 'list[AlertInfo | CaseInfo]', overflow_alerts: 'list[OverflowAlertDetails]' = <factory>, log_items: 'list' = <factory>, log_rows: 'list[str]' = <factory>, variables: 'dict' = <factory>)
Dasar: object
Mewakili output JSON terstruktur untuk konektor.
class TIPCommon.base.data_models.ConnectorOutput
class TIPCommon.base.data_models.ConnectorOutput(json_output: 'ConnectorJsonOutput | None', debug_output: 'str' = '')
Dasar: object
Mewakili struktur output lengkap untuk konektor.
TIPCommon.base.data_models.alert_info_from_json
TIPCommon.base.data_models.alert_info_from_json(json_: MutableMapping[str, Any])→ AlertInfo
Membuat objek AlertInfo dari JSON atribut.
Hasil
Objek AlertInfo yang dibuat.
Jenis hasil yang ditampilkan
AlertInfo
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.