Pourquoi les certificats numériques sont si importants pour vos équipes DevOps

Publié: 2020-10-02

Les organisations intègrent de plus en plus DevOps dans leurs processus de développement d'applications. Selon Amazon Web Services (AWS), DevOps est très prometteur pour les organisations, car il a le potentiel d'augmenter la vitesse et la capacité de déployer de nouvelles applications et de nouveaux services. Pour ce faire, les équipes de développement et d'exploitation travaillent ensemble tout au long du cycle de vie de l'application. (Les équipes de sécurité peuvent également être impliquées dans un processus appelé DevSecOps.) Ensemble, le personnel de développement et d'exploitation utilise des piles et des outils technologiques étendus pour automatiser les processus qu'ils ont traditionnellement exécutés manuellement.

Inutile de dire que les organisations peuvent tirer de nombreux avantages en adoptant un modèle DevOps. Lorsqu'ils sont laissés à leurs silos, les développeurs, le personnel d'exploitation, les professionnels de la sécurité et même les responsables de l'assurance qualité ne connaissent pas nécessairement les obstacles qui pourraient empêcher un projet de se terminer à temps. C'est parce que ces groupes ajoutent quelque chose de différent à une affectation. Comme l'a noté Digital.ai, ils n'abordent pas nécessairement leur travail à partir de la même compréhension du contexte ou de la valeur métier d'une nouvelle application. En tant que telles, ces équipes pourraient même avoir des objectifs opposés qui pourraient retarder un projet et conduire à des luttes intestines.

Certificats numériques : un défi pour les DevOps de suivre le rythme de la sécurité

Les organisations veulent tirer le meilleur parti de l'intégration de leurs différentes équipes sous un modèle DevOps. Reconnaissant ce fait, il n'est pas surprenant que DevOps en tant qu'état d'esprit change constamment pour tenter de s'adapter au paysage technologique en constante évolution. DevOps doit donc suivre le rythme du domaine de la sécurité de l'information.

Sid Phadkar, chef de produit senior chez Akamai, a précisé ce point à TechRepublic :

Avec le nombre croissant de violations de données et l'accent accru sur les réglementations sur la confidentialité des données telles que PSD2 et GDPR aux États-Unis et dans le monde, les organisations averties de DevOps seront obligées de donner la priorité à la diligence dans les mesures de sécurité au fil du temps sur le marché au cours de l'année à venir. Au fur et à mesure que de nouvelles réglementations seront mises en place, de plus en plus de développeurs d'applications seront mandatés pour élaborer des politiques de sécurité strictes directement dans le code. Il y aura une légère augmentation des outils DevOps qui permettront d'automatiser davantage de tâches liées à la conformité au sein des équipes d'infosec, incorporant ainsi des mesures de sécurité et de conformité dans les flux de travail CI quotidiens.

Le problème est qu'il n'est pas toujours facile d'aligner DevOps sur la sécurité. En effet, Keyfactor a noté que de nombreuses organisations ont du mal à appliquer des politiques de sécurité cohérentes autour de DevOps en raison des conflits évoqués ci-dessus. Les bonnes pratiques de sécurité entrent généralement en contact avec la livraison en temps voulu d'une nouvelle application ou d'un nouveau service. Sans les bons outils pour prendre en charge DevOps, le personnel de sécurité ne peut donc pas soutenir les développeurs de la manière dont ils ont besoin d'être pris en charge. Les développeurs seront donc plus enclins à résister aux nouvelles pratiques de sécurité et à trouver des alternatives non conformes aux nouveaux processus qui les ralentissent.

Ces défis sont particulièrement préoccupants pour la gestion du cycle de vie des certificats. Les organisations doivent sécuriser le cycle de vie DevOps avec PKI via la signature de code ou la création d'un certificat. Mais comme l'a noté AppViewX, cette implémentation de PKI souffre souvent d'une mauvaise visibilité sur les cycles de vie des certificats et d'une communication incohérente avec les autorités de certification.

Les pipelines DevOps conventionnels reposent également généralement sur des requêtes manuelles pour obtenir des certificats de confiance. Ces types de demandes compromettent l'agilité du cycle de vie du développement logiciel. La plupart des conteneurs ne sont pas disponibles très longtemps, donc si ces demandes prennent des jours à être traitées, les certificats numériques résultants seront effectivement inutiles à moins que l'organisation ne ralentisse la livraison des applications. Un tel dynamisme rend également difficile pour DevOps de gérer et de surveiller ces certificats par eux-mêmes. Les membres de l'équipe pourraient donc rechercher des raccourcis, recourir à des processus ad hoc ou acheter des certificats qui utilisent plusieurs normes cryptographiques, des variantes qui augmentent le risque de sécurité de l'organisation.

Ces préoccupations ne résonnent pas seulement chez les analystes de l'industrie. Ils sont également partagés par les professionnels DevOps. Dans une enquête de 2019, 74 % des professionnels de DevOps ont déclaré à Venafi qu'ils craignaient que la délivrance de certificats ne ralentisse le développement. Un peu plus d'un tiers (39 %) des développeurs ont déclaré qu'ils devraient pouvoir contourner ces politiques pour respecter leurs accords de niveau de service, tandis que moins de la moitié (48 %) des répondants ont exprimé leur conviction que les développeurs de leur organisation demandent toujours des certificats via des canaux. et méthodes approuvées par l'équipe de sécurité.

Comment les équipes DevOps peuvent gérer au mieux leurs certificats

En réponse aux défis évoqués ci-dessus, les équipes DevOps peuvent mieux gérer leurs certificats en automatisant leurs processus de gestion des certificats. Comme l'a noté DevOps.com, les outils d'orchestration comme Kubernetes prennent en charge la gestion des certificats via le protocole ACME. Kubernetes stocke les clés privées dans Kubernetes Secret ou Hashicorp Vault, offrant ainsi une intégration transparente pour le système de gestion des certificats. Les équipes DevOps peuvent également signer numériquement leurs conteneurs avec une autorité de certification privée pour aider à vérifier un conteneur donné lorsqu'il communique via une connexion TLS.

Outre l'automatisation, DevOps doit augmenter la visibilité de ses certificats pour éviter les pannes inutiles. Les membres de l'équipe doivent être en mesure de renouveler les certificats avant leur expiration et de gérer les configurations incorrectes pour s'assurer que les services critiques restent opérationnels. TechBeacon note que DevOps devrait utiliser des collections d'automatisation pilotées par API appelées "recettes" pour orchestrer leurs processus impliquant des clés et des certificats dans le but d'équilibrer à la fois l'agilité et la sécurité.

Avez-vous des idées à ce sujet? Faites-le nous savoir ci-dessous dans les commentaires ou transférez la discussion sur notre Twitter ou Facebook.

Recommandations des éditeurs :

  • Comment implémenter des tests continus dans DevOps ?
  • Les ingénieurs AWS DevOps font un KILLING - démarrez votre carrière avec cet ensemble de cours de 30 $
  • Comment DevOps peut protéger les données des clients
  • Comment DevOps transforme le développement logiciel

Note de l'éditeur : David Bisson est un rédacteur spécialisé dans la sécurité de l'information et un accro de la sécurité. Il est rédacteur en chef du blog Security Intelligence d'IBM et du blog The State of Security de Tripwire, et rédacteur collaborateur pour Bora. Il produit également régulièrement du contenu écrit pour Zix et un certain nombre d'autres sociétés dans le domaine de la sécurité numérique.