Documentation Deployment Checklist

VerityLayer Partner Deployment Checklist

Use this checklist to ensure a successful VerityLayer deployment. ---

Pre-Deployment

Infrastructure Setup

  • [ ] Server provisioned (4GB+ RAM, 50GB+ storage)
  • [ ] Operating system installed (Ubuntu 20.04+ or Windows Server)
  • [ ] Web server installed (Apache 2.4+ or Nginx)
  • [ ] PHP 8.0+ installed with required extensions
  • [ ] MySQL 8.0+ or MariaDB 10.5+ installed
  • [ ] SSL certificate obtained (Let's Encrypt or commercial)
  • [ ] Domain name configured (e.g., veritylayer.yourdomain.com)
  • [ ] Firewall configured (ports 80, 443, 3306)

Required PHP Extensions

  • [ ] mysqli
  • [ ] openssl
  • [ ] json
  • [ ] mbstring
  • [ ] curl
  • [ ] gd
  • [ ] zip
Verify:

``bash php -m | grep -E "mysqli|openssl|json|mbstring|curl|gd|zip" `

---

Application Deployment

File Setup

  • [ ] VerityLayer files extracted to web root
  • [ ] Permissions set correctly (www-data:www-data)
  • [ ] Storage and logs directories writable (chmod 775)
  • [ ] .htaccess configured (if using Apache)

Database Setup

  • [ ] Central SaaS database created
  • [ ] Database user created with privileges
  • [ ] Schema imported (database/schema.sql)
  • [ ] Multi-tenant tables installed (install_org_db_connections.php)

Configuration

  • [ ] db_connect.php configured with database credentials
  • [ ] includes/config.php` configured:
- [ ] DB_ENCRYPTION_KEY generated and set

- [ ] TENANT_DB_MIGRATION set to false (initially) - [ ] CENTRAL_DB_* constants configured

  • [ ] Base URL configured correctly
  • [ ] Error reporting disabled in production

Web Server Configuration

  • [ ] Virtual host configured
  • [ ] Document root set correctly
  • [ ] Rewrite rules enabled (Apache: mod_rewrite)
  • [ ] HTTPS enabled and forced
  • [ ] HTTP/2 enabled (optional but recommended)
---

Initial Setup

Super Admin Creation

  • [ ] Super admin account created
  • [ ] Super admin login tested
  • [ ] Super admin dashboard accessible

System Verification

  • [ ] Application loads without errors
  • [ ] Login/logout works
  • [ ] Session management works
  • [ ] All modules accessible
---

Customer Onboarding

First Organization

  • [ ] Test organization created
  • [ ] Organization details verified
  • [ ] Subscription plan assigned

Tenant Database

  • [ ] Tenant database provisioned (choose scenario):
- [ ] Managed hosting (setup_wizard.php --scenario=managed)

- [ ] Customer cloud (setup_wizard.php --scenario=customer_cloud) - [ ] Customer on-premise (setup_wizard.php --scenario=customer_onprem)

  • [ ] Connection tested (test_connection.php)
  • [ ] Schema deployed successfully
  • [ ] Connection registered in org_db_connections

Organization Admin

  • [ ] Org admin user created
  • [ ] Org admin credentials sent to customer
  • [ ] Org admin login tested
  • [ ] Org admin can access all modules
---

Multi-Tenant Enablement

Pre-Enablement Testing

  • [ ] All tenant databases provisioned
  • [ ] All connections tested
  • [ ] Data migration tested (dry-run)
  • [ ] Backup created

Enablement

  • [ ] TENANT_DB_MIGRATION set to true in config.php
  • [ ] Application restarted/cache cleared
  • [ ] Connection routing verified
  • [ ] All organizations tested

Post-Enablement Verification

  • [ ] Users can login
  • [ ] Data displays correctly
  • [ ] No cross-tenant data leakage
  • [ ] Performance acceptable
---

Security Hardening

Application Security

  • [ ] PHP display_errors disabled
  • [ ] Error logging enabled
  • [ ] Sensitive files protected (.htaccess, config.php)
  • [ ] File upload restrictions configured
  • [ ] Session timeout configured

Database Security

  • [ ] Database passwords strong (16+ characters)
  • [ ] Database users have minimal privileges
  • [ ] Remote database access restricted
  • [ ] SSL/TLS enabled for database connections

Server Security

  • [ ] Firewall enabled and configured
  • [ ] SSH key-based authentication (disable password auth)
  • [ ] Fail2ban installed and configured
  • [ ] Automatic security updates enabled
  • [ ] Unnecessary services disabled

SSL/TLS

  • [ ] SSL certificate installed
  • [ ] HTTPS enforced (HTTP redirects to HTTPS)
  • [ ] TLS 1.2+ only (disable older versions)
  • [ ] Strong cipher suites configured
  • [ ] HSTS header enabled
---

Monitoring & Backup

Monitoring Setup

  • [ ] Application logging configured
  • [ ] Error logs monitored
  • [ ] Database slow query log enabled
  • [ ] Health check script scheduled (cron)
  • [ ] Uptime monitoring configured
  • [ ] Alert notifications configured

Backup Configuration

  • [ ] Central database backup scheduled (daily)
  • [ ] Tenant databases backup scheduled (daily)
  • [ ] File backup scheduled (daily)
  • [ ] Backup retention policy configured (30 days)
  • [ ] Backup restoration tested
  • [ ] Off-site backup configured

Cron Jobs

  • [ ] Daily health checks
  • [ ] Daily backups
  • [ ] Log rotation
  • [ ] Database optimization
  • [ ] Vulnerability scanner (if applicable)
---

Documentation

Partner Documentation

  • [ ] Deployment notes documented
  • [ ] Custom configurations documented
  • [ ] Customer credentials stored securely
  • [ ] Support contacts documented

Customer Documentation

  • [ ] Login instructions provided
  • [ ] User guide shared
  • [ ] Support contact provided
  • [ ] Training scheduled (if applicable)
---

Testing

Functional Testing

  • [ ] User registration/login
  • [ ] Risk register (create, edit, delete)
  • [ ] Vulnerability management
  • [ ] Asset management
  • [ ] SIEM alerts
  • [ ] Reporting/exports
  • [ ] User management
  • [ ] Role/permission management

Performance Testing

  • [ ] Page load times acceptable (<2s)
  • [ ] Database queries optimized
  • [ ] Connection pooling working
  • [ ] No memory leaks

Security Testing

  • [ ] SQL injection tested
  • [ ] XSS tested
  • [ ] CSRF protection verified
  • [ ] Authentication bypass tested
  • [ ] Authorization tested
  • [ ] Data isolation verified
---

Go-Live

Pre-Launch

  • [ ] All testing complete
  • [ ] Backup verified
  • [ ] Rollback plan documented
  • [ ] Support team briefed
  • [ ] Customer notified of go-live time

Launch

  • [ ] DNS updated (if applicable)
  • [ ] Application accessible
  • [ ] SSL certificate valid
  • [ ] All services running
  • [ ] Monitoring active

Post-Launch

  • [ ] Customer login verified
  • [ ] No errors in logs
  • [ ] Performance acceptable
  • [ ] Customer feedback collected
  • [ ] Issues documented and resolved
---

Post-Deployment

Week 1

  • [ ] Daily log review
  • [ ] Performance monitoring
  • [ ] Customer check-in
  • [ ] Issue resolution

Month 1

  • [ ] Weekly health checks
  • [ ] Backup verification
  • [ ] Performance optimization
  • [ ] Customer satisfaction survey

Ongoing

  • [ ] Monthly security updates
  • [ ] Quarterly platform updates
  • [ ] Regular backups verified
  • [ ] Continuous monitoring
---

Troubleshooting Reference

Common Issues

Application won't load:
  • Check web server status
  • Check PHP error logs
  • Verify file permissions
  • Check database connection
Login fails:
  • Verify user exists in database
  • Check password hash
  • Verify session configuration
  • Check error logs
Tenant connection fails:
  • Run test_connection.php
  • Verify credentials
  • Check firewall
  • Verify encryption key
Performance issues:
  • Check database slow query log
  • Verify connection pool size
  • Check server resources
  • Optimize queries
---

Support Contacts

Technical Support:
  • Email: tech-support@veritylayer.com
  • Portal: https://support.veritylayer.com
  • Phone: +1-XXX-XXX-XXXX (24/7)
Partner Success:
  • Email: partners@veritylayer.com
  • Slack: #partner-support
---

Deployment Sign-Off

Deployment completed by: ___________________________ Date: ___________________________ Customer: ___________________________ Organization ID: ___________________________ Deployment type: ☐ Managed ☐ Customer Cloud ☐ On-Premise Notes: _________________________________________________________________ _________________________________________________________________ _________________________________________________________________ Approved by: ___________________________ Date: ___________________________