Nefunkcny google tag manager a CSP
- MKI-Miro
- Člen | 278
Ahojte
Neviem ako zapisat googletagmanager v configu CSP aby fungoval, stale mi to pise:
gtm.js?id=GTM-5GBV9T3:499 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'nonce-EQJMr+csytekQbNeb1tbUQ==' 'self' 'unsafe-inline' 'unsafe-inline' connect.facebook.net www.google-analytics.com googletagmanager.com www.googletagmanager.com www.google.com googleads.g.doubleclick.net www.gstatic.com". Note that 'unsafe-inline' is ignored if either a hash or nonce value is present in the source list.
Cela adresa je https://www.googletagmanager.com/gtm.js?…
sciprt mam uapisany takto:
<script n:nonce n:syntax="off">
...
V com moze byt chyba?
Dakujem
- Ondřej Kubíček
- Člen | 494
dyt je to napsané v té chybě, pokud je přítomen nonce, tak je
ignorováno unsafe-inline
to csp je celý blbě nastavený, dej tam strict-dynamic
a
nevyjmenovávej konkrétní domény
- MKI-Miro
- Člen | 278
ak nepouzijem v scripte n:nonce tak mi to hodi rovnaku chybu
Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'nonce-kwSmFIpxX992Vizacsc3Rg==' 'self' 'unsafe-inline' 'unsafe-inline' connect.facebook.net www.google-analytics.com googletagmanager.com www.googletagmanager.com www.google.comgoogleads.g.doubleclick.net www.gstatic.com". Note that 'unsafe-inline' is ignored if either a hash or nonce value is present in the source list.
Ako spravne napisat ten strict-dynamic ?
csp:
default-src:
- self
script-src: [
nonce
self, unsafe-inline, 'unsafe-inline', strict-dynamic
]
takto?
vdaka
- David Grudl
- Nette Core | 8227
Podpora strict-dynamic asi nebude moc velká. A domény je potřeba vyjmenovat pro prohlížeče, které nepodporují nonce.
Osobně bych se na použití CSP zatím vykašlal, první dvě verze jsou špatné, Google to oficiálně nepodporuje, málokdo ti poradí, jak to udělat fakt dobře a přínos je diskutabilní.
- Jakub Bouček
- Člen | 54
Už jsi to skoro chytil, ale mícháš tam zápis prvků v neon
kódu, který ti to rozbil.
Používám tento zápis:
http:
csp:
script-src:
- 'strict-dynamic'
- 'nonce'
- 'unsafe-inline'
- 'http:'
- 'https:'
frame-ancestors: none
frame-src:
- https://www.googletagmanager.com/
- self
form-action: self
object-src: none
style-src: self
base-uri: none
Vysvětlení, jak se vrství verze CSP 1, 2 a 3 je v tomto demu od @spaze: https://exploited.cz/…p/strict.php