web-dev-qa-db-fra.com

L'URL de la miniature de l'e-mail a été remplacée par googleusercontent.com dans gmail

J'ai un système chaque fois que l'utilisateur télécharge une image, il enverra un e-mail au gmail de l'utilisateur enregistré. Mais dans l'e-mail, je vois quelque chose comme ça, la vignette n'est pas visible.

enter image description here

J'inspecte l'élément et trouve le src lié à cette URL: https://ci5.googleusercontent.com/proxy/VI2cPXWhfKZEIarh-iyKNz1j9q7Ymh8ty4Yz19lXh82RjSlACBzS0aRajfIj913uXAsX2ylcLEDs5FBsj4cR9TcU75Pw5djdHx4htxdCAQxs_ue1Q1wi5TV43uLLBpigpjH1xN747mUHSRdTBJmXQWFyykInJCRXicM1KhNk=s0-d-e1-ft#https://www.somedomain.com/files/1658/thumbnail_71JtDozxS1L._SY450_.jpg

De toute évidence, il est mis en cache par le proxy Google

Mais je peux voir l'image sans contenu utilisateur google, en accédant à https://www.somedomain.com/files/1658/thumbnail_71JtDozxS1L._SY450_.jpg (j'ai masqué le domaine afin que l'image ne soit pas disponible pour vous).

J'ai essayé d'effacer le cache du navigateur, mais le problème persiste. Comment puis-je contourner le truc googleusercontent ou au moins rendre la vignette capable de s'afficher.

Je commande sur ce lien les images ne s'affichent pas pour Gmail mais je n'utilise pas localhost et l'image elle-même est accessible en dehors de mon réseau local.

13
hades

Comment fonctionne Google Image Proxy

Google Image Proxy est un serveur proxy de mise en cache. Chaque fois qu'un lien d'image est inclus dans un e-mail, la demande ira d'abord au proxy d'image Google pour voir s'il a été mis en cache, si c'est le cas, il doit le servir à partir du proxy ou il ira le chercher et le mettre en cache après.

La solution pour la plupart des problèmes

Le serveur Google Image Proxy récupérera vos images si ces images:

  • ont des extensions comme .png, .jpg/.jpeg ou .gif seulement. Peut être .webp aussi. Mais non .svg .
  • n'utilisez aucun type de chaîne de requête dans l'URL de l'image comme ?id=123
  • avoir une URL qui est directement mappée sur l'image.
  • n'ont pas un nom long.

Configuration requise pour le serveur d'images:

  • La réponse du serveur d'images/serveur proxy doit inclure l'en-tête correct comme Content-Type: image/jpeg.
  • Extension de fichier et content-type l'en-tête doit être du même type.
  • Le code d'état dans la réponse du serveur doit être 200 au lieu de 403, 500 et etc.

Qu'est-ce qui pourrait aussi aider?

réponse du support Google :

Configurer une liste blanche de proxy d'URL d'image

Lorsque vos utilisateurs ouvrent des e-mails, Gmail utilise les serveurs proxy sécurisés de Google pour diffuser des images susceptibles d'être incluses dans ces messages. Cela protège vos utilisateurs et votre domaine contre les vulnérabilités de sécurité basées sur l'image.

En raison du proxy d'image, les liens vers des images qui dépendent des adresses IP internes et parfois des cookies sont rompus. Le paramètre de liste blanche du proxy d'URL d'image vous permet d'éviter les liens rompus vers les images en créant et en maintenant une liste blanche d'URL internes qui contourneront la protection du proxy.

Lorsque vous configurez la liste blanche du proxy d'URL d'image, vous pouvez spécifier un ensemble de domaines et un préfixe de chemin d'accès qui peuvent être utilisés pour spécifier de grands groupes d'URL. Voir les directives ci-dessous pour des exemples.

Configurez le paramètre de liste blanche du proxy d'URL d'image:

  • Connectez-vous à votre console d'administration Google . Connectez-vous en utilisant votre compte administrateur (ne pas fin dans @ gmail.com).
  • Sur la page d'accueil de la console d'administration, accédez à Apps> G Suite> Gmail> Advanced settings. Conseil: Pour voir les paramètres avancés, faites défiler vers le bas de la page Gmail.
  • À gauche, sélectionnez votre organisation de niveau supérieur.
  • Faites défiler jusqu'à la section Liste blanche du proxy d'URL d'image .
  • Entrez les modèles de liste blanche du proxy d'URL d'image. Les URL correspondantes contourneront la protection du proxy d'image. Voir les directives ci-dessous pour plus de détails et d'instructions.
  • En bas, cliquez sur Enregistrer .

Cela peut prendre jusqu'à une heure pour que les modifications se propagent aux comptes d'utilisateurs. Vous pouvez suivre les modifications antérieures sous Journal d'audit de la console d'administration .

Instructions pour l'application du paramètre de liste blanche du proxy d'URL d'image

Considérations de sécurité

Consultez votre équipe de sécurité avant de configurer le paramètre de liste blanche du proxy d'URL d'image. La décision de contourner la protection de la liste blanche du proxy d'image peut exposer vos utilisateurs et votre domaine à des risques de sécurité s'ils ne sont pas utilisés avec précaution.

En général, si vous avez un domaine qui nécessite une authentification via un cookie et si ce domaine est contrôlé par un administrateur au sein de votre organisation et est entièrement approuvé, la mise en liste blanche de cette URL ne doit pas exposer votre domaine à des attaques basées sur des images.

Important: La désactivation du proxy d'image n'est pas recommandée. Cette option est disponible pour offrir de la flexibilité aux administrateurs, mais la désactivation du proxy d'image peut rendre vos utilisateurs vulnérables aux attaques malveillantes.

Saisie des modèles d'URL d'image

Pour conserver une liste blanche d'URL internes qui contourneront la protection du proxy, entrez les modèles d'URL d'image dans le paramètre Liste blanche du proxy d'URL d'image. Les URL correspondantes contourneront le proxy d'image.

Un modèle peut contenir le schéma, le domaine et un chemin. Le modèle doit toujours avoir une barre oblique (/) présent entre le domaine et le chemin. Si le modèle d'URL spécifie un schéma, le schéma et le domaine doivent correspondre entièrement. Sinon, le domaine peut partiellement correspondre au suffixe URL. Par exemple, le modèle google.com allumettes www.google.com, mais non gle.com. Le modèle d'URL peut spécifier un chemin correspondant au préfixe du chemin.

Important: Entrez votre nom de domaine réel lorsque vous entrez le modèle d'URL de l'image. Incluez toujours une barre oblique de fin (/) après le nom de domaine.

Exemples de modèles d'URL d'image

Les modèles suivants ne sont que des exemples. Les modèles suivants:

http://rule_fixed_scheme_domain.com/
rule_flex_scheme_domain.com/
rule_fixed_subpath.com/cgi-bin/

... correspondra aux URL suivantes:

http://rule_fixed_scheme_domain.com/
http://rule_fixed_scheme_domain.com/test.jpg?foo=bar#frag
http://rule_fixed_scheme_domain.com
rule_flex_scheme_domain.com/
t.rule_flex_scheme_domain.com/test.jpg
http://t.rule_flex_scheme_domain.com/test.jpg
https://t.rule_flex_scheme_domain.com/test.jpg
http://rule_fixed_subpath.com/cgi-bin/
http://rule_fixed_subpath.com/cgi-bin/people

Remarque: Le schéma d'URL (http://) est facultatif. Si le schéma est omis, le modèle peut correspondre à n'importe quel schéma et autorise des correspondances partielles sur le suffixe de domaine.

Aperçu des modèles d'URL de l'image

Cliquez sur Aperçu pour voir si les URL correspondent aux modèles d'URL d'image que vous avez définis. Si l'URL de l'image correspond à un modèle, vous verrez un message de confirmation. Si l'URL de l'image ne correspond pas, un message d'erreur apparaît.

7
Bharata

Bharata a une excellente réponse détaillée à ce sujet, mais je voulais juste ajouter un ajout que j'ai identifié avec un problème similaire.

Nous avions un en-tête de sécurité de contenu x-webkit-csp qui s'est avéré être le coupable. Le supprimer et tout a fonctionné via le proxy d'image.

La réponse de Google a été que x-webkit-csp est déconseillé et d'utiliser à la place l'en-tête Content-Security-Policy. Cependant, cela semble être un bug qu'un en-tête non pris en charge génère une erreur fatale plutôt que de simplement l'ignorer.

2
Mark Walker