c753797019
Aegis CI / lint-and-test (push) Has been cancelled
Snyk Security Scan / Python vulnerabilities (backend) (push) Has been cancelled
Snyk Security Scan / npm vulnerabilities (frontend) (push) Has been cancelled
Snyk Security Scan / Docker image vulnerabilities (backend) (push) Has been cancelled
Leads get a Create Template button that adds directly to the catalog (existing POST /test-templates). Operators (red_tech/blue_tech) get the same button, but their proposal now lands in a new template_suggestions review queue instead — a lead on their team can approve it as-is, edit fields before approving, or discard it. Modeled on the existing ProcedureSuggestion review workflow.
96 lines
4.4 KiB
Python
96 lines
4.4 KiB
Python
"""SQLAlchemy ORM model definitions for all database tables."""
|
|
# Import all models here so Alembic can detect them
|
|
from app.models.audit import AuditLog
|
|
from app.models.notification import Notification
|
|
from app.models.data_source import DataSource
|
|
from app.models.detection_rule import DetectionRule
|
|
from app.models.threat_actor import ThreatActor, ThreatActorTechnique
|
|
from app.models.defensive_technique import DefensiveTechnique, DefensiveTechniqueMapping
|
|
from app.models.test_template_detection_rule import TestTemplateDetectionRule
|
|
from app.models.test_detection_result import TestDetectionResult
|
|
from app.models.campaign import Campaign, CampaignTest, CampaignModificationRequest
|
|
from app.models.compliance import ComplianceFramework, ComplianceControl, ComplianceControlMapping
|
|
from app.models.coverage_snapshot import CoverageSnapshot, SnapshotTechniqueState
|
|
from app.models.jira_link import JiraLink, JiraLinkEntityType, JiraSyncDirection
|
|
from app.models.worklog import Worklog
|
|
from app.models.osint_item import OsintItem
|
|
from app.models.scoring_config import ScoringConfig
|
|
from app.models.enums import TechniqueStatus, TestState, TestResult, TeamSide
|
|
from app.models.webhook_config import WebhookConfig
|
|
from app.models.system_config import SystemConfig
|
|
from app.models.detection_lifecycle import (
|
|
DetectionAsset, DetectionTechniqueMapping, DetectionValidation,
|
|
TechniqueConfidenceScore, InfrastructureChangeLog,
|
|
DetectionConfidence, DetectionHealthStatus, InvalidationReason,
|
|
)
|
|
from app.models.decay_policy import DecayPolicy
|
|
from app.models.ownership_queue import (
|
|
TechniqueOwnership, RevalidationQueueItem,
|
|
QueuePriority, QueueStatus, QueueReason,
|
|
)
|
|
from app.models.attack_path import (
|
|
AttackPath, AttackPathStep, AttackPathExecution,
|
|
AttackPathStepResult, TimelineEntry,
|
|
ExecutionStatus, StepResultStatus, TimelineActorSide, TimelineEntryType,
|
|
)
|
|
from app.models.knowledge import Playbook, PlaybookVersion, LessonLearned
|
|
from app.models.risk_intelligence import TechniqueRiskProfile
|
|
from app.models.executive_dashboard import PostureSnapshot
|
|
from app.models.api_key import ApiKey
|
|
from app.models.sso_config import SsoConfig
|
|
from app.models.operational_alert import AlertRule, AlertInstance
|
|
from app.models.evidence import Evidence
|
|
from app.models.intel import IntelItem
|
|
from app.models.technique import Technique
|
|
from app.models.test import Test
|
|
from app.models.test_round_history import TestRoundHistory
|
|
from app.models.test_template import TestTemplate
|
|
from app.models.procedure_suggestion import ProcedureSuggestion
|
|
from app.models.template_suggestion import TemplateSuggestion
|
|
from app.models.user import User
|
|
|
|
# Assign __all__ = [
|
|
__all__ = [
|
|
# Literal argument value
|
|
"User", "Technique", "Test", "TestTemplate", "Evidence",
|
|
# Literal argument value
|
|
"IntelItem", "AuditLog", "Notification", "DataSource",
|
|
# Literal argument value
|
|
"DetectionRule", "ThreatActor", "ThreatActorTechnique",
|
|
# Literal argument value
|
|
"DefensiveTechnique", "DefensiveTechniqueMapping",
|
|
# Literal argument value
|
|
"TestTemplateDetectionRule", "TestDetectionResult",
|
|
# Literal argument value
|
|
"Campaign", "CampaignTest", "CampaignModificationRequest",
|
|
# Literal argument value
|
|
"ComplianceFramework", "ComplianceControl", "ComplianceControlMapping",
|
|
# Literal argument value
|
|
"CoverageSnapshot", "SnapshotTechniqueState",
|
|
# Literal argument value
|
|
"JiraLink", "JiraLinkEntityType", "JiraSyncDirection",
|
|
# Literal argument value
|
|
"Worklog", "OsintItem", "ScoringConfig",
|
|
# Literal argument value
|
|
"TechniqueStatus", "TestState", "TestResult", "TeamSide",
|
|
"WebhookConfig", "SystemConfig",
|
|
"DetectionAsset", "DetectionTechniqueMapping", "DetectionValidation",
|
|
"TechniqueConfidenceScore", "InfrastructureChangeLog",
|
|
"DetectionConfidence", "DetectionHealthStatus", "InvalidationReason", "DecayPolicy",
|
|
"TechniqueOwnership", "RevalidationQueueItem",
|
|
"QueuePriority", "QueueStatus", "QueueReason",
|
|
"AttackPath", "AttackPathStep", "AttackPathExecution",
|
|
"AttackPathStepResult", "TimelineEntry",
|
|
"ExecutionStatus", "StepResultStatus", "TimelineActorSide", "TimelineEntryType",
|
|
"Playbook", "PlaybookVersion", "LessonLearned",
|
|
"TechniqueRiskProfile",
|
|
"PostureSnapshot",
|
|
"ApiKey",
|
|
"SsoConfig",
|
|
"AlertRule",
|
|
"AlertInstance",
|
|
"TestRoundHistory",
|
|
"ProcedureSuggestion",
|
|
"TemplateSuggestion",
|
|
]
|