Base de référence de la sécurité Azure pour Functions

Cette base de référence de sécurité applique les conseils du benchmark de sécurité cloud Microsoft version 1.0 à Functions. Le Benchmark de sécurité Microsoft Cloud fournit des recommandations sur la façon dont vous pouvez sécuriser vos solutions cloud sur Azure. Le contenu est regroupé selon les contrôles de sécurité définis par le benchmark de sécurité cloud Microsoft et les conseils associés applicables à Functions.

Vous pouvez superviser cette base de référence de la sécurité et ses recommandations en utilisant Microsoft Defender pour le cloud. Azure Policy définitions sont répertoriées dans la section Conformité réglementaire de la page Microsoft Defender pour le portail cloud.

Lorsqu’une fonctionnalité a des définitions de Azure Policy pertinentes, elles sont répertoriées dans cette base de référence pour vous aider à mesurer la conformité avec les contrôles et recommandations du benchmark de sécurité cloud Microsoft. Certaines recommandations peuvent nécessiter un plan de Microsoft Defender payant pour activer certains scénarios de sécurité.

Notes

Les fonctionnalités non applicables à Functions ont été exclues. Pour voir comment Functions est entièrement mappé au benchmark de sécurité cloud Microsoft, consultez le fichier de mappage complet de la base de référence de sécurité Functions.

Profil de sécurité

Le profil de sécurité résume les comportements à fort impact de Functions, ce qui peut entraîner des considérations de sécurité accrues.

Attribut de comportement du service Valeur
Catégorie de produit Calcul, Web
Le client peut accéder à HOST/OS Aucun accès
Le service peut être déployé dans le réseau virtuel du client True
Stocke le contenu client au repos True

Sécurité du réseau

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Sécurité réseau.

NS-1 : Établir des limites de segmentation réseau

Fonctionnalités

Intégration du réseau virtuel

Description : Le service prend en charge le déploiement dans le Réseau virtuel privé (VNet) du client. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True False Client

Conseils de configuration : Déployez le service dans un réseau virtuel. Attribuez des adresses IP privées à la ressource (le cas échéant), sauf s’il existe une raison forte d’affecter des adresses IP publiques directement à la ressource.

Remarque : les fonctionnalités réseau sont exposées par le service, mais doivent être configurées pour l’application. Par défaut, l’accès au réseau public est autorisé.

Référence : options de mise en réseau Azure Functions

Prise en charge des groupes de sécurité réseau

Description : Le trafic réseau de service respecte l’attribution de règles groupes de sécurité réseau sur ses sous-réseaux. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True False Client

Conseils de configuration : Utilisez des groupes de sécurité réseau (NSG) pour restreindre ou surveiller le trafic par port, protocole, adresse IP source ou adresse IP de destination. Créez des règles NSG pour restreindre les ports ouverts de votre service (par exemple, pour empêcher l’accès aux ports de gestion à partir de réseaux non approuvés). N’oubliez pas que par défaut, les groupes de sécurité réseau refusent tout le trafic entrant, mais autorisent le trafic provenant du réseau virtuel et d’équilibreurs de charge Azure.

Référence : options de mise en réseau Azure Functions

NS-2 : Sécuriser les services cloud avec des contrôles réseau

Fonctionnalités

Description : Fonctionnalité de filtrage IP native du service pour le filtrage du trafic réseau (à ne pas confondre avec le groupe de sécurité réseau ou Pare-feu Azure). Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True False Client

Conseils de configuration : Déployez des points de terminaison privés pour toutes les ressources Azure qui prennent en charge la fonctionnalité Private Link, afin d’établir un point d’accès privé pour les ressources.

Référence : options de mise en réseau Azure Functions

Désactiver l’accès public au réseau

Description : le service prend en charge la désactivation de l’accès au réseau public à l’aide d’une règle de filtrage de liste de contrôle d’accès IP au niveau du service (pas de groupe de sécurité réseau ou de Pare-feu Azure) ou à l’aide d’un commutateur bascule « Désactiver l’accès réseau public ». Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True False Client

Remarques sur les fonctionnalités : Azure Functions peuvent être configurés avec des points de terminaison privés, mais il n’existe actuellement pas de bouton bascule unique pour désactiver l’accès au réseau public en l’absence de configuration des points de terminaison privés.

Conseils de configuration : Désactivez l’accès au réseau public à l’aide de la règle de filtrage de liste de contrôle d’accès IP au niveau du service ou d’un commutateur bascule pour l’accès au réseau public.

Gestion des identités

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Gestion des identités.

IM-1 : utiliser le système centralisé d’identité et d’authentification

Fonctionnalités

Azure AD Authentication requis pour l’accès au plan de données

Description : Le service prend en charge l’utilisation de l’authentification Azure AD pour l’accès au plan de données. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True False Client

Remarques sur les fonctionnalités : les points de terminaison appartenant au client peuvent être configurés pour exiger des exigences d’authentification Azure AD. Les points de terminaison fournis par le système pour les opérations de déploiement et les outils de développement avancés prennent en charge Azure AD, mais ont par défaut la possibilité d’utiliser les informations d’identification de publication. Ces informations d’identification de publication peuvent être désactivées. Certains points de terminaison de plan de données sur l’application peuvent être accessibles par des clés d’administration configurées dans l’hôte Functions, et ils ne sont pas configurables avec les exigences d’Azure AD pour le moment.

Conseils de configuration : Utilisez Azure Active Directory (Azure AD) comme méthode d’authentification par défaut pour contrôler l’accès à votre plan de données.

Référence : Configurer les informations d’identification de déploiement - désactiver l’authentification de base

Méthodes d’authentification locales pour l’accès au plan de données

Description : méthodes d’authentification locale prises en charge pour l’accès au plan de données, telles qu’un nom d’utilisateur et un mot de passe locaux. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True True Microsoft

Remarques de fonctionnalité : les informations d’identification de déploiement sont créées par défaut, mais elles peuvent être désactivées. Certaines opérations exposées par le runtime d’application peuvent être effectuées à l’aide d’une clé d’administration, qui ne peut pas être désactivée actuellement. Cette clé peut être stockée dans Azure Key Vault, et régénérée à tout moment. Évitez l’utilisation de comptes ou de méthodes d’authentification locaux. Ceux-ci doivent être désactivés dans la mesure du possible. Utilisez plutôt Azure AD pour vous authentifier si possible.

Conseils de configuration : Aucune configuration supplémentaire n’est requise, car elle est activée sur un déploiement par défaut.

Référence : Désactiver l’authentification de base

IM-3 : gérer les identités d’application de façon sécurisée et automatique

Fonctionnalités

Identités managées

Description : les actions de plan de données prennent en charge l’authentification à l’aide d’identités managées. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Utilisez des identités managées Azure au lieu des principaux de service lorsque cela est possible, ce qui peut s’authentifier auprès des services et ressources Azure qui prennent en charge l’authentification Azure Active Directory (Azure AD). La plateforme assure entièrement la gestion, la rotation et la protection des informations d’identification d’identité managée, ce qui évite les informations d’identification codées en dur dans le code source ou les fichiers de configuration.

Référence : Utilisation des identités managées pour les App Service et les Azure Functions

Principaux de service

Description : Le plan de données prend en charge l’authentification à l’aide de principaux de service. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Il n’existe aucune aide Microsoft actuelle pour cette configuration de fonctionnalité. Vérifiez et déterminez si votre organization souhaite configurer cette fonctionnalité de sécurité.

Surveillance de Microsoft Defender pour le cloud

Définitions intégrées à Azure Policy - Microsoft.Web :

Nom
(Portail Azure)
Description Effet(s) Version
(GitHub)
Les applications App Service doivent utiliser une identité managée Utiliser une identité managée pour renforcer la sécurité de l’authentification AuditIfNotExists, Désactivé 3.0.0

IM-7 : restreindre l’accès aux ressources en fonction des conditions

Fonctionnalités

Accès conditionnel pour le plan de données

Description : L’accès au plan de données peut être contrôlé à l’aide de stratégies d’accès conditionnel Azure AD. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques de fonctionnalité : Pour les points de terminaison de plan de données qui ne sont pas définis par l’application, l’accès conditionnel doit être configuré par rapport à Azure Service Management.

Conseils de configuration : Définissez les conditions et les critères applicables pour l’accès conditionnel Azure Active Directory (Azure AD) dans la charge de travail. Considérez des cas d’usage courants tels que le blocage ou l’octroi de l’accès à partir d’emplacements spécifiques, le blocage du comportement de connexion à risque ou l’exigence d’appareils gérés organization pour des applications spécifiques.

IM-8 : restreindre l’exposition des informations d’identification et des secrets

Fonctionnalités

Prise en charge de l’intégration et du stockage des informations d’identification et des secrets de service dans Azure Key Vault

Description : Le plan de données prend en charge l’utilisation native d’Azure Key Vault pour le magasin d’informations d’identification et de secrets. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Assurez-vous que les secrets et les informations d’identification sont stockés dans des emplacements sécurisés tels qu’Azure Key Vault, au lieu de les incorporer dans des fichiers de code ou de configuration.

Référence : utiliser des références Key Vault pour App Service et Azure Functions

Accès privilégié

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Accès privilégié.

PA-1 : Séparer et limiter les utilisateurs hautement privilégiés/administratifs

Fonctionnalités

Comptes Administration locaux

Description : Le service a le concept d’un compte d’administration local. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
False Non applicable Non applicable

Conseils de configuration : cette fonctionnalité n’est pas prise en charge pour sécuriser ce service.

PA-7 : Suivre le principe JEA, Just Enough Administration (privilège minimum)

Fonctionnalités

RBAC Azure pour le plan de données

Description : Azure Role-Based Access Control (Azure RBAC) peut être utilisé pour gérer l’accès aux actions de plan de données du service. Plus d’informations

Prise en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques sur les fonctionnalités : les seules actions de plan de données qui peuvent tirer parti du RBAC Azure sont les points de terminaison Kudu/SCM/deployment. Celles-ci nécessitent une autorisation sur l’opération Microsoft.Web/sites/publish/Action . Les points de terminaison exposés par l’application cliente elle-même ne sont pas couverts par Azure RBAC.

Conseils de configuration : Utilisez le contrôle d’accès en fonction du rôle Azure (Azure RBAC) pour gérer l’accès aux ressources Azure via des attributions de rôles intégrées. Les rôles RBAC Azure peuvent être attribués à des utilisateurs, des groupes, des principaux de service et des identités managées.

Référence : Autorisations RBAC requises pour accéder à Kudu

PA-8 : Déterminer le processus d’accès pour la prise en charge du fournisseur de services cloud

Fonctionnalités

Customer Lockbox

Description : Customer Lockbox peut être utilisé pour l’accès au support Microsoft. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Dans les scénarios de support dans lesquels Microsoft doit accéder à vos données, utilisez Customer Lockbox pour passer en revue, puis approuver ou rejeter chacune des demandes d’accès aux données de Microsoft.

Protection des données

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Protection des données.

DP-2 : surveiller les anomalies et les menaces ciblant les données sensibles

Fonctionnalités

Protection contre les fuites/pertes de données

Description : Le service prend en charge la solution DLP pour surveiller le déplacement des données sensibles (dans le contenu du client). Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
False Non applicable Non applicable

Conseils de configuration : cette fonctionnalité n’est pas prise en charge pour sécuriser ce service.

DP-3 : chiffrer les données sensibles en transit

Fonctionnalités

Chiffrement des données en transit

Description : Le service prend en charge le chiffrement des données en transit pour le plan de données. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques sur les fonctionnalités : les applications de fonction sont créées par défaut pour prendre en charge TLS 1.2 comme version minimale, mais une application peut être configurée avec une version inférieure via un paramètre de configuration. Le protocole HTTPS n'est pas exigé par défaut pour les demandes entrantes, mais cela peut également être défini via un paramètre de configuration ; dans ce cas, toute demande HTTP sera automatiquement redirigée pour utiliser le protocole HTTPS.

Conseils de configuration : Activez le transfert sécurisé dans les services où une fonctionnalité de chiffrement des données en transit native est intégrée. Appliquez HTTPS sur toutes les applications et services web et assurez-vous que TLS v1.2 ou version ultérieure est utilisé. Les versions héritées telles que SSL 3.0 et TLS v1.0 doivent être désactivées. Pour la gestion à distance de Machines Virtuelles, utilisez SSH (pour Linux) ou RDP/TLS (pour Windows) au lieu d’un protocole non chiffré.

Référence : Ajouter et gérer des certificats TLS/SSL dans Azure App Service

Surveillance de Microsoft Defender pour le cloud

Définitions intégrées à Azure Policy - Microsoft.Web :

Nom
(Portail Azure)
Description Effet(s) Version
(GitHub)
Les applications App Service doivent être accessibles uniquement via HTTPS L'utilisation de HTTPS garantit l'authentification du serveur/service, et protège les données en transit contre les attaques par écoute clandestine de la couche réseau. Audit, Désactivé, Refus 4.0.0

DP-4 : activer le chiffrement des données au repos par défaut

Fonctionnalités

Chiffrement des données au repos à l’aide de clés de plateforme

Description : Le chiffrement des données au repos à l’aide de clés de plateforme est pris en charge, tout contenu client au repos est chiffré avec ces clés gérées par Microsoft. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True True Microsoft

Conseils de configuration : Aucune configuration supplémentaire n’est requise, car elle est activée sur un déploiement par défaut.

DP-5 : utiliser l’option de clé gérée par le client dans le chiffrement des données au repos si nécessaire

Fonctionnalités

Chiffrement des données au repos à l’aide de CMK

Description : Le chiffrement des données au repos à l’aide de clés gérées par le client est pris en charge pour le contenu client stocké par le service. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques sur les fonctionnalités : Azure Functions ne prend pas directement en charge cette fonctionnalité, mais une application peut être configurée pour tirer parti des services qui le font, à la place de tout stockage de données possible dans Functions. Azure Files peuvent être montés en tant que système de fichiers, tous les paramètres d’application, y compris les secrets, peuvent être stockés dans Azure Key Vault, et les options de déploiement telles que l’exécution à partir du package peuvent extraire du contenu du Stockage Blob Azure.

Conseils de configuration : si nécessaire pour la conformité réglementaire, définissez le cas d’usage et l’étendue du service où le chiffrement à l’aide de clés gérées par le client est nécessaire. Activez et implémentez le chiffrement des données au repos à l’aide de la clé gérée par le client dans ces services.

Référence : Chiffrer vos données d’application au repos à l’aide de clés gérées par le client

DP-6 : Utiliser un processus sécurisé de gestion de clés

Fonctionnalités

Gestion des clés dans Azure Key Vault

Description : Le service prend en charge l’intégration d’Azure Key Vault pour les clés client, les secrets ou les certificats. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Utilisez Azure Key Vault pour créer et contrôler le cycle de vie de vos clés de chiffrement, y compris la génération, la distribution et le stockage des clés. Faire pivoter et révoquer vos clés dans Azure Key Vault et votre service en fonction d’une planification définie ou en cas de retrait ou de compromission de clé. Lorsqu’il est nécessaire d’utiliser une clé gérée par le client (CMK) au niveau de la charge de travail, du service ou de l’application, veillez à suivre les meilleures pratiques pour la gestion des clés : utilisez une hiérarchie de clés pour générer une clé de chiffrement de données distincte (DEK) avec votre clé de chiffrement de clé (KEK) dans votre coffre de clés. Vérifiez que les clés sont inscrites auprès d’Azure Key Vault et référencées via des ID de clé à partir du service ou de l’application. Si vous devez apporter votre propre clé (BYOK) dans le service (par exemple, importer des clés protégées par HSM à partir de vos HSM locaux dans Azure Key Vault), suivez les instructions recommandées pour effectuer la génération et le transfert de clés initiaux.

Référence : utiliser des références Key Vault pour App Service et Azure Functions

DP-7 : utiliser un processus de gestion des certificats sécurisé

Fonctionnalités

Gestion des certificats dans Azure Key Vault

Description : Le service prend en charge l’intégration d’Azure Key Vault pour tous les certificats clients. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Utilisez Azure Key Vault pour créer et contrôler le cycle de vie des certificats, y compris la création, l’importation, la rotation, la révocation, le stockage et la purge du certificat. Assurez-vous que la génération de certificat respecte des normes définies sans utiliser de propriétés non sécurisées, telles que : taille de clé insuffisante, période de validité trop longue, chiffrement non sécurisé. Configurez la rotation automatique du certificat dans Azure Key Vault et le service Azure (s’il est pris en charge) en fonction d’une planification définie ou en cas d’expiration du certificat. Si la rotation automatique n’est pas prise en charge dans l’application, vérifiez qu’elles sont toujours pivotées à l’aide de méthodes manuelles dans Azure Key Vault et l’application.

Référence : Ajouter un certificat TLS/SSL dans Azure App Service

Gestion des ressources

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Gestion des ressources.

AM-2 : Utiliser uniquement des services approuvés

Fonctionnalités

Prise en charge d’Azure Policy

Description : Les configurations de service peuvent être surveillées et appliquées via Azure Policy. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Utilisez Microsoft Defender pour le cloud pour configurer Azure Policy afin d’auditer et d’appliquer des configurations de vos ressources Azure. Utilisez Azure Monitor pour créer des alertes en cas d’écart de configuration détecté sur les ressources. Utilisez les effets Azure Policy [refuser] et [déployer s’il n’existe pas] pour appliquer une configuration sécurisée sur les ressources Azure.

Journalisation et détection des menaces

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Journalisation et détection des menaces.

LT-1 : activer les fonctionnalités de détection des menaces

Fonctionnalités

Microsoft Defender pour les offres de services/produits

Description : le service dispose d’une solution de Microsoft Defender spécifique à l’offre pour surveiller et alerter sur les problèmes de sécurité. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques sur les fonctionnalités : Defender pour App Service inclut Azure Functions. Si cette solution est activée, les applications de fonction sous l’étendue d’activation sont incluses.

Conseils de configuration : Utilisez Azure Active Directory (Azure AD) comme méthode d’authentification par défaut pour contrôler l’accès à votre plan de gestion. Lorsque vous recevez une alerte de Microsoft Defender pour Key Vault, examinez l’alerte et y répondez.

Référence : Defender pour App Service

LT-4 : Activer la journalisation pour l’examen de sécurité

Fonctionnalités

Journaux des ressources Azure

Description : le service produit des journaux de ressources qui peuvent fournir des métriques et une journalisation améliorées spécifiques au service. Le client peut configurer ces journaux de ressources et les envoyer à son propre récepteur de données, comme un compte de stockage ou un espace de travail Log Analytics. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Conseils de configuration : Activez les journaux de ressources pour le service. Par exemple, Key Vault prend en charge des journaux de ressources supplémentaires pour les actions qui obtiennent un secret à partir d’un coffre de clés ou Azure SQL a des journaux de ressources qui effectuent le suivi des demandes adressées à une base de données. Le contenu des journaux de ressources varie en fonction du service Azure et du type de ressource.

Référence : Supervision Azure Functions avec les journaux Azure Monitor

Sauvegarde et récupération

Pour plus d’informations, consultez le benchmark de sécurité cloud Microsoft : Sauvegarde et récupération.

BR-1 : Garantir des sauvegardes automatiques régulières

Fonctionnalités

Sauvegarde Azure

Description : le service peut être sauvegardé par le service Sauvegarde Azure. Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
False Non applicable Non applicable

Remarques sur les fonctionnalités : une fonctionnalité de sauvegarde d’une application est disponible si elle est hébergée sur un plan standard, Premium ou isolé App Service. Cette fonctionnalité ne tire pas parti de Sauvegarde Azure et n’inclut pas les sources d’événements ni le stockage lié en externe. Pour plus d’informations, consultez /azure/app-service/manage-backup.

Conseils de configuration : cette fonctionnalité n’est pas prise en charge pour sécuriser ce service.

Fonctionnalité de sauvegarde native du service

Description : le service prend en charge sa propre fonctionnalité de sauvegarde native (s’il n’utilise pas Sauvegarde Azure). Plus d’informations

Pris en charge Activé par défaut Responsabilité de la configuration
True Faux Client

Remarques sur les fonctionnalités : une fonctionnalité de sauvegarde est disponible pour les applications s’exécutant sur des plans de App Service Standard, Premium et Isolé. Cela n’inclut pas la sauvegarde des sources d’événements ou du stockage fourni en externe.

Conseils de configuration : Il n’existe aucune aide Microsoft actuelle pour cette configuration de fonctionnalité. Vérifiez et déterminez si votre organization souhaite configurer cette fonctionnalité de sécurité.

Référence : Sauvegarder et restaurer votre application dans Azure App Service

Étapes suivantes