Documentation Index
Fetch the complete documentation index at: https://mcp-server-langgraph.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Overview
This checklist covers all critical security areas that should be audited before and during production deployment. Use this as a systematic guide to ensure your MCP Server deployment meets security best practices.Authentication & Authorization
Keycloak Configuration
✅ Keycloak Setup
✅ Keycloak Setup
Critical:
- Admin password changed from default
- Admin console access restricted to internal network
- HTTPS enabled for all Keycloak endpoints
- Session timeout configured (max 24 hours)
- Brute force detection enabled
- Email verification required for new users
- MFA/2FA enabled for admin accounts
- Password policy enforced (min 12 characters, complexity)
- Account lockout after failed attempts
- Security headers configured
- CORS properly configured
✅ JWT Configuration
✅ JWT Configuration
Critical:
- JWT secret is cryptographically secure (>= 32 bytes)
- JWT secret rotated from default value
- JWT secret stored in secret management system
- Token expiration set appropriately (< 1 hour)
- Refresh token rotation enabled
- Algorithm set to RS256 or ES256 (not HS256)
- JWK rotation configured
- Token revocation mechanism implemented
- Audience (aud) claim validated
- Issuer (iss) claim validated
✅ OpenFGA Authorization
✅ OpenFGA Authorization
Secrets Management
Infrastructure Secrets
✅ Secret Storage
✅ Secret Storage
Critical:
- No secrets in code or git repository
- All secrets in Infisical/Vault/Cloud Secret Manager
- .env files in .gitignore
- Container images don’t contain secrets
- Kubernetes secrets encrypted at rest
- Secret rotation policy defined (90 days max)
- Automated secret rotation configured
- Secret access auditing enabled
- Secrets have expiration dates
✅ API Keys
✅ API Keys
Critical:
- LLM API keys rotated from initial values
- API keys have usage limits configured
- API keys scoped to minimum permissions
- Backup API keys available
- API key usage monitoring enabled
- Alerts on suspicious API usage
- API keys rotated every 90 days
✅ Database Credentials
✅ Database Credentials
Critical:
- Database passwords changed from defaults
- Database users have minimum required privileges
- Production database not accessible from internet
- SSL/TLS enforced for database connections
- Database password rotation configured
- Connection pooling with authentication
- Database audit logging enabled
Network Security
Network Configuration
✅ TLS/SSL
✅ TLS/SSL
Critical:
- HTTPS enabled for all public endpoints
- Valid TLS certificates (not self-signed)
- TLS 1.2+ only (1.0/1.1 disabled)
- Strong cipher suites configured
- HSTS header enabled
- Certificate auto-renewal configured
- Certificate expiry monitoring
- OCSP stapling enabled
- Perfect forward secrecy (PFS) enabled
✅ Network Policies
✅ Network Policies
Critical:
- Network policies defined for all namespaces
- Default deny ingress/egress in place
- Least privilege network access
- Pods can’t access cluster API by default
- Network policies tested
- Egress filtering configured
- Service mesh for mTLS (optional)
✅ Firewall & Load Balancer
✅ Firewall & Load Balancer
Critical:
- Only required ports exposed
- Admin interfaces not publicly accessible
- Rate limiting configured
- DDoS protection enabled
- WAF rules configured
- IP whitelisting for admin access
- Geographic restrictions (if applicable)
- Load balancer health checks configured
Application Security
Code Security
✅ Dependencies
✅ Dependencies
Critical:
- No critical vulnerabilities in dependencies
- All dependencies from trusted sources
- Lock files committed (requirements.txt, package-lock.json)
- Dependency scanning in CI/CD
- Regular dependency updates
- Automated vulnerability scanning
- SBOM (Software Bill of Materials) generated
✅ Input Validation
✅ Input Validation
Critical:
- All user input validated
- SQL injection protection
- XSS protection
- Command injection prevention
- File upload validation
- Input sanitization
- Output encoding
- CSRF protection
- Rate limiting per endpoint
✅ Logging & Monitoring
✅ Logging & Monitoring
Critical:
- Security events logged
- Sensitive data not logged (passwords, tokens)
- Logs centralized and searchable
- Log retention policy defined
- Structured logging (JSON)
- Log tampering prevention
- Alerting on security events
- SIEM integration
Container Security
Image Security
✅ Container Images
✅ Container Images
Critical:
- Images from trusted registries only
- Image vulnerability scanning enabled
- No critical vulnerabilities in images
- Images signed and verified
- Non-root user in containers
- Minimal base images (distroless, alpine)
- Multi-stage builds
- Image scanning in CI/CD
- Regular image updates
✅ Runtime Security
✅ Runtime Security
Critical:
- Read-only root filesystem
- Privilege escalation disabled
- Capabilities dropped
- seccomp profile applied
- AppArmor/SELinux enabled
- Pod Security Standards enforced
- Runtime security monitoring (Falco)
- Resource limits defined
Data Protection
Data Security
✅ Encryption
✅ Encryption
Critical:
- Data encrypted in transit (TLS)
- Data encrypted at rest (database, Redis, volumes)
- Encryption keys managed securely
- Kubernetes secrets encrypted
- Key rotation configured
- HSM or KMS for key management
- Encryption for backups
✅ Backup & Recovery
✅ Backup & Recovery
Critical:
- Automated backups configured
- Backups encrypted
- Backup restoration tested
- Backup retention policy defined
- Off-site backup storage
- Point-in-time recovery available
- Backup monitoring and alerts
- DR plan documented
✅ Data Privacy
✅ Data Privacy
Critical:
- PII handling documented
- Data retention policy enforced
- Right to deletion implemented
- Data minimization practiced
- Privacy policy published
- Consent management
- Data portability
- Privacy by design
- GDPR/CCPA compliance (if applicable)
Kubernetes Security
Cluster Security
✅ RBAC
✅ RBAC
Critical:
- RBAC enabled
- Principle of least privilege
- No cluster-admin for apps
- Service accounts for workloads
- No default service account used
- Regular RBAC audit
- Namespaced roles
- RBAC testing
✅ Pod Security
✅ Pod Security
Critical:
- Pod Security Standards enforced
- hostNetwork disabled
- hostPID disabled
- hostIPC disabled
- Privileged pods not allowed
- SecurityContext on all pods
- runAsNonRoot enforced
- allowPrivilegeEscalation: false
✅ API Server
✅ API Server
Critical:
- API server not publicly accessible
- Anonymous auth disabled
- Audit logging enabled
- Admission controllers configured
- API server TLS verified
- API rate limiting
- Webhook timeout configured
- Audit logs reviewed regularly
Compliance & Governance
Compliance
✅ Security Policies
✅ Security Policies
Critical:
- Security policy documented
- Incident response plan
- Access control policy
- Change management process
- Security training for team
- Security champions assigned
- Regular security reviews
- Penetration testing scheduled
- Bug bounty program (optional)
- Review policy documents
- Check training records
- Verify incident response tests
✅ Audit & Compliance
✅ Audit & Compliance
Critical:
- Audit logs enabled everywhere
- Compliance requirements identified
- Regular compliance audits
- Audit log retention (1 year min)
- SOC 2 / ISO 27001 certification
- GDPR/CCPA compliance
- Third-party audits
- Compliance automation
Pre-Production Checklist
Use this before deploying to production:Automated Security Scanning
Next Steps
Compliance Guide
GDPR, SOC2, HIPAA compliance
Best Practices
Security hardening guide
Security Overview
Security architecture overview
Quick Start Security
Essential security setup
Security Audit Complete: Systematic security review for production readiness!