Skip to content
This repository was archived by the owner on Dec 5, 2025. It is now read-only.

Commit ea07d83

Browse files
[client] Define file marking definitions (#opencti/issue/5797)
1 parent 5393e52 commit ea07d83

File tree

3 files changed

+62
-15
lines changed

3 files changed

+62
-15
lines changed

pycti/entities/opencti_stix_core_object.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -435,7 +435,7 @@ def __init__(self, opencti, file):
435435
}
436436
}
437437
}
438-
}
438+
}
439439
... on StixCyberObservable {
440440
observable_value
441441
indicators {
@@ -1099,7 +1099,7 @@ def __init__(self, opencti, file):
10991099
}
11001100
}
11011101
}
1102-
}
1102+
}
11031103
... on StixCyberObservable {
11041104
observable_value
11051105
indicators {
@@ -1477,13 +1477,21 @@ def list_files(self, **kwargs):
14771477
return entity["importFiles"]
14781478

14791479
def push_list_export(
1480-
self, entity_id, entity_type, file_name, data, list_filters="", mime_type=None
1480+
self,
1481+
entity_id,
1482+
entity_type,
1483+
file_name,
1484+
file_markings,
1485+
data,
1486+
list_filters="",
1487+
mime_type=None,
14811488
):
14821489
query = """
1483-
mutation StixCoreObjectsExportPush($entity_id: String, $entity_type: String!, $file: Upload!, $listFilters: String) {
1484-
stixCoreObjectsExportPush(entity_id: $entity_id, entity_type: $entity_type, file: $file, listFilters: $listFilters)
1490+
mutation StixCoreObjectsExportPush($entity_id: String, $entity_type: String!, $file: Upload!, $file_markings: [String]!, $listFilters: String) {
1491+
stixCoreObjectsExportPush(entity_id: $entity_id, entity_type: $entity_type, file: $file, file_markings: $file_markings, listFilters: $listFilters)
14851492
}
14861493
"""
1494+
14871495
if mime_type is None:
14881496
file = self.file(file_name, data)
14891497
else:
@@ -1494,6 +1502,7 @@ def push_list_export(
14941502
"entity_id": entity_id,
14951503
"entity_type": entity_type,
14961504
"file": file,
1505+
"file_markings": file_markings,
14971506
"listFilters": list_filters,
14981507
},
14991508
)

pycti/entities/opencti_stix_cyber_observable.py

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2316,11 +2316,30 @@ def remove_external_reference(self, **kwargs):
23162316
return False
23172317

23182318
def push_list_export(
2319-
self, entity_id, entity_type, file_name, data, list_filters="", mime_type=None
2319+
self,
2320+
entity_id,
2321+
entity_type,
2322+
file_name,
2323+
file_markings,
2324+
data,
2325+
list_filters="",
2326+
mime_type=None,
23202327
):
23212328
query = """
2322-
mutation StixCyberObservablesExportPush($entity_id: String, $entity_type: String!, $file: Upload!, $listFilters: String) {
2323-
stixCyberObservablesExportPush(entity_id: $entity_id, entity_type: $entity_type, file: $file, listFilters: $listFilters)
2329+
mutation StixCyberObservablesExportPush(
2330+
$entity_id: String,
2331+
$entity_type: String!,
2332+
$file: Upload!,
2333+
$file_markings: [String]!,
2334+
$listFilters: String
2335+
) {
2336+
stixCyberObservablesExportPush(
2337+
entity_id: $entity_id,
2338+
entity_type: $entity_type,
2339+
file: $file,
2340+
file_markings: $file_markings,
2341+
listFilters: $listFilters
2342+
)
23242343
}
23252344
"""
23262345
if mime_type is None:
@@ -2333,6 +2352,7 @@ def push_list_export(
23332352
"entity_id": entity_id,
23342353
"entity_type": entity_type,
23352354
"file": file,
2355+
"file_markings": file_markings,
23362356
"listFilters": list_filters,
23372357
},
23382358
)

pycti/entities/opencti_stix_domain_object.py

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1325,11 +1325,18 @@ def add_file(self, **kwargs):
13251325
return None
13261326

13271327
def push_list_export(
1328-
self, entity_id, entity_type, file_name, data, list_filters="", mime_type=None
1328+
self,
1329+
entity_id,
1330+
entity_type,
1331+
file_name,
1332+
file_markings,
1333+
data,
1334+
list_filters="",
1335+
mime_type=None,
13291336
):
13301337
query = """
1331-
mutation StixDomainObjectsExportPush($entity_id: String, $entity_type: String!, $file: Upload!, $listFilters: String) {
1332-
stixDomainObjectsExportPush(entity_id: $entity_id, entity_type: $entity_type, file: $file, listFilters: $listFilters)
1338+
mutation StixDomainObjectsExportPush($entity_id: String, $entity_type: String!, $file: Upload!, $file_markings: [String]!, $listFilters: String) {
1339+
stixDomainObjectsExportPush(entity_id: $entity_id, entity_type: $entity_type, file: $file, file_markings: $file_markings, listFilters: $listFilters)
13331340
}
13341341
"""
13351342
if mime_type is None:
@@ -1342,23 +1349,34 @@ def push_list_export(
13421349
"entity_id": entity_id,
13431350
"entity_type": entity_type,
13441351
"file": file,
1352+
"file_markings": file_markings,
13451353
"listFilters": list_filters,
13461354
},
13471355
)
13481356

1349-
def push_entity_export(self, entity_id, file_name, data, mime_type=None):
1357+
def push_entity_export(
1358+
self, entity_id, file_name, data, file_markings, mime_type=None
1359+
):
13501360
query = """
1351-
mutation StixDomainObjectEdit($id: ID!, $file: Upload!) {
1361+
mutation StixDomainObjectEdit(
1362+
$id: ID!, $file: Upload!,
1363+
$file_markings: [String]!
1364+
) {
13521365
stixDomainObjectEdit(id: $id) {
1353-
exportPush(file: $file)
1366+
exportPush(
1367+
file: $file,
1368+
file_markings: $file_markings
1369+
)
13541370
}
13551371
}
13561372
"""
13571373
if mime_type is None:
13581374
file = self.file(file_name, data)
13591375
else:
13601376
file = self.file(file_name, data, mime_type)
1361-
self.opencti.query(query, {"id": entity_id, "file": file})
1377+
self.opencti.query(
1378+
query, {"id": entity_id, "file": file, "file_markings": file_markings}
1379+
)
13621380

13631381
"""
13641382
Update the Identity author of a Stix-Domain-Object object (created_by)

0 commit comments

Comments
 (0)