Безпека.

Вивчення DXPR BuilderКерування сайтомВідповідність вимогам

Ця сторінка перелічує те, що DXPR Builder захищає сам, і те, що вирішуєте ви: хто може редагувати, чи вивід для відвідувачів проходить через фільтри текстового формату, і які файли редактори можуть завантажувати.

Вивід конструктора та текстові формати

Конструктор зберігає сторінку як HTML у полі й показує цей HTML як збережено. Фільтри текстового формату типово не запускаються на полях конструктора. Користувач, який має Edit with DXPR Builder і може редагувати сторінку, тому може додати до неї будь-який HTML, включно зі скриптами в елементі HTML. Надавайте дозвіл лише довіреним ролям; Drupal позначає його як обмежений на сторінці дозволів.

Apply text format filters to frontend content у DXPR Studio > DXPR Builder > General Settings > Text Filters запускає текстовий формат поля для користувачів, які не є редакторами. Редактори продовжують бачити сирий вміст. Обмежувальний формат також може здирати розмітку конструктора, тож тестуйте з ним сторінки.

Вивід ШІ має власний фільтр. У DXPR Studio > DXPR Builder > AI AI Output Filtering обмежує створений вміст до Allowed domains, які ви перелічуєте.

Дозволи користувачів

DXPR Builder визначає три дозволи:

Дозвіл Мітка Надає
edit with dxpr builder Edit with DXPR Builder Використання конструктора на вмісті, який користувач може редагувати; кожен такий обліковий запис використовує ліцензію
administer dxpr builder configuration Administer DXPR Builder configuration General Settings, AI settings, User Licenses, Content items і Migrations
administer dxpr_builder_profile Administer dxpr builder profile User Profiles

Сторінки адміністрування Page Templates і User Templates потребують дозволу ядра Administer site configuration.

Редактору також потрібен доступ оновлення до самого вмісту, наприклад Basic page: Edit any content. Кожне збереження знову перевіряє його на сервері.

Маршрути AJAX і CSRF-захист

Ці маршрути приймають запити лише з CSRF-токеном і лише від облікового запису, який має Edit with DXPR Builder і не виключений із редагування:

  • /dxpr_builder/ajax (збереження, шаблони, блоки та подання)
  • /dxpr_builder/ajax/ai/chat (текстовий помічник ШІ)
  • /dxpr_builder/ajax/ai/image (створення зображень ШІ)
  • /dxpr_builder/ajax/ai/image/edit (редагування зображень ШІ)
  • /dxpr_builder/ajax/file_upload (завантаження файлів)

/dxpr_builder/user-settings і /dxpr_builder/entity-link-suggestions також вимагають токена та дозволу. Редактор отримує свіжі токени з /dxpr_builder/csrf, який відповідає лише обліковим записам, які можуть редагувати. /dxpr_builder/media-library потребує View media. Ручне налаштування не потрібне.

Профілі користувачів

Профілі користувачів формують редактор для кожної ролі: які Elements, Blocks, Views, Page templates, Global user templates і Icon sets бачать редактори, і які кнопки текстового редактора вони отримують. Профіль не є межею безпеки. Маршрут збереження приймає будь-який HTML від користувача з дозволом, тож ховання елемента HTML не зупиняє рішучого редактора. Більше одного профілю потребує рівня DXPR Enterprise.

Завантаження файлів

Маршрут завантаження /dxpr_builder/ajax/file_upload:

  • Приймає лише зображення GIF, JPEG, PNG, WebP, AVIF і SVG, а також відео WebM, Ogg, MP4 і QuickTime, через перевірку завантаження файлів Drupal.
  • Обмежує розмір файла лімітом завантаження PHP.
  • Зберігає файли в dxpr_builder_images, dxpr_builder_videos або dxpr_builder_files у типовій теці файлів, як постійні файли.

Файли SVG можуть містити скрипти, які запускаються, коли хтось відкриває файл напряму. Це ще одна причина тримати дозвіл редагування для довірених ролей.

На сайті, чия типова файлова система приватна, файли в приватних теках dxpr_builder_images і dxpr_builder_videos подаються кожному відвідувачу, бо сторінки конструктора показують їх публічно. Не завантажуйте конфіденційні файли через конструктор.

Що далі?

Налаштування продуктивності для швидших сторінок, щоб продовжити ознайомлення з DXPR Builder.