Коды доступа и ссылки для публичного портфеля

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

Раздел: Инструкции · Публичные страницы · Обновлено 22 октября 2026
Коротко о возможностях:
  • Селективная конфиденциальность: балансы и денежные суммы скрыты для обычных посетителей, но могут быть открыты доверенным лицам.
  • Постоянный мастер-пароль: вводится гостем через модальное окно прямо в шапке портфеля по кнопке 🔒 «Снять маскирование».
  • Временные секретные ссылки: прямые ссылки с параметром ?key=..., автоматически открывающие цифры без запроса пароля.
  • Лимиты переходов и сроков: ссылки могут быть ограничены по времени (от 1 часа до 30 дней) или числу открытий (включая одноразовые).
  • Полный аудит: просмотр статистики использования ссылок и мгновенный отзыв в один клик.

1. Зачем нужно избирательное снятие маскирования

Многие частные инвесторы, эксперты и блогеры хотят делиться своими стратегиями в социальных сетях, блогах или сообществах, но не готовы раскрывать реальный размер своего капитала в рублях. Для этого в платформе существует режим анонимного портфеля («Скрыть точные суммы в рублях»), при котором гости видят только проценты доходности и доли активов.

Однако часто возникает потребность показать реальные денежные суммы конкретным людям:

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

Вместо создания дублирующих публичных страниц с открытыми данными платформа позволяет использовать единую страницу с настраиваемыми ключами доступа.

2. Постоянный мастер-пароль страницы

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

Скриншот: Окно «Доступ и коды размаскирования» в менеджере публичных страниц с полем мастер-пароля и генератором

Как установить мастер-пароль:

  1. Откройте «Настройки» → «Сообщества и доступ».
  2. В блоке «Публичные ссылки» найдите нужную страницу и нажмите кнопку «Доступ» (или откройте страницу в конструкторе).
  3. Убедитесь, что переключатель «Разрешить снятие маскирования» включен.
  4. В блоке «Постоянный мастер-пароль» введите желаемый код либо нажмите иконку «Сгенерировать случайный код» для создания надежного пароля.
  5. Нажмите «Сохранить пароль».

Как посетитель снимает маскирование:

  1. Посетитель открывает публичный портфель. Если суммы замаскированы, в шапке отображается кнопка 🔒 «Снять маскирование».
  2. При нажатии открывается диалоговое окно, куда вводится код доступа.
  3. После проверки сервером балансы, изменения и дивидендные потоки становятся видимыми, а кнопка в шапке меняется на 🔓 «Данные открыты».
  4. Посетитель может в любой момент нажать на эту кнопку и выбрать «Скрыть данные обратно», чтобы вернуть конфиденциальный вид.

Скриншот: Модальное окно ввода пароля на публичной странице портфеля и открытые данные

Ввод пароля вручную не всегда удобен, особенно при отправке портфеля занятым клиентам или партнёрам в мессенджерах. Для этого предусмотрены временные секретные ссылки со встроенным криптографическим токеном вида: https://fire-wire.ru/shared/my-portfolio?key=fw_sec_....

Скриншот: Форма генерации временной секретной ссылки с выбором срока действия и лимита переходов

Параметры секретной ссылки:

  • Название или адресат: понятная метка (например, «Для аудитора», «Инвестор Андрей», «Отчет за Q3»), которая поможет идентифицировать ссылку в журнале.
  • Срок действия:
    • 1 час — для быстрого совместного звонка или демонстрации экрана.
    • 24 часа (1 день) — для разового суточного ознакомления.
    • 7 дней или 30 дней — для работы в рамках квартального отчета или аудита.
    • Бессрочно — действует до ручного отзыва автором.
  • Лимит переходов:
    • 1 переход (одноразовая) — ссылка сработает ровно один раз. Идеально для конфиденциальной отправки в чат.
    • Любое число N — ссылка перестанет открывать реальные суммы после N успешных переходов.
    • 0 (без ограничений) — неограниченное число просмотров в пределах заданного срока.

Безопасность URL в браузере:

При переходе по секретной ссылке платформа:

  1. Проверяет токен на сервере и возвращает размаскированные показатели.
  2. Сохраняет проверенный сессионный ключ в sessionStorage вкладки браузера.
  3. Сразу же очищает секретный параметр ?key=... из адресной строки браузера через метод window.history.replaceState().

Благодаря этому получатель ссылки не сможет случайно скопировать адрес со своим секретным токеном и переслать его третьим лицам или опубликовать в открытом доступе.

В окне «Доступ и коды размаскирования» в Менеджере публикаций доступен полный аудит всех выпущенных ссылок:

  • Счетчик переходов: наглядно отображает количество фактических открытий (например, 1 / 1 или 3 / 10).
  • Статусы: ссылки автоматически помечаются бейджами «Истек» (если закончился срок) или «Исчерпан» (если достигнут лимит использований).
  • Моментальный отзыв: нажатие на иконку корзины мгновенно отзывает токен в базе данных. Переходы по этой ссылке больше никогда не откроют реальные суммы.

5. Криптографическая защита и приватность данных

Платформа следует принципу строгой минимизации данных (Data Minimization) и нулевого доверия (Zero-Knowledge Masking):

  • PBKDF2 с индивидуальной солью: постоянный мастер-пароль страницы не сохраняется в открытом виде. Сервер генерирует случайную криптографическую соль и хеширует пароль по стандарту PBKDF2/SHA-256 (10 000 итераций).
  • Хеширование токенов: динамические токены доступа хранятся в базе данных исключительно в виде необратимых хешей SHA-256. Исходный ключ показывается автору только один раз при создании.
  • Маскирование на стороне сервера: при отсутствии валидного ключа сервер даже не отправляет реальные балансы клиенту — они подменяются маскировочной константой на уровне HTTP-обработчика. «Подсмотреть» баланс через DevTools браузера технически невозможно.

6. Часто задаваемые вопросы (FAQ)

Если я отключу тумблер «Разрешить снятие маскирования», что произойдет со ссылками?

Все активные ссылки и мастер-пароль мгновенно перестанут работать. Сервер будет отдавать замаскированные данные всем без исключения посетителям, пока тумблер снова не будет включен.

Увидит ли гость суммы снова, если обновит страницу (F5)?

Да. Валидный ключ сохраняется в памяти текущей сессии вкладки браузера (sessionStorage), поэтому при перезагрузке страницы или переключении вкладок виджетов данные останутся открытыми. Но если закрыть вкладку или браузер, сессия завершится.

Считается ли перезагрузка страницы одноразовым переходом?

Нет. Счетчик использования увеличивается только при первичном входе по ссылке со строкой ?key=.... Последующие запросы в рамках открытой сессии используют сохраненный ключ сессии и не расходуют оставшийся лимит.

Может ли гость увидеть мои другие счета или изменить настройки портфеля?

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