46
De DevOps vers DevSecOps MMartin Sauvé Martin Sauvé Architecte principal 13 novembre, 2019 [email protected] 1 ???

De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

De DevOps vers DevSecOps

MMartin Sauvé

Martin Sauvé

Architecte principal

13 novembre, 2019

[email protected] 1

???

Page 2: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

2

“Depuis plus de 20 ans, la sécurité n’est considérée qu’à la toute fin du cycle de livraison”

Anonyme

Page 3: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

3

ÉlaborationConception ÉlaborationAssurance

QualitéDéploiementValidation

Sécurité ?

Page 4: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

4

ÉlaborationConception ÉlaborationAssurance

Qualité

Déploiement

Validation

Sécurité

Page 5: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

5

Conception ÉlaborationAssurance

QualitéValidation Sécurité

Page 6: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

6

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

Page 7: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

Automatisation

Page 8: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Source: IT Revolution, DevOps Enterprise abstract word cloud, 2016

Page 9: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Source: IT Revolution, DevOps Enterprise abstract word cloud, 2016

Page 10: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Source: IT Revolution, DevOps Enterprise abstract word cloud, 2016

Page 11: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Processus

FréquenceDéploiements

Risques

Volume

Changements

Approche Traditionnelle

Réduction Augmentation

AugmentationAugmentation

Page 12: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Automatisation

FréquenceDéploiements

Risques

Volume

Changements

Approche DevOps

Augmentation Réduction

RéductionRaffinement

Page 13: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Automatisation

Validation

Sécurité

Intrusions et attaques

Risques, vulnérabilités

et failles

Approche Dev(Sec)Ops

Augmentation Réduction

RéductionRaffinement

Page 14: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Serveurs

physiquesVirtualisation Conteneurs

Centre de

données

Centre

partagé

Infonuagique

hybride

MonolitheN-Tier, AoS MSA,

Distribuée

Page 15: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

● Haute vélocité

● Parallélisme des équipes

● Architecture hautement distribuée

● Environnements hétérogènes

● Culture négligeant la sécurité

Page 16: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

● Haute vélocité

● Parallélisme des équipes

● Architecture hautement distribuée

● Environnements hétérogènes

● Culture encourageant l’innovation

Page 17: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

DevSecOps

17

Comment réussir ?

Page 18: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

Page 19: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

Page 20: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

Agile

Page 21: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

Transformation Numérique

Page 22: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

Page 23: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Opérations Sécurité

DevTestOpsSec?

23

Page 24: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Sécurité Opérations

DevOps

24

Page 25: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Développeurs Testeurs Sécurité Opérations

Culture + Processus + Technologie

Page 26: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

26

PROCESSUS

Page 27: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

SÉCURITÉ EN CONTINUet intégrée au cycle de vie de vos applications

Politiques et processus de

sécurité

CONCEVOIR

BÂTIR

EXÉCUTER

GÉRER

ADAPTER

Définition de la gouvernance et besoin en sécurité

Sécurité intégrée

depuis le début; pas

ajoutée

Déploiement sur des

plateformes avec des

capacités de sécurité

élevées

Automatisation de la

sécurité et la conformité

Révision, mise à

jour, correctifs

Est-ce DevOps sans ces étapes ?

Page 28: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

SÉCURITÉ EN CONTINUet intégrée au cycle de vie de vos applications

Politiques et processus de

sécurité

CONCEVOIR

BÂTIR

EXÉCUTER

GÉRER

ADAPTER

Gouvernance

Politiques

Processus

Artéfacts

Audit

Page 29: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

SÉCURITÉ EN CONTINUExample

Politiques et processus de

sécurité

CONCEVOIR

BÂTIR

EXÉCUTER

GÉRER

ADAPTER

Points de contrôle● Membranes perméables● Automatiser● Validation des politiques● Exercise de la gouvernance● Log, audit

Page 30: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

Page 31: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

AUTOMATISATION DE LA LIVRAISON

Gestion du code source

AWS ECR

BÂTIR APPLICATION

EXÉCUTER TESTS GRADUER BINAIRE

BÂTIR IMAGE ÉXECUTER TESTS GRADUER IMAGE

DÉPOT DE BINAIRE

CORPORATIF

REGISTRE D’IMAGE

CORPORATIF

31

Page 32: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

TESTSUNITAIRES

QUALITÉ DU CODE

DÉTECTIONDES

VULNÉRABILITÉS

-Cucumber-Arquillian-Junit

-Sonarqube-Fortify-App Scan

-Aqua Security-Black Duck-Clair-Sonatype-Twistlock

LIVRAISONAUTOMATISÉE

GRADUER EN PRODUCTION

GRADUER EN UAT

GRADUER EN QA

BÂTIR et DÉPLOYER

IMAGE

AUTOMATISATION DE LA SÉCURITÉ(CI/CD)

● Tests de sécurité intégrés à la

livraison

● Utilisation de politiques

automatisées comme marqueur

● Signature des images

Page 33: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

REGISTREPRIVÉ

IMAGESEXTERNES

SÉCURITÉ ET AUTOMATISATIONLa confiance est temporelle; bâtir et déployer au besoin

Git

METADONNÉES

ÉVÉNEMENTS

CONTENUCERTIFIÉ

CONTENU INCONNU

CI CD

Page 34: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

Page 35: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

REGISTREPRIVÉ

IMAGESEXTERNES

Gouvernance

Automatisation

Agilité des développeurs

Confiance des opérations

REGISTREPRIVÉ

Page 36: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

36

TECHNOLOGIE

Page 37: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

37

Plateforme(écosystème est le différentiateur)

Emergeant(expérimentation)

Produit(compétition est la source d’innovation)

Maturité technologiqueV

ale

ur,

Perf

orm

ance

Page 38: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

3.0(Automatisation environnement hybrides)

1.0(Logiciel libre comme plateforme)

2.0(Innovation sur Linux)

InnovationV

ale

ur,

Perf

orm

ance

Linux Virtualisation Conteneurs

Page 39: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

39

1. Plateforme sécurisée par défaut

a. Gestion des identitités

b. Rôles et contrôles des accès

c. Politiques réseau

d. Gestion des informations confidentielles

e. Logs, audit, archivage

Page 40: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

40

Page 41: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Petits morceaux - Haute vélocitéPriorisation

ObservationVisibilitéRetour d’information

Page 42: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

42

CULTURE

Page 43: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

43

CULTURE

Page 44: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

1. Support exécutif

2. Choix des ressources - enthousiasme, désir de

changement, désir de bien faire les choses

3. Bâtir des équipes multi-disciplinaires

4. Considérer les obstacles (humains,

technologiques…)

5. Commencer petit et améliorer à chaque cycle

6. Les échecs vont arriver … et le succès

7. OUVERTURE

a. Ouverture à la rétroaction

b. Ouverture aux erreurs

c. Ouverture aux changements

Page 45: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

45

MERCI!

Page 46: De DevOps vers DevSecOps - JIQ...4. Considérer les obstacles (humains, technologiques…) 5. Commencer petit et améliorer à chaque cycle 6. Les échecs vont arriver … et le succès

Validation de la qualité du code

Idées

Analyse des dépendances

Cycle de Développement

Changement détecté

Déplacer vers la Branche Release

Analyse du code (Static Code)

Balayage de l’image

Bâtir application

Déploiement en développement

Déploiement en assurance qualité

Tests d’exécution et validation

Déploiement en production

Tests de validation !

Validation et expérimentation

Bâtir et enregistrer image

Créer nouveau binaire