Ce guide explique comment vous assurer que votre application et vos identifiants utilisateur sont sécurisés.
Terminer la validation de l'application OAuth
Le champ d'application OAuth 2.0 de l'API Google Ads est classé comme champ d'application restreint. Cela signifie que vous devez terminer le processus de validation de l'application OAuth avant de la mettre en production. Pour en savoir plus, consultez la documentation Google Identity 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 de votre application. 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 d'e-mails, le codage en dur des identifiants ou leur validation dans un dépôt de code. 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 vos secrets client OAuth 2.0 sont compromis, vous pouvez les réinitialiser. Un jeton de développeur peut également être réinitialisé.
Protéger le jeton de développeur
Le jeton de développeur vous permet d'effectuer des appels d'API vers un compte, mais n'impose aucune restriction sur 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 les 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 en pièce jointe d'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 compromis, vous devez le réinitialiser.
- Connectez-vous au compte administrateur Google Ads que vous avez utilisé pour demander l'API Google Ads.
- Accédez à Outils et paramètres > Centre d'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 une usurpation d'identité au niveau du domaine pour fonctionner correctement avec l'API Google Ads. De plus, vous devez être client Google Workspace pour configurer l'usurpation d'identité au niveau du domaine. Pour ces raisons, 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:
Traitez votre clé de compte de service et votre fichier JSON comme des mots de passe. Sécurisez-les à l'aide d'un gestionnaire de secrets tel que Google Cloud Secret Manager ou AWS Secret Manager dans la mesure du possible.
Suivez les bonnes pratiques supplémentaires de Google Cloud pour sécuriser et gérer vos comptes de service.
Sécuriser les jetons utilisateur
Si votre application autorise plusieurs utilisateurs, vous devez prendre des mesures supplémentaires pour protéger leurs jetons d'actualisation et d'accès. Stockez les jetons de manière sécurisée 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 des jetons 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. Votre application doit répondre de manière appropriée, 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 qui échouent. 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 l'autorisation pour plusieurs champs d'application OAuth 2.0, l'utilisateur risque de ne pas accorder tous les champs d'application OAuth que vous avez demandés. Votre application doit gérer le refus des champs d'application en désactivant les fonctionnalités concernées. Vous ne pouvez inviter l'utilisateur à nouveau qu'après qu'il a clairement indiqué son intention d'utiliser la fonctionnalité spécifique nécessitant la portée. 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 lui demander son consentement.