Оператор: Индивидуальный предприниматель Аведикян Карен Самвелович Домен: remcard.ru Редакция: 1.0 от 24 апреля 2026 года Основание: Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных» (ст. 18.1, 19), Постановление Правительства РФ от 01.11.2012 № 1119 «Об утверждении требований к защите ПДн при их обработке в ИСПДн», Приказ ФСТЭК России от 18.02.2013 № 21.
Документ утверждается во исполнение ст. 18.1 ч. 2 ФЗ-152, обязывающей оператора документально зафиксировать правовые, организационные и технические меры защиты персональных данных.
1. Общие сведения
1.1. Настоящая Политика описывает правовые, организационные и технические меры, принимаемые Оператором для защиты обрабатываемых персональных данных (далее — ПДн) от неправомерного или случайного доступа, уничтожения, изменения, блокирования, копирования, предоставления, распространения и иных неправомерных действий.
1.2. Политика является внутренним документом Оператора и публикуется в ознакомительном режиме по адресу https://remcard.ru/legal/data-protection.
1.3. Политика применяется ко всем информационным системам Оператора, в которых обрабатываются ПДн:
- веб-приложение remcard.ru (Next.js, хостинг Vercel);
- база данных PostgreSQL (Neon, регион Frankfurt);
- файловое хранилище Yandex Object Storage (регион
ru-central1); - журналы ошибок Sentry (self-hosted / SaaS с включённым PII-scrubber).
2. Уровень защищённости и модель угроз
2.1. В соответствии с Постановлением Правительства РФ № 1119 информационная система Оператора относится к ИСПДн 4-го уровня защищённости:
- обрабатываются иные категории ПДн (ФИО, контактные данные, город, аватар);
- в системе не обрабатываются специальные категории ПДн (ст. 10 ФЗ-152), биометрические данные (ст. 11), а также общедоступные данные в значении ст. 8;
- нарушения в ИС не создают угрозы для жизни, здоровья и имущества субъектов ПДн;
- количество субъектов ПДн, чьи данные обрабатываются, — менее 100 000.
2.2. Модель угроз актуализируется ежегодно. Основные актуальные угрозы:
- компрометация учётных записей сотрудников Оператора и партнёров (фишинг, утечка пароля);
- уязвимости в зависимостях npm / Python (supply chain);
- злоупотребления привилегиями внутри административного интерфейса
/staff; - массовый сбор данных партнёрами через API (парсинг);
- атаки на OAuth-провайдеров (VK, Yandex, MAX, Telegram) — компрометация сессии.
3. Правовые меры
3.1. Политика обработки персональных данных — https://remcard.ru/legal/privacy.
3.2. Пользовательское соглашение — https://remcard.ru/legal/terms.
3.3. Оператор подал уведомление о намерении обрабатывать ПДн в Роскомнадзор и внесён в Реестр операторов (указать номер и дату подачи после регистрации).
3.4. С партнёрами и сотрудниками Оператора заключаются договоры, содержащие условия о конфиденциальности и соблюдении режима ПДн.
4. Организационные меры
4.1. Состав лиц, имеющих доступ к ПДн:
- Оператор (ИП Аведикян К.С.) — полный доступ, роль
StaffRole=OWNER. - Администраторы платформы —
StaffRole=ADMIN, ограниченный доступ к модерации. Назначаются письменным распоряжением Оператора. - Операторы поддержки —
StaffRole=OPERATOR, доступ к обращениям без права массовой выгрузки. - Аналитики —
StaffRole=ANALYST, доступ только к обезличенным агрегатам.
4.2. Сотрудники партнёров получают доступ к ПДн клиентов партнёра через OAuth + BranchEmployee / PartnerEmployee (см. StaffInvite-механизм). Сотрудник не видит данных клиентов других партнёров.
4.3. Журналирование действий. Все значимые действия с ПДн фиксируются в таблице AuditLog с идентификатором actorId, обезличенным IP, action-enum и снимком контекста. Типы действий включают:
AUTH_LOGIN_SUCCESS,AUTH_LOGIN_FAILED;CONSENT_GRANTED,CONSENT_WITHDRAWN;USER_DATA_EXPORTED,USER_DATA_DELETED;CLIENT_LOOKUP_FOUND,CLIENT_LOOKUP_NOT_FOUND(поиск клиента партнёром);TEAM_APPLICATION_SUBMITTED;RETENTION_CRON_RAN.
4.4. Обучение. Оператор проходит самообучение по актуальной практике применения 152-ФЗ не реже одного раза в год.
4.5. Реагирование на инциденты. При обнаружении инцидента безопасности:
- Оператор немедленно фиксирует факт в
AuditLog. - Оценивается состав затронутых данных.
- Субъекты уведомляются в срок не позднее 24 часов с момента обнаружения (ст. 21 ч. 3.1 ФЗ-152).
- Роскомнадзор уведомляется в течение 72 часов (ст. 21 ч. 3.1).
- Меры по устранению фиксируются в отдельном журнале инцидентов.
5. Технические меры
5.1. Минимизация сбора ПДн («Zero-PII»)
5.1.1. В базе данных для пользователей с ролью CLIENT действует CHECK-констрейнт user_pii_only_for_staff_or_b2b:
CHECK (
(phone IS NULL AND firstName IS NULL AND lastName IS NULL AND email IS NULL)
OR staffRole IS NOT NULL
OR isPartnerBusinessAccount = true
)
5.1.2. Для публичной идентификации клиента партнёрами используется не ФИО и не телефон, а случайный код publicId формата RC-A1B2-C3D4 (Crockford Base32), выдаваемый один раз при регистрации и не ротирующийся.
5.1.3. Идентификаторы OAuth-провайдеров (telegramId, maxId, vkId, yandexSub) хранятся как есть, поскольку без доступа к соответствующему провайдеру не позволяют определить субъекта.
5.1.4. Поле Project.address принимает только адрес здания (улица + дом). Квартира, подъезд, код домофона, этаж отклоняются серверной валидацией.
5.1.5. Поле Delegation.assigneeLabel ограничено 40 символами и предназначено для ярлыка («Прораб», «Бригада 1»), а не для ФИО мастера.
5.2. Защита передачи данных
5.2.1. Все соединения с remcard.ru обслуживаются по протоколу HTTPS с обязательным HSTS. TLS-сертификаты выпускает Let's Encrypt через Vercel.
5.2.2. Взаимодействие с внешними сервисами (Neon, Yandex Cloud, OAuth-провайдеры) выполняется исключительно по HTTPS.
5.2.3. Для OAuth-потоков VK и Yandex используется PKCE + state-cookie с подписью (OAUTH_STATE_SECRET, 30 дней).
5.3. Защита хранения
5.3.1. База данных Neon шифруется «в покое» алгоритмом AES-256 средствами провайдера.
5.3.2. Секреты (VK_CLIENT_SECRET, YANDEX_CLIENT_SECRET, VK_SERVICE_TOKEN, OAUTH_STATE_SECRET, JWT_SECRET, CRON_SECRET, MAX_WEBHOOK_SECRET) хранятся в Environment Variables Vercel и недоступны в git-репозитории.
5.3.3. Аватары пользователей хранятся в Object Storage с политикой public-read только для объектов, прошедших модерацию.
5.4. Аутентификация и авторизация
5.4.1. Вход осуществляется через один из четырёх OAuth-провайдеров: Telegram (widget + bot), MAX (bot), VK ID, Яндекс. Пароли на стороне Оператора не хранятся.
5.4.2. Сессия выдаётся JWT-токеном со сроком действия 30 дней, хранится в HttpOnly Secure SameSite=Lax cookie remcard-token. Секрет подписи — JWT_SECRET.
5.4.3. Внутренний Staff-интерфейс /staff дополнительно защищён ролевой моделью StaffRole и IP allowlist (через Vercel Firewall).
5.4.4. Доступ партнёра к API ограничен по его partnerType, staffRole, isPartnerBusinessAccount с rate-limit (например, /api/pro/clients/lookup — 20 запросов/мин/партнёр).
5.5. Логирование и мониторинг
5.5.1. Ошибки приложения передаются в Sentry. Перед отправкой каждое событие проходит через PII-scrubber (src/lib/sentry-init-options.ts), который заменяет чувствительные поля (firstName, lastName, displayName, address, comment, email, phone, token, password) на значение [Filtered].
5.5.2. Журнал AuditLog содержит обезличенный IP (/24 для IPv4, /64 для IPv6) и User-Agent. Через 365 дней IP и UA обнуляются автоматической задачей.
5.5.3. Веб-аналитика (PageView) записывается только при явном согласии пользователя (cookie cookie-consent с analytics=true). IP хранится в обезличенном виде.
5.6. Контроль зависимостей
5.6.1. Зависимости npm обновляются через Renovate / Dependabot; критические уязвимости устраняются в течение 72 часов с момента публикации CVE.
5.6.2. В CI включён npm audit и сканирование секретов в коммитах (job Scan for secrets).
5.7. Резервное копирование
Описано в отдельном документе BACKUP_POLICY.md.
5.8. Сроки хранения
Описаны в отдельном документе RETENTION_POLICY.md.
6. Права субъектов ПДн
6.1. Доступ к своим данным — /account/privacy, раздел «Мои данные».
6.2. Экспорт данных — кнопка «Скачать мои данные (.zip)» на той же странице. Выдаётся ZIP-архив со всеми данными субъекта и README.txt (ст. 14 ФЗ-152).
6.3. Отзыв согласия — кнопка «Отозвать» напротив каждого согласия.
6.4. Удаление аккаунта — кнопка «Удалить аккаунт» на той же странице. После подтверждения выполняется процедура anonymizeAndDeleteUser: обнуление всех PII, удаление AuthAccount, обезличивание связанных Project/ClientOrder/Lead/Delegation, отзыв всех активных Consent.
6.5. Письменные обращения принимаются по адресу электронной почты remcardofficial@gmail.com. Срок ответа — 10 рабочих дней (ст. 14 ч. 7 ФЗ-152), срок фактического исполнения — не более 30 дней.
7. Контроль и пересмотр
7.1. Фактическое исполнение Политики проверяется Оператором не реже одного раза в квартал.
7.2. Политика пересматривается не реже одного раза в год либо при:
- изменении архитектуры системы;
- изменении состава обрабатываемых ПДн;
- изменении перечня используемых провайдеров;
- изменении законодательства.
Утверждено: ИП Аведикян К.С., 24 апреля 2026 года.
Версионирование документа: см. историю коммитов в репозитории karenavedikyan/remcard-navigator в каталоге docs/privacy/.