Почему архитектура изоляции базы данных EmDash знаменует новую эру безопасной разработки CMS
Проблема плагинов, о которой никто не хочет говорить
Будем честны: плагины WordPress — это кошмар для безопасности, с которым мы коллективно решили смириться. Каждый установленный плагин представляет собой потенциальную точку входа в вашу базу данных, файлы и, в конечном итоге, в данные ваших пользователей. Средняя установка WordPress содержит десятки таких потенциальных уязвимостей, которые сидят прямо в админ-панели, ожидая zero-day-уязвимости или неправильно настроенных прав доступа, чтобы превратиться в нарушение безопасности.
Это не новость. Исследователи в области безопасности годами кричат об уязвимостях плагинов WordPress. Однако мы по-прежнему имеем миллионы сайтов, работающих на архитектуре, где «сторонний код имеет полный доступ к базе данных» воспринимается как фича, а не как баг.
Поэтому, когда Cloudflare выпустила EmDash версии 1.0 с изолированными (в песочнице) плагинами, которые буквально не могут обращаться к базе данных, сообществу веб-разработчиков стоит обратить на это внимание — не потому, что это идеальный CMS, а потому что это представляет собой давно назревший философский сдвиг.
Что на самом деле означает «не может обращаться к базе данных»
Архитектура EmDash обеспечивает строгую изоляцию между кодом плагинов и слоем данных. Когда плагин работает в EmDash, он функционирует в изолированной среде с нулевым прямым доступом к базе данных. Нужны данные? Вы обращаетесь через API. Хотите что-то сохранить? То же самое — вы взаимодействуете с интерфейсом, а не с сырым SQL.
Это не просто показная безопасность. Это означает, что даже если плагин содержит вредоносный код или будет скомпрометирован, зона поражения будет значительно меньше. Скомпрометированный плагин EmDash может раздражать пользователей или нарушать функциональность, но он не сможет незаметно выкачать вашу полную базу данных пользователей или внедрить вредоносный контент в ваши страницы.
Для разработчиков, создающих решения для клиентов — особенно в отраслях с требованиями к соблюдению нормативных требований, таких как здравоохранение или финансы, — такая архитектурная гарантия неоценима. Вы не полагаетесь на то, что каждый поддерживающий плагин разработчик будет следовать лучшим практикам безопасности; вы полагаетесь на сам фреймворк, который обеспечивает соблюдение границ.
Реестр AT Protocol: другая модель экосистемы
EmDash также поставляется с поддержкой реестра AT Protocol, что интересно с точки зрения распределенной сети. Для тех, кто не в курсе, AT Protocol (базовый протокол Bluesky) предназначен для децентрализованных социальных сетей с портативной идентичностью и контентом. Интеграция этого протокола в реестр CMS предполагает видение, при котором обнаружение и распространение плагинов могут работать иначе, чем в централизованных маркетплейсах, к которым мы привыкли.
Представьте установку плагинов, где личность автора криптографически верифицируема, обновления не могут быть перехвачены, а репутация плагина следует за ним при каждой новой установке. Именно в этом направлении позволяет двигаться AT Protocol.
Станет ли это основным преимуществом или останется нишевой функцией, во многом зависит от уровня принятия. Но приятно видеть, что новая CMS думает об архитектуре распространения плагинов с нуля, а не просто копирует модель WordPress, надеясь на иной результат.
Где EmDash действительно выигрывает
Будем практичны. EmDash версии 1.0 не заменит завтра ваш существующий сайт на WordPress и не сделает Ghost устаревшим. Что она действительно предлагает, так это привлекательные возможности для конкретных сценариев использования:
Новые проекты, где безопасность первостепенна. Если вы строите новую платформу с нуля и можете выбрать технологический стек, изолированная архитектура EmDash означает, что вы не наследуете технический долг в области безопасности, характерный для традиционных моделей CMS с плагинами.
Headless или декуплированные архитектуры. EmDash хорошо взаимодействует с современными фронтенд-фреймворками. Если вы создаете фронтенд на React или Vue и нуждаетесь в бэкенде с контентным API, модель изоляции делает это более чистым решением — вы и так мыслите категориями границ API.
Организации, ориентированные на комплаенс. Если вы работаете в здравоохран