Я использую FullCalendar.io в своем основном веб-приложении Asp.Net. Также я настроил CSP с NetEscapades.AspNetCore.SecurityHeaders.
Вот определения:
policy.AddContentSecurityPolicy(builder =>
{
builder.AddDefaultSrc().Self();
builder.AddConnectSrc()
.From("wss://localhost:*")
.From("ws://localhost:*")
.From("https://localhost:*")
.From("http://localhost:*")
.Self();
builder.AddObjectSrc().Self();
builder.AddBlockAllMixedContent();
builder.AddImgSrc().Self().From("data:").OverHttps();
builder.AddFormAction().Self().OverHttps();
builder.AddFontSrc().Self().From("data:").OverHttps();
builder.AddStyleSrc()
.Self()
////.UnsafeInline()
.WithNonce()
.OverHttps();
builder.AddScriptSrc()
.Self()
.WithNonce()
.OverHttps();
builder.AddBaseUri().Self().OverHttps();
builder.AddFrameAncestors().Self().OverHttps();
builder.AddWorkerSrc().Self().OverHttps();
builder.AddManifestSrc().Self().OverHttps();
});
Мой календарь очень простой:
$(document).ready(function () {
var antiForgeryToken = $('input[name = "AFTFFINNIA"]').val();
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth',
locale: 'de-CH',
firstDay: 1,
height: "auto",
headerToolbar: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'
},
events: {
url: '/Kalender/Termine',
method: 'POST',
extraParams: {
AFTFFINNIA: antiForgeryToken
},
},
});
calendar.render();
});
В Chrome (Windows) это работает нормально. Но в iOS и macOS с Safari календарь не отображается.
Сообщение об ошибке: Отказано в применении таблицы стилей, поскольку ее хэш, ее одноразовый номер или «небезопасно-встроенный» не отображается в директиве style-src Политики безопасности контента. (Индекс, строка 1)
После этого возникает ошибка типа: null не является объектом (оценка «i.cssRules»).
Я читал: Политика безопасности контента (CSP) Fullcalendar.io.
Кто-нибудь знает, почему это не работает в Safari?
Содержание -Политика безопасности Заголовок:
style-src 'self' https: 'nonce-+1v9CuQxiH8qkVG0PK4Lo/D/kV0oI2jIw7Eb2xxemXY=';
script-src 'self' https: 'nonce-+1v9CuQxiH8qkVG0PK4Lo/D/kV0oI2jIw7Eb2xxemXY=';
default-src 'self';
connect-src wss://localhost:* ws://localhost:* https://localhost:* http://localhost:* 'self';
object-src 'self';
block-all-mixed-content;
img-src 'self' data: https:;
form-action 'self' https:; font-src 'self' data: https:;
base-uri 'self' https:;
frame-ancestors 'self' https:;
worker-src 'self' https:;
manifest-src 'self' https:
Подробнее здесь: https://stackoverflow.com/questions/792 ... ri-browser
Fullcalendar.io не работает с CSP nonce в браузере Safari ⇐ IOS
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как я могу получить доступ к пользовательскому $ nonce для CSP в шаблонах всех видов?
Anonymous » » в форуме Php - 0 Ответы
- 20 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу получить доступ к пользовательскому $ nonce для CSP в шаблонах всех видов?
Anonymous » » в форуме Php - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-