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 Action
SCRIPT_NAME
failed
.
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 = 0
ExecutionState.IN_PROGRESS = 1
ExecutionState.FAILED = 2
ExecutionState.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 |
str Nama 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 = 1
CASE_PRIORITIES = 7
CLOSE_CASE_REASONS = 5
CLOSE_ROOT_CAUSE = 6
CODE = 20
CONTENT = 11
DDL = 15
EMAIL_CONTENT = 10
ENTITY_TYPE = 13
MULTI_VALUES = 14
NULL = -1
PASSWORD = 12
PLAYBOOK_NAME = 2
STAGE = 4
STRING = 0
USER = 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 |
int ID lampiran. |
attachment_type |
str Jenis lampiran. |
description |
str Deskripsi lampiran. |
is_favorite |
bool Menunjukkan 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 |
str Komentar. |
comment_for_client |
str | None Komentar 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 |
int ID komentar. |
comment_type |
int Jenis komentar. |
case_id |
int ID 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 |
str ID 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 |
str Judul insight. |
triggered_by |
str Nama integrasi. |
content |
str Pesan insight. |
severity |
InsightSeverity Tingkat keparahan insight. Nilainya dapat berupa:
|
insight_type |
InsightType Jenis insight. Nilainya dapat berupa:
|
entity_identifier |
str | None ID entitas. |
additional_data |
Any | None Data tambahan. |
additional_data_type |
Any | None Jenis data tambahan. |
additional_data_title |
str | None Judul 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 = 100
HIGH = 80
INFORMATIONAL = 0
LOW = 40
MEDIUM = 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 = 3
MAINTENANCE = 2
MALICIOUS = 0
NOT_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 | None Judul konten. |
content |
str Konten 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 | None Judul 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 |
Entity Objek entity. |
message |
str Pesan insight. |
triggered_by |
str | None Nama integrasi. |
original_requesting_user |
str | None Pengguna 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 = 0
FAILED = 2
IN_PROGRESS = 1
TIMED_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 | None ID parameter. |
integration_identifier |
str ID integrasi, seperti VirusTotalV3. |
creation_time |
int Waktu saat parameter dibuat. |
modification_time |
int Waktu saat parameter terakhir diubah. |
is_mandatory |
bool Tentukan apakah parameter wajib diisi atau tidak. |
description |
str | None Deskripsi parameter. |
name |
str Nama parameter. |
display_name |
str Nama parameter yang ditampilkan. |
value |
Any Nilai default parameter. |
type |
IntegrationParamType Jenis parameter. |
optional_values |
list DDL 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 | None Judul link. |
report_name |
str Nama laporan. |
report_contents |
str Konten 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 = 0
EMAIL = 8
INTEGER = 1
IP = 4
NULL = -1
PASSWORD = 3
STRING = 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 | None Judul link. |
link |
str Link. |
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 | None ID parameter. |
creation_time |
int Waktu saat parameter dibuat. |
modification_time |
int Waktu saat parameter terakhir diubah. |
custom_action_id |
int | None ID tindakan. |
is_mandatory |
bool Menunjukkan apakah parameter wajib diisi atau tidak. |
default_value |
Any Nilai default parameter. Parameter ini diprioritaskan daripada parameter |
description |
str | None Deskripsi parameter. |
name |
str | None Nama parameter. |
value |
Any Nilai parameter. Nilai ini diprioritaskan daripada parameter |
type |
ActionParamType Jenis parameter. |
optional_values |
list DDL 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 | None ID parameter. |
is_mandatory |
bool Tentukan apakah parameter wajib diisi atau tidak. Catatan: Atribut ini diprioritaskan daripada |
name |
str | None Nama parameter. |
type |
ActionParamType Jenis parameter. |
value |
Any Nilai 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.