Перейти к основному содержимому

Доступ, роли и процессы

Каталог на одного публикатора живёт без ролей: есть человек, который выкладывает файлы. Каталог организации почти сразу становится общим. Тогда нужно договориться, кто создаёт набор, кто его проверяет, кто видит файл и кто вообще может завести учётную запись.

Практический вывод главы такой. Большинству государственных порталов хватает двух ролей — администратор и редактор организации — и черновика, который не виден в поиске. Проверка перед публикацией нужна, когда публикуют люди, которым вы не доверяете выложить данные сразу: внешние авторы научного репозитория, сотни муниципалитетов, пользователи хаба. Ограниченный доступ нужен персональным, лицензируемым и чувствительным данным, и при этом описание набора остаётся открытым. Открытая регистрация нужна только там, где публикуют внешние люди, и тогда — с приглашением или проверкой, а не для всех подряд. Читать описания и скачивать открытые файлы учётная запись не должна требовать вовсе.

В конце главы — замер на 1125 порталах CKAN 12 октября 2026 года: у скольких открыта регистрация, сколько из них уже заполнено спамными учётными записями и какие расширения входа и доступа стоят на самом деле.

Что это​

Под словами «доступ и роли» прячутся пять разных вопросов. Справочник научных репозиториев re3data разделяет по крайней мере три из них: кто может зайти в репозиторий, кто может скачать данные и кто может их загрузить. Ответы на них не обязаны совпадать: в Zenodo загружает любой зарегистрированный, а скачать закрытый файл можно только с разрешения автора.

Кто публикует. Организация-издатель, редактор, куратор, администратор. Роль — набор прав, который выдают человеку в пределах организации или коллекции: «редактор организации А» может править наборы А и не может трогать наборы Б. Права дают роли, а не отдельному человеку, чтобы при смене сотрудника не перебирать сотню галочек.

Что происходит до публикации. Черновик — набор, который уже заведён, но не виден в поиске и в выгрузке. Модерация, или проверка перед публикацией, — шаг, на котором другой человек (куратор, модератор, администратор организации) смотрит набор и выпускает его или возвращает автору. Журнал изменений записывает, кто, когда и что поменял в описании.

Кто видит данные. Открытый файл, файл после принятия условий, после регистрации, по одобренной заявке, после даты эмбарго, только в защищённой среде или вовсе никому — только описание. Ограничить можно всю запись, только файлы или отдельный файл, а у облачных сервисов — даже отдельные колонки и строки таблицы.

Как входят. Здесь два термина, которые часто путают. Аутентификация — проверка, кто вы: пароль, второй фактор, государственная учётная запись. Авторизация — проверка, что вам можно: роль, права на набор, одобренная заявка. Единый вход (SSO, single sign-on) переносит аутентификацию из каталога во внешнюю систему организации: сотрудник входит той же учётной записью, что и в почту. Для этого используют два стандарта. SAML 2.0 — стандарт OASIS 2005 года, на нём работают университетские федерации и корпоративные каталоги пользователей. OpenID Connect — слой проверки личности поверх протокола OAuth 2.0; его поддерживают Keycloak, облачные поставщики учётных записей и многие государственные системы входа.

Кто может завести учётную запись. Регистрация бывает закрытой (учётные записи заводит администратор или приглашают по почте), открытой с проверкой (заявку одобряет администратор, разрешены только адреса определённых доменов), открытой с капчей и открытой для всех.

Зачем нужна​

Чтобы ведомства не правили чужое и было видно, кто отвечает. Когда на портал публикуют двадцать организаций, каждая должна видеть и менять только свои наборы. Роль заодно отвечает на вопрос пользователя «кто за это отвечает»: у набора видна организация и контакт, а не только имя сайта. Об издателе и организации в описании — в главе «Анатомия каталога».

Чтобы ошибку поймали до публикации. Опубликованный набор за часы забирают сборщики, поисковики и веб-архивы. Файл с необезличенными персональными данными, опубликованный по ошибке, потом почти невозможно убрать из всех копий. Черновик и второй взгляд перед публикацией дешевле, чем разбор утечки.

Чтобы показать данные, которые нельзя открыть. Микроданные обследований, медицинские записи, лицензируемые базы нельзя выложить всем, но о них нужно знать. В ЕС это уже обязанность. По Акту об управлении данными (регламент 2022/868, применяется с 24 сентября 2023 года) каждая страна держит единую информационную точку с перечнем охраняемых данных государственного сектора: формат, размер и условия повторного использования. Сами данные выдают по запросу, в том числе только в защищённой среде обработки. Перечни стран собирает европейский реестр охраняемых данных (European Register for Protected Data, ERPD) на data.europa.eu. Регламент о Европейском пространстве медицинских данных (2025/327) требует от органов доступа к медицинским данным открытого машиночитаемого каталога наборов с условиями доступа; эта часть применяется с 26 марта 2029 года.

Чтобы портал не заняли роботы. Открытая регистрация на публичном сайте — приглашение для спама. Роботы заводят учётные записи и от их имени создают организации, группы, наборы и запросы данных с рекламой казино и мошенническими ссылками. Так в 2013 году пришлось закрыть регистрацию на DataHub.io, в 2021 году спамом было забито демонстрационное demo.ckan.org, а у портала метеослужбы Туниса в 2025 году было больше 1,3 миллиона учётных записей и больше 45 тысяч спам-текстов в разделе запросов данных. Разработчики CKAN поэтому выключили открытую регистрацию по умолчанию: в 2.9.8, а в линейке 2.10 — только с 2.10.4. В 2.10.0–2.10.3 она по умолчанию снова открыта. Замер в конце главы показывает, что проблема не историческая.

Чтобы знать публикатора в лицо. На государственных порталах публикатор часто входит через государственную систему идентификации, и это не формальность: так портал знает, от имени какого ведомства опубликован набор. На data.gov.ru по методическим рекомендациям 2024 года поставщик — орган власти или местного самоуправления — входит через ЕСИА, его карточку проверяет администратор, публиковать может только проверенный поставщик, и наборы проходят модерацию. На норвежском data.norge.no описания регистрируют после входа через национальную систему ID-porten и только с ролью в реестре полномочий Altinn. На data.gouv.fr сотрудники организаций входят через ProConnect — государственный вход для специалистов на OpenID Connect, рядом с обычной регистрацией по почте.

Обратная сторона — цена. Каждая роль, шаг проверки и вид доступа — это настройка, которую нужно сопровождать, объяснять новым сотрудникам и проверять при обновлении платформы. Модерация, которую некому вести, превращается в очередь из сотни наборов, которые месяцами не выходят.

Варианты реализации​

Кто публикует: пять моделей прав​

Без ролей. Один человек или одна команда с общими правами. Так живут статические сайты, Git-репозитории и небольшие порталы. Этого хватает, пока публикует одна команда.

Организации с ролями. Набор принадлежит организации, у людей в организации роли. В CKAN их три: участник видит закрытые наборы организации, редактор создаёт, правит, удаляет наборы и переключает их между открытыми и закрытыми, администратор ещё и управляет участниками. Над всеми — системный администратор. В udata, на котором работает data.gouv.fr, роли администратора и редактора, а с версии 15.4.0 (март 2026 года) ещё и частичный редактор. В Socrata роли выдают на весь портал: администратор, публикатор, редактор, дизайнер, наблюдатель. Это самая распространённая модель на порталах открытых данных.

Коллекции с наследованием прав. Права выдают на коллекцию, и они переходят на всё, что внутри. Так устроены Dataverse (коллекции и наборы в них), DSpace (сообщества, коллекции, записи и файлы) и GeoNetwork, где у каждой группы свой набор прав на запись: просмотр, скачивание, показ на интерактивной карте, правка, уведомления. Модель удобна университету: факультет — коллекция, кафедра — коллекция внутри.

Сообщества с кураторами. Автор публикует сам, а сообщество решает, включить ли запись в свою коллекцию. Так работают InvenioRDM и Zenodo: у сообщества есть владелец, менеджеры, кураторы и читатели, а запись попадает в сообщество после проверки куратором.

Права на отдельный набор. Права выдают не по организации, а на каждый набор: в Huwise (бывший OpenDataSoft) — «просмотр», «просмотр и правка», «просмотр, правка и публикация» для пользователя или группы; в ArcGIS Online — уровни доступа «только владелец», группы, организация и все. В CKAN похожую роль играют соавторы набора (collaborators): с версии 2.9 администратор организации может дать отдельному человеку права участника или редактора на один набор. По умолчанию эта возможность выключена.

Чем тоньше права, тем дороже сопровождение. Матрица из двадцати ролей почти никогда не окупается: через год никто не помнит, зачем она так устроена, а ошибки в правах находят по жалобам.

Что происходит до публикации​

Публикация сразу. Сохранил — опубликовал. Так по умолчанию работают CKAN и DKAN 2.x: новый набор в DKAN сразу получает состояние «опубликован», если администратор не поменял настройку. Годится, если публикуют свои сотрудники и ошибку можно быстро исправить.

Черновик. Набор сохранён, но не виден в поиске. В CKAN многошаговая форма создания сохраняет набор черновиком, а в 2.12 появились кнопки «Опубликовать» и «Снять с публикации». В udata черновик — это закрытый набор; при работе через API флаг закрытости нужно передавать при каждом запросе, иначе набор станет публичным. В Huwise правки сохраняют отдельно и выпускают повторной публикацией. Черновик ничего не стоит и нужен всем, кроме совсем простых каталогов.

Раздельное право публиковать. Готовить набор может один, выпускать — другой. В Socrata редактор загружает данные, но публикует только администратор, публикатор или владелец набора. В Huwise права «создавать наборы» и «править все наборы» не включают право публиковать. Это ещё не проверка, но уже второй человек перед выходом набора.

Проверка куратором. Автор отправляет набор на проверку, куратор выпускает его или возвращает с замечанием. В Dataverse участник отправляет набор на проверку, куратор коллекции публикует или возвращает автору. В DSpace у коллекции настраивается процесс из нескольких шагов: проверить, отредактировать, окончательно одобрить. В GeoNetwork 4.4 процесс «черновик → на проверке → одобрено → снято» включают для всего каталога или отдельных групп, а правка одобренной записи создаёт рабочую копию, которую не видят посторонние до повторного одобрения. Тонкость GeoNetwork: по умолчанию даже при включённом процессе запись можно опубликовать без одобрения (параметр allowPublishNonApprovedMd), и это надо выключить отдельно. В Socrata одобрение перед публикацией включается в настройках, автоматическое или ручное. В CKAN такого шага в ядре нет, только расширения — о них ниже.

Журнал изменений. Кто, когда и что поменял. В CKAN с версии 2.10 журнал вынесен в отдельный модуль activity, который входит в поставку, но должен быть включён. Он хранит снимок набора при каждой правке и показывает разницу между версиями; посторонним подробности по умолчанию не видны. В научных репозиториях роль журнала играют версии: правка опубликованного набора в Dataverse создаёт новую версию, прежняя остаётся. О версиях — в главе «Постоянные идентификаторы, DOI и версии».

Часть проверки лучше отдать программе, а не человеку: обязательные поля, лицензия из списка, файл открывается, кодировка верна. Тогда куратор смотрит на содержание, а не на опечатки. Об этом — в главе «Полнота и детальность метаданных».

Кто видит данные: уровни доступа​

УровеньЧто делает пользовательГде встречается
Открытоскачивает без условийлюбой каталог
Открыто после принятия условийставит отметку «согласен» или заполняет короткую анкету«прямой доступ» в NADA, гостевая книга в Dataverse, закрытые наборы с автоматическим одобрением на Hugging Face
После регистрациивходит в системуфайлы общего пользования в NADA
По заявкеподаёт запрос, ждёт решения владельцаDataverse, InvenioRDM и Zenodo, DSpace (запрос копии), Huwise, Hugging Face с ручным одобрением, «лицензированные данные» в NADA
Эмбаргождёт даты, после которой файл откроетсяDataverse, InvenioRDM и Zenodo, DSpace
Защищённая средаработает с данными на чужом сервере или в специальном помещении, забирает только проверенные результаты«защищённая среда» в NADA, доверенные исследовательские среды, условие Акта об управлении данными
Только описаниеузнаёт, что данные есть и у кого их просить«данные недоступны» в NADA, реестр охраняемых данных ЕС

Как устроены эти уровни в каталогах микроданных, подробно разобрано в главе о каталогах микроданных.

Два уточнения. Регистрация — ещё не закрытый доступ. Словарь видов доступа Бюро публикаций ЕС считает публичным и набор за регистрацией или ключом API, если их может получить любой. Для открытых данных в смысле этой книги регистрация — уже барьер, но это другой разговор: см. глоссарий, статью «Общедоступные и открытые данные». И «по запросу» без срока ответа и без условий, записанных заранее, — не уровень доступа, а отказ, растянутый во времени.

Описание открыто, файл закрыт​

Закрывать описание вместе с файлом — плохой обмен. Скрытый набор нельзя найти, на него нельзя сослаться, и запрос на доступ некому отправить. Принципы FAIR прямо разделяют эти вещи: набор с закрытыми файлами может быть находимым и доступным по понятной процедуре, если его описание открыто и у него есть постоянный идентификатор.

Платформы ведут себя здесь очень по-разному, и это стоит проверить до выбора.

  • Умеют в ядре: Dataverse, InvenioRDM и Zenodo, DSpace, NADA — описание открыто, закрыты файлы, а пользователь видит, как их получить. В GeoNetwork скачивание — отдельное право, которое можно не давать гостям; оно защищает файлы, загруженные в сам GeoNetwork, но не внешние ссылки. Huwise показывает набор в каталоге всем, а содержимое — только выбранным пользователям и группам, с кнопкой «Запросить доступ»; кнопка работает, только если на портале включён режим маркетплейса.
  • Не умеют: в CKAN закрытый набор скрыт целиком, вместе с описанием. Открыть описание и закрыть отдельный файл позволяет только расширение ckanext-restricted. В Socrata закрытый набор не появляется в публичном каталоге вообще; можно закрыть лишь отдельные поля описания у открытого набора.

Чтобы закрытый набор нашли не только на сайте, условия доступа должны попасть в выгрузку описаний.

  • DCAT. Свойство dct:accessRights со значением из словаря Бюро публикаций ЕС: PUBLIC, RESTRICTED, NON_PUBLIC (в словаре есть и уточнения SENSITIVE и CONFIDENTIAL внутри NON_PUBLIC). В DCAT-AP 3.0.1 свойство необязательное, но европейский реестр охраняемых данных требует его у каждого набора и запрещает значение «открыто», а в HealthDCAT-AP оно обязательно вместе с указанием органа доступа к медицинским данным.
  • DataCite и OpenAIRE. Поле прав со значением из словаря COAR: открытый доступ, эмбарго, ограниченный доступ, только описание. Так режим доступа видят OpenAIRE и сборщики научных данных.
  • schema.org. Свойство isAccessibleForFree и текстовое conditionsOfAccess. Google Dataset Search читает первое и не требует, чтобы данные были открыты: ему нужна открытая страница с описанием, без входа и без запрета для робота.

О форматах выгрузки — в главе «Экспорт метаданных», о лицензии рядом с условиями доступа — в главе «Лицензии и условия доступа».

Насколько закрытый доступ вообще распространён, показывают два крупных репозитория. 12 октября 2026 года в Zenodo из 726 858 наборов данных были открыты 680 981 (94%), с закрытыми файлами — 41 715 (5,7%), под эмбарго — 4162 (0,6%). В Harvard Dataverse из 5,55 миллиона файлов закрыты 76 579 (1,4%) и ещё 1513 — под эмбарго. Закрытые файлы — исключение даже там, где их легко сделать.

Как входят​

Пароль на портале. Работает везде и годится для небольшой редакции. Слабое место — пароли, которые подбирают перебором. Защищает второй фактор: одноразовый код из приложения. В CKAN его даёт расширение ckanext-security, в Huwise и ArcGIS Online его можно сделать обязательным в настройках. Таиланд поставил двухфакторный вход в типовую сборку порталов: в замере расширение thaigdc2fa стоит на 160 из 250 тайских серверов CKAN.

Единый вход через систему организации. Публикатор входит учётной записью ведомства или университета по SAML или OpenID Connect. Нужен, когда публикаторов много, они приходят и уходят, а заводить и отключать им отдельные пароли некому. Уволенный сотрудник теряет доступ к порталу вместе с почтой. В Dataverse, InvenioRDM, DSpace, GeoNetwork, Huwise, Socrata и ArcGIS Online единый вход есть в ядре или в настройках сервиса, в CKAN — только расширениями.

Государственная система входа. ЕСИА в России, ID-porten в Норвегии, ProConnect во Франции. Портал получает подтверждённую личность и организацию публикатора, но привязывается к чужой системе: при её сбое не может войти ни один публикатор.

Научная учётная запись. ORCID — идентификатор исследователя, который научные репозитории принимают и как способ входа. Удобен репозиторию, куда приходят авторы из разных организаций.

Ключ для программ. Публикация через API идёт не по паролю, а по ключу (токену), который выдают на программу и отзывают отдельно. В CKAN токены есть с версии 2.9, а входящий в поставку модуль expire_api_token ограничивает срок их жизни.

Вход нужен публикатору, а не читателю. Если для просмотра описаний или скачивания открытых файлов портал требует учётную запись, это уже не вопрос безопасности, а дверь, закрытая для программ.

Кто может завести учётную запись​

ВариантКак устроеноКогда годится
Закрытая регистрацияучётные записи заводит администратор или приглашает администратор организации по почтепубликуют только сотрудники известных организаций; обычный случай государственного портала
Открытая с проверкойзаявку одобряет администратор, или регистрация разрешена только с адресов нужных доменоввнешние публикаторы есть, но их немного
Открытая с капчейлюбой может зарегистрироваться, капча отсекает простых роботовнаучный репозиторий, хаб, площадка с обсуждениями — вместе с проверкой того, что публикуют
Открытая для всехлюбой регистрируется и сразу может публиковатьпочти никогда для публичного каталога

Спамеру не нужна возможность публиковать наборы. Ему хватает любого места, где текст и ссылка появятся на открытой странице: профиль пользователя, новая организация или группа, запрос данных, комментарий. Поэтому важна не только регистрация, но и то, что может сделать новая учётная запись. В CKAN любой вошедший пользователь по умолчанию может создавать группы и организации (параметры ckan.auth.user_create_groups и ckan.auth.user_create_organizations), а в расширении запросов данных — создавать запросы и комментарии без проверки. В ArcGIS Hub Premium учётные записи сообщества, которые заводятся открытой регистрацией, по умолчанию получают роль публикатора. В Socrata самостоятельно зарегистрированная учётная запись, наоборот, не получает никакой роли на портале.

Капча помогает, но не решает. CKAN умеет Google reCAPTCHA второй версии: на регистрации, а с версии 2.11 ещё и на входе и сбросе пароля. Лучше работает автоматическая проверка содержимого: udata помечает подозрительные наборы, организации, профили, примеры использования и обсуждения по списку слов и отправляет их модератору.

Насколько это распространено​

По выгрузке реестра 1.27.0 ограниченный доступ хотя бы к части данных отмечен у 1131 каталога из 43 614, то есть у 2,6%. У 537 из них открытых данных нет вовсе, у 594 открытое и закрытое живёт рядом. Запросы — в приложении.

Интереснее, на каких платформах эти каталоги работают.

ПлатформаКаталогов с ограниченным доступомВсего в реестре, все типыДоля
DHIS2 (информационная система здравоохранения)727497%
Gen3 (платформа биомедицинских данных)293097%
Redivis (платформа данных для исследований)121392%
NADA11415972%
Pure (система учёта научной работы)13336936%
InvenioRDM4765%
Dataverse52571,9%
DSpace108301,2%
CKAN1219510,6%
GeoNetwork17640,1%

Здесь считаются все каталоги на платформе, какого бы типа они ни были. В профилях платформ числа меньше, потому что там учтён только основной тип: например, у CKAN 1951 каталог всего и 1906 порталов открытых данных, у DSpace 830 и 829 научных репозиториев, у NADA 159 и 158 каталогов микроданных.

Закрыть файл при открытом описании умеют в ядре и Dataverse, и DSpace, и InvenioRDM, но каталогов, где ограниченный доступ — заметная часть содержимого, на них единицы. Каталоги с закрытыми данными работают на платформах, где закрытость — норма: системы здравоохранения, биомедицинские платформы, каталоги микроданных. Вывод для выбора: если ограниченный доступ — главная задача, а не редкое исключение, смотрите на платформы, сделанные под неё, а не на портал открытых данных с расширением. Пометка в реестре относится к каталогу в целом: Harvard Dataverse в реестре открыт, хотя полтора процента его файлов закрыты.

Когда нужна, а когда нет​

СитуацияЧто нужноЧего не нужно
Одна команда публикует свои данныечерновик, закрытая регистрацияролей и модерации
Ведомство и подведомственные организации, региональный портал с муниципалитетамиорганизации с ролями администратора и редактора, черновик, журнал изменений, закрытая регистрация с приглашениямимногошаговой модерации: каждая организация отвечает за своё сама
Национальный портал, который собирает описания из других каталоговправа только для своей редакции; публикаторы работают в своих каталогахучётных записей для сотен публикаторов на национальном портале
Университетский репозиторий, куда загружают сотрудникиколлекции факультетов, проверка куратором библиотеки, единый вход через университет, эмбаргооткрытой регистрации для всех
Общий научный репозиторий или хаб для внешних авторовоткрытая регистрация с капчей, кураторы сообществ, проверка содержимого на спам, закрытые файлы по запросуручного одобрения каждой учётной записи
Каталог микроданныхнесколько уровней доступа к файлам, заявки с журналом решений, открытое описание всегдазакрытия описания вместе с файлом
Охраняемые данные государственного сектора по Акту об управлении даннымиоткрытое описание с dct:accessRights, условия и порядок запроса, срок ответахранения самих данных в каталоге
Портал с обсуждениями, запросами данных, примерами использованиямодерация пользовательских текстов, ограничение прав новых учётных записейоткрытой регистрации без проверки содержимого

Роли нужны, как только публикуют больше одной команды. Модерация нужна, если круг публикаторов шире круга тех, кому вы доверяете выложить данные сразу. Ограниченный доступ нужен персональным, лицензируемым и чувствительным данным. Он не нужен, чтобы «посмотреть, кто скачивает»: для этого есть статистика, а не закрытие файла.

Коротко, как выглядит обоснование по шаблону карточки решения:

  • Контекст. Портал министерства на CKAN обновили с 2.8 до 2.11. Публикуют 14 подведомственных организаций, около 60 сотрудников. Регистрация открыта с первых лет, учётных записей десятки тысяч, в списке пользователей и разделе запросов данных — реклама. Министерство просит «включить модерацию всех наборов».
  • Варианты. Оставить как есть; закрыть регистрацию и приглашать публикаторов; поставить расширение проверки перед публикацией; перевести вход на ведомственный единый вход.
  • Критерии. Сколько людей публикуют и кто за них отвечает; кто будет вести модерацию и сколько времени у него на это есть; совместимость расширений с версией ядра; что увидит пользователь портала.
  • Решение. Закрыть регистрацию, закрыть список пользователей (ckan.auth.public_user_details = false), удалить спамные учётные записи, запретить обычным пользователям создавать организации и группы. Публикаторов приглашают администраторы организаций. Роли — администратор и редактор организации, черновик и журнал изменений включены. Модерацию всех наборов не вводить; модерировать только раздел запросов данных.
  • Почему. Публикуют сотрудники известных организаций, и за наборы отвечает сама организация. Модерация 14 организаций ложится на одного человека в министерстве и станет очередью. Расширение проверки перед публикацией тестируется только на 2.10 и 2.11, и при переходе на 2.12 портал получит лишнее препятствие.
  • Когда пересмотреть. Если наборы начнут публиковать внешние организации или граждане, если ошибки в опубликованных наборах будут повторяться, если число публикаторов вырастет настолько, что заводить и отключать их вручную станет некому, — тогда переходить на единый вход.

Как это сделано в платформах​

Пометки — ядро, расширение, нет, не проверено, как в сводной таблице. Сверено с документацией и репозиториями 12 октября 2026 года.

ПлатформаРолиПроверка перед публикациейОписание открыто, файл закрытЗапрос доступа, эмбаргоЕдиный входРегистрация
CKAN 2.12ядро: организации, три роли, соавторы наборачерновик — ядро; проверка куратором — расширениенет: закрытый набор скрыт целиком; расширение ckanext-restrictedрасширение (ckanext-restricted); эмбарго нетрасширение: SAML, OpenID Connect, LDAPзакрыта по умолчанию с 2.9.8 и с 2.10.4; приглашение по почте — ядро
Dataverseядро: роли на коллекцию и набор, группыядро: отправка на проверку кураторуядроядро: запрос доступа, условия, гостевая книга, эмбаргоядро: Shibboleth (SAML), OpenID Connect, ORCIDнастраивается
InvenioRDM, Zenodoядро: сообщества с владельцем, менеджерами, кураторамиядро: проверка при включении в сообществоядро: закрыта запись целиком или только файлыядро: запросы на доступ, эмбаргоядро: ORCID, OpenID Connect, SAMLу Zenodo открыта
DSpace 10.1ядро: группы, права на сообщество, коллекцию, запись и файлядро: настраиваемый процесс из нескольких шаговядроядро: эмбарго, запрос копии (Request a Copy)ядро: Shibboleth, LDAP, ORCID, OpenID Connectнастраивается
NADAядроне провереноядро: семь типов доступа к файламядро: заявки на лицензированные данныене проверенооткрыта: нужна для заявок
GeoNetwork 4.4ядро: пять ролей в группах, права группы на записьядро: черновик, проверка, одобрение; по умолчанию одобрение можно обойтиядро: отдельное право на скачивание загруженных файловнетядро: LDAP, CAS, OpenID Connect, Keycloak, Shibboleth, EU Loginзакрыта по умолчанию; можно с капчей и списком доменов
udata (data.gouv.fr)ядро: администратор, редактор, частичный редакторчерновик — ядро; проверки куратором нетне провереноне провереноProConnect на OpenID Connect у data.gouv.frоткрыта; автоматическая пометка спама
DKAN 2.xядро: права Drupalядро: состояния «черновик», «опубликован», «скрыт», «в архиве»; по умолчанию набор публикуется сразуне провереноне провереномодули Drupal, не провереноне проверено
Huwise (OpenDataSoft)ядро сервиса: права на набор для пользователей и группраздельное право публиковать; проверки куратором нетядро: набор виден в каталоге, содержимое — выбраннымядро: запрос доступа на порталах с режимом маркетплейсаядро: SAML, OpenID Connectзакрыта, открыта, открыта с одобрением; капча
Socrata (Tyler Data & Insights)ядро сервиса: пять ролей на портал, три на наборядро: одобрение автоматическое или ручноенет: закрытый набор не виден в каталогенетядро: OpenID Connect, SAML через поддержкуоткрыта, без роли на портале
ArcGIS Online, Hubядро сервиса: роли и уровни доступа к элементунетчастично: открытый элемент над защищённым сервисом требует входавступление в группу по заявкеядро: SAML, OpenID Connectу Hub Premium открыта для сообщества, роль публикатора по умолчанию
Hugging Faceядро: роли в организации, группы ресурсов в платных тарифахобсуждения и запросы на слияниеядро: закрытый (gated) наборядро: автоматическое или ручное одобрение, своя анкетав тарифах Team и Enterprise: SAML, OpenID Connectоткрыта
Статический сайт, Gitправа на репозиторийзапрос на слияние с обязательной проверкойнетнетвход в GitHub или GitLab—

Расширения CKAN и их риски​

В ядре CKAN нет единого входа, проверки перед публикацией, доступа к отдельному файлу и защиты от спама сверх капчи. Всё это закрывают расширения, и у этой части экосистемы самое слабое сопровождение. Методика оценки расширения — в главе об экосистемах расширений, здесь то, что нашлось при сверке.

ЗадачаРасширениеКто ведётТесты на версиях CKANЧто важно знать
Вход через SAMLckanext-saml2authкомпания Keitaro2.10, 2.11последний выпуск — декабрь 2022 года, изменения идут в основной ветке
Вход через SAMLckanext-samlLink Digital (DataShades)автоматических тестов нетв журнале изменений — поддержка 2.12 (июнь 2026 года)
Вход через OpenID Connectckanext-oidc-pkceLink Digital2.9, 2.10, 2.11по описанию сделано для Okta и с другими поставщиками не проверялось
Вход через LDAPckanext-ldapМузей естественной истории (Лондон)тестовые образы не обновлялись с сентября 2023 годавыпуск 4.1.3 — 28 сентября 2026 года; заявлены 2.9 и 2.10
Защита входа: блокировка перебора, второй фактор, правила паролейckanext-securitydata.govt.nz (Новая Зеландия)автоматических тестов нетверсия 4.2.0 от 5 октября 2026 года — для 2.11; нужен отдельный Redis; второй фактор включён по умолчанию для всех
Открытое описание, закрытый файл, заявка на доступckanext-restrictedEnviDat (Швейцария)работающих тестов нетзаявлена совместимость до 2.11; требует ckanext-scheming и ещё двух расширений
Проверка перед публикациейckanext-approvalworkflowкомпания Keitaro2.10, 2.11выпуск 2.0.0 — март 2026 года; включается для всего портала или отдельных организаций; нужна почта
Настраиваемый процесс с шагами и одобрениямиckanext-workflowLink Digitalавтоматических тестов нетновая версия переписана летом 2026 года и не выпущена
Запросы данныхckanext-datarequests, ветка правительства Квинслендаправительство Квинсленда2.10, 2.11, 2.12исходный репозиторий CoNWeT Lab брошен в 2019 году; капчи и очереди модерации нет, но запросы можно разрешить только участникам организаций
Капча на любых формахckanext-recaptchaLink Digital2.9единственное найденное расширение против спама сверх капчи ядра

Из таблицы следуют три практических вывода. Расширение входа — самое рискованное при обновлении: если оно не работает на новой версии ядра, в портал не может войти ни один публикатор, поэтому вход проверяют на тестовом стенде до перехода. Проверка перед публикацией в CKAN — это чужое расширение, и прежде чем её требовать, стоит спросить, нельзя ли обойтись черновиком и ролями. Закрытый файл при открытом описании CKAN даёт хуже, чем научные платформы: если это главная задача, платформу лучше выбрать под неё.

Публикация без портала​

Без портала ролей и проверки меньше, но они есть.

  • Git-репозиторий. Изменения в данных и описаниях приходят запросом на слияние (pull request в GitHub, merge request в GitLab), и его можно сделать обязательным для проверки. В GitHub защита ветки требует одобрения перед слиянием, а файл CODEOWNERS назначает обязательных проверяющих для папок: например, отдел статистики проверяет всё в statistics/. В бесплатном тарифе GitHub это работает в открытых репозиториях. В GitLab в бесплатном тарифе одобрение необязательно и не блокирует слияние; обязательные правила одобрения и владельцы кода — в платных тарифах. История Git заодно служит журналом изменений. Подробнее — в главе о Git-репозиториях.
  • Закрытый репозиторий скрывает и данные, и описание. Если данные закрыты, а о них нужно рассказать, описание кладут в открытый репозиторий или на сайт, а данные — туда, где можно настроить доступ.
  • Zenodo и Hugging Face дают «описание открыто, файл закрыт» без своего портала. В Zenodo файлы записи закрывают и принимают запросы на доступ, в Hugging Face набор делают закрытым (gated) с автоматическим или ручным одобрением и своей анкетой.
  • Статический сайт штатного «по запросу» не умеет: так публикуют открытое. Для закрытых данных сайт может честно описать набор, порядок и срок ответа на запрос и дать адрес, куда писать. В разметке schema.org тогда ставят isAccessibleForFree и описывают условия в conditionsOfAccess. Подробнее — в главе о статических сайтах.

Как проверить живой портал​

Ручная проверка занимает пятнадцать минут.

  1. Откройте пять наборов разных организаций. У каждого видна организация и контакт, а не только имя сайта.
  2. Откройте портал в режиме без входа. Описания читаются, открытые файлы скачиваются. Если портал обещает закрытые данные, их описания тоже видны, а скачивание — нет, и рядом написано, как получить доступ и сколько ждать ответа.
  3. Найдите выгрузку описаний (DCAT, OAI-PMH) и посмотрите, есть ли в ней условия доступа: dct:accessRights в DCAT, поле прав в DataCite.
  4. Откройте страницу регистрации (/user/register у CKAN). Она либо закрыта, либо ведёт к приглашению или проверке.
  5. Откройте список пользователей, раздел запросов данных, комментарии. Там нет рекламы и мошеннических ссылок.
  6. Если у вас есть тестовая учётная запись редактора, проверьте, что видны только наборы своей организации и что новый набор не попадает в поиск, пока его не опубликовали.

Команды​

Для портала на CKAN. Версия ядра и расширения, связанные со входом, доступом и модерацией:

PORTAL=https://data.gov.kg
curl -s "$PORTAL/api/3/action/status_show" \
| jq '{ckan_version: .result.ckan_version,
access: [.result.extensions[] | select(test("saml|oidc|oauth|ldap|keycloak|sso|security|2fa|restricted|approval|workflow|datarequest|captcha"))]}'

Открыта ли регистрация. При закрытой CKAN отвечает кодом 403, при открытой показывает форму с полем пароля:

curl -s -o /tmp/register.html -w "%{http_code}\n" "$PORTAL/user/register"
grep -c 'name="password1"' /tmp/register.html

Открыт ли список пользователей и есть ли в нём явный спам. Ответ 403 значит, что список закрыт. Слово для поиска — частое в именах спамных учётных записей:

curl -s "$PORTAL/api/3/action/user_list?q=gacor" | jq '.result | length'

Для Zenodo и InvenioRDM — сколько записей открыто, закрыто и под эмбарго:

for s in open restricted embargoed; do
curl -s "https://zenodo.org/api/records?q=access.status:$s&type=dataset&size=1" \
| jq --arg s "$s" '{status: $s, records: .hits.total}'
done

Для Dataverse — сколько файлов открыто, закрыто и под эмбарго:

curl -s "https://dataverse.harvard.edu/api/search?q=*&type=file&per_page=0&show_facets=true" \
| jq '.data.facets[0].fileAccess.labels'

Запускайте проверку медленно: по одному запросу к сайту, а не десятки параллельно.

Замер на 1125 порталах CKAN​

12 октября 2026 года проверены все 1839 действующих каталогов на CKAN из реестра 1.27.0. Служебный адрес status_show ответил у 1136 из них, это 1125 разных серверов; остальные закрыли его, спрятали CKAN за своим сайтом или не ответили. У каждого сервера записаны версия ядра и расширения, открыта ли форма регистрации анонимному посетителю, открыт ли список пользователей и сколько в нём учётных записей со словом «gacor». Это слово из индонезийской рекламы онлайн-казино, в именах обычных пользователей оно не встречается.

Регистрация открыта у 123 серверов из 1125, то есть у 11%. Капча стоит у 29 из них.

Версия CKANСерверовС открытой регистрацией
старше 2.920658 (28%)
2.924719 (8%)
2.1041116 (4%)
2.1124328 (12%)
2.12 и новее182

У старых версий регистрация открыта по умолчанию, и почти треть установок старше 2.9 так и живёт. Обновление само по себе не помогает: на 2.11 регистрация открыта у 12% серверов, то есть её включили сознательно или перенесли настройку при обновлении. Среди них — национальный портал Кыргызстана data.gov.kg на CKAN 2.11.0.

Список пользователей открыт у 547 серверов, почти у половины. В CKAN он открыт по умолчанию (ckan.auth.public_user_details), даже когда регистрация закрыта, а документация советует закрывать его вместе с регистрацией.

Спам там, где открыта регистрация. Среди 547 серверов с открытым списком учётные записи со словом «gacor» нашлись у 38, всего 337 записей. Из 81 сервера, где открыты и регистрация, и список, спам есть у 31, то есть у 38%. Из 466 серверов с закрытой регистрацией — у 7: это следы того времени, когда регистрация была открыта. На портале Министерства юстиции Португалии dados.justica.gov.pt (CKAN 2.7.2) таких записей 91. На data.gov.kg — 19, с именами вроде agenslotgacorslotgacor, и заведены они в 2026 году. Одно слово даёт нижнюю границу: у спамеров много других имён.

Расширения входа и доступа стоят на немногих порталах. На 1125 серверах: ckanext-security — 47, вход через SAML — 27, LDAP — 23, OAuth2 — 21, OpenID Connect с PKCE — 10, Keycloak — 7, закрытые файлы ckanext-restricted — 13, запросы данных — 19, модерация — 3. Отдельно — двухфакторный вход в тайской типовой сборке на 160 серверах. Имена в ответе status_show — это имена модулей, а не репозиториев, поэтому одно имя может означать разные ветки одного расширения. Из 19 порталов с запросами данных у 12 открыта регистрация: это ровно то сочетание, на котором вырос спам на портале метеослужбы Туниса.

Что из замера следует. Первое, что стоит сделать владельцу портала на CKAN, — открыть свою страницу /user/register и список пользователей без входа. Если регистрация открыта и внешние люди не публикуют, её закрывают, а спамные учётные записи удаляют вместе с их организациями, группами и запросами. В CKAN для этого есть команда ckan clean users, которая удаляет учётные записи с недопустимыми файлами аватаров; остальное приходится искать по именам и содержимому.

Что из этого следует​

  • Начните с двух ролей — администратор и редактор организации — и черновика. Модерацию вводите, только когда публикуют люди, которым вы не доверяете выложить данные сразу, и когда есть кому её вести.
  • Описание набора оставляйте открытым при любом уровне доступа к файлу. Условия доступа, порядок и срок ответа на запрос пишите на странице набора и в выгрузке: dct:accessRights в DCAT, право доступа по словарю COAR в DataCite, isAccessibleForFree в schema.org.
  • Если ограниченный доступ — главная задача каталога, выбирайте платформу, где он в ядре: Dataverse, InvenioRDM, DSpace, NADA. У CKAN закрытый набор скрыт вместе с описанием, а закрытый файл — чужое расширение.
  • Закройте регистрацию, если внешние люди не публикуют, и закройте список пользователей. Если публикуют, нужны приглашение или проверка, капча и ограничение прав новых учётных записей. Проверьте это на своём портале сегодня: каждый девятый портал на CKAN открыт для регистрации, и треть таких порталов уже со спамом.
  • Единый вход ставьте, когда публикаторов много и их некому заводить и отключать вручную. В CKAN это расширение: проверяйте его на тестовом стенде перед каждым обновлением ядра.
  • Читателю учётная запись не нужна. Описания и открытые файлы — без входа, ключа и капчи.

Источники​