Из соображений безопасности нам необходимо удалить unsafe-eval
из заголовка политики безопасности контента в нашем приложении. Но после его удаления, мы получим ошибку консоли говоряОшибка консоли администратора тегов Google после удаления небезопасного eval из заголовка CSP
вызова Eval() или связанной функцию заблокированного ПСУ
Мы добавили «https://www.googletagmanager.com» домен к script-src
, а также, но все-таки это запрашивает ошибку.
Есть ли способ разрешить только unsafe-eval
для домена менеджера тегов Google? Или будет другая альтернатива?
Образец Аналитическое фрагмент кода ниже, что мы используем в нашем сценарии
(function (w, d, s, l, i) {
w[l] = w[l] || []; w[l].push({
'gtm.start':
new Date().getTime(), event: 'gtm.js'
}); var f = d.getElementsByTagName(s)[0],
j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src =
'//www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-123456');
Я обновил сообщение, включив фрагмент кода, который мы используем для менеджера тегов. Не уверен, можем ли мы пойти с вашим предложением. – Hasantha
Чтобы избежать путаницы - я не предлагаю добавить код, я указывал, что Google * автоматически * добавляет eval-вызовы в файл gtm.js, если вы используете пользовательские переменные javascript. Таким образом, предложение скорее попытается, если ваш csp будет работать в контейнере без пользовательских переменных javascript, и если да, то посмотрите, сможете ли вы как-то без них. –
Я обновил вопрос, включив код javascript, который я использовал, и находится в файле _layout. – Hasantha