{{/* Установка ключа Валидаты: загрузка архива НРД → носитель → справочник → проверка ИШ. Один и тот же блок — на шаге «Ключ подписи» мастера и на отдельной странице /admin/setup/keywizard (данные — keyWizardData). */}} {{define "keyWizRet"}}{{if .InWizard}}{{end}}{{if .WantContour}}{{end}}{{end}} {{define "keyWizBody"}} {{$s := .State}} {{/* ===== Датчик случайных чисел Валидаты: один раз для сервера, до первой работы с ключом (validatarng.go) ===== */}} {{if not $s.Done}} {{end}}
{{/* ===== Лента шагов — когда путь выбран (флешка с ключом или новая флешка из архива) ===== */}} {{if or $s.StagingID $s.Done}}
    {{range $i, $step := $s.Steps}}
  1. {{if eq $step.Status "ok"}}✓{{else if eq $step.Status "error"}}{{else}}{{add $i 1}}{{end}}
    {{$step.Title}}
    {{if $step.Detail}}
    {{$step.Detail}}
    {{end}}
  2. {{end}}
{{/* ===== Действие в зависимости от состояния ===== */}} {{end}} {{if $s.Done}}

✓ Готово

{{if $s.MediaDevice}}Ключ с флешки подключён к шлюзу НРД как есть и подписывает — флешка не менялась.{{else}}Ключ записан на флешку, справочник сертификатов сформирован, ключ подписывает.{{end}}

{{if $s.Backup}}

Бэкап прежнего носителя: {{$s.Backup}}

{{end}}
{{if devOn}}
{{else if not .InWizard}}→ Вернуться в мастер настройки Проверить подключения{{end}}
{{template "keyWizRet" .}}
{{else if and $s.StagingID $s.MediaDevice}} {{/* ключ с подготовленной флешки — используется как есть, на флешку ничего не пишется */}}

Шаг 2 — использовать ключ с флешки

На флешке уже подготовленный ключ: {{fallbackTpl $s.VDK "—"}}{{if $s.MediaProfile}}, профиль {{$s.MediaProfile}}{{end}}. bj подключит его к шлюзу НРД как есть: на флешку ничего не записывается — справочник для ИШ собирается на диске сервера, флешка подключается только для чтения.

{{template "keyWizRet" .}}
{{$c := .SuggestContour}}{{if not $c}}{{$c = .WantContour}}{{end}}{{if not $c}}{{$c = currentContour}}{{end}} {{if .SuggestIssuer}}

Сертификат от «{{.SuggestIssuer}}» — это {{if eq .SuggestContour "test3"}}тестовый{{else}}боевой{{end}} контур.

{{end}}
{{template "keyWizRet" .}}
{{else if $s.StagingID}} {{/* Архив загружен — выбор флешки + запись */}}

Шаг 2 — вставьте новую флешку и запишите ключ

Архив распакован. Ключ: {{fallbackTpl $s.VDK "—"}}. Вставьте в сервер чистую флешку — на неё запишется ключ и справочник сертификатов, затем bj подключит её к шлюзу и перезапустит ИШ. Копия прежнего содержимого флешки сохраняется на сервере. Не используйте флешку с рабочим ключом другого сервера.

{{if not .Drives}}

Флешка не найдена — вставьте её в сервер и обновите страницу.

{{else}}
{{template "keyWizRet" .}}
{{if .Drives}} {{range $i, $d := .Drives}} {{end}} {{end}}
{{$c := .SuggestContour}}{{if not $c}}{{$c = .WantContour}}{{end}}{{if not $c}}{{$c = currentContour}}{{end}} {{if .SuggestIssuer}}

В архиве сертификат от «{{.SuggestIssuer}}» — это {{if eq .SuggestContour "test3"}}тестовый{{else}}боевой{{end}} ключ.

{{end}} У тестового и боевого контуров разные ключи: ключ подключается только к каналу ИШ своего контура.
Пусто = имя берётся из архива автоматически.
{{end}}
{{template "keyWizRet" .}}
{{else}} {{/* Начало: где ключ — на подготовленной флешке или в архиве НРД (тогда — на новую флешку) */}}

Где ваш ключ?

{{if .Drives}}
{{template "keyWizRet" .}}

Флешка с ключом:

{{range $i, $d := .Drives}} {{end}}
{{else}}

Флешка не найдена — вставьте флешку с ключом в сервер и обновите страницу.

{{end}}
{{end}}
{{end}}