Cours : Sécurité Azure :
Introduction :
Qu'est-ce que Microsoft Azure ?
Microsoft Azure est une plateforme de cloud computing proposée par Microsoft, qui offre une
gamme étendue de services cloud, y compris ceux pour le calcul, l'analyse, le stockage, et les réseaux.
Azure permet aux entreprises et aux développeurs de créer, déployer et gérer des applications et des
services à travers un réseau mondial de centres de données.
Caractéristiques principales de Microsoft Azure :
1. Informatique :
- Machines virtuelles (VM) : Fournit des instances de machines virtuelles de différentes tailles et
configurations.
- App Services : Permet de créer et déployer des applications web, mobiles, et d'API.
- Kubernetes Service (AKS) : Service de conteneurisation pour gérer des clusters Kubernetes.
2. Stockage :
- Blob Storage : Stockage d'objets pour les fichiers de grande taille.
- File Storage : Stockage de fichiers entièrement géré accessible via le protocole SMB.
- Queue Storage : Service de files d'attente pour le stockage des messages.
3. Bases de données :
- SQL Database : Base de données relationnelle en tant que service (PaaS).
- Cosmos DB : Base de données NoSQL distribuée à l'échelle mondiale.
- Database for MySQL, PostgreSQL : Bases de données gérées pour MySQL et PostgreSQL.
4. Réseaux :
- Virtual Network (VNet) : Permet de créer des réseaux privés dans Azure.
- Azure CDN : Service de distribution de contenu pour fournir des ressources à faible latence.
- ExpressRoute : Connexions privées entre Azure et les infrastructures locales.
5. Analytique et Big Data :
- Azure Synapse Analytics : Service d'analytique pour traiter les grands volumes de données.
- HDInsight : Distribution de Hadoop sur le cloud.
- Databricks : Service basé sur Apache Spark pour l'analytique.
6. Intelligence artificielle et apprentissage automatique :
- Azure Machine Learning : Outils et services pour créer et déployer des modèles de machine
learning.
- Cognitive Services : API pour intégrer des capacités d'IA telles que la vision par ordinateur, la
reconnaissance vocale et le traitement du langage naturel.
7. Sécurité et identité :
- Azure Active Directory (Azure AD) : Service de gestion des identités et des accès.
- Azure Key Vault : Gestion des secrets, des clés et des certificats.
- Azure Security Center : Service de gestion de la sécurité et de protection contre les menaces.
8. Outils de développement :
- Azure DevOps : Services pour la gestion de projets, CI/CD, et le contrôle des versions.
- Visual Studio App Center : Outils pour le développement d'applications mobiles.
- SDK et API : Kits de développement pour intégrer les services Azure dans les applications.
Avantages de Microsoft Azure :
1. Évolutivité : Capacité à ajuster les ressources rapidement selon les besoins.
2. Fiabilité : Haut niveau de disponibilité et de redondance des services.
3. Sécurité : Infrastructure sécurisée avec des contrôles d'accès, des cryptages et des audits.
4. Globalité : Centres de données dans le monde entier pour une latence réduite et une conformité
locale.
5. Économie de coûts : Modèle de tarification à l'usage permettant de réduire les coûts
d'infrastructure.
Azure permet aux entreprises de toutes tailles de moderniser leur infrastructure, de développer des
applications plus rapidement et de bénéficier de la flexibilité et de l'évolutivité du cloud computing.
Module 1: Concepts de base de la sécurité Azure
La sécurité dans Azure est un aspect crucial pour protéger les données et les applications dans le
cloud. Voici un aperçu des concepts de base de la sécurité Azure :
1. Responsabilité partagée :
Azure utilise un modèle de responsabilité partagée pour la sécurité, où la responsabilité est partagée
entre Microsoft et le client. Les rôles spécifiques dépendent du type de service utilisé :
- Infrastructure as a Service (IaaS) : Microsoft est responsable de la sécurité physique, du réseau et de
l'hyperviseur. Les clients sont responsables du système d'exploitation, des applications, et des
données.
- Platform as a Service (PaaS) : Microsoft gère l'infrastructure, le réseau, le stockage et les applications
de base. Les clients gèrent les applications et les données.
- Software as a Service (SaaS) : Microsoft gère presque tout, y compris les applications. Les clients
sont principalement responsables de la gestion des utilisateurs et des données.
2. Confidentialité, intégrité et disponibilité
- Confidentialité : Protection des données contre l'accès non autorisé.
- Intégrité : Assurer que les données ne sont pas modifiées ou corrompues de manière non autorisée.
- Disponibilité : Assurer que les services et les données sont disponibles lorsque les utilisateurs en ont
besoin.
3. Modèle Zero Trust
Le modèle Zero Trust repose sur le principe que rien à l'intérieur ou à l'extérieur du périmètre du
réseau ne doit être automatiquement approuvé. Les éléments clés incluent :
- Vérification explicite : Authentification et autorisation basées sur toutes les données disponibles, y
compris l'identité de l'utilisateur, l'emplacement, l'état de l'appareil, etc.
- Accès avec le moindre privilège : Accorder uniquement les privilèges nécessaires pour accomplir une
tâche spécifique.
- Supposition de violation : Concevoir les systèmes en supposant qu'une violation a déjà eu lieu ou est
inévitable.
4. Gestion des identités et des accès (IAM)
- Azure Active Directory (Azure AD) : Service de gestion des identités et des accès pour les utilisateurs
et les applications. Azure AD prend en charge l'authentification unique (SSO), l'authentification
multifacteur (MFA) et la gestion des accès conditionnels.
- Contrôle d'accès basé sur les rôles (RBAC) : Permet de gérer qui a accès aux ressources Azure et à
quel niveau. Les rôles peuvent être attribués aux utilisateurs, groupes, et applications.
5. Chiffrement des données
- Chiffrement au repos : Données chiffrées lorsqu'elles sont stockées dans Azure. Azure propose le
chiffrement par défaut pour de nombreux services de stockage.
- Chiffrement en transit : Données chiffrées lorsqu'elles transitent entre les services ou les
utilisateurs. Utilisation de TLS (Transport Layer Security) pour sécuriser les communications réseau.
- Azure Key Vault : Service pour gérer les secrets, les clés de chiffrement et les certificats de manière
sécurisée.
6. Sécurité des réseaux
- Azure Virtual Network (VNet) : Permet de créer des réseaux privés dans Azure, avec des sous-
réseaux, des adresses IP privées, et des groupes de sécurité réseau (NSG) pour contrôler le trafic
entrant et sortant.
- Azure Firewall : Pare-feu géré qui permet de protéger les ressources réseau avec des règles de
filtrage de trafic.
- DDoS Protection : Protection contre les attaques par déni de service distribué (DDoS), offrant une
protection de base et une protection standard avancée.
7. Gestion des menaces et des vulnérabilités
- Azure Security Center : Outil pour surveiller et améliorer la posture de sécurité des ressources
Azure. Il offre des recommandations de sécurité et des alertes sur les menaces potentielles.
- Azure Sentinel : Service de gestion des informations et des événements de sécurité (SIEM) et
d'orchestration, d'automatisation et de réponse de la sécurité (SOAR). Il permet de détecter,
enquêter et répondre aux menaces en utilisant l'intelligence artificielle.
8. Conformité et gestion des politiques
- Azure Policy : Outil pour créer, attribuer et gérer des politiques afin de renforcer la conformité et
d'appliquer des règles organisationnelles. Il permet de garantir que les ressources sont déployées et
configurées conformément aux normes.
- Azure Blueprints : Permet de définir des environnements conformes en regroupant des artefacts tels
que des modèles ARM (Azure Resource Manager), des rôles RBAC, des politiques et des groupes de
ressources.
9. Sécurité des applications
- Azure Web Application Firewall (WAF) : Protection pour les applications web contre les attaques
courantes telles que les injections SQL et les scripts intersites (XSS).
- DevSecOps : Intégration des pratiques de sécurité dans le cycle de vie de développement logiciel
(SDLC) et dans les pipelines CI/CD. Utilisation d'outils de sécurité automatisés pour détecter et
corriger les vulnérabilités dans le code et les configurations d'infrastructure.
Module 2: Gestion des identités et des accès (IAM) :
2.1 Introduction à Azure Active Directory (Azure AD) :
Concepts de Base :
• Azure AD : Service de gestion des identités et des accès basé sur le cloud, permettant de
gérer les utilisateurs et les groupes, et de sécuriser l'accès aux applications.
• Identité : Représente un utilisateur ou une entité qui peut s'authentifier et être autorisé à
accéder aux ressources.
• Authentification : Processus de vérification de l'identité de l'utilisateur.
• Autorisation : Processus de vérification des droits d'accès de l'utilisateur.
Fonctionnalités d'Azure AD :
• Single Sign-On (SSO) : Permet aux utilisateurs de se connecter une seule fois pour accéder à
plusieurs applications.
• Authentification multifacteur (MFA) : Renforce la sécurité en exigeant plusieurs méthodes de
vérification.
• Gestion des appareils : Contrôle l'accès basé sur l'état de conformité des appareils.
2.2 Gestion des Utilisateurs et des Groupes :
Gestion des Utilisateurs :
• Création d'un Utilisateur : Ajouter des utilisateurs à Azure AD via le portail Azure, PowerShell
ou des scripts.
• Gestion des Attributs : Mettre à jour les informations de l'utilisateur telles que le nom, l'e-
mail et les rôles.
• Réinitialisation de Mot de Passe : Configurer et permettre la réinitialisation de mot de passe
en libre-service pour les utilisateurs.
Gestion des Groupes :
• Création de Groupes : Organiser les utilisateurs en groupes pour faciliter la gestion des accès.
• Attribution de Rôles aux Groupes : Assigner des rôles et des permissions aux groupes pour
simplifier la gestion des accès.
• Groupes Dynamiques : Utiliser des règles basées sur des attributs pour ajouter
automatiquement des utilisateurs aux groupes.
2.3 Authentification Multifacteur (MFA) :
Concepts de Base :
• Qu'est-ce que MFA ? : Processus de vérification qui requiert plus d'une méthode
d'authentification, augmentant ainsi la sécurité.
• Méthodes d'Authentification : Mot de passe, biométrie, application de notification, SMS, etc.
Configuration de MFA :
• Activer MFA pour les Utilisateurs : Configurer MFA pour les comptes utilisateur via le portail
Azure ou des politiques de sécurité.
• Gestion des Méthodes MFA : Configurer et gérer les méthodes d'authentification disponibles
pour les utilisateurs.
• Politique d'Accès Conditionnel : Utiliser l'accès conditionnel pour appliquer MFA uniquement
dans certaines conditions (par exemple, accès depuis un emplacement non sécurisé).
2.4 Contrôle d'Accès Basé sur les Rôles (RBAC) :
Concepts de Base :
• RBAC : Modèle de gestion des accès qui permet de restreindre l'accès aux ressources en
fonction des rôles attribués aux utilisateurs.
• Rôles Intégrés : Rôles prédéfinis dans Azure tels que Propriétaire, Contributeur, et Lecteur.
• Rôles Personnalisés : Création de rôles personnalisés avec des permissions spécifiques.
Configuration de RBAC :
• Attribution de Rôles : Assigner des rôles aux utilisateurs, groupes, et applications au niveau
de l'abonnement, du groupe de ressources ou de la ressource.
• Gestion des Permissions : Définir les permissions de chaque rôle pour contrôler l'accès aux
actions spécifiques.
• Audit et Surveillance : Utiliser les journaux d'audit pour surveiller les modifications de rôles
et les tentatives d'accès.
2.5 Azure AD Privileged Identity Management (PIM):
Concepts de Base :
• PIM : Outil pour la gestion des identités privilégiées, permettant de contrôler et surveiller
l'accès aux rôles privilégiés dans Azure AD et Azure.
• Rôles Privilégiés : Rôles qui ont des permissions étendues et peuvent effectuer des actions
critiques.
Configuration de PIM :
• Activation de PIM : Activer PIM dans le portail Azure pour gérer les rôles privilégiés.
• Attribution Juste-à-Temps (JIT) : Assigner des rôles privilégiés temporairement pour réduire
les risques.
• Examens d'Accès : Effectuer des examens périodiques des accès pour s'assurer que seuls les
utilisateurs appropriés ont des rôles privilégiés.
• Alertes et Notifications : Configurer des alertes pour les activités suspectes ou non
conformes.
2.6 Meilleures Pratiques de Sécurité IAM :
• Principe du Moindre Privilège : Accorder aux utilisateurs seulement les permissions
nécessaires pour accomplir leurs tâches.
• Utilisation de MFA : Activer MFA pour tous les utilisateurs pour renforcer la sécurité.
• Surveillance Continue : Utiliser les outils d'audit et de surveillance pour détecter et répondre
aux anomalies.
• Gestion Régulière des Rôles : Effectuer des examens réguliers des rôles et des permissions
pour s'assurer qu'ils sont appropriés et à jour.
Module 3: Sécurisation des données :
1. Concepts de Base
La sécurisation des données sur Azure repose sur les principes fondamentaux de confidentialité,
d'intégrité et de disponibilité. Elle est une responsabilité partagée entre Microsoft et le client, où
Microsoft gère la sécurité de l'infrastructure et le client gère la sécurité de ses données.
2. Chiffrement des Données au Repos
Les données au repos sont protégées par des mécanismes de chiffrement pour empêcher l'accès non
autorisé.
- Azure Storage Service Encryption (SSE) : Chiffrement automatique des données dans Azure Blob
Storage, File Storage, Queue Storage et Table Storage.
- Azure Disk Encryption : Utilise BitLocker pour les disques Windows et DM-Crypt pour les disques
Linux. Les clés de chiffrement sont gérées via Azure Key Vault.
- SQL Transparent Data Encryption (TDE) : Chiffrement des bases de données SQL Azure pour protéger
les données au repos.
3. Chiffrement des Données en Transit
Les données en transit sont chiffrées pour garantir qu'elles ne peuvent pas être interceptées ou
altérées.
- TLS (Transport Layer Security) : Utilisé pour sécuriser les communications réseau entre les services
Azure et les utilisateurs. Azure propose par défaut l'utilisation de TLS pour les services.
4. Azure Key Vault
Azure Key Vault est un service de gestion centralisée des clés de chiffrement, des secrets et des
certificats.
- Gestion des Clés : Stocker et gérer les clés de chiffrement de manière sécurisée.
- Gestion des Secrets : Stocker des secrets tels que les mots de passe et les chaînes de connexion.
- Gestion des Certificats : Stocker et gérer les certificats SSL/TLS.
5. Protection des Données et Conformité
Azure fournit plusieurs services et outils pour protéger les données et garantir la conformité avec les
régulations.
- Azure Information Protection (AIP) : Classifier et protéger les documents et les e-mails en appliquant
des étiquettes.
- Azure Security Center : Outil pour surveiller la sécurité des ressources Azure et fournir des
recommandations de sécurité.
- Azure Policy : Créer et gérer des politiques pour assurer la conformité et l'application des règles
organisationnelles.
6. Meilleures Pratiques
- Chiffrement par Défaut : Activer le chiffrement par défaut pour toutes les données au repos et en
transit.
- Utiliser Azure Key Vault : Centraliser la gestion des clés et des secrets pour renforcer la sécurité.
- Accès Conditionnel : Mettre en place des politiques d'accès conditionnel pour protéger les données
sensibles.
- Surveillance Continue : Utiliser les outils d'audit et de surveillance pour détecter et répondre aux
menaces potentielles.
Module 4: Sécurisation des réseaux :
1. Azure Virtual Network (VNet)
o Concepts de base des VNets
o Configuration des sous-réseaux, des adresses IP et des groupes de sécurité réseau
(NSG)
o Azure Firewall et autres appliances de sécurité réseau
2. Sécurité des points de terminaison
o Sécurisation des points de terminaison avec Azure Security Center
o Configuration des règles de pare-feu et des politiques de sécurité
3. Azure DDoS Protection
o Introduction à la protection DDoS
o Types de protections DDoS et mise en œuvre dans Azure
Module 5: Gestion des menaces et des vulnérabilités
1. Azure Security Center
o Aperçu d'Azure Security Center
o Configuration des politiques de sécurité
o Surveillance et détection des menaces
2. Azure Sentinel
o Introduction à Azure Sentinel
o Configuration et utilisation de SIEM et SOAR
o Surveillance proactive et réponses aux incidents
Module 6: Sécurité des applications :
La sécurité des applications sur Azure est essentielle pour protéger les applications contre les
menaces et assurer la confidentialité, l'intégrité et la disponibilité des données et des fonctionnalités.
Voici un résumé des principaux aspects de la sécurité des applications sur cette plateforme :
Développement sécurisé :
Azure fournit des outils et des bonnes pratiques pour intégrer la sécurité dès les phases initiales
du développement d'une application, telles que la sécurisation du code, les revues de sécurité et
l'utilisation de modèles sécurisés.
Gestion des identités et des accès :
Azure Active Directory (Azure AD) permet une gestion centralisée des identités et des accès,
facilitant une authentification sécurisée et la gestion des autorisations pour les utilisateurs et les
services.
Protection des données :
Le chiffrement des données au repos et en transit est pris en charge par Azure, offrant des
options pour protéger les données sensibles contre les accès non autorisés.
Contrôles d'accès basés sur les rôles (RBAC) :
Azure utilise RBAC pour attribuer des autorisations granulaires aux utilisateurs, permettant de
limiter l'accès aux ressources et fonctionnalités de l'application en fonction des besoins spécifiques.
Sécurité réseau :
Les groupes de sécurité réseau (NSG) et les solutions comme Azure Firewall offrent une défense
contre les menaces réseau en contrôlant le trafic entrant et sortant vers l'application.
Détection et réponse aux incidents :
Azure Security Center surveille les menaces potentielles et fournit des alertes pour permettre
une réponse rapide aux incidents de sécurité, tout en offrant des recommandations pour améliorer la
sécurité de l'application.
Conformité et gouvernance :
Azure propose des services et des certifications de conformité pour aider les organisations à
respecter les exigences réglementaires et les standards de sécurité, comme ISO, SOC, GDPR, etc.
Protection contre les attaques DDoS :
Les services Azure incluent des protections contre les attaques par déni de service distribué
(DDoS), garantissant la disponibilité continue des applications même face à des attaques
volumétriques.
En conclusion, sécuriser les applications sur Azure nécessite une approche holistique intégrant la
sécurité à chaque étape du cycle de vie des applications, en utilisant les outils et les fonctionnalités
de sécurité avancés offerts par la plateforme pour minimiser les risques et assurer une protection
robuste contre les menaces actuelles et émergentes.
Module 7: Conformité et gestion des politiques :
La conformité et la gestion des politiques sur Azure sont facilitées par deux principaux services :
Azure Policy et Azure Blueprints, chacun jouant un rôle crucial dans l'assurance de la conformité et la
gestion efficace des environnements cloud.
Azure Policy :
o Définition et application de politiques : Azure Policy permet aux organisations de
définir et d'appliquer des règles de conformité et de sécurité pour les ressources
Azure. Ces politiques peuvent être basées sur des critères tels que la sécurité, la
gouvernance et la conformité réglementaire.
o Enforcement automatique : Une fois définies, les politiques sont appliquées de
manière automatique et continue. Cela garantit que toutes les nouvelles ressources
déployées respectent les exigences définies.
o Audit et remédiation : Azure Policy offre des capacités d'audit pour vérifier la
conformité des ressources existantes et des mécanismes de remédiation pour
corriger les violations détectées.
Azure Blueprints :
o Modèles de déploiement standardisés : Azure Blueprints permet aux organisations
de créer des environnements cloud préconfigurés qui respectent les exigences de
conformité spécifiques. Ces modèles incluent des définitions de ressources Azure,
des groupes de ressources, des réseaux, des rôles et des politiques.
o Gestion du cycle de vie : Les Blueprints facilitent la gestion du cycle de vie des
environnements cloud en permettant des mises à jour et des modifications
cohérentes et contrôlées.
o Conformité continue : En intégrant Azure Policy dans les Blueprints, les organisations
peuvent garantir une conformité continue et automatisée à travers tous les
environnements Azure déployés à partir de ces modèles.
En résumé, Azure Policy et Azure Blueprints sont des outils essentiels pour la conformité et la gestion
des politiques sur Azure. Ils offrent aux organisations les moyens de définir, d'appliquer et de
maintenir des normes de sécurité et de gouvernance cohérentes à travers leurs environnements
cloud, tout en facilitant l'automatisation et l'audit continu pour assurer la conformité réglementaire
et interne.