web-dev-qa-db-fra.com

restreindre les clés de l'API Google Maps à mon domaine

Mon site utilise l'API javascript de Google Maps. Par conséquent, j'utilise une "clé de navigateur", qui est clairement visible dans mon code javascript pour tous ceux qui font "Afficher le code source".

La documentation de Google sur les clés de navigateur dans les applications javascript ( https://support.google.com/cloud/answer/6158862?hl=fr&ref_topic=626249 ) indique: "Créez et utilisez une clé de navigateur si votre application fonctionne sur un client, tel qu'un navigateur Web. Pour éviter que votre clé ne soit utilisée sur des sites non autorisés, n'autorisez que les renvois à partir de domaines que vous administrez. "

Malheureusement, il n'y a pas d'instructions sur la manière d'implémenter ce qu'ils disent dans cette dernière phrase (restreindre les domaines pour les clés de navigateur). Je cherchais dans les menus et je ne savais pas comment le faire.

Le plus proche que j'ai eu est: In https://console.cloud.google.com J'ai cliqué sur le hambuger et sélectionné "Gestionnaire d'API", puis sur "Informations d'identification", puis sur l'onglet étiqueté "Vérification du domaine". Je ne sais pas si c'est le bon endroit où aller, mais c'est le seul endroit où j'ai trouvé qui mentionne des domaines. Alors que sur cet onglet, j'ai cliqué sur "Ajouter un domaine" et ajouté un domaine. Mais cela ne limitait pas les clés à ce domaine. J'ai testé la clé de navigateur sur un domaine différent, et la clé a fonctionné sur cet autre domaine.

Quelqu'un peut-il fournir des instructions pas à pas sur la manière de rendre la clé de navigateur utilisable uniquement à partir d'un domaine?

6
Mike W

Google modifie cela de temps en temps, et chaque fois que je le fais, je dois "retrouver" chacun des paramètres.

Donc, vous n'êtes pas seul!

Vous avez raison de dire qu'une clé de navigateur est essentiellement "publique" et devrait être limitée par domaine afin d'éviter son vol. Il est intéressant de noter que le pire qui puisse arriver si son vol est que quelqu'un puisse utiliser votre limite de demandes d'API gratuite (en supposant que vous ne soyez pas sur un calendrier de facturation) et ainsi refuser les demandes de votre site. Vous pouvez ensuite retirer la clé et en créer une nouvelle sans trop de problèmes. Mais bien sûr, il vaut mieux éviter tout cela!

Pour limiter les demandes d'API provenant uniquement de votre (vos) domaine (s), commencez par Console API Google , puis:

  1. Cliquez sur le menu hamburger en haut à gauche
  2. Cliquez sur API Manager
  3. Cliquez sur les informations d'identification
  4. Sélectionnez ou créez votre projet
  5. Cliquez sur Créer des informations d'identification, puis choisissez Clé d'API et clé de navigateur.
  6. Entrez le nom de votre clé (c'est juste pour que vous puissiez l'identifier)
  7. Sous Accepter les demandes de ces référents HTTP (sites Web), c’est là que vous limitez la clé à votre nom de domaine - vous pouvez entrer *.domain.com/* pour Couvrir n'importe quoi sur votre domaine.
  8. Cliquez sur Créer

Si vous modifiez une clé déjà créée, au lieu des étapes 5 et 6 ci-dessus, cliquez simplement sur le nom de la clé. Le même champ apparaît et vous permet de saisir votre nom de domaine.

La vérification de domaine que vous avez trouvée fait vérifier à Google que vous avez déjà vérifié la propriété de votre domaine dans Search Console . Cela permet à Google de renvoyer des points d'ancrage sur votre domaine, ce qui est, je suppose, requis pour certaines des API (je ne sais pas lesquels, car tout ce que j'utilise, c'est généralement l'API JavaScript Maps, ce qui est assez simple!)

7
Tim Malone