GCP Workload Identity Federation
cloudDéfinition
GCP Workload Identity Federation est un mécanisme de Google Cloud Platform qui permet à des charges de travail hébergées en dehors de GCP, pipelines CI/CD comme GitHub Actions ou GitLab CI, workloads exécutés sur AWS ou Azure, d'obtenir des credentials GCP temporaires et limités dans le temps sans jamais nécessiter la création, la distribution ni la gestion de clés de compte de service statiques, une pratique historiquement risquée puisque ces clés, une fois générées et téléchargées, constituaient des secrets longue durée souvent mal protégés et rarement révoqués même après leur usage prévu. Le mécanisme repose sur un échange de tokens fondé sur des protocoles d'identité fédérée standardisés, OpenID Connect ou SAML : la charge de travail externe présente un token d'identité déjà émis par son propre fournisseur d'identité de confiance, par exemple le token OIDC signé automatiquement fourni par GitHub Actions à chaque exécution de workflow, que GCP vérifie et échange contre un token d'accès GCP de courte durée, limité par une politique de correspondance (attribute mapping et condition) précisant exactement quelles identités externes sont autorisées et avec quelles permissions. Cette approche élimine structurellement le risque de fuite de clé de service statique dans un dépôt de code ou un journal de build, une des causes les plus fréquentes de compromission de compte cloud documentées récemment.
Description
GCP Workload Identity Federation permet aux workloads externes (GitHub Actions, GitLab CI, AWS, Azure AD) d'obtenir des tokens d'accès GCP temporaires sans créer ni gérer de clés de compte de service JSON. Il repose sur l'échange de tokens OIDC ou SAML via un Identity Pool GCP.
Contexte cloud
Le flux : le workload externe présente son token OIDC natif (ex: token GitHub Actions OIDC) au Workload Identity Pool GCP, qui valide l'audience et les claims, puis échange ce token contre un token d'accès GCP avec les permissions du service account impersonné. Aucune clé JSON ne transite ni n'est stockée.
Points clés
- Configuration GitHub Actions :
gcloud iam workload-identity-pools providers create-oidc PROVIDER --issuer-uri=https://token.actions.githubusercontent.com --attribute-mapping=google.subject=assertion.sub - Restrictons d'attributs : limiter les tokens acceptés à un dépôt spécifique via
attribute.repository==projects/my-org/my-repo - Audit :
gcloud iam workload-identity-pools list --location=globalpour inventorier tous les pools et leurs providers actifs
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. 2.1.7
Un projet cybersécurité ?
Expert dispo · Réponse 24h