Audit de Google

Être audité par… Google!

Si vous développez quoique ce soit pour le web, vous aurez un jour ou l’autre à considérer l’utilisation d’un service offert par Google, via sa console pour les développeurs.

Le slogan de Google, à l’intention de ses développeurs est “Build anything with Google” (ou en français: “Bâtir n’importe quoi avec Google”) et c’est probablement vrai pour quelqu’un qui s’y connaît mais même si en théorie, l’utilisation d’un API (ou “application program interface”) de Google simplifie l’accès aux ressources nécessaires pour “bâtir n’importe quoi”, c’est souvent plus compliqué qu’il n’y paraît. Et les technicalités sont aussi nombreuses que vraiment mal expliquées ou implémentées.

En gros, vous programmez du code dans votre site web qui, via un identifiant (un “token”) fourni par Google, dans le cadre de l’un de ses APIs permet d’intergir avec une des nombreuses fonctions offertes par Google ou l’un de ses services, comme YouTube.

WordPress et ses plogiciels

C’est habituellement parce que vous opérez votre site via la plateforme libre WordPress, avec des plogiciels, que vous devrez, tôt ou tard, obtenir un accès API à Google Developer.

Par exemple, si vous voulez que les visiteurs dans votre site web puissent voir votre adresse sur une carte géographique telle que celle qu’on retrouve dans Google Maps, il vous faudra avoir un identifiant pour l’API appelé “Maps Javascript API” et bien que pour un usage restreint ce soit gratuit, il faut avoir entré une carte de crédit au cas où l’usage viendrait à augmenter au-delà d’un certain seuil.

Pour cet API, le prix est d’ailleurs expliqué dans cette page. En gros, en haut de 100,000 vues, chaque groupe de 1,000 cartes géographiques affichées coûtera 5,60$ alors si vous affichez 400,000 cartes (de plus que les 100k fournies, gracieusement, par Google), pour un total de 500,000 affichages de cartes géographiques, pour 1 mois, ça vous coûtera 2,240$.

Autrement dit, le modèle d’affaire de Google pour les développeurs est de les appâter avec des gratuités pour ensuite les facturer, quand le volume augmente. Un classique mais cette fois, c’est à la sauce Google.

Et l’audit qui en découle

Qui dit “service gratuit” (au moins, au début, pour les “petits” volumes de requêtes à l’un des APIs de Google), dit éventuellement audit.

Oui, un ou des audits.

Par Google.

Car Google, comme n’importe quelle entreprise, a horreur de donner ses services d’API à des clients qui en feraient un usage qui n’aurait pas un potentiel, un jour, de mener à un “usage facturable”.

D’où l’audit où le développeur Google a l’obligation, dans les 7 jours de la réception du message, via courriel, de compléter un long formulaire dans laquelle chacun des usages de chacun des identifiants doit être indépendamment justifié, incluant la création d’un accès (de type “accès de démonstration, temporaire”) pour Google, afin qu’ils puissent aller voir, dans votre code, très exactement ce que vous faites avec le code identifiant qu’ils vous ont accordé.

Autrement dit, la police Google veut un double des clés de votre maison numérique pour aller y faire un tour, histoire de voir très exactement ce que vous faites, avec “son” identifiant.

Ou “ses” identifants et là, attendez-vous à un audit encore plus long… et compliqué.

Complexité

Et justement, parlant de complexité, Google ne s’améliore pas.

Loin de là, Google empire continuellement avec une interface de gestion qui multiplie les API, les conditions liées aux API (avec l’obligation, souvent, d’avoir des “Termes et conditions”, des “Règles de protection de la confidentialité” et des “Règles concernant les cookies”) ainsi que les identifiants, eux-mêmes. Autrement dit, ça vient complexe, assez vite.

Évidemment, ça se gère par “du vrai monde” en autant d’y mettre du temps, des efforts (réels, au plan purement technique) et selon le volume d’usage, de l’argent.

Mais c’est quand même compliqué alors imaginez quand vient le jour de l’audit.

C’est alors un mauvais jour car vous devrez montrer patte blanche à Google. Détails à l’appui. Et proverbial double des clés de votre site web, obligatoire (pour presque tous les scénarios d’usage).

Au fond, c’est ça un audit. Ça dérange et ça humilie. Même si le développeur a un usage légitime et qu’il n’a rien fait de mal, le processus de passer des heures à compléter un audit pour Google a de quoi rappeler, brutalement, que Google veut le contrôle absolut de son écosystème d’identifiants… même un fois en votre possession pour un usage dans votre site web.

Réflexion sur la sagesse de se fier sur Google

On dit que l’humain change lorsqu’il est au bord du précipice.

C’est vrai, dans la plupart des cas. Devant l’évidence du précipice, l’humain devient créatif et lutte pour sa survie, de manières auparavant impensables.

Un peu comme comprendre que Google, au moment d’un audit (non-annoncé et toujours malvenu… même quand le développeur a “raison” et n’a “rien fait de mal”) peut décider, une fois que vous lui aurez envoyé un nombre impressionnant de détails sur votre usage de ses ressources, de vous laisser opérer jusqu’au prochain audit ou alors, de vous sanctionner, jusqu’à vous retirer vos précieux identifiants sans lesquels votre fonction “bonifiée par un des services de Google”, dans votre site web, ne fonctionnera plus.

C’est à ce moment précis que vous vous retrouver au bord du proverbial précipice.

Ce moment où vous comprenez qu’en tant que développeur web, en voulant bien faire en imbriquant des services de Google dans votre propre site web, vous avez probablement commis un grosse erreur.

En utilisant la console Google Developer, vous vous exposez à des audits aux pires moments. Tout ça parce qu’au lieu d’être créatif, vous aurez choisi une “voix de facilité” offerte par Google. Et Google veut votre argent alors il vous auditera sans réserve pour s’assurer de votre pleine conformité afin de vous “autoriser un usage”… jusqu’au prochain audit.

En tant que développeur web, vous avez été émerveillé par l’API de Google avec ses nombreuses possibilités mais vient le jour de l’audit (le précipice) et là, le fun s’arrête. Sec. D’un coup. Si Google n’aime pas les informations que vous avez soumises dans votre audit, ils se sont assurés tous les droits de vous “couper”, en tout ou en partie. Qu’importe les effets sur votre site web!

Au fond, Google qui audite ses développeurs est une nouvelle réalité que les développeurs doivent comprendre afin de bien apprécier le risque de traiter avec Google. Ça va bien jusqu’à temps que ça n’aille plus. Et avec un audit, c’est le stress à chaque fois.

Banni pour vrai

En cas de décision de Google comme quoi l’audit qu’ils ont imposé au développeur web ne les satisfait pas pleinement, ils ont absolument tous les droits, en regard de leurs identifiants.

Ces identifiants (obtenus depuis l’un ou l’autre des APIs de Google) ont beau être dans votre site web, ils appartiennent en totalité à Google. Encore une fois, c’est normal mais au fond, combien de développeurs web ont bien compris ça? Et combien de leurs clients qui se font livrer des sites web voient, eux-aussi, les limites du modèle “gratuit puis payant” (“freemium”) de Google, avec ses APIs?

Il faut se poser la question parce qu’en cas d’abus ou de perception d’un abus, réel et avéré et potentiel, de la part de Google, au moment d’un audit, ça pourrait en théorie aller aussi loin que de voir un compte banni ou alors, un nom de domaine banni.

Autrement dit, chaque épisode d’audit peut avoir de réelles conséquences pour le développeur web qui a fait appel aux APIs de Google. Idem pour tout client qui aurait acheté les services de ce développeur web.

Il y a de quoi réfléchir sur la pertinence de “prendre un shortcut” en affichant des cartes géographiques de Google, par exemple, au lieu de dépenser un peu plus pour créer un segment avec des cartes géographiques statiques mais qui ne sont pas liées à Google et donc, pas sujettes à des audits, au fil du temps.

Si quelques développeurs vont prétendre n’avoir aucun problème avec les audits, la grande majorité des développeurs détestent se faire auditer. Par Google, de surcroît.

Google a encore cet aura de compagnie californienne ouverte et généreuse mais voilà, c’est une compagnie et elle a des comptes à payer, elle aussi. Rien de mal à ça mais certains développeurs auraient intérêt à bien réfléchir avant de se lancer dans l’univers des APIs de Google parce que chaque audit reçu est un rappel supplémentaire que lorsque vous êtes chez Google, vous n’êtes pas chez-vous.

Pourquoi risquer d’être banni de Google? Pourquoi attirer le potentiel de se faire auditer pour avoir affiché une banale carte géographique? Pourquoi ne pas se donner la peine de faire ses propres solutions au lieu de se fier à Google et à ses APIs auditables?

Autant de questions que les développeurs web vont devoir se poser s’ils ne veulent pas être contraints à affronter les audits-surprises de Google.


Voici à quoi ressemble un courriel d’audit de Google. Dans ce cas-ci, c’est pour un audit spécifique à l’usage d’APIs liés à YouTube. Les autres demandes d’audit suivent la même logique.

Dear YouTube API Developer,

We are currently conducting a mandatory compliance review of your YouTube Data API Project. The review is to assess your compliance to our YouTube API Services Developer Policies (link) and to learn about how our service is being used.

At your convenience in the next seven (7) business days, please complete and submit the following information :

  1. A fully functional demo account, including a username and password with which we may access your API Client. The demo account you provide will be used only for compliance inspection and the credentials will not be shared.
  2. A fully completed YouTube API Audit Form (normalement, c’est hyperlié vers le formulaire d’audit, lui-même mais pour cet exemple, l’hyperlien a été enlevé)
  3. Screenshots of how your API Client and its users access and use the YouTube API Services
  4. Documents relating to your implementation, access and use of YouTube API Services
     

For reference, your project number is ##############

Please ensure that all required supporting materials are submitted and sufficient, and all questions are answered thoroughly. If this is not the correct or preferred API contact email, or if you would like us to cc any other contacts on future emails, please let us know. 

Thanks,

YouTube API Services team —-

YouTube, LLC 901 Cherry Ave, San Bruno, CA 94066

You have received this mandatory email service announcement to update you about important changes to YouTube products or your account.

Comme vous pouvez le voir, c’est raide!

Pas de numéro de téléphone avec un agent vous étant attitré, pas de possibilité de se soustraire à l’audit.

Vous avez 7 jours pour compléter l’audit à la satisfaction de Google ou alors, en subir les conséquences, à l’entière discrétion de Google.

Si vous sentiez que Google était un “bon partenaire” avant ça, là, vous allez déchanter. Il se pourrait que vous souhaitiez encore faire appel aux APIs de Google après l’audit (en assumant que vous demeuriez dans les bonnes grâces de Google) mais ça va probablement vous faire réfléchir à ce qui arrive lorsque Google s’invite dans vos affaires… parce que vous avez pensé que c’était “une bonne idée” de faire un usage des morceaux de fromage qu’ils ont aménagé dans leur piège à souris.

Même si les développeurs audités s’en sortent mieux que les souris pris dans les pièges, ça montre le vrai visage de Google. Celui qui apparaît quand l’audit est imposé au développeur.

Et pour les développeurs qui paient, nous avons appris que le processus d’audit est le même qu’avec un client qui utilise le volet gratuit des APIs. Une exception, le client payant a parfois accès à un représentant Google pour l’orienter mais malgré tout, il doit tout fournir, lui aussi, pour réussir cet audit.

Alors pour ceux qui veulent des audits, c’est simple, utilisez les APIs de Google et soyez patients. Ça va éventuellement venir. Et quand ça viendra, vous pourrez voir si c’est le genre d’expérience qui vous encourage à rester avec Google ou si ça vous motive à devenir créatif pour ne plus vivre inquiété par ces audits à répétition (censés, on peut l’imaginer, éviter des “abus” des ressources de Google par des développeurs qui n’ont aucun potentiel d’être “convertis” en “clients payants”).

C’est juste “business as usual” mais en même temps, ça rappelle que le “Big Brother Google” n’est jamais loin du “service gratuit”.

La morale du billet? Continuez à utiliser Google mais soyez conscients qu’ils auditent, avec l’aura que ça suppose. Avez-vous vraiment le goût de vivre dans un monde où vous pouvez être audité par Google, quand bon leur semble? Avec des mots comme “compliance”, “submit”, “sufficient” et “assess”? Pensez-y…

Partagez ce billet

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.