How thangphan205/tacacs-ng-ui works
TACACS-NG-UI is a full-stack administration console for managing tac_plus-ng, its configuration, and operational security. The main workflow is an administrator editing TACACS+ entities in the web UI; the frontend calls the authenticated API, which persists changes. Configuration is then generated, reviewed or compared, and explicitly activated by a person. Separate branches cover log-based observability, alerting, anomaly scoring, high availability, and MCP access. The README documents these product capabilities; sampled source confirms the frontend/API pattern, service CRUD and audit calls, and background work, but not every subsystem’s internal wiring.
Main entry points: api/routes Entity endpoints · scripts AAA log collection · db.py Application database · src/routes Management UI
Components 23
Web interface
- Management UI
frontend/src/routes - API client
frontend/src/client - Authentication state
frontend/src/hooks/useAuth.ts
API and data
- API router
backend/app/api/main.py - Entity endpoints
backend/app/api/routes - Entity CRUD
backend/app/crud - Audit logging
backend/app/crud/audit_logs.py - Application database
backend/app/core/db.py - Domain models
backend/app/models.py
Operations and security
- Config versions
backend/app/api/routes/tacacs_configs.py - AAA log collection
backend/scripts - Statistics and logs
backend/app/api/routes - Alert evaluation
backend/app/crud/alert_evaluator.py - Anomaly scoring
backend/app/crud/ml_anomaly_scorer.py - Notification dispatch
backend/app/crud/notification_dispatcher.py - High availability
backend/app/api/routes/sync.py
External integrations
- tac_plus-ng daemon
- SIEM destinations
- Standby peers
- MCP service
backend/app/mcp_server/server.py - MCP tools
backend/app/mcp_server/tools.py
Other components
- Administrator
- MCP client
Connections 22
- Administrator → Management UI: manages entities
- Management UI → API client: requests data
- Management UI → Authentication state: uses auth state
- API client → API router: HTTP requests
- API router → Entity endpoints: dispatches routes
- Entity endpoints → Entity CRUD: calls CRUD
- Entity endpoints → Audit logging: records actions
- Entity CRUD → Application database: reads and writes
- Entity endpoints → Application database: queries entities
- Entity endpoints → Domain models: uses schemas
- Config versions → Application database: stores versions
- Config versions → tac_plus-ng daemon: activates config
- tac_plus-ng daemon → AAA log collection: writes logs
- AAA log collection → Statistics and logs: feeds statistics
- AAA log collection → Alert evaluation: feeds evaluation
- Alert evaluation → Notification dispatch: dispatches alerts
- Notification dispatch → SIEM destinations: forwards events
- AAA log collection → Anomaly scoring: supplies behavior data
- High availability → Standby peers: synchronizes peers
- MCP client → MCP service: sends requests
- MCP service → MCP tools: dispatches tools
- MCP tools → Application database: reads and changes entities