Introduction

Sécuriser son système d’information est devenu primordial. Lorsque l’on déploie de grandes infrastructures, on veut s’assurer que l’ensemble de ces infrastructures respectent les standards de sécurité que vous avez définis dans votre entreprise.

Mais comment est-il possible de prévenir ou détecter les configurations et déploiements qui ne respectent pas ces standards lorsque ces déploiements peuvent être réalisés par plusieurs équipes au sein de votre entreprise ?

Dans cet article, nous allons décrire les différentes solutions possibles à mettre en place durant les différentes parties du processus de déploiement d’une infrastructure.

Ces solutions sont appelées “Compliance as code”. Leur but est de comparer une infrastructure à une liste de règles prédéfinies dans du code (souvent avec des langages descriptifs tels que YAML, JSON etc ..) et de pointer les non-conformités.

Nous commencerons par définir quels sont les standards de sécurité vers lesquels nous allons pouvoir nous comparer via les outils de compliance as code. Puis, nous listerons les outils de compliance as code disponibles aux différentes étapes du cycle de vie d’une infrastructure.

Standards de sécurité

Avant d’implémenter des solutions de Compliance as Code, il est évidemment nécessaire de définir quel standard de sécurité vous voulez que votre infrastructure respecte. Cette décision doit être en corrélation avec votre stratégie d’entreprise ainsi que votre activité.

Parmi les standards de sécurités les plus connus et respecté on peut noter :

Après que vous avez défini quel standard de sécurité vous souhaitez respecter, on peut maintenant l’implémenter.

Implémentation de standards

La constante vérification du respect de vos infrastructures par rapport au standard de sécurité que vous avez choisi ne peut pas être manuelle. En effet, une vérification manuelle est à proscrire car elle prendrait beaucoup de trop de temps et d’argent. Il faut donc automatiser ces vérifications. Dans cette partie nous définierons comment peut-on réaliser la vérification automatique de la conformité de votre infrastructure à chaque étape du cycle de vie de votre infrastructure.

Avant le déploiement : Vérification statique de code