Partager via


Sécurisation des déploiements PaaS

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é ;
  • de passer pour la sécurité d'une approche orientée réseau à une approche de sécurité de périmètre orientée identité ;
  • d'implémenter les bonnes pratiques recommandées de la sécurité de la 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.

Il existe des avantages en matière de sécurité pour être dans le cloud. Dans un environnement local, les organisations ont probablement des responsabilités non satisfaites et des ressources limitées disponibles pour investir dans la sécurité, ce qui crée un environnement où les attaquants peuvent exploiter des vulnérabilités à toutes les couches.

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é

Passons en revue les avantages d’un déploiement PaaS Azure en termes de sécurité par rapport à un déploiement local.

Les avantages d'une PaaS en matière de sécurité

En commençant par le premier élément, l’infrastructure physique, Microsoft réduit les risques courants et les responsabilités. Étant donné que le cloud Microsoft est surveillé en permanence par Microsoft, il est difficile à attaquer. Un attaquant n’a aucun intérêt à choisir le cloud Microsoft comme cible. À moins que le pirate informatique n'ait beaucoup d’argent et de ressources, il préfèrera passer à une autre cible.

Au milieu de l'infrastructure, il n’existe aucune différence entre un déploiement PaaS et un déploiement local. Les risques sont similaires dans les couches d'application et de gestion des accès et des comptes. Dans la section étapes suivantes de cet article, nous vous guiderons vers les meilleures pratiques pour éliminer ou réduire ces risques.

En haut de l'infrastructure (gouvernance des données et gestion des droits), vous prenez un risque qui peut être limité par la gestion de clés Bien que la gestion des clés soit une responsabilité supplémentaire, vous avez des zones dans un déploiement PaaS que vous n’avez plus à gérer afin de pouvoir déplacer les ressources vers la gestion des clés.

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

Avec les déploiements PaaS, un changement s'opère dans 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 périmètre de sécurité local principal était votre réseau et la plupart des conceptions de sécurité locales utilisent le réseau en tant que pivot de sécurité principal. Pour les déploiements PaaS, il est préférable de tenir compte de l’identité comme périmètre de sécurité principal.

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, l'emplacement est quelque part sur Internet.

La figure suivante montre comment le périmètre de sécurité a évolué d’un périmètre de réseau vers 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.

L'identité en tant que nouveau périmètre de sécurité

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. Il a été compris que l’objectif de l’élément était d’être exposé à Internet (rôle web) et que l’authentification fournit le nouveau périmètre (par exemple, Azure SQL).

Les pratiques de sécurité modernes partent du principe que l’adversaire a violé le périmètre du réseau. Par conséquent, les pratiques de défense modernes sont axées sur 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

Voici les bonnes pratiques en matière de gestion du périmètre d’identité.

Bonne pratique : vous devez d’abord envisager d’utiliser des identités managées pour les ressources Azure pour accéder en toute sécurité à d’autres services sans stocker d’informations d’identification. Détails : les identités managées fournissent automatiquement une identité pour les applications s’exécutant dans les services Azure, ce qui leur permet de s’authentifier auprès des services qui prennent en charge l’ID Microsoft Entra sans nécessiter d’informations d’identification dans le code ou les fichiers de configuration. Cela réduit le risque d’exposition des informations d’identification et simplifie la gestion des identités 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ù les clés et les secrets peuvent être stockés dans des modules de sécurité matériels (HSM). Azure Key Vault sauvegarde vos clés et vos secrets en chiffrant 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 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 placez pas de clés et de secrets dans ces référentiels 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 ont peu de chance d’être conscients des subtilités et des derniers développements dans les domaines de l’authentification et l’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 à l’hameçonnage (par exemple , passkeys, FIDO2 ou Certificate-Based Authentication) sont appliquées via des stratégies 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 ont été largement contrôlés et sont probablement implémentés dans le cadre de vos bibliothèques de 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 SDL de modélisation des menaces. 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.
Falsification 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 permet de créer des applications mobiles et web pour tout type d’appareil ou de plateforme, et de vous connecter à des données en tout lieu, dans le cloud ou localement. 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.

Voici les bonnes pratiques relatives à l’utilisation d’App Service.

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. En outre, vous pouvez également utiliser une liaison privée (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 si possible ; si le 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 le transfert de fichiers est nécessaire, activez uniquement FTPS, qui chiffre à la fois les informations d’identification 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. Parmi ces attaques, les attaques par injection SQL et les attaques par script intersite sont courantes. La prévention de ces attaques dans le code d’application peut être difficile et peut nécessiter une maintenance rigoureuse, une mise à jour corrective et une surveillance à de nombreuses couches de la topologie d’application. Un pare-feu d’applications web centralisé facilite grandement la gestion de la sécurité et offre une meilleure garantie de protection aux administrateurs de l’application contre les menaces ou les 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 protection IP DDoS pour les cas prioritaires et sensibles aux coûts ; sélectionnez 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. Elle vous permet d’augmenter votre temps d’activité en vous avertissant des problèmes critiques afin que vous puissiez les résoudre avant qu’ils ne deviennent effectifs. Elle vous aide également à détecter les anomalies susceptibles d’ê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

Dans cet article, nous avons vu les avantages d’un déploiement PaaS Azure et les bonnes pratiques en matière de sécurité relatives aux applications cloud. Découvrez ensuite les pratiques recommandées pour sécuriser vos solutions PaaS web et mobiles PaaS à l’aide de services Azure spécifiques. Nous allons commencer par Azure App Service, Azure SQL Database et Azure Synapse Analytics et Stockage Azure. Des liens seront fournis dans la liste suivante quand des articles sur les pratiques recommandées pour d’autres services Azure seront disponibles :

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 :