Cette page décrit certains problèmes courants que vous pouvez rencontrer lors de l'utilisation des identifiants par défaut de l'application (ADC).
Pour en savoir plus sur le fonctionnement des ADC, y compris sur l'emplacement des identifiants, consultez la section Fonctionnement des identifiants par défaut de l'application.
Les identifiants utilisateur ne fonctionnent pas
Si votre requête API renvoie un message d'erreur indiquant que les identifiants de l'utilisateur final ne sont pas compatibles avec cette API, que l'API n'est pas activée dans le projet ou qu'aucun projet de quota n'est défini, consultez les informations suivantes.
Il existe deux types d'API Google Cloud :
Les API basées sur des ressources, qui utilisent le projet associé aux ressources accessibles pour la facturation et les quotas.
Les API basées sur un client, qui utilisent le projet associé au compte qui accède aux ressources pour la facturation et les quotas.
Lorsque vous utilisez des identifiants de compte Google avec une API basée sur un client, le projet par défaut associé au compte ne peut pas être utilisé à des fins de facturation.
Pour résoudre ce problème, effectuez l'une des opérations suivantes :
Mettez à jour les ADC pour utiliser un projet différent comme projet de facturation :
gcloud auth application-default set-quota-project YOUR_PROJECT
Si vous appelez directement l'API REST ou RPC, utilisez l'en-tête HTTP
x-goog-user-project
pour spécifier un projet de facturation dans chaque requête. Pour en savoir plus, consultez la section Définir le projet de quota avec une requête REST.
Vous devez disposer de l'autorisation IAM serviceusage.services.use
pour un projet si vous souhaitez le désigner comme votre projet de facturation. L'autorisation serviceusage.services.use
est incluse dans le rôle IAM Consommateur Service Usage. Si vous ne disposez pas de l'autorisation serviceusage.services.use
pour un projet, contactez votre administrateur de sécurité ou un propriétaire de projet qui peut vous attribuer le rôle Consommateur Service Usage sur le projet.
Identifiants incorrects
Si vos identifiants ne semblent pas vous fournir l'accès que vous attendez ou si vous ne les trouvez pas, vérifiez les points suivants:
Si vous utilisez la CLI gcloud pour accéder à Google Cloud dans un environnement local, assurez-vous de bien comprendre les identifiants que vous utilisez. Lorsque vous utilisez la CLI gcloud, vous utilisez les identifiants que vous avez fournis à gcloud CLI à l'aide de la commande
gcloud auth login
. Vous n'utilisez pas les identifiants que vous avez fournis à ADC. Pour en savoir plus sur ces deux ensembles d'identifiants, consultez la page Identifiants ADC et identifiants gcloud.Assurez-vous que la variable d'environnement
GOOGLE_APPLICATION_CREDENTIALS
n'est définie que si vous utilisez une clé de compte de service ou un autre fichier JSON pour ADC. Les identifiants pointés par la variable d'environnement sont prioritaires sur les autres identifiants, y compris pour Workload Identity.Vérifiez que le compte principal effectuant la requête dispose des rôles IAM requis. Si vous utilisez des identifiants utilisateur, les rôles doivent être attribués à l'adresse e-mail associée au compte Google. Si vous utilisez un compte de service, ce compte doit disposer des rôles requis.
Si vous fournissez une clé API avec la requête API, la clé API est prioritaire sur ADC, quel qu'en soit l'emplacement. Si vous avez défini la variable d'environnement
GOOGLE_APPLICATION_CREDENTIALS
et que vous utilisez une clé API, celle-ci peut renvoyer un avertissement vous informant que les identifiants que vous avez fournis à ADC sont ignorés. Pour arrêter l'avertissement, supprimez la variable d'environnementGOOGLE_APPLICATION_CREDENTIALS
.
Type d'identifiants non reconnus
Si votre requête API renvoie une erreur qui inclut "Erreur de création des identifiants à partir du fichier JSON. Type d'identifiant non reconnu", assurez-vous d'utiliser un identifiant valide. Les fichiers d'ID client ne sont pas compatibles avec la saisie des identifiants pour ADC.