Sécuriser vos identifiants

Ce guide explique comment vous assurer que votre application et vos identifiants utilisateur sont sécurisés.

Procédez à la validation de l'application OAuth

Le champ d'application d'OAuth 2.0 pour l'API Google Ads est un champ d'application restreint, ce qui signifie que vous devez suivre la procédure de validation OAuth de l'application avant de la mettre en production. Pour en savoir plus, consultez la documentation sur l'identité Google et l'article du Centre d'aide.

Sécuriser les identifiants de l'application

Vous devez sécuriser l'ID client OAuth 2.0 et le code secret du client. Ces identifiants aident vos utilisateurs et Google à identifier votre application. Ils doivent donc être gérés avec soin. Vous devez traiter ces identifiants d'application comme des mots de passe. Ne les partagez pas à l'aide de mécanismes non sécurisés, tels que la publication sur des forums publics, l'envoi de fichiers de configuration contenant ces identifiants en pièces jointes à des e-mails, le codage en dur des identifiants ou leur validation dans un dépôt de code. Nous vous recommandons d'utiliser un gestionnaire de secrets tel que Secret Manager Google Cloud ou AWS Secret Manager dans la mesure du possible.

Si les codes secrets de vos clients OAuth 2.0 sont compromis, vous pouvez les réinitialiser. Un jeton de développeur peut également être réinitialiser.

Sécuriser le jeton de développeur

Le jeton de développeur vous permet d'effectuer des appels d'API vers un compte, mais il n'est soumis à aucune restriction concernant les comptes avec lesquels il peut être utilisé pour effectuer les appels. Par conséquent, un jeton de développeur compromis peut être utilisé par une autre personne pour passer des appels attribués à votre application. Pour éviter ce scénario, prenez les mesures préventives suivantes:

  • Traitez votre jeton de développeur comme un mot de passe. Ne la partagez pas à l'aide de mécanismes non sécurisés, tels que la publication sur des forums publics ou l'envoi de fichiers de configuration contenant les jetons de développeur sous forme de pièce jointe à un e-mail. Dans la mesure du possible, nous vous recommandons d'utiliser un gestionnaire de secrets tel que Google Cloud Secret Manager ou AWS Secret Manager.

  • Si votre jeton de développeur est piraté, vous devez le réinitialiser.

    • Connectez-vous au compte administrateur Google Ads que vous avez utilisé lors de la demande d'accès à l'API Google Ads.
    • Accédez à Outils et paramètres > Centre API.
    • Cliquez sur la flèche du menu déroulant à côté de Jeton de développeur.
    • Cliquez sur le lien Réinitialiser le jeton. Votre ancien jeton de développeur devrait cesser de fonctionner immédiatement.
    • Mettez à jour la configuration de production de votre application pour utiliser le nouveau jeton de développeur.

Sécuriser les comptes de service

Les comptes de service nécessitent l'emprunt d'identité à l'échelle du domaine pour fonctionner correctement avec l'API Google Ads. De plus, vous devez être un client Google Workspace pour configurer l'emprunt d'identité au niveau du domaine. C'est pourquoi nous vous déconseillons d'utiliser des comptes de service lorsque vous effectuez des appels d'API Google Ads. Toutefois, si vous décidez d'utiliser des comptes de service, vous devez les sécuriser comme suit:

Sécuriser les jetons utilisateur

Si votre application autorise plusieurs utilisateurs, vous devez prendre des mesures supplémentaires pour protéger les jetons d'actualisation et d'accès des utilisateurs. Stockez les jetons en toute sécurité au repos et ne les transmettez jamais en texte brut. Utilisez un système de stockage sécurisé adapté à votre plate-forme.

Gérer la révocation et l'expiration du jeton d'actualisation

Si votre application demande un jeton d'actualisation OAuth 2.0 dans le cadre de l'autorisation, vous devez également gérer leur invalidation ou leur expiration. Les jetons d'actualisation peuvent être invalidés pour diverses raisons et votre application doit répondre correctement, soit en réautorisant l'utilisateur lors de sa prochaine session de connexion, soit en nettoyant ses données, le cas échéant. Les tâches hors connexion, telles que les tâches Cron, doivent détecter et enregistrer les comptes dont les jetons d'actualisation ont expiré, au lieu de continuer à envoyer des requêtes ayant échoué. Google peut limiter les applications qui génèrent des niveaux élevés d'erreurs sur une période prolongée afin de maintenir la stabilité des serveurs d'API.

Gérer le consentement pour plusieurs champs d'application

Si votre application demande une autorisation pour plusieurs champs d'application OAuth 2.0, il est possible que l'utilisateur n'accorde pas tous les champs d'application OAuth que vous avez demandés. Votre application doit gérer le déni de champ d'application en désactivant les fonctionnalités concernées. Vous ne pouvez inviter à nouveau l'utilisateur qu'après avoir clairement indiqué son intention d'utiliser la fonctionnalité spécifique nécessitant ce champ d'application. Dans ce cas, utilisez l'autorisation incrémentielle pour demander les champs d'application OAuth appropriés.

Si les fonctionnalités de base de votre application nécessitent plusieurs champs d'application, expliquez cette exigence à l'utilisateur avant de demander son consentement.