Цель: < /p>
С сервера колбы я хочу использовать функцию url_for () внутри файлов JavaScript для расчета правильного URL. Шаблон документации) и вызовите url_for (), чтобы сохранить базовую переменную сценария, к которой вы можете получить доступ в других модулях с чистым JavaScript, которые не обрабатываются render_template (). < /P>
К сожалению, без включения CSP, современные браузеры будут полностью игнорировать inline теги. Поэтому необходимо создать профиль безопасности контента, который я сделал следующим образом, пытаясь сделать наиболее разрешительную политику когда -либо: < /p>
@app.after_request
def add_csp(response):
response.headers['Content-Security-Policy'] = ("default-src * data: blob: filesystem: about: "
"ws: wss: 'unsafe-inline' 'unsafe-eval' 'unsafe-dynamic'; script-src * "
"'unsafe-inline' 'unsafe-eval' 'unsafe-hash'; connect-src * 'unsafe-inline'; "
"img-src * data: blob: "'unsafe-inline'; frame-src *; style-src * data: "
"blob: 'unsafe-inline';font-src * data: blob: 'unsafe-inline';")
return response
< /code>
Это должно работать. Я все позволил. (В любом случае, все, что я могу найти) К сожалению, при запуске моего сценария я вижу это: < /p>
Content-Security-Policy: The page’s settings blocked an inline script (script-src-elem) from being executed because it violates the following directive: “script-src * 'unsafe-inline' 'unsafe-eval' 'unsafe-hash' 'nonce-bW96LWV4dGVuc2lvbjovL2E0ZTMxZmFjLTI5NjQtNDUxMC1iNDhjLTExOTYyODdkMWMzZC8='” index.html:14:36
< /code>
Это сценарий, на который он жалуется: < /p>
const GRAY_LIGHT = {{ url_for('static',filename='images/gray.png') }};
const RED_LIGHT = {{ url_for('static',filename='images/red.png') }};
console.log("RED_LIGHT = "+RED_LIGHT+", GRAY_LIGHT = "+GRAY_LIGHT);
< /code>
Как что -то не может сопоставить * и «небезопасно встроение»? После многих часов я столкнулся с этой страницей: (документация Mozilla CSP) < /p>
Если директива содержит нерею и небезопасную, то браузер игнорирует небезопасно. поместили это туда. Но я не могу найти документации, которая описывает это поведение, и как его отключить. Все, что я действительно хотел сделать, это использовать функцию url_for (), и я потратил более 2 дней, пытаясь сделать это простым. Я никогда раньше не сталкивался с проблемами CSP.
Подробнее здесь: https://stackoverflow.com/questions/795 ... his-be-dis
Flask, кажется, автоматически добавляет Nonce в мои директивы CSP. Можно ли это отключить? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как я могу получить доступ к пользовательскому $ nonce для CSP в шаблонах всех видов?
Anonymous » » в форуме Php - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу получить доступ к пользовательскому $ nonce для CSP в шаблонах всех видов?
Anonymous » » в форуме Php - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-