mockforge_core/security/
mod.rs

1//! Security module for MockForge
2//!
3//! This module provides security event tracking, SIEM integration, and security monitoring
4//! capabilities for compliance with SOC 2 and ISO 27001 requirements.
5
6pub mod access_review;
7pub mod access_review_global;
8pub mod access_review_notifications;
9pub mod access_review_scheduler;
10pub mod access_review_service;
11pub mod api_tokens;
12pub mod change_management;
13pub mod change_management_global;
14pub mod compliance_dashboard;
15pub mod compliance_dashboard_global;
16pub mod email;
17pub mod emitter;
18pub mod events;
19pub mod justification_storage;
20pub mod mfa_tracking;
21pub mod privileged_access;
22pub mod privileged_access_global;
23pub mod risk_assessment;
24pub mod risk_assessment_global;
25pub mod risk_review_scheduler;
26pub mod siem;
27pub mod slack;
28
29pub use access_review::{
30    AccessReview, AccessReviewConfig, AccessReviewEngine, ApiTokenInfo, PrivilegedAccessInfo,
31    ResourceAccessInfo, ReviewFrequency, ReviewStatus, ReviewType, UserAccessInfo,
32    UserReviewConfig, UserReviewItem,
33};
34pub use access_review_global::{
35    get_global_access_review_service, init_global_access_review_service,
36    is_access_review_service_initialized,
37};
38pub use access_review_scheduler::AccessReviewScheduler;
39pub use access_review_service::{AccessReviewService, UserDataProvider};
40pub use api_tokens::{ApiTokenStorage, InMemoryApiTokenStorage};
41pub use change_management::{
42    ApprovalStatus, ChangeHistoryEntry, ChangeManagementConfig, ChangeManagementEngine,
43    ChangePriority, ChangeRequest, ChangeStatus, ChangeType, ChangeUrgency,
44};
45pub use change_management_global::{
46    get_global_change_management_engine, init_global_change_management_engine,
47    is_change_management_engine_initialized,
48};
49pub use compliance_dashboard::{
50    AlertSummary, AlertType, ComplianceAlert, ComplianceDashboardConfig, ComplianceDashboardData,
51    ComplianceDashboardEngine, ComplianceGap, ComplianceStandard, ControlCategory,
52    ControlEffectiveness, GapSeverity, GapStatus, GapSummary, RemediationStatus,
53};
54pub use compliance_dashboard_global::{
55    get_global_compliance_dashboard_engine, init_global_compliance_dashboard_engine,
56    is_compliance_dashboard_engine_initialized,
57};
58pub use email::{EmailConfig, EmailMessage, EmailProvider, EmailService};
59pub use emitter::{
60    emit_security_event, emit_security_event_async, init_global_siem_emitter,
61    is_siem_emitter_initialized,
62};
63pub use events::{
64    EventActor, EventOutcome, EventTarget, SecurityEvent, SecurityEventSeverity, SecurityEventType,
65};
66pub use justification_storage::{
67    AccessJustification, InMemoryJustificationStorage, JustificationStorage,
68};
69pub use mfa_tracking::{InMemoryMfaStorage, MfaMethod, MfaStatus, MfaStorage};
70pub use privileged_access::{
71    PrivilegedAccessConfig, PrivilegedAccessManager, PrivilegedAccessRequest, PrivilegedAction,
72    PrivilegedActionType, PrivilegedRole, PrivilegedSession, RequestStatus,
73};
74pub use privileged_access_global::{
75    get_global_privileged_access_manager, init_global_privileged_access_manager,
76    is_privileged_access_manager_initialized,
77};
78pub use risk_assessment::{
79    Impact, Likelihood, Risk, RiskAssessmentConfig, RiskAssessmentEngine, RiskCategory, RiskLevel,
80    RiskReviewFrequency, RiskSummary, TreatmentOption, TreatmentStatus,
81};
82pub use risk_assessment_global::{
83    get_global_risk_assessment_engine, init_global_risk_assessment_engine,
84    is_risk_assessment_engine_initialized,
85};
86pub use risk_review_scheduler::RiskReviewScheduler;
87pub use siem::{SiemConfig, SiemDestination, SiemEmitter};
88pub use slack::{SlackConfig, SlackMessage, SlackMethod, SlackService};