Сроки сертификатов — только по нашей организации

В справочнике ИШ — сертификаты всех участников обмена (на 9 — 351: ВТБ,
Сбербанк, ТБанк…). «Свой» был любой не НРД/биржа/НКЦ/УЦ, и приходило
«Сертификат ключа организации истекает сегодня» по сотруднику Сбербанка.
Теперь свой — ИНН в subject равен ИНН нашей организации; уведомления о
сроках — только по своим (сертификаты НРД приезжают с обновлением bj);
чужие сертификаты не показываются в шаге «Сертификаты».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
This commit is contained in:
fontvielle
2026-10-22 12:09:04 +03:00
parent 8afa84a499
commit ad6b52f5fa
2 changed files with 32 additions and 16 deletions
+7 -2
View File
@@ -45,11 +45,16 @@ func TestStoreCertKindAndExpiry(t *testing.T) {
own := NSDStoreCert{Kind: "x509", Subject: "O=Предприятие 1046,CN=Сотрудник 1046,INN=078000001046", SubjectCN: "Сотрудник 1046", IssuerCN: "Тестовый УЦ", Serial: "AA01"}
nsd := NSDStoreCert{Kind: "x509", Subject: "O=НКО АО НРД,CN=Петров,INN=007702165310", SubjectCN: "Петров", IssuerCN: "Тестовый УЦ", Serial: "BB02"}
ca := NSDStoreCert{Kind: "x509", SubjectCN: "Тестовый УЦ", SelfSigned: true}
for c, want := range map[*NSDStoreCert]string{&own: "own", &nsd: "counterpart", &ca: "ca"} {
if got := storeCertKind(*c, bundle); got != want {
// сотрудник другого участника обмена (в справочнике ИШ их сотни) — не наш сертификат
sber := NSDStoreCert{Kind: "x509", Subject: "O=ПАО Сбербанк,CN=Исакова,INN=007707083893", SubjectCN: "Исакова", IssuerCN: "Корневой УЦ", Serial: "CC03"}
for c, want := range map[*NSDStoreCert]string{&own: "own", &nsd: "counterpart", &ca: "ca", &sber: "other"} {
if got := storeCertKind(*c, bundle, "078000001046"); got != want {
t.Errorf("%s: %s, want %s", c.SubjectCN, got, want)
}
}
if storeCertKind(sber, bundle, "") != "own" {
t.Error("ИНН организации не задан — как раньше, свой любой не НРД")
}
if subjectINN(nsd.Subject) != "7702165310" {
t.Errorf("subjectINN: %q", subjectINN(nsd.Subject))
}