Simon Willison анонсировал релиз datasette-acl 0.6a0 — альфа-версии плагина управления правами доступа для Datasette. Главное изменение: система выходит за пределы таблиц и становится универсальным механизмом контроля доступа к ресурсам внутри инстанса. Основную часть работы сделал Alex Garcia.
Контекст
Datasette — open source Python-инструмент от Simon Willison (сооснователя Django), который превращает SQLite-базы в публичные или приватные API с веб-интерфейсом. Нишевой инструмент для аналитиков и исследователей данных, но с растущим применением в командах: быстро поднять дашборд, поделиться срезом данных, встроить SQL-playground в продукт.
До версии 0.6a0 datasette-acl позволял задавать права на уровне отдельных таблиц — кто может читать, кто писать. Это покрывало базовые сценарии, но не давало контроля над другими ресурсами: запросами, представлениями, кастомными маршрутами или HTML-приложениями, которые Datasette теперь умеет хостить внутри себя (функция Datasette Apps, вышла параллельно). Новый релиз начинает исправлять это.
Показательно, что релиз вышел синхронно с анонсом Datasette Apps — возможности хостить кастомные HTML-приложения прямо внутри Datasette. Без нормальной ACL-системы открывать такие приложения нескольким пользователям с разными ролями было бы небезопасно.
Аналитика
Грамотный контроль доступа — это то, что отделяет прототип от продукта. Большинство легковесных data-инструментов застревают на уровне «либо всё публично, либо всё закрыто паролем». Datasette идёт к модели, которую корпоративные инструменты типа Metabase или Apache Superset реализуют через сложные конфиги: ролевое разграничение на уровне ресурсов. Только без enterprise-overhead.
Для AI-first команд это важно потому, что данные всё чаще становятся частью агентских пайплайнов. Агент получает доступ к Datasette-инстансу, выполняет SQL-запросы через MCP или REST — и хочется чётко контролировать, какой агент видит какую таблицу или представление. Без ACL либо даёшь агенту всё, либо поднимаешь отдельный инстанс. Оба варианта плохи.
Движение от table-only к general resource-sharing — это архитектурный сигнал: Datasette целится в сценарии, где один инстанс обслуживает несколько команд или клиентов с разными уровнями доступа. Для SaaS-сценариев это принципиально.
Кейсы применения в бизнесе
B2B-SaaS стартап. Команда использует Datasette как внутренний data-explorer: аналитики видят все таблицы, менеджеры — только агрегаты, клиенты — только свои данные через изолированные представления. До datasette-acl 0.6a0 это требовало трёх отдельных инстансов или кастомного прокси. Теперь один инстанс, разные роли, гранулярные права на каждый ресурс.
Корпорация с legacy. Datasette как read-only обёртка над аналитическими дампами из основной БД. Разные департаменты видят разные представления одних и тех же данных. Юридический отдел не должен видеть HR-данные, HR — финансовые. ACL на уровне ресурсов решает это без изменений в основной системе.
SMB или локальный бизнес в КР. Небольшая компания поднимает Datasette для внутренней отчётности: директор видит всё, менеджер по продажам — только свои сделки, бухгалтер — только финансовые таблицы. Быстро, без дорогого BI-решения, на VPS за $10/мес.
Кейсы в личной жизни
Разработчик или data engineer. Хостишь Datasette с несколькими проектами на одном сервере. Клиенту A даёшь доступ только к его данным, клиенту B — только к его. Раньше — два инстанса и двойные расходы. С ACL-системой — один инстанс, изолированные права.
Контент-мейкер или исследователь. Публикуешь открытые данные (статистика, парсинг, архивы), но часть таблиц хочешь оставить приватной или доступной только подписчикам. datasette-acl позволяет выдавать токены с ограниченным доступом без поднятия отдельного бэкенда авторизации.
Студент или фрилансер. Учебный проект или портфолио: Datasette как API для дипломной работы или клиентского ТЗ. Научиться настраивать ACL в Datasette — это понять принципы RBAC и resource-based authorization, которые потом применяются в любом фреймворке.
Как применить сегодня
- Установи плагин:
datasette install datasette-acl==0.6a0(альфа, не для прода без тестирования). - Изучи документацию datasette-acl на GitHub — Simon Willison и Alex Garcia активно пишут примеры конфигов для ролей и ресурсов.
- Если уже используешь Datasette в команде — проверь, какие ресурсы (запросы, представления, кастомные маршруты) сейчас открыты всем и составь матрицу доступа.
- Для AI-агентов, которые ходят в Datasette через MCP или REST: выдавай отдельный токен с минимальными правами на конкретные таблицы/представления — принцип least privilege.
- Следи за стабильным релизом: версия 0.6a0 — альфа, но архитектура уже понятна. Stable-версия даст готовый паттерн для многопользовательских data-платформ.