Настройка групп доступа к конфиденциальным данным¶
При использовании методов privacy активируйте функциональность и заполните блок storage
параметрами настройки БД для хранения конфиденциальных данных:
privacy { storage { enabled = true url = "jdbc:postgresql://"${POSTGRES_ADDRESS}":"${POSTGRES_PORT}"/"${POSTGRES_DB} driver = "org.postgresql.Driver" profile = "slick.jdbc.PostgresProfile$" user = ${POSTGRES_USER} password = ${POSTGRES_PASSWORD} connectionPool = HikariCP connectionTimeout = 5000 connectionTestQuery = "SELECT 1" queueSize = 10000 numThreads = 20 schema = "public" migration-dir = "db/migration" } # Data request timeout. request-timeout = 2 minute # First retry delay. With each attempt, the delay increases by 4/3. init-retry-delay = 30 seconds # Max parallel crawling tasks count. crawling-parallelism = 100 # The number of attempts that the crawler will take before the data is marked as lost. max-attempt-count = 20 # Delay between attempts to process the queue of lost items. lost-data-processing-delay = 10 minutes # Policy data responses cache cache { # Max count of elements max-size = 100 # Time to expire for element if it hasn't got access during this time expire-after = 10m } }
Описание параметров
enabled
- активация опции;url
- адрес БД PostgreSQL;driver
- имя драйвера JDBC;profile
- имя профиля для доступа к JDBC;user
- имя пользователя для доступа к БД;password
- пароль для доступа к БД;connectionPool
- имя пула соединений, по умолчаниюHikariCP
;connectionTimeout
- таймаут для соединения;connectionTestQuery
- имя тестового запроса;queueSize
- размер очереди запросов;numThreads
- количество одновременных подключений;schema
- схема взаимодействия;migration-dir
- директория для миграции данных.request-timeout
- таймаут ожидания всех ответов от пиров на запрос данных.init-retry-delay
- задержка от момента получения датахеша до старта его поиска по пирам.crawling-parallelism
- ограничение максимального количества одновременных процессов в синхронизаторе.max-attempt-count
- максимальное количество раундов по запросу данных от пиров, спустя которое данные считаются «утерянными».lost-data-processing-delay
- интервал раундов запросов «утерянных» данных.cache
- настройки кеш-памяти запросов.
Для хранения конфиденциальных данных используется БД PostgreSQL. База данных устанавливается на машину с нодой, также создается аккаунт доступа к БД. Вы можете воспользоваться справочной документацией на PostgreSQL для скачивания и установки версии, которая соответствует вашему типу операционной системы.
Во время установки БД система предложит создать аккаунт для доступа к БД. Эти логин и пароль для доступа необходимо внести в соответствующие параметры user/password
.
Внесите URL подключения к PostgreSQL в параметр url
. В URL входят следующие параметры:
POSTGRES_ADDRESS - адрес хоста PostgreSQL;
POSTGRES_PORT - номер порта хоста PostgreSQL;
POSTGRES_DB - наименование БД PostgreSQL.
Можно указывать URL до БД PostgreSQL в одной строке с данными аккаунта. Пример приведен ниже, где user=user_privacy_node_0@we-dev
это логин пользователя, password=7nZL7Jr41qOWUHz5qKdypA&sslmode=require
- пароль с опцией требования его ввода при авторизации.
Пример
privacy.storage.url = "jdbc:postgresql://vostk-dev.postgres.database.azure.com:5432/[email protected]&password=7nZL7Jr41qOWUHz5qKdypA&sslmode=require"