Security Architecture
PatchCTL's architecture is designed for security from the ground up.
Pull-Based Model
Unlike traditional patch management, PatchCTL uses a pull-based model:
┌─────────────────┐ ┌─────────────────┐
│ Your Server │ HTTPS/443 │ PatchCTL │
│ │ ─────────────► │ API │
│ Agent pulls │ (outbound) │ │
│ commands │ │ Stores │
│ │ ◄───────────── │ commands │
│ Reports │ (response) │ │
│ results │ │ │
└─────────────────┘ └─────────────────┘
Benefits:
- No inbound ports required on your servers
- Simplified firewall configuration
- Agent controls when to check for commands
- No persistent connections from API to servers
Encryption
In Transit
- All communication uses TLS 1.3
- Certificate pinning for API connections
- No plaintext transmission
At Rest
- Database encryption for sensitive data
- Encrypted backups
- Secure credential storage
Authentication
Dashboard
- Supabase Auth with secure password hashing
- JWT tokens for session management
- Optional MFA (coming soon)
Agent
- License key authentication
- Machine ID verification
- Request signing
Multi-Tenant Isolation
Database Level
- Row Level Security (RLS) policies
- All queries filtered by organization
- No cross-tenant data access
Application Level
- Authentication required for all endpoints
- Authorization checks on every request
- Audit logging
Infrastructure
- Hosted on secure cloud infrastructure
- Regular security updates
- DDoS protection
- 24/7 monitoring