File tree Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Original file line number Diff line number Diff line change 132
132
"Exfiltration" : "TA0010" ,
133
133
"Impact" : "TA0040"
134
134
}
135
+
136
+ RBA_OBSERVABLE_ROLE_MAPPING = {
137
+ "Attacker" : 0 ,
138
+ "Victim" : 1
139
+ }
Original file line number Diff line number Diff line change 1
1
from pydantic import BaseModel , field_validator
2
- from contentctl .objects .constants import SES_OBSERVABLE_TYPE_MAPPING , SES_OBSERVABLE_ROLE_MAPPING
2
+ from contentctl .objects .constants import SES_OBSERVABLE_TYPE_MAPPING , RBA_OBSERVABLE_ROLE_MAPPING
3
3
4
4
5
5
class Observable (BaseModel ):
@@ -26,10 +26,12 @@ def check_type(cls, v: str):
26
26
def check_roles (cls , v : list [str ]):
27
27
if len (v ) == 0 :
28
28
raise ValueError ("Error, at least 1 role must be listed for Observable." )
29
+ if len (v ) > 1 :
30
+ raise ValueError ("Error, each Observable can only have one role." )
29
31
for role in v :
30
- if role not in SES_OBSERVABLE_ROLE_MAPPING .keys ():
32
+ if role not in RBA_OBSERVABLE_ROLE_MAPPING .keys ():
31
33
raise ValueError (
32
34
f"Invalid role '{ role } ' provided for observable. Valid observable types are "
33
- f"{ SES_OBSERVABLE_ROLE_MAPPING .keys ()} "
35
+ f"{ RBA_OBSERVABLE_ROLE_MAPPING .keys ()} "
34
36
)
35
37
return v
You can’t perform that action at this time.
0 commit comments