Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article fournit des informations qui vous permettent :
- de comprendre les avantages de l'hébergement d'application dans le cloud pour la sécurité ;
- d'évaluer les avantages de la plateforme en tant que service (PaaS) et autres modèles de service cloud pour la sécurité ;
- Changer l'orientation de votre sécurité, d'une approche centrée sur le réseau à une approche centrée sur l'identité pour la sécurité périmétrique.
- Mettre en œuvre les meilleures pratiques générales de sécurité PaaS
Développer des applications sécurisées sur Azure est un guide général des questions de sécurité et des contrôles que vous devez prendre en compte à chaque phase du cycle de vie du développement logiciel lors du développement d’applications pour le cloud.
Avantages du cloud en matière de sécurité
Il est important de comprendre la répartition des responsabilités entre vous et Microsoft. Sur site, vous êtes propriétaire de l’ensemble de l'infrastructure, mais lorsque vous passez au cloud, certaines responsabilités sont transférées à Microsoft.
Le cloud offre des avantages en matière de sécurité. Dans un environnement sur site, les organisations ont probablement des responsabilités non remplies et des ressources limitées à investir dans la sécurité. Cette situation crée un environnement où les attaquants peuvent exploiter les vulnérabilités à tous les niveaux.
Les organisations peuvent améliorer leurs temps de détection et de réponse des menaces à l’aide des fonctionnalités de sécurité basées sur le cloud d’un fournisseur et de l’intelligence cloud. En transférant les responsabilités au fournisseur de cloud, les organisations peuvent optimiser leur couverture de sécurité, ce qui leur permet de réaffecter des ressources de sécurité et leur budget à d'autres priorités de l’entreprise.
Avantages d'un modèle de service cloud PaaS en matière de sécurité
Examinez les avantages de sécurité d’un déploiement PaaS Azure par rapport à un déploiement sur site.
En commençant par le premier élément, l’infrastructure physique, Microsoft réduit les risques courants et les responsabilités. Parce que Microsoft surveille continuellement le cloud Microsoft, il est difficile de l'attaquer. Un attaquant n’a aucun intérêt à choisir le cloud Microsoft comme cible. À moins que l’attaquant ne dispose de beaucoup d’argent et de ressources, il est susceptible de passer à une autre cible.
Au milieu de la pile, un déploiement PaaS et un déploiement sur site ne diffèrent pas. Au niveau applicatif et à la couche de gestion des comptes et des accès, des risques similaires existent. La section suivante de cet article vous guide vers les meilleures pratiques pour éliminer ou minimiser ces risques.
En haut de l'infrastructure (gouvernance des données et gestion des droits), vous prenez un risque que la gestion des clés peut atténuer. Bien que la gestion des clés soit une responsabilité supplémentaire, un déploiement PaaS inclut des domaines que vous n’avez plus à gérer. Vous pouvez transférer vos ressources à la gestion clé.
La plateforme Azure offre également une protection DDoS forte à l’aide de diverses technologies basées sur le réseau. Toutefois, tous les types de méthodes de protection contre le déni de service distribué (DDoS) basée sur le réseau ont leurs limites par lien et par centre de données. Pour éviter l’impact d’attaques DDoS de grande envergure, vous pouvez tirer parti des capacités cloud de base d’Azure afin de rapidement et automatiquement faire un scale-out qui vous protège contre les attaques DDoS.
Identité en tant que périmètre de sécurité principal
Les déploiements PaaS modifient votre approche globale de la sécurité. Vous n'avez pas besoin de tout contrôler vous-même et partagez la responsabilité avec Microsoft.
Une autre différence significative entre les déploiements PaaS et locaux traditionnels est une nouvelle vue de ce qui définit le périmètre de sécurité principal. Historiquement, le principal périmètre de sécurité sur site était votre réseau et la plupart des conceptions de sécurité sur site utilisent le réseau comme pivot de sécurité principal. Pour les déploiements PaaS, considérez l’identité comme le principal périmètre de sécurité.
L'une des cinq caractéristiques essentielles du cloud computing est un large accès au réseau, ce qui rend l'approche centrée sur le réseau moins pertinente. Le cloud computing a en grande partie pour but de permettre aux utilisateurs d’accéder à des ressources, quel que soit leur emplacement. Pour la plupart des utilisateurs, leur localisation se trouve quelque part sur Internet.
La figure suivante montre comment le périmètre de sécurité a évolué, passant d’un périmètre réseau à un périmètre d’identité. La sécurité se résume moins à la protection de votre réseau et plus à la défense de vos données, ainsi qu'à la gestion de la sécurité de vos applications et de vos utilisateurs. La principale différence est que vous pouvez axer la sécurité sur ce qui est important pour votre entreprise.
Initialement, les services PaaS Azure (par exemple, Azure App Service et Azure SQL) n’ont fourni que peu ou pas de défenses de périmètre réseau traditionnelles. Le but de cet élément était d'être exposé à Internet (rôle web), et l'authentification fournit le nouveau périmètre (par exemple, Azure SQL).
Les pratiques de sécurité modernes supposent que l’adversaire a franchi le périmètre du réseau. Par conséquent, les pratiques modernes de défense se tournent vers l’identité. Les organisations doivent établir un périmètre de sécurité basé sur l’identité avec une authentification forte et une hygiène d’autorisation.
Meilleures pratiques pour la gestion des identités
Utilisez les meilleures pratiques suivantes pour gérer le périmètre d’identité.
Bonnes pratiques : Premièrement, envisagez d’utiliser des identités gérées pour les ressources Azure afin d’accéder en toute sécurité à d’autres services sans stocker les identifiants. Détails : Les identités gérées fournissent automatiquement une identité aux applications fonctionnant dans les services Azure, ce qui leur permet de s’authentifier auprès de services supportant Microsoft Entra ID sans nécessiter d’identifiants dans le code ou les fichiers de configuration. Cette identité réduit le risque d’exposition des identifiants et simplifie la gestion de l’identité pour vos applications.
Bonne pratique : sécurisez vos clés et informations d’identification pour sécuriser votre déploiement PaaS. Détail : La perte de clés ou d'informations d’identification est un problème courant. Vous pouvez utiliser une solution centralisée où vous stockez les clés et les secrets dans des modules de sécurité matériels (HSM). Azure Key Vault protège vos clés et secrets en chiffreant les clés d’authentification, les clés de compte de stockage, les clés de chiffrement des données, les fichiers .pfx et les mots de passe en utilisant des clés protégées par les HSM.
Bonne pratique : ne placez pas vos informations d’identification et autres secrets dans le code source ni GitHub. Détail : la seule chose qui est pire que la perte de vos clés et informations d’identification serait qu’un tiers non autorisé y accède. Des pirates peuvent tirer parti de technologies de robot pour rechercher les clés et les secrets stockés dans des référentiels de code, tels que GitHub. Ne mettez pas de clés et de secrets dans ces dépôts de code publics.
Bonne pratique : utilisez une authentification forte et des plateformes d’autorisation. Détail : Utilisez l’ID Microsoft Entra pour l’authentification au lieu des magasins d’utilisateurs personnalisés. Lorsque vous utilisez Microsoft Entra ID, vous tirez parti d’une approche basée sur la plateforme et déléguer la gestion des identités autorisées. Une approche Microsoft Entra ID est particulièrement importante lorsque les employés sont arrêtés et que les informations doivent être reflétées via plusieurs systèmes d’identité et d’autorisation.
Utilisez les mécanismes d‘authentification et d‘autorisation fournis par les plateformes au lieu d‘un code personnalisé. La raison est que le développement d'un code d’authentification personnalisé peut être sujet aux erreurs. La plupart de vos développeurs ne sont pas des experts en sécurité et sont peu susceptibles de connaître les subtilités et les dernières avancées en authentification et autorisation. Le code commercial (par exemple, de Microsoft) est souvent très contrôlé en ce qui concerne la sécurité.
Utilisez l’authentification multifacteur (MFA) et assurez-vous que les méthodes MFA résistantes au phishing – telles que les clés d’accès, FIDO2 ou l’authentification basée sur certificat (CBA) – sont appliquées via des politiques d’accès conditionnel. Au minimum, exigez-les pour tous les administrateurs, et pour une sécurité optimale, implémentez-les à l’échelle du locataire. L’accès aux interfaces de gestion Azure (portail/PowerShell distante) et aux services orientés client doit être conçu et configuré pour utiliser l’authentification multifacteur Microsoft Entra.
Pour la connexion à l’application, utilisez OpenID Connect (OIDC) avec OAuth 2.0 via Microsoft Entra ID. Ces protocoles sont largement évalués par les pairs et sont probablement mis en œuvre dans les bibliothèques de votre plateforme pour l’authentification et l’autorisation.
Utiliser la modélisation des menaces lors de la conception d’une application
Microsoft Security Development Lifecycle spécifie que les équipes doivent s’engager dans un processus appelé modélisation des menaces pendant la phase de conception. Pour faciliter ce processus, Microsoft a créé l’outil de modélisation des menaces SDL. La modélisation de la conception de l’application et l’énumération des menaces STRIDE au-delà des limites d’approbation peuvent intercepter des erreurs de conception dès le début.
Le tableau suivant répertorie les menaces STRIDE et donne des exemples d’atténuation des risques que les fonctionnalités Azure utilisent. Ces atténuations ne fonctionnent pas dans tous les cas.
| Menace | Propriété de sécurité | Atténuations potentielles pour la plateforme Azure |
|---|---|---|
| Usurpation d’identité | Authentification | Exigez des connexions HTTPS. |
| Manipulation | Intégrité | Validez des certificats TLS/SSL. |
| Répudiation | Non-répudiation | Activez la supervision et les diagnostics Azure. |
| Divulgation d’informations | Confidentialité | Chiffrez les données sensibles au repos à l’aide de certificats de service. |
| Denial of service (déni de service) | Disponibilité | Surveillez les mesures de performances pour des conditions potentielles de déni de service. Implémentez des filtres de connexion. |
| Élévation de privilège | Autorisation | Utilisez Privileged Identity Management. |
Azure App Service
Azure App Service est une offre PaaS qui vous aide à créer des applications web et mobiles pour n’importe quelle plateforme ou appareil et à vous connecter aux données partout, dans le cloud ou sur site. App Service inclut les fonctionnalités web et mobiles qui étaient précédemment fournies séparément dans Sites Web Azure et Azure Mobile Services. Il inclut également de nouvelles fonctionnalités d’automatisation des processus d’entreprise et d’hébergement d’API cloud.
Utilisez les meilleures pratiques suivantes pour les services d’applications.
Bonne pratique : Authentifiez-vous auprès de Microsoft Entra ID. Détail : App Service fournit un service OAuth 2.0 pour votre fournisseur d’identité. OAuth 2.0 privilégie la simplicité du développement client tout en fournissant des flux d’autorisation spécifiques pour les applications web, les applications de bureau et les téléphones mobiles. Microsoft Entra ID utilise OAuth 2.0 pour vous permettre d’autoriser l’accès aux applications mobiles et web.
Bonne pratique : Restreindre l’accès en fonction des principes du besoin de connaître et du privilège minimum. Détail : La restriction de l’accès est indispensable pour les organisations qui veulent appliquer des stratégies de sécurité portant sur l’accès aux données. Vous pouvez utiliser Azure RBAC pour attribuer des autorisations aux utilisateurs, aux groupes et aux applications dans une certaine étendue.
Bonne pratique : Protégez vos clés. Détail : Azure Key Vault permet de protéger les clés de chiffrement et les secrets utilisés par les services et les applications cloud. Avec Key Vault, vous pouvez chiffrer les clés et les secrets (tels que les clés d’authentification, les clés de compte de stockage, les clés de chiffrement de données, les fichiers .PFX et les mots de passe) à l’aide de clés protégées par des modules de sécurité matériels (HSM). Pour une meilleure garantie, vous pouvez importer ou générer des clés HSM. Pour en savoir plus, consultez Azure Key Vault. Vous pouvez également utiliser Key Vault pour gérer vos certificats TLS avec renouvellement automatique.
Bonne pratique : Limitez les adresses IP source entrantes. Détail : App Service Environment propose une fonctionnalité d’intégration de réseau virtuel qui vous permet de limiter les adresses IP sources entrantes par le biais de groupes de sécurité réseau. Les réseaux virtuels vous permettent de placer des ressources Azure dans un réseau routable non-Internet auquel vous contrôlez l’accès. Pour en savoir plus, consultez Intégrer une application à un réseau virtuel Azure. Vous pouvez aussi utiliser un lien privé (point de terminaison privé) et désactiver le réseau public pour forcer la connexion réseau privée entre App Service et d’autres services.
Bonne pratique : appliquez le trafic HTTPS uniquement et exigez TLS 1.2 ou version ultérieure pour toutes les connexions. Désactivez l’accès FTP autant que possible. Si un transfert de fichiers est nécessaire, utilisez FTPS pour garantir des transferts sécurisés et chiffrés. Détail : la configuration de votre App Service pour accepter uniquement le trafic HTTPS garantit que les données sont chiffrées en transit, protégeant ainsi les informations sensibles contre l’interception. L’exigence de TLS 1.2 ou version ultérieure offre une sécurité plus forte contre les vulnérabilités trouvées dans les versions antérieures du protocole. La désactivation de FTP réduit le risque d’informations d’identification ou de données transmises non chiffrées. Si vous avez besoin de transfert de fichiers, activez uniquement le FTPS, qui chiffre à la fois les identifiants et les données pendant le transit.
Bonne pratique : supervisez l’état de sécurité de vos environnements App Service. Détail : Utilisez Microsoft Defender pour Cloud pour surveiller vos environnements App Service. Lorsque Defender pour le cloud identifie des failles de sécurité potentielles, il crée des recommandations qui vous guident tout au long du processus de configuration des contrôles nécessaires. Microsoft Defender pour App Service offre une protection contre les menaces pour vos ressources App Service.
Pour plus d’informations, consultez Microsoft Defender pour App Service.
Pare-feu d’application web
Les applications Web sont de plus en plus la cible d’attaques malveillantes qui exploitent des vulnérabilités connues. Les vulnérabilités courantes incluent les attaques par injection SQL et les attaques de scripting intersites. Prévenir de telles attaques dans le code applicatif peut être difficile et nécessiter une maintenance, des correctifs et une surveillance rigoureuses à de nombreuses couches de la topologie applicative. Un pare-feu centralisé d’applications web simplifie la gestion de la sécurité et offre une meilleure assurance aux administrateurs d’applications face aux menaces et intrusions. Une solution WAF peut également réagir plus rapidement à une menace de sécurité en mettant à jour une vulnérabilité connue à un emplacement central et en sécurisant chaque application web individuelle.
Le pare-feu d’applications web Azure (WAF) offre une protection centralisée de vos applications web contre les attaques et vulnérabilités courantes. WAF est disponible via Azure Application Gateway et Azure Front Door.
Protection DDoS
Azure offre deux principaux niveaux de protection DDoS : protection IP DDoS et protection réseau DDoS. Ces options couvrent différents scénarios et présentent des fonctionnalités et des tarifs distincts.
- Protection IP DDoS : mieux pour protéger des adresses IP publiques spécifiques, idéales pour les déploiements plus petits ou ciblés nécessitant une atténuation DDoS essentielle au niveau IP.
- Protection réseau DDoS : couvre l’ensemble des réseaux virtuels avec atténuation, analytique et intégration avancées ; adapté aux environnements plus volumineux ou d’entreprise nécessitant une sécurité plus large.
Choisissez DDoS IP Protection pour des cas ciblés et sensibles au coût. Sélectionnez la protection réseau DDoS pour une couverture complète et des fonctionnalités avancées.
DDoS Protection défend au niveau de la couche réseau (3/4). Pour la défense de couche application (7), ajoutez un WAF. Consultez la protection DDoS pour les applications.
Surveiller les performances des applications
Azure Monitor collecte, analyse et agit sur les données de télémétrie à partir de vos environnements cloud et locaux. Une stratégie de surveillance efficace permet d’identifier le fonctionnement détaillé des composants de votre application. Cette stratégie vous aide à augmenter votre temps de disponibilité en vous informant des problèmes critiques afin que vous puissiez les résoudre avant qu’ils ne deviennent des problèmes. Cette stratégie vous aide également à détecter les anomalies pouvant être liées à la sécurité.
Utilisez Application Insights pour surveiller la disponibilité, les performances et l’utilisation de votre application, qu’elle soit hébergée dans le cloud ou localement. En utilisant Application Insights, vous pouvez rapidement identifier et diagnostiquer les erreurs dans votre application sans attendre qu’un utilisateur ne les signale. Grâce aux informations recueillies, vous pouvez prendre des décisions avisées quant à la maintenance et à l’amélioration de votre application.
Application Insights dispose d’outils complets pour interagir avec les données qu’il collecte. Application Insights stocke ses données dans un référentiel commun. Il peut tirer parti des fonctionnalités partagées telles que les alertes, les tableaux de bord et une analyse approfondie grâce au langage de requête du service Kusto.
Effectuer des tests d’intrusion sécurisés
Le fait de valider les défenses de sécurité est aussi important que de tester toute autre fonctionnalité. Intégrez les tests d’intrusion à vos processus de génération et de déploiement. Planifiez régulièrement des tests de sécurité et des analyses de vulnérabilité sur les applications déployées, et surveillez les ports ouverts, les points de terminaison et les attaques.
Étapes suivantes
Cet article se concentre sur les avantages de sécurité d’un déploiement PaaS Azure et les meilleures pratiques de sécurité pour les applications cloud. Ensuite, découvrez les pratiques recommandées pour sécuriser vos solutions web et mobiles PaaS en utilisant des services Azure spécifiques. Commencez avec Azure App Service, Azure SQL Database, Azure Synapse Analytics et stockage Azure. À mesure que des articles sur les pratiques recommandées pour d’autres services Azure seront disponibles, cette liste fournira des liens :
Consultez Développer des applications sécurisées sur Azure pour les questions de sécurité et les contrôles que vous devez prendre en compte à chaque phase du cycle de vie du développement logiciel lors du développement d’applications pour le cloud.
Consultez l’article Bonnes pratiques et tendances Azure relatives à la sécurité pour découvrir d’autres bonnes pratiques en matière de sécurité à appliquer dans le cadre de la conception, du déploiement et de la gestion de vos solutions cloud avec Azure.
Les ressources suivantes fournissent des informations générales sur la sécurité Azure et les services Microsoft associés :
- Documentation de sécurité Azure - Conseils de sécurité complets.
- Centre d'intervention en matière de sécurité Microsoft - Signalez les vulnérabilités de sécurité Microsoft, y compris les problèmes avec Azure, par email à secure@microsoft.com.