Можно ли дезинфицировать базу данных Datomic, учитывая, что она является «значением» и не «обновляется на месте»?

Я изучаю построение поверх Datomic. Продаю по принципу БД 'как ценность'. Дело в том, что мы должны иметь возможность предоставлять очищенные копии базы данных нашим разработчикам для локального запуска. Любые конфиденциальные данные, которые мы обязаны хранить на правильной стороне брандмауэра, не должны просачиваться.

Со стандартной базой данных SQL это легко: у нас есть служба внутри брандмауэра, которая делает моментальный снимок БД и запускает для нее некоторый скрипт, чтобы обновить на месте конфиденциальное значение, такое как [email protected] > [email protected] и т. д. Затем очищенная БД становится доступной для разработчика, чтобы вывести его из зоны соответствия.

Однако мое понимание Datomic (и самой его силы) заключается в том, что ничто никогда не обновляется на месте. Так как же можно очистить базу данных Datomic? Спасибо.


person Zuriar    schedule 15.01.2016    source источник


Ответы (1)


Это один из вариантов использования фильтрации баз данных в Datomic. Фильтрация по соображениям безопасности также обсуждается в этом выступлении Nubank.

Операционная модель немного отличается от мира SQL, потому что доступ пользователей, авторизация, аутентификация и т. д. не встроены в базу данных в той же степени. Любой одноранговый узел полностью участвует в базе данных и может отправлять транзакции и т. д., запрашивать нефильтрованную базу данных и т. д. в виде вызовов API. Вам нужен дополнительный прикладной уровень (т. е. создать клиент для вашего однорангового сервера и предоставлять конечные точки только для запросов к отфильтрованной базе данных), если вам нужны более надежные гарантии безопасности.

person Ben Kamphaus    schedule 20.01.2016