Google Cloud fournit les types d'identités suivants pour les charges de travail:
Workload Identity Federation et Workload Identity Federation pour GKE permettent à vos charges de travail d'accéder à la plupart des services Google Cloud à l'aide d'identités fédérées authentifiées via un fournisseur d'identité (IdP) externe. Une fois que Google Cloud a authentifié l'identité en tant que principal, celui-ci peut accéder aux ressources à l'aide des rôles IAM que vous lui accordez.
Vous pouvez utiliser la fédération d'identité de charge de travail avec des charges de travail sur Google Cloud ou des charges de travail externes exécutées sur des plates-formes telles qu'AWS, Azure, GitHub et GitLab.
Vous pouvez utiliser la fédération d'identité de charge de travail pour GKE avec les charges de travail exécutées dans des clusters GKE pour leur accorder l'accès aux ressources Google Cloud.
Les comptes de service Google Cloud peuvent servir d'identités pour les charges de travail dans les environnements de production. Au lieu d'accorder directement l'accès à une charge de travail, vous accordez l'accès à un compte de service, puis la charge de travail utilise le compte de service comme identité.
Les identités de charge de travail gérées (version preview) vous permettent d'associer des identités fortement certifiées à vos charges de travail Compute Engine. Vous pouvez utiliser des identités de charge de travail gérées pour authentifier vos charges de travail auprès d'autres charges de travail à l'aide du protocole d'authentification TLS mutuelle (mTLS), mais elles ne peuvent pas être utilisées pour s'authentifier auprès des API Google Cloud.
Les types d'identités que vous pouvez utiliser pour les charges de travail et la manière dont vous les configurez dépendent de l'emplacement où elles s'exécutent.
Charges de travail sur Google Cloud
Si vous exécutez des charges de travail sur Google Cloud, vous pouvez utiliser les méthodes suivantes pour configurer les identités de vos charges de travail :
- Comptes de service associés
- Fédération d'identité de charge de travail pour GKE (pour les charges de travail exécutées sur Google Kubernetes Engine uniquement)
- Identités de charge de travail gérées (pour les charges de travail exécutées sur Compute Engine uniquement)
- Clés de compte de service
Comptes de service associés
Pour certaines ressources Google Cloud, vous pouvez spécifier un compte de service géré par l'utilisateur que la ressource utilise comme identité par défaut. Ce processus est appelé liaison du compte de service à la ressource, ou association du compte de service à la ressource. Lorsque du code exécuté sur la ressource accède aux services et aux ressources Google Cloud, il utilise le compte de service associé à la ressource comme identité. Par exemple, si vous associez un compte de service à une instance Compute Engine et que les applications de l'instance utilisent une bibliothèque cliente pour appeler les API Google Cloud, ces applications utilisent automatiquement le compte de service associé pour l'authentification et l'autorisation.
Dans la plupart des cas, vous devez associer un compte de service à une ressource lorsque vous créez cette ressource. Une fois la ressource créée, vous ne pouvez pas modifier le compte de service qui lui est associé. Les instances Compute Engine font exception à cette règle : si nécessaire, vous pouvez modifier le compte de service associé à une instance.
Pour en savoir plus, consultez Associer un compte de service à une ressource.
Workload Identity Federation for GKE
Pour les charges de travail exécutées sur GKE, la fédération d'identité de charge de travail pour GKE vous permet d'accorder des rôles IAM à des ensembles distincts et précis de comptes principaux, pour chaque application de votre cluster. La fédération d'identité de charge de travail pour GKE permet aux comptes de service Kubernetes de votre cluster GKE d'accéder directement aux ressources Google Cloud à l'aide de la fédération d'identité des employés ou indirectement à l'aide de l'usurpation d'identité de compte de service IAM.
En utilisant l'accès direct aux ressources, vous pouvez accorder des rôles IAM à l'identité du compte de service Kubernetes directement sur les ressources du service Google Cloud. La plupart des API Google Cloud sont compatibles avec l'accès direct aux ressources. Toutefois, lorsque vous utilisez la fédération d'identité, certaines méthodes d'API peuvent présenter des limites. Pour obtenir la liste de ces limites, consultez la page Produits compatibles et limites.
Les charges de travail peuvent également utiliser l'usurpation d'identité de compte de service, où le compte de service Kubernetes configuré est lié à un compte de service IAM, qui sert d'identité pour accéder aux API Google Cloud.
Pour en savoir plus sur la fédération d'identité de charge de travail pour GKE, consultez la page Fédération d'identité de charge de travail pour GKE.
Identités de charge de travail gérées
Les identités de charge de travail gérées vous permettent d'associer des identités fortement certifiées à vos charges de travail Compute Engine. Vous pouvez utiliser des identités de charge de travail gérées pour authentifier vos charges de travail auprès d'autres charges de travail à l'aide du mTLS, mais elles ne peuvent pas être utilisées pour s'authentifier auprès des API Google Cloud.
Pour en savoir plus sur l'identité de charge de travail gérée, consultez la Présentation des identités de charge de travail gérées.
Pour en savoir plus sur l'utilisation des identités de charge de travail gérées avec les charges de travail Compute Engine, consultez la page Authentifier des charges de travail auprès d'autres charges de travail via mTLS.
Charges de travail externes
Si vous exécutez des charges de travail en dehors de Google Cloud, vous pouvez utiliser les méthodes suivantes pour configurer des identités pour vos charges de travail :
- Fédération d'identité de charge de travail
- Clés de compte de service
Fédération d'identité de charge de travail
La fédération d'identité de charge de travail vous permet d'utiliser des identifiants de fournisseurs d'identité externes tels qu'AWS et Azure Active Directory pour générer des identifiants éphémères, qui permettent aux charges de travail d'emprunter l'identité des comptes de service de manière temporaire. Les charges de travail peuvent ensuite accéder aux ressources Google Cloud en utilisant le compte de service comme identité.
La fédération d'identité de charge de travail est la méthode privilégiée pour configurer les identités pour les charges de travail externes.
Pour en savoir plus sur la fédération d'identité de charge de travail, consultez la page Fédération d'identité de charge de travail.
Clés de compte de service
Une clé de compte de service permet à une charge de travail de s'authentifier en tant que compte de service, puis d'utiliser l'identité du compte de service pour l'autorisation.
Développement local
Si vous développez dans un environnement local, vous pouvez configurer des charges de travail pour qu'elles utilisent vos identifiants utilisateur ou un compte de service pour l'authentification et l'autorisation. Pour en savoir plus, consultez la section Environnement de développement local dans la documentation d'authentification.
Étape suivante
- Découvrez comment configurer l'authentification à l'aide de comptes de service.
- Découvrez comment configurer l'authentification pour un environnement de développement local.
- Découvrez comment accorder aux comptes de service l'accès aux ressources.