Chaque changement est une pull request relue qui passe des contrôles automatiques avant un déploiement automatique et réversible.
01Cycle de développement
- Conception : les changements qui touchent à l’authentification, à l’autorisation ou aux données personnelles sont conçus selon les contrôles OWASP Top 10.
- Réalisation : tout le code source se trouve dans des dépôts GitHub privés. Chaque changement est fait sur une branche et fusionné par une pull request.
- Vérification : contrôles de types, tests Go et contrôles de build s’exécutent sur chaque changement. Ces contrôles sont eux-mêmes testés en injectant une erreur connue et en confirmant qu’ils la détectent.
- Mise en production : les déploiements partent d’une chaîne automatisée sur des machines de build éphémères, avec uniquement le commit fusionné.
- Observation : chaque version est vérifiée en production après déploiement, avec l’identifiant de version visible dans les en-têtes de réponse.
02Contrôle des changements
- Les changements d’infrastructure (serveurs, réseaux, permissions, alarmes) sont du code Terraform et Ansible et suivent le même circuit de pull request, avec un contrôle d’infrastructure dédié.
- Deux déploiements du même service ne s’exécutent jamais en même temps.
- Chaque version est versionnée ; la précédente reste sur le serveur, si bien qu’un retour arrière est une bascule et non une reconstruction.
03Environnements et données
Le développement utilise des comptes et des programmes de test. Les données de production ne sont pas copiées sur les postes des développeurs, et l’accès aux données de production pour le support est limité à ce que la tâche de support exige.
04Contact
Questions sur cette politique, questionnaires de sécurité et demandes d’accord de traitement des données : privacy@mentornity.com.