Security Audit Fixes: Session fixation prevention, SameSite cookies, audit log redaction, backup integrity, Docker hardening, error sanitization, rate limiting, trusted proxies, and config hardening

This commit is contained in:
backup 2026-09-03 23:55:25 -05:00
commit b587fb87a9
18 changed files with 987 additions and 87 deletions

View file

@ -31,6 +31,9 @@ func NewServer(cfg *config.Config, db *database.DB, traefikAPI traefik.TraefikAP
}
engine := gin.New()
if len(cfg.TrustedProxies) > 0 {
engine.SetTrustedProxies(cfg.TrustedProxies)
}
userRepo := repositories.NewUserRepository(db.DB)
sessionRepo := repositories.NewSessionRepository(db.DB)
@ -51,11 +54,12 @@ func NewServer(cfg *config.Config, db *database.DB, traefikAPI traefik.TraefikAP
traefikHandler := handlers.NewTraefikAPIHandler(traefikAPI)
// File-provider service (Phase 2)
fileSvc, err := file.NewService(cfg.ConfigDir, db.DB)
auditRepo := repositories.NewAuditRepository(db.DB)
fileSvc, err := file.NewService(cfg.ConfigDir, db.DB, auditRepo)
if err != nil {
log.Fatal().Err(err).Str("configDir", cfg.ConfigDir).Msg("Failed to init file service")
}
fileHandler := handlers.NewFileConfigHandler(fileSvc)
fileHandler := handlers.NewFileConfigHandler(fileSvc, auditRepo, userRepo)
// Enhance health ready to check config dir writable
healthHandler.SetConfigDir(cfg.ConfigDir)