docs(ish): полный комплект документации ИШ НРД + help-страница «Архитектура обмена»
С официальной страницы НРД (https://www.nsd.ru/workflow/system/programs/web-service/) скачано всё необходимое для подключения ИШ: DOC/: - ruk_install_ish_2025_11_10.pdf (4.7 МБ) — Руководство по установке ИШ от 10.11.2025, с разделами «6. Технические требования» и «7.3.2 Установка под Linux» - ruk_pol_ish.pdf (3.5 МБ) — Руководство пользователя ИШ - QA_ish.pdf (2.5 МБ) — Часто задаваемые вопросы - test-case_ish.pdf (1.3 МБ) — Тест-кейсы для проверки работоспособности - instr_int_sh_01072025.pdf (0.4 МБ) — Инструкция по заявке на тестирование - web_service_nrd_standard_soap_rest.pdf (2.2 МБ) — техрекомендации Web-сервиса ONYX dist/ish/: - igate_100.0-765_amd64.deb (117 МБ) — дистрибутив ИШ для Astra Linux, не в git (в .gitignore), но всегда есть для установки - igate_95.0-716_amd64.SGN — ЭП к дистрибутиву - README.md — индекс файлов + ссылки на повторное скачивание Ключевые факты из руководства (попали в REPORT.md и help-страницу): - ИШ работает на Astra Linux SE 1.6/1.7 (РЕД ОС не упомянута) или Windows - СКЗИ — Валидата CSP + АПК Валидата Клиент L (НЕ КриптоПро!) Дистрибутив Валидаты — по запросу soed@nsd.ru / pki@moex.com - БД — PostgreSQL (обязательна для REST API ИШ) или SQLite - Сертификат — только от УЦ Московской Биржи (ca.moex.com) Добавлена help-страница /admin/help/architecture с: - ASCII-диаграммой полной схемы (bj-server → ИШ → ONYX → робот) - Таблицей «кто на чьей стороне, какая ОС, какая СКЗИ» - 8 FAQ-вопросов (включая «ИШ — это сервер НРД?», «можно ли в одну ВМ?», «зачем Валидата если есть КриптоПро» и др.) - Чек-лист «что у нас уже готово» REPORT.md обновлён: - общая готовность 70% → 72% - 7 внешних блокеров вместо 6 (Astra Linux ВМ + Валидата CSP стали явными) - раздел «Дистрибутив ИШ и полная документация» с описанием каждого файла Cleanup: .gitignore теперь исключает /dist/ish/*.deb но пропускает README.md внутри той же папки.
This commit is contained in:
@@ -35,5 +35,11 @@
|
||||
<p class="muted">Робот НРД на TEST3 (код <code>MC0012500000</code>), 4 тестовых сценария (отказ / принять все / частично / встречный перевод), управление через DocumentSeries и DocumentNumber, тестовые наборы депозитариев и кодов ошибок.</p>
|
||||
</div>
|
||||
</a>
|
||||
<a href="/admin/help/architecture" style="text-decoration:none">
|
||||
<div class="card" style="height:100%">
|
||||
<h2 style="color:var(--accent)">Архитектура обмена с НРД →</h2>
|
||||
<p class="muted">Полная схема: bj-server → ИШ (на Astra Linux ВМ) → ONYX (НРД) → робот-автотест. Кто на чьей стороне, какие СКЗИ, какие сертификаты, FAQ. Куда воткнуть Валидату, куда КриптоПро, где сертификаты УЦ МБ.</p>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
{{end}}
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
{{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) │ │
|
||||
│ └──────┬───────────┘ │
|
||||
│ │ │
|
||||
│ КриптоПро CSP — для нашей │ Валидата CSP │
|
||||
│ admin-стороны (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>РЕД ОС 8 / Linux</td>
|
||||
<td>КриптоПро CSP (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 <em>или</em> Windows 10/Server</td>
|
||||
<td>Валидата CSP + АПК Валидата Клиент 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 на РЕД ОС, а ИШ требует <strong>Astra Linux</strong> (RPM-версии нет). Поэтому нужно либо: (а) отдельная Astra Linux ВМ, (б) запуск ИШ в Docker-контейнере с Astra-образом, (в) перевод всей инфры на Astra Linux.</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: Почему ИШ требует Валидата CSP, а мы поставили КриптоПро?</h3>
|
||||
<p>ИШ — отечественная разработка НРД, исторически работает с Валидатой (продукт ООО «Валидата», <code>x509.ru</code>). КриптоПро CSP на нашей ВМ останется — он используется для админ-части bj-server (подпись действий оператора через Рутокен). Валидату надо поставить <strong>на Astra Linux ВМ рядом с ИШ</strong>, не вместо КриптоПро.</p>
|
||||
|
||||
<h3>Q: Где брать Валидату?</h3>
|
||||
<p>Не публично. По запросу: email <code>soed@nsd.ru</code> (НРД) или <code>pki@moex.com</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}}
|
||||
Reference in New Issue
Block a user