Service Account GCP
cloudDéfinition
Un Service Account GCP est une identité spéciale dans Google Cloud Platform utilisée par les applications, les VMs, et les services pour s'authentifier et accéder aux APIs GCP. Contrairement aux comptes utilisateurs humains, les Service Accounts sont associés à des applications ou des services (ex: une VM Compute Engine, une fonction Cloud Function, un pod Kubernetes sur GKE), sans authentification par mot de passe mais via des clés JSON ou des tokens OAuth 2.0 générés par le service Google. Il existe trois types de Service Accounts dans GCP. Les Service Accounts gérés par l'utilisateur sont créés et contrôlés par les équipes, avec des noms personnalisés (my-app@my-project.iam.gserviceaccount.com). Les Service Accounts Google-managed sont créés automatiquement par les services GCP (Cloud Functions, App Engine) et gérés par Google. Les Default Service Accounts (e.g., le default Compute Engine Service Account <PROJECT_NUM>-compute@developer.gserviceaccount.com) sont créés automatiquement avec les projets et ont des droits Editor sur le projet — une mauvaise pratique de sécurité majeure. Les risques de sécurité liés aux Service Accounts incluent : l'utilisation du Default Service Account (droits Editor sur tout le projet), les clés JSON Service Account non sécurisées (fichiers .json contenant des credentials qui peuvent être exfiltrés depuis les dépôts Git, les systèmes CI/CD, ou les instances compromises), la permission iam.serviceAccounts.actAs trop large (permettant à n'importe quel utilisateur d'impersonner le Service Account), et les rôles IAM trop permissifs (Editor ou Owner) assignés aux Service Accounts applicatifs. Les bonnes pratiques incluent : désactiver le Default Compute Engine Service Account sur toutes les instances (utiliser des Service Accounts dédiés à chaque application), préférer Workload Identity Federation plutôt que les clés JSON pour les authentifications depuis l'extérieur de GCP, appliquer le principe du moindre privilège (rôles prédéfinis granulaires), et auditer régulièrement les permissions iam.serviceAccounts.actAs.
Workload Identity plutôt que les clés JSON
Les clés JSON Service Account sont le principal vecteur de compromission des environnements GCP. Remplacez-les par Workload Identity Federation pour les workflows GitHub Actions, GitLab CI, et AWS : configurez un Workload Identity Pool avec un Provider OIDC, définissez un Service Account binding avec les conditions appropriées (repo, branch), et utilisez google-github-actions/auth dans GitHub Actions. Pour les VMs Compute Engine et GKE, utilisez les Service Accounts attachés directement (pas de clé JSON nécessaire).
Audit des Service Accounts
Utilisez ces commandes d'audit régulières : gcloud iam service-accounts list --project=PROJECT_ID (inventaire), gcloud projects get-iam-policy PROJECT_ID (qui a quoi), et le Policy Analyzer GCP pour identifier les accès de chaque SA. IAM Recommender analyse les permissions utilisées dans les 90 derniers jours et propose des rôles moins permissifs. Supprimez les Service Accounts des projets archivés ou des applications décommissionnées ; vérifiez mensuellement les SA sans utilisation récente.
Rotation et révocation des clés JSON
Si vous devez utiliser des clés JSON (dernier recours), appliquez ces contrôles : rotation obligatoire toutes les 90 jours maximum, stockage dans GCP Secret Manager (pas dans Git ni les variables CI), révocation immédiate en cas de compromission suspectée (gcloud iam service-accounts keys delete KEY_ID --iam-account SA_EMAIL), et Organisation Policy constraints/iam.disableServiceAccountKeyCreation pour forcer Workload Identity. Configurez des alertes sur la création de nouvelles clés JSON via Cloud Audit Logs.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h