Aller au contenu
Apprendre.
  • M1 · toutes les matières15 matières : Préparation de données, API & sécurité, CI/CD, Docker, Merise, Dataviz, KNIME, ML appliqué : projet LoL, SQL & UML, SQL avancé, Machine Learning, Git, IA frugale & responsable, Qualité des données, MathématiquesAnnée
  • M2 · toutes les matières4 matières : Deep Learning, AI Act, Comex & Fundraising, Gouvernance & DataMeshAnnée
  • Deep LearningM2 · 4 modules · Réseaux de neurones, CNN, texte, modèles génératifs.Matière
  • Préparation de donnéesM1 · 3 modules · Nettoyer, transformer et fusionner des données avec Python.Matière
  • API & sécuritéM1 · 2 modules · Consommer, concevoir et sécuriser des API.Matière
  • CI/CDM1 · 1 module · Intégration et livraison continues.Matière
  • DockerM1 · 3 modules · Conteneurs, images, volumes, réseaux, Compose.Matière
  • MeriseM1 · 2 modules · Modéliser une base : MCD, MLD, MPD.Matière
  • DatavizM1 · 2 modules · Visualiser pour comprendre et décider.Matière
  • KNIMEM1 · 1 module · Explorer et nettoyer des données en workflow.Matière
  • ML appliqué : projet LoLM1 · 2 modules · Du besoin métier au POC de vision par ordinateur.Matière
  • SQL & UMLM1 · 3 modules · Modèles UML et requêtes SQL.Matière
  • SQL avancéM1 · 3 modules · Jointures, fenêtres, CTE, optimisation.Matière
  • Machine LearningM1 · 3 modules · Régression, classification, segmentation, projet.Matière

↑↓ naviguer↵ ouvre le résultat en surbrillanceesc fermer

Partie 3

Chiffrer les communications : HTTPS, TLS, certificats

Utiliser toujours HTTPS pour que les échanges client-serveur ne puissent être ni interceptés ni manipulés. Les données sensibles doivent aussi être chiffrées au repos dans les bases de données, pas seulement en transmission.

HTTPS s'appuie sur SSL/TLS. SSL a été remplacé par TLS, plus sécurisé. TLS offre :

FonctionRôle
Chiffrementchiffre les données échangées
Authentificationgarantit que le serveur est bien celui qu'il prétend être, via des certificats numériques
Intégritéles données ne sont pas modifiées pendant le transfert

Les 4 étapes de la connexion sécurisée

  1. Le client demande l'initialisation d'une connexion sécurisée.
  2. Le serveur envoie son certificat SSL/TLS (vérification, validité, signature par un tiers de confiance).
  3. Le client transmet une clé de cryptage unique, encodée avec la clé publique du serveur.
  4. Le serveur la décrypte avec sa clé privée : la connexion HTTPS est établie.

Vérifie que tu as compris

Avec quelle clé le serveur décrypte-t-il la clé de cryptage envoyée par le client ?

Générer un certificat auto-signé (les 5 étapes du cours)

# 1. outils
sudo apt install openssl nginx
# 2. clé privée
openssl genrsa -out /etc/ssl/private/nginx.key 2048
# 3. demande de signature de certificat (CSR)
openssl req -new -key /etc/ssl/private/nginx.key -out /etc/ssl/private/nginx.csr
# 4. certificat auto-signé, valable 365 jours
openssl x509 -req -days 365 -in /etc/ssl/private/nginx.csr -signkey /etc/ssl/private/nginx.key -out /etc/ssl/certs/nginx.crt
# 5. configurer l'API pour utiliser le certificat

Un certificat auto-signé convient aux tests locaux (TP) ; en production, le certificat est signé par un tiers de confiance.

Vérifie que tu as compris

Dans la commande openssl x509 -req -days 365 -in nginx.csr -signkey nginx.key -out nginx.crt, que produit-on ?