Пример #1
0
class ResourceDisposition(stix.Entity):
    _binding = cyber_profile
    _binding_class = _binding.ResourceDispositionType
    _namespace = 'urn:edm:edh:cyber:v3'

    disposition_date = fields.DateField("dispositionDate", key_name="disposition_date")
    disposition_process = fields.TypedField("dispositionProcess", key_name="disposition_process", preset_hook=validate_token)

    def __init__(self):
        super(ResourceDisposition, self).__init__()
Пример #2
0
class PublicRelease(stix.Entity):
    _binding = cyber_profile
    _binding_class = _binding.PublicReleaseType
    _namespace = 'urn:edm:edh:cyber:v3'

    released_by = fields.TypedField("releasedBy", key_name="released_by", preset_hook=validate_token)
    released_on = fields.DateField("releasedOn", key_name="released_on")

    def __init__(self):
        super(PublicRelease, self).__init__()
Пример #3
0
class DerivativeClassification(stix.Entity):
    _binding = cyber_profile
    _binding_class = _binding.DerivativeClassificationType
    _namespace = 'urn:edm:edh:cyber:v3'

    classified_by = fields.TypedField("classifiedBy", key_name="classified_by", preset_hook=validate_token)
    classified_on = fields.DateField("classifiedOn", key_name="classified_on")
    derived_from = fields.TypedField("derivedFrom", type_="stix_edh.common.NMTokens", key_name="derived_from")

    def __init__(self):
        super(DerivativeClassification, self).__init__()
Пример #4
0
class OriginalClassification(stix.Entity):
    _binding = cyber_profile
    _binding_class = _binding.OriginalClassificationType
    _namespace = 'urn:edm:edh:cyber:v3'

    classified_by = fields.TypedField("classifiedBy", key_name="classified_by", preset_hook=validate_token)
    classified_on = fields.DateField("classifiedOn", key_name="classified_on")
    classification_reason = fields.TypedField("classificationReason", type_="stix_edh.common.NMTokens", key_name="classification_reason")
    compilation_reason = fields.TypedField("compilationReason", type_="stix_edh.common.NMTokens", key_name="compilation_reason")

    def __init__(self):
        super(OriginalClassification, self).__init__()
Пример #5
0
class Declassification(stix.Entity):
    _binding = cyber_profile
    _binding_class = _binding.DeclassificationType
    _namespace = 'urn:edm:edh:cyber:v3'

    declass_exemption = fields.TypedField("declassExemption", key_name="declass_exemption", preset_hook=validate_token)
    declass_period = fields.IntegerField("declassPeriod", key_name="declass_period")
    declass_date = fields.DateField("declassDate", key_name="declass_date")
    declass_event = fields.TypedField("declassEvent", key_name="declass_event", preset_hook=validate_token)

    def __init__(self):
        super(Declassification, self).__init__()
class DateWithPrecision(entities.Entity):
    _binding = common_binding
    _binding_class = common_binding.DateWithPrecisionType
    _namespace = 'http://cybox.mitre.org/common-2'

    value = fields.DateField("valueOf_", key_name="value")
    precision = fields.TypedField("precision", preset_hook=validate_date_precision)

    def __init__(self, value=None, precision='day'):
        super(DateWithPrecision, self).__init__()
        self.value = value
        self.precision = precision

    def to_dict(self):
        if self.precision == 'day':
            return dates.serialize_date(self.value)
        return super(DateWithPrecision, self).to_dict()