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

Commit f988df2

Browse files
committed
[client] Adjust note ID generation (#308)
1 parent 987e5f5 commit f988df2

File tree

3 files changed

+65
-2
lines changed

3 files changed

+65
-2
lines changed

pycti/entities/opencti_note.py

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
# coding: utf-8
22

3+
import datetime
34
import json
45
import uuid
56

7+
from stix2.canonicalization.Canonicalize import canonicalize
8+
69

710
class Note:
811
def __init__(self, opencti):
@@ -185,6 +188,24 @@ def __init__(self, opencti):
185188
... on Incident {
186189
name
187190
}
191+
... on Event {
192+
name
193+
}
194+
... on Channel {
195+
name
196+
}
197+
... on Narrative {
198+
name
199+
}
200+
... on Language {
201+
name
202+
}
203+
... on DataComponent {
204+
name
205+
}
206+
... on DataSource {
207+
name
208+
}
188209
... on StixCoreRelationship {
189210
standard_id
190211
spec_version
@@ -211,8 +232,14 @@ def __init__(self, opencti):
211232
"""
212233

213234
@staticmethod
214-
def generate_id():
215-
return "note--" + str(uuid.uuid4())
235+
def generate_id(created, content):
236+
content = content.lower().strip()
237+
if isinstance(created, datetime.datetime):
238+
created = created.isoformat()
239+
data = {"content": content, "created": created}
240+
data = canonicalize(data, utf8=False)
241+
id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
242+
return "note--" + id
216243

217244
"""
218245
List Note objects

pycti/entities/opencti_observed_data.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,24 @@ def __init__(self, opencti):
187187
... on Incident {
188188
name
189189
}
190+
... on Event {
191+
name
192+
}
193+
... on Channel {
194+
name
195+
}
196+
... on Narrative {
197+
name
198+
}
199+
... on Language {
200+
name
201+
}
202+
... on DataComponent {
203+
name
204+
}
205+
... on DataSource {
206+
name
207+
}
190208
... on StixCoreRelationship {
191209
standard_id
192210
spec_version

pycti/entities/opencti_report.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,24 @@ def __init__(self, opencti):
190190
... on Incident {
191191
name
192192
}
193+
... on Event {
194+
name
195+
}
196+
... on Channel {
197+
name
198+
}
199+
... on Narrative {
200+
name
201+
}
202+
... on Language {
203+
name
204+
}
205+
... on DataComponent {
206+
name
207+
}
208+
... on DataSource {
209+
name
210+
}
193211
... on StixCoreRelationship {
194212
standard_id
195213
spec_version

0 commit comments

Comments
 (0)