Problème rencontré lors de l'installation du script HTML ?

Je rencontre un problème lors de l’installation du script Pure Chat sur mon forum, car Discourse active un filtre de liste blanche pour des raisons de sécurité. J’ai essayé d’ajouter quelques liens Pure Chat à la liste blanche, mais l’onglet de conversation Pure Chat n’apparaît toujours pas. Pourriez-vous m’aider ? Voici le message d’erreur :

legacy.111147.js:1 Uncaught EvalError: Refused to evaluate a string as JavaScript because ‘unsafe-eval’ is not an allowed source of script in the following Content Security Policy directive:

at new Function (<anonymous>)
at Function.b.template (legacy.111147.js:1)
at Module.<anonymous> (legacy.111147.js:32)
at n (legacy.111147.js:1)
at Object.<anonymous> (legacy.111147.js:32)
at n (legacy.111147.js:1)
at legacy.111147.js:1
at legacy.111147.js:1

Quelqu’un sait-il comment résoudre ce problème ? Si je désactive la CSP, le script fonctionne correctement. Mais comment activer la CSP tout en assurant le bon fonctionnement du script ?

1 « J'aime »

Ajoutez votre source de script dans le paramètre content security policy script src.

J’ai ajouté ces liens d’erreur lorsque je les ai vus dans l’onglet de la console :slight_smile:

mais cela ne fonctionne toujours pas correctement.

1 « J'aime »

Vous utilisez la fonctionnalité de manière incorrecte ; vous devez uniquement autoriser le domaine, et non chaque URL individuelle.

Peut-être que le texte doit être amélioré ici @tshenry ?

2 « J'aime »

Merci pour votre aide, je vais essayer de corriger à nouveau.

1 « J'aime »

mais le problème persiste : le script PureChat ne s’affiche pas lorsque j’active la CSP, même si j’ai ajouté deux nouveaux liens.

1 « J'aime »

Transparence totale : je ne me considère pas comme un guru du CSP !

Cela dit, je pense qu’il existe des scénarios où il serait idéal d’autoriser le domaine en blanc, et d’autres où il vaut mieux cibler les scripts individuels. Je suis presque certain que cela dépend du nombre de scripts que vous devez autoriser, de la confiance que vous accordez à la source, etc. J’ajouterai une note au guide mentionnant que vous pouvez utiliser le domaine comme solution universelle si nécessaire.

Les paramètres illustrés dans les captures d’écran fournies étaient certainement un peu excessifs, mais je suppose que c’était simplement une tentative de couvrir tout, puisque rien ne fonctionnait.

Je viens d’ajouter Pure Chat à mon site de test à titre d’expérience. J’ai pu le faire fonctionner sur Chrome en utilisant un hachage, mais cela n’a pas suffi pour Safari et Firefox. J’en ai parlé à Penar et cela semble être l’une de ces situations malheureuses qui nécessiteront 'unsafe-inline', comme mentionné dans :


@BishopV Je pense que votre seule option, si vous choisissez de rester avec Pure Chat, est de supprimer toutes les entrées que vous avez dans ce paramètre et d’ajouter 'unsafe-inline', au détriment de la sécurité.

Avez-vous envisagé d’utiliser Setup HubSpot chat Integration à la place ? Cela semble s’intégrer très bien avec notre politique CSP.

2 « J'aime »

Quoi qu’il en soit, le pire scénario possible serait que quelqu’un encode en dur 20 URL uniques provenant du même domaine…

2 « J'aime »

Merci pour l’aide. Je pense que HubSpot est maintenant ma solution. Je suis ravi d’avoir choisi Discourse comme backend ; il y a beaucoup d’aide et de soutien ici.

3 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.