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.
Azure Container Apps fournit plusieurs fonctionnalités de sécurité intégrées qui vous aident à créer des applications conteneurisées sécurisées. Ce guide explore les principes de sécurité clés, notamment les identités managées, la gestion des secrets et le magasin de jetons, tout en fournissant des bonnes pratiques pour vous aider à concevoir des applications sécurisées et évolutives.
Identités managées
Les identités managées éliminent la nécessité de stocker les informations d’identification dans votre code ou configuration en fournissant une identité managée automatiquement dans l’ID Microsoft Entra. Les applications conteneur peuvent utiliser ces identités pour s’authentifier auprès de n’importe quel service prenant en charge l’authentification Microsoft Entra, telle qu’Azure Key Vault, Stockage Azure ou Azure SQL Database.
Types d’identités managées
Azure Container Apps prend en charge deux types d’identités managées :
Identité affectée par le système : créée et gérée automatiquement avec le cycle de vie de votre application conteneur. L’identité est supprimée lorsque votre application est supprimée.
Identité affectée par l’utilisateur : créée indépendamment et peut être affectée à plusieurs applications conteneur, ce qui permet le partage d’identité entre les ressources.
Avantages de sécurité des identités managées dans Azure Container Apps
- Élimine la nécessité de gérer et de faire pivoter les informations d’identification dans votre code d’application
- Réduit le risque d’exposition des informations d’identification dans les fichiers de configuration
- Fournit un contrôle d’accès affiné via Azure RBAC
- Prend en charge le principe du privilège minimum en accordant uniquement les autorisations nécessaires
Choisir entre les identités affectées par le système et les identités affectées par l’utilisateur
Utilisez des identités affectées par le système pour les charges de travail qui :
- Sont contenus dans une seule ressource
- Besoin d’identités indépendantes
Utilisez des identités affectées par l’utilisateur pour les charges de travail qui :
- Exécuter sur plusieurs ressources qui partagent une identité unique
- Besoin d’une pré-authentification pour sécuriser les ressources
Identité gérée pour le téléchargement d’images
Un modèle de sécurité courant utilise des identités managées pour extraire des images à partir de dépôts privés dans Azure Container Registry. Cette approche a les caractéristiques suivantes :
- Évite d’utiliser des informations d’identification administratives pour le Registre
- Fournit un contrôle d’accès affiné via le rôle ACRPull
- Prend en charge les identités attribuées par le système et par l'utilisateur
- Peut être contrôlé pour limiter l’accès à des conteneurs spécifiques
Pour en savoir plus sur la configuration d'une identité managée pour votre application, consultez Identités managées et Extraire une image depuis Azure Container Registry avec une identité managée.
Gestion des secrets
Azure Container Apps fournit des mécanismes intégrés pour stocker et accéder en toute sécurité aux valeurs de configuration sensibles telles que les chaînes de connexion, les clés API et les certificats.
Fonctionnalités de gestion des secrets clés
- Isolation des secrets : limitez les secrets au niveau de l’application et isolez-les des révisions spécifiques.
- Références de variables d'environnement : exposez les secrets aux conteneurs en tant que variables d'environnement.
- Montages de volume : monter les secrets sous forme de fichiers dans des conteneurs.
- Intégration de Key Vault : référencer les secrets stockés dans Azure Key Vault.
Meilleures pratiques pour la gestion des secrets
- Évitez de stocker des secrets directement dans Container Apps pour les environnements de production.
- Utilisez l’intégration d’Azure Key Vault pour la gestion centralisée des secrets.
- Implémentez le privilège minimum lors de l’octroi de l’accès aux secrets.
- Utilisez des références secrètes dans des variables d’environnement au lieu de valeurs de codage en dur.
- Utilisez des montages de volume pour accéder aux secrets en tant que fichiers le cas échéant.
- Implémentez les bonnes pratiques de rotation des secrets.
Pour plus d’informations, consultez Importer des certificats à partir de Azure Key Vault pour savoir comment configurer la gestion des secrets pour votre application.
Magasin de jetons pour la sécurité de l’authentification
La fonctionnalité de magasin de jetons offre un moyen sécurisé de gérer les jetons d’authentification indépendamment de votre code d’application.
Fonctionnement du magasin de jetons d’authentification
- Le système stocke les jetons dans Stockage Blob Azure, en les gardant séparés de votre code d’application.
- Seul l’utilisateur associé peut accéder aux jetons mis en cache.
- Container Apps gère automatiquement l’actualisation des jetons.
- Cette fonctionnalité réduit la surface d’attaque en éliminant le code de gestion des jetons personnalisé.
Pour plus d’informations, consultez Activer un magasin de jetons d’authentification pour plus d’informations sur la configuration d’un magasin de jetons pour votre application.
Sécurité réseau
L’implémentation de mesures de sécurité réseau appropriées permet de protéger vos charges de travail contre l’accès non autorisé et les menaces potentielles. Il permet également une communication sécurisée entre vos applications et d’autres services.
Pour plus d’informations sur la sécurité réseau dans Azure Container Apps, consultez les articles suivants :
- Configurer WAF Application Gateway
- Activer les itinéraires définis par l’utilisateur (UDR)
- Routage basé sur des règles
Calcul confidentiel (version préliminaire)
Azure Container Apps inclut un profil de charge de travail de calcul confidentiel qui exécute des charges de travail conteneurisées à l’intérieur d’environnements d’exécution approuvés basés sur le matériel. L’informatique confidentielle complète Azure chiffrement au repos et en transit en protégeant les données utilisées via le chiffrement de mémoire et l’attestation de l’environnement avant l’exécution du code. Cette fonctionnalité permet de réduire le risque d’accès non autorisé aux charges de travail sensibles, y compris l’accès à partir d’opérateurs cloud.
Utilisez le profil de charge de travail de calcul confidentiel lorsque vos applications traitent des données réglementées ou hautement sensibles et nécessitent des garanties basées sur l’attestation. Pour obtenir une vue d’ensemble des régions et des fonctionnalités de plateforme prises en charge, consultez Azure l’informatique confidentielle.
Pour plus de détails sur la configuration, consultez le calcul confidentiel dans Azure Container Apps.
Posture pour les conteneurs Serverless Microsoft Defender for Cloud (version préliminaire)
Microsoft Defender for Cloud inclut des fonctionnalités de posture de sécurité pour les conteneurs sans serveur dans CSPM pour Azure Container Apps. Ces fonctionnalités fournissent l’inventaire, les évaluations de posture et l’analyse des chemins d’accès aux attaques pour Azure Container Apps charges de travail afin que les équipes de sécurité puissent identifier et hiérarchiser les risques dans leur environnement d’applications conteneur. Pour obtenir des conseils de prise en main et des détails sur les fonctionnalités, consultez Serverless protection.