Cette page décrit les services et les fonctionnalités qui vous aident à protéger vos artefacts. Google Cloud
Chiffrement au repos
Par défaut, Google Cloud chiffre automatiquement les données au repos à l'aide de clés de chiffrement gérées par Google. Si vous avez des exigences réglementaires ou de conformité spécifiques concernant les clés qui protègent vos données, vous pouvez créer des dépôts chiffrés avec des clés de chiffrement gérées par le client (CMEK).
Contrôle des accès
Par défaut, tous les dépôts sont privés. Suivez le principe de sécurité du moindre privilège et n'accordez que le minimum d'autorisations requises par les utilisateurs et les comptes de service.
Restreindre les téléchargements d'artefacts
Vous pouvez restreindre les téléchargements d'artefacts à l'aide de règles de téléchargement. Les règles de téléchargement vous permettent d'autoriser ou de refuser le téléchargement d'artefacts à partir de vos dépôts et packages. Vous pouvez également définir des conditions pour que la règle s'applique à des tags ou des versions spécifiques.
Pour chaque dépôt de votre projet, vous pouvez définir une règle de téléchargement au niveau du dépôt et une règle de téléchargement par package. Lorsqu'un client tente de télécharger un artefact, Artifact Registry recherche d'abord une règle de téléchargement sur le package de l'artefact. Si aucune règle n'existe ou si les conditions de la règle ne s'appliquent pas à l'artefact, Artifact Registry recherche une règle dans le dépôt.
Par exemple, vous pouvez créer une règle pour votre dépôt afin de refuser tous les téléchargements, puis créer une règle pour un package afin d'autoriser les téléchargements à partir de ce package spécifique. La règle au niveau du package est prioritaire. Seuls les artefacts appartenant à ce package peuvent être téléchargés à partir du dépôt.
Les règles de téléchargement sont disponibles dans tous les modes de dépôt et pour les formats de dépôt suivants :
- Docker
- Go
- Maven
- npm
- Python
Prévenez l'exfiltration de données
Pour éviter l'exfiltration de données, vous pouvez utiliser VPC Service Controls pour placer Artifact Registry et d'autres services Google Cloud dans un périmètre de sécurité réseau.
Analyse des failles
Artifact Analysis peut rechercher les failles de sécurité dans les images de conteneurs en se basant sur des packages surveillés publiquement.
Les options suivantes sont disponibles :
- Analyse automatique des failles
- Lorsqu'elle est activée, cette fonctionnalité identifie les failles de package de vos images de conteneurs. Les images sont analysées lors de leur importation dans Artifact Registry, et les données sont surveillées en permanence pour détecter de nouvelles failles pendant un maximum de 30 jours après le transfert de l'image.
- API On-Demand Scanning
- Lorsque cette option est activée, vous pouvez analyser manuellement les images locales ou les images stockées dans Artifact Registry. Cette fonctionnalité vous permet de détecter et de corriger les failles dès le début de votre pipeline de compilation. Par exemple, vous pouvez utiliser Cloud Build pour analyser une image après sa création, puis bloquer l'importation dans Artifact Registry si l'analyse détecte des failles à un niveau de gravité spécifié. Si vous avez également activé l'analyse automatique des failles, Artifact Analysis analyse aussi les images que vous importez dans le registre.
Stratégie de déploiement
Vous pouvez utiliser l'autorisation binaire pour configurer une stratégie que le service applique en cas de tentative de déploiement d'une image de conteneur dans l'un des environnements compatibles Google Cloud .
Par exemple, vous pouvez configurer l'autorisation binaire pour n'autoriser les déploiements que si une image est signée pour la conformité avec une règle d'analyse des failles.
Supprimer les images inutilisées
Supprimez les images de conteneurs inutilisées pour réduire les coûts de stockage et atténuer les risques liés à l'utilisation d'anciens logiciels. Plusieurs outils sont disponibles pour vous aider dans cette tâche, y compris gcr-cleaner. L'outil gcr-cleaner n'est pas un produit Google officiel.
Intégrer la sécurité dès le départ
L'intégration des objectifs de sécurité des informations dans le travail quotidien peut contribuer à améliorer les performances de livraison des logiciels et à créer des systèmes plus sécurisés. Cette approche est également connue sous le nom de shifting left (déplacement à gauche), car les préoccupations, y compris de sécurité, sont traitées plus tôt dans le cycle de développement logiciel (c'est-à-dire situées à gauche sur un planning d'exécution de gauche à droite). Le virage à gauche pour la sécurité fait partie des capacités DevOps identifiées dans le programme de recherche sur l'état du DevOps de DORA.
Pour en savoir plus :
- En savoir plus sur la fonctionnalité Intégrer la sécurité dès le départ
- Lisez le livre blanc Test Shift-left pour la sécurité, qui décrit les responsabilités, les pratiques, les processus, les outils et les techniques qui permettent d'améliorer le niveau de confiance du cycle de vie de développement logiciel (SDLC) et de limiter les problèmes de sécurité.
Éléments à prendre en compte pour les dépôts publics
Soyez très attentif aux points suivants :
- Utilisation d'artefacts provenant de sources publiques
- Rendre vos propres dépôts Artifact Registry publics
Utiliser des artefacts provenant de sources publiques
Les sources publiques d'artefacts suivantes fournissent des outils que vous pouvez utiliser ou des dépendances pour vos compilations et déploiements :
Toutefois, votre organisation peut avoir des contraintes qui ont un impact sur votre utilisation des artefacts publics. Exemple :
- Vous souhaitez contrôler le contenu de votre chaîne d'approvisionnement logicielle.
- Vous ne voulez pas dépendre d'un dépôt externe.
- Vous souhaitez maîtriser strictement les failles de votre environnement de production.
- Vous voulez le même système d'exploitation de base dans chaque image.
Voici quelques approches à envisager pour sécuriser votre chaîne d'approvisionnement logicielle :
- Configurez des compilations automatiques pour que vos artefacts aient un contenu cohérent et connu. Vous pouvez utiliser les déclencheurs de compilation Cloud Build ou d'autres outils d'intégration continue.
- Utilisez des images de base standardisées. Google fournit des images de base que vous pouvez utiliser.
- Corrigez les failles de vos artefacts. Vous pouvez utiliser l'API On-Demand Scanning pour analyser les images de conteneurs et détecter les failles avant de les stocker dans Artifact Registry. Artifact Analysis peut également analyser les conteneurs que vous envoyez à Artifact Registry.
- Faites respecter vos normes internes sur les déploiements d'images. L'autorisation binaire permet d'appliquer des règles pour le déploiement d'images de conteneurs dans les environnements compatibles Google Cloud .
Dépôts Artifact Registry publics
Vous pouvez rendre public un dépôt Artifact Registry en attribuant le rôle Lecteur Artifact Registry à l'identité allUsers
.
Si tous vos utilisateurs disposent de comptes Google Cloud , vous pouvez limiter l'accès aux utilisateurs authentifiés avec l'identité allAuthenticatedUsers
.
Tenez compte des consignes suivantes avant de rendre public un dépôt Artifact Registry :
- Vérifiez que tous les artefacts que vous stockez dans le dépôt sont partageables publiquement et n'exposent pas d'identifiants, de données personnelles ni de données confidentielles.
- Par défaut, les projets ont des quotas par utilisateur illimités. Pour éviter tout abus, limitez les quotas par utilisateur dans votre projet.
Conseils pour les applications Web
- Le Top 10 de l'OWASP liste les principaux risques de sécurité pour les applications Web selon l'Open Web Application Security Project (OSWAP).
Conseils pour les conteneurs
- Les bonnes pratiques de Docker incluent des recommandations pour la création d'images.
Le CIS (Center for Internet Security) dispose d'un benchmark Docker permettant d'évaluer la sécurité d'un conteneur Docker.
Docker fournit un script Open Source appelé Docker Bench for Security. Vous pouvez exécuter ce script pour vérifier qu'un conteneur Docker en cours d'exécution respecte certains critères du benchmark Docker du CIS.
Le script Docker Bench for Security vous permet de vérifier de nombreux éléments dans le benchmark Docker du CIS. Cependant, tous les éléments ne sont pas vérifiables avec le script. Par exemple, le script ne peut pas vérifier si l'hôte du conteneur est renforcé ou si l'image du conteneur inclut des données à caractère personnel. Examinez tous les éléments du benchmark et identifiez ceux qui peuvent nécessiter une validation supplémentaire.
Étapes suivantes
En savoir plus sur la gestion des dépendances