2017-11-09 2 views
0

Ich brauche eine Nonce auf Skript und Stilelemente.Pug/Jade Kompilierung Wert für nonce Attribut

Mit Mops Ich schreibe:

script(nonce="some-nonce") 

und es gibt:

<script nonce></script> 

während ich erwarte:

<script nonce="some-nonce"></script> 

Ich denke an versuchen, den Quellcode der Mops zu bearbeiten um dies zu beheben, aber das wird eine Menge Aufwand sein.

Ich habe eine issue auf Github über diese, aber ich frage mich, ob jemand eine Lösung oder Workaround kennt?

+0

Für jeden mit diesem Problem könnte es sein, dass dev tools das nonce nicht anzeigen, obwohl es da ist. –

Antwort

0

Ich habe versucht, dies in einer CodePen zu reproduzieren, aber kein Erfolg (es funktionierte wie erwartet). Überprüfen Sie die Ausgabe des Pen und sehen Sie, dass das Attribut ordnungsgemäß über kopiert wird:

<script nonce="some-nonce">console.log("test");</script> 

Vielleicht hat mit einer out-of-date-Mops-Version auf Ihrem Build-System zu tun? Wenn alles andere fehlschlägt, können Sie auch einfach reines HTML in Pug eingeben (eine Demo dieser Problemumgehung finden Sie im CodePen).

+0

Auf meiner Seite (localhost) überprüfe ich die Quelle der Seite und es zeigt die Nonce. Aber wenn ich die Elemente inspiziere, ist es nur "Nonce". Auch ich habe npm-Test auf Mops ausgeführt, nachdem ich meinen eigenen Test für nonce hinzugefügt habe, und es hat bestanden. Es scheint also kein Problem mit Mops zu sein, aber etwas entfernt das Nonce beim Laden der Seite oder so ... Eine Alternative zu einem Nonce ist die Verwendung eines Hashes (dies ist für Content-Security = Policy), aber das hat auch nicht geklappt! .... viele Stunden ohne Erfolg hier, vielen Dank für den Versuch, trotzdem zu helfen. –

+0

nonce1 funktioniert, noncey funktioniert, nur nicht nonce. Wie auch immer, ich habe gerade gemerkt, dass es bedeutet "Nummer einmal verwendet" und .... Ich habe es auf 2 Stil/Skript Elemente sooo .... wow ich fühle mich wie ein Idiot, nur testen ... oh, immer noch nicht funktioniert. –

+0

Ich gehe davon aus, dass Sie die in den Google-Dokumenten aufgeführten Dinge gelesen oder versucht haben (https://developers.google.com/web/fundamentals/security/csp/#if_you_absolutely_must_use_it)? – gandreadis