Environment Segregation and Operational Validation
A clear separation between environments (development, QA, staging, production) is an essential practice for mitigating risks and preventing unvalidated code from being executed in sensitive contexts. This document defines practices for secure segregation and validation before promotion to production.
🌐 Separating is protecting
| Environment | Main objective | Suggested restrictions |
|---|---|---|
| Dev | Active development | Open access, fictitious data |
| QA/Test | Functional and regression tests | Controlled data, access by QA |
| Staging | Environment identical to production for validation | Same versions and configuration |
| Production | Real execution and sensitive data | Only authorised and segregated access |
💡 Shared environments increase the risk of data exposure and unexpected side effects.
🛡️ Security requirements per environment
-
Access and authentication:
- MFA for staging and production
- Distinct RBAC profiles per environment
-
Data used:
- Real data only in production
- Masking or synthetic data in the others
-
Infrastructure segregation:
- Distinct VPCs/subnets
- Separate secrets and vaults
- Pipelines with segregated tokens and permissions
🔢 Final validation before production
| Validation type | Description |
|---|---|
| Functional checklist | All requirements validated? |
| Security checklist | Findings, toggles, rollback, logging |
| Reversibility test | Functional rollback tested? |
| Formal approval | By whom? QA, AppSec, manager? |
| Change audit | Which code / config was changed? |
🚑 Testing in production safely
In some contexts, it may be necessary to validate in production:
- With feature flags and a limited scope
- With reinforced logs and alerts
- With immediate rollback prepared
❌ Never carry out manual tests with real users without traceability, approval and guaranteed rollback.
💼 Mandatory recording and audit
- Which version was promoted
- By whom
- Which validators passed (security, functionality)
- Justification of exceptions, if applicable
- Evidence of tested rollback
✅ Operational validation checklist
- Is the staging environment equivalent to production?
- Is the production pipeline segregated from the others?
- Are all accesses controlled by MFA and RBAC?
- Were the final validations executed and documented?
- Is there a tested rollback ready to use?
- Are the configurations audited and versioned?
🔒 Environment segregation is a fundamental requirement for organisational security and compliance.