Files
Bridge-and-Join-s/internal/lkgateway/web/templates/admin_help_architecture.html
T
zuevav da12a9ec1c feat(bj): модуль ЛК на PostgreSQL, обмен с DEPO, боевой ЛК с имитатором НРД, QUIK, НПР
- bj_exchange и «кран» Fancy убраны: данные модуля ЛК в PostgreSQL (схема lk)
- трансферные таблицы FTV_M2M: создание при установке, события, справочник участников
- сверка с DEPO: счёт, ФИО, дата рождения, ИИС по договору, квал-инвестор из опции DEPO
- боевой ЛК ЕСИА Финанс при тестовом ИШ: журнал, отказ через DEPO, статусы в ЛК
- онлайн-лицензирование в bj, план тестирования M2M для контрагента (интерактивный HTML)
- модули QUIK МНП, экспорт QUIK, НПР/УДС; документы и тестовые материалы

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 19:41:12 +03:00

137 lines
11 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{{define "content"}}
<p style="margin-bottom:16px"><a href="/admin/help">← все инструкции</a></p>
<div class="card">
<h2>Архитектура: как устроен обмен с НРД</h2>
<p class="muted">Документ-источник: <code>DOC/ruk_install_ish_2025_11_10.pdf</code> (Руководство по установке ИШ от 10.11.2025), <code>DOC/instr-ish-rest-api.pdf</code> (REST API ИШ).</p>
</div>
<div class="card">
<h2>Схема обмена (полная)</h2>
<pre style="font-size:12px;line-height:1.4;background:var(--bg);padding:16px;border-radius:6px;overflow:auto">
┌─────────────────────────────────────────────────────────────────┐
│ НАША СТОРОНА │
│ │
│ Linux ВМ (РЕД ОС 8) Astra Linux ВМ │
│ ────────────────── ────────────────── │
│ ┌──────────────────┐ REST API ┌──────────────────┐ │
│ │ bj-server │ ────POST/GET──> │ ИШ (igate) │ │
│ │ (наше ПО) │ <───────────── │ (получаем у НРД)│ │
│ │ │ │ │ │
│ │ • стейт-машина │ │ Делает САМ: │ │
│ │ • PostgreSQL │ │ • подпись │ │
│ │ • админка :8080 │ │ • упаковку ЭДО │ │
│ │ • lk-emulator │ │ • проверку │ │
│ │ │ │ подписей НРД │ │
│ └──────────────────┘ │ • БД PostgreSQL │ │
│ │ (history) │ │
│ └──────┬───────────┘ │
│ │ │
│ АПК «Валидата Клиент L» │ АПК «Валидата │
│ (PKCS#11) — общий для всех │ Клиент L» │
│ компонентов │ │
└──────────────────────────────────────────────┼─────────────────┘
│
SOAP/REST/HTTPS │ Web-сервис ONYX
▼
┌────────────────────────────┐
│ СТОРОНА НРД │
│ │
│ GUEST: gost-gt.nsd.ru │
│ TEST3: gost.nsd.ru │
│ PROM: edog.nsd.ru │
│ │
│ /onyxgs/WslService │
│ /onyxt3/WslService │
│ /onyxpr/WslService │
│ │
│ ↓ внутрь НРД │
│ • робот-автотест │
│ MC0012500000 │
│ • реальные депозитарии │
│ • биржевые системы │
└────────────────────────────┘
</pre>
</div>
<div class="card">
<h2>Компоненты — кто на чьей стороне</h2>
<table>
<thead><tr><th>Компонент</th><th>Сторона</th><th>ОС</th><th>СКЗИ</th><th>Назначение</th></tr></thead>
<tbody>
<tr>
<td><strong>bj-server</strong></td>
<td>наша</td>
<td>Astra Linux SE 1.7 / Linux</td>
<td>АПК «Валидата Клиент L» (PKCS#11)</td>
<td>Стейт-машина, журнал в БД, веб-админка, lk-emulator</td>
</tr>
<tr>
<td><strong>ИШ (igate)</strong></td>
<td>наша <span class="muted">(но дистрибутив даёт НРД)</span></td>
<td>Astra Linux SE 1.6/1.7</td>
<td>АПК «Валидата Клиент L»</td>
<td>Подписывает наш XML сертификатом УЦ МБ, упаковывает в пакет ЭДО, отправляет в НРД</td>
</tr>
<tr>
<td><strong>ONYX (WSL)</strong></td>
<td>НРД</td>
<td>—</td>
<td>—</td>
<td>Web-сервис НРД — принимает пакеты от ИШ всех клиентов</td>
</tr>
<tr>
<td><strong>Робот-автотест</strong></td>
<td>НРД</td>
<td>—</td>
<td>—</td>
<td>Контрагент-эмулятор внутри НРД. Адресуется кодом <code>MC0012500000</code> в TEST3</td>
</tr>
</tbody>
</table>
</div>
<div class="card">
<h2>Часто задаваемые вопросы</h2>
<h3>Q: ИШ — это сервер НРД, к которому мы подключаемся?</h3>
<p>Нет. <strong>ИШ — это наша программа, поставленная у нас.</strong> НРД даёт дистрибутив (<code>igate_100.0-765_amd64.deb</code>, 117 МБ), но ставим у себя. ИШ — это «персональный почтовый клиент к НРД» с подписью.</p>
<h3>Q: ИШ можно поставить на ту же ВМ, что и bj-server?</h3>
<p>Да, если ВМ — Astra Linux. И bj-server, и ИШ работают на Astra Linux SE 1.6/1.7 и используют одно и то же СКЗИ — АПК «Валидата Клиент L». Можно собрать всё на одной ВМ или разнести по отдельным.</p>
<h3>Q: Мы перекладываем файлы между bj-server и ИШ?</h3>
<p>Нет. Мы используем <strong>REST API</strong> ИШ (раздел 2.5 инструкции). bj-server делает HTTP-запросы: <code>POST /api/package/{channel}/file</code> с ZIP в теле. Никаких разделяемых папок. (Альтернативный режим «обменные папки» в ИШ есть — мы его не используем.)</p>
<h3>Q: Где брать Валидату?</h3>
<p>Дистрибутив для Astra Linux SE опубликован на сайте Московской Биржи: <a href="https://fs.moex.com/cdp/po/ClientL_ALSE.zip" target="_blank" rel="noopener">fs.moex.com/cdp/po/ClientL_ALSE.zip</a>. На Linux отдельной лицензии и регистрационных данных не требует — пакеты <code>zpki</code>/<code>zsdk</code> ставятся через <code>dpkg -i</code> и работают сразу.</p>
<h3>Q: Какой сертификат нужен?</h3>
<p>Только от <strong>УЦ Московской Биржи</strong> (<code>ca.moex.com</code>). Сертификаты других УЦ ИШ не примет. УЦ МБ выпускает сертификаты только для организаций, подключённых к ЭДО НРД (по договору).</p>
<h3>Q: Что делать, чтобы протестировать на роботе НРД на TEST3?</h3>
<ol>
<li>Получить сертификат УЦ МБ для нашей организации.</li>
<li>Подать <a href="https://www.nsd.ru/workflow/zayavka-na-testirovanie/" target="_blank">заявку на тестирование</a> в НРД (инструкция в <code>DOC/instr_int_sh_01072025.pdf</code>).</li>
<li>Получить от НРД код депонента-тестера и доступ к TEST3.</li>
<li>Поднять Astra Linux ВМ, поставить ИШ + Валидату, импортировать сертификат.</li>
<li>В нашем <a href="/admin/setup">/admin/setup</a> → «Интеграционный шлюз НРД» указать URL ИШ (например <code>http://10.10.10.23:8080</code>) и имя канала из ИШ.</li>
<li>Отправить тестовую заявку с <code>ReceiverCode = MC0012500000</code> и <code>DocumentSeries = 2001</code> — робот ответит «Принять все бумаги».</li>
</ol>
<h3>Q: Сколько времени нужно от старта подключения до прогона на TEST3?</h3>
<p>Оптимистично — <strong>1-2 недели</strong> (если все ответы НРД быстрые и УЦ МБ не задерживает). Реалистично — <strong>3-4 недели</strong>. На нашей стороне всё уже готово; задержка только во внешних шагах.</p>
</div>
<div class="card">
<h2>Что у нас уже готово</h2>
<ul>
<li><strong>REST-клиент ИШ</strong> в <code>internal/nsdadapter/igw/</code> — все 4 endpoint'а по спецификации, упаковщик/распаковщик ZIP, 10 тестов PASS</li>
<li><strong>Робот-эмулятор</strong> в <code>internal/nsdadapter/mock/</code> — позволяет проверить нашу логику до получения реального ИШ</li>
<li><strong>Конфигурация в админке</strong> — поля <code>igw_base_url</code> и <code>channel</code> в /admin/setup; авто-определение профилей GUEST/TEST3/PROD</li>
<li><strong>Подбор URL контуров</strong> — при выборе профиля URL ONYX заполняется автоматически</li>
<li><strong>Полная документация ИШ</strong> в <code>DOC/</code> и дистрибутив в <code>dist/ish/</code></li>
</ul>
</div>
{{end}}