J'utilise captcha lors du chargement de la page mais cela bloque pour des raisons de sécurité
Je suis confronté à un problème:
Politique de sécurité du contenu: les paramètres de la page ont bloqué le chargement d'une ressource à http://www.google.com/recaptcha/api.js?onload=myCallBack&render=explicit ("script-src http://test.com:8080 'unsafe-inline' 'unsafe-eval'")) .
J'ai utilisé les balises méta et js suivantes:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
<script src="http://www.google.com/recaptcha/api.js?onload=myCallBack&render=explicit" async defer></script>
Vous avez dit que vous ne pouvez charger des scripts qu'à partir de votre propre site (auto). Vous avez ensuite essayé de charger un script à partir d'un autre site (www.google.com) et, comme vous l'avez restreint, vous ne pouvez pas. C'est tout l'intérêt de la politique de sécurité du contenu (CSP).
Vous pouvez changer votre première ligne en:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://www.google.com">
Sinon, il peut être intéressant de supprimer complètement cette ligne jusqu'à ce que vous en appreniez plus sur le CSP. Votre CSP actuel est quand même assez laxiste (autorisant unsafe-inline
, unsafe-eval
et un default-src
de *
), de sorte que vous n’ajoutez probablement pas trop de valeur pour être honnête.
Avoir un type d'erreur similaire. Tout d'abord, j'ai essayé d'ajouter les balises META dans le code, mais cela n'a pas fonctionné.
J'ai découvert que sur le serveur Web nginx, vous pouvez avoir un paramètre de sécurité qui peut bloquer le code externe à exécuter:
#security directives
server_tokens off;
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://ajax.googleapis.com https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net; img-src 'self' https://ssl.google-analytics.com https://s-static.ak.facebook.com https://assets.zendesk.com; style-src 'self' 'unsafe-inline' https://assets.zendesk.com; font-src 'self' https://fonts.gstatic.com https://themes.googleusercontent.com; frame-src https://player.vimeo.com https://assets.zendesk.com https://www.facebook.com https://s-static.ak.facebook.com https://tautt.zendesk.com; object-src 'none'";
Vérifiez la politique de sécurité du contenu, vous devrez peut-être ajouter la référence source.