Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Cynepnaxa  
#1 Оставлено : 29 мая 2026 г. 10:15:33(UTC)
Cynepnaxa

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.04.2008(UTC)
Сообщений: 46
Откуда: Новосибирск

Добрый день!

Мы интегрируемся с КриптоПро УЦ 2.0 на астре (исполнения 15, 16) через REST API. В документации в нескольких местах (Например, ЖТЯИ.00078-03 90 03 руководство по эксплуатации, раздел 1.3.1.2) упомянут параметр шаблона сертификата PrioritySource=Profile, при котором данные для субъекта сертификата берутся «из профиля пользователя в запросе (атрибут CpRaRequesterProfile)». Но подробностей по CpRaRequesterProfile нигде нет.

Мы хотим передать атрибут CpRaRequesterProfile в подписанном PKCS#7 запросе на сертификат, чтобы переопределять некоторые записи в DN исходного запроса на сертификат. Это нужно сделать без модификации пользователей УЦ, т.к. он один для этих целей и мы не берем из него данные.

Подскажите, пожалуйста:

1 Какой OID у атрибута CpRaRequesterProfile в CMS signed attributes?
2 Какой формат его значения? Это именно данные или некая ссылка на существующий профиль пользователя?
3 Есть ли рабочий пример CpRaRequesterProfile?
Offline Захар Тихонов  
#2 Оставлено : 29 мая 2026 г. 11:09:25(UTC)
Захар Тихонов

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,379
Мужчина
Тонга
Откуда: Калининград

Сказал «Спасибо»: 40 раз
Поблагодарили: 599 раз в 575 постах
Здравствуйте.
Так не выйдет, надо передавать запрос с субъектом соответствующий профилю пользователя. Переопределять через запрос можно расширения, но не dn.

Судя по описанию вы хотите выпускать сертификаты одному пользователю - TLS и подписи, в рамках ПлЦР?
Решение - передавать все компоненты имени на оба запроса, а что в субъект сертификата попадет - регулировать настройкой шаблона на сертификат.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Cynepnaxa  
#3 Оставлено : 29 мая 2026 г. 12:29:08(UTC)
Cynepnaxa

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.04.2008(UTC)
Сообщений: 46
Откуда: Новосибирск

Спасибо! Да, это для ПлЦР.

Подскажите, пожалуйста, еще:

1)
Автор: Захар Тихонов Перейти к цитате
Здравствуйте.
Так не выйдет, надо передавать запрос с субъектом соответствующий профилю пользователя. Переопределять через запрос можно расширения, но не dn.

Расскажите, пожалуйста, подробнее про CpRaRequesterProfile - что это и как используется? В документации на УЦ ничего про него не нашел.
В старом руководстве на УЦ 2.0 от 2019г написано, что этот атрибут используется для сверки с профилем.
Но в свежем руководстве от 2025г написано следующее :

"PrioritySource - определяющее приоритет источника данных для формирования
субъекта. Может принимать одно из следующих значений:
Profile - данные для формирования субъекта берутся в первую очередь из
профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если
профиль отсутствует - то из субъекта"

То есть в запросе передается некий профиль, который используется для формирования субъекта, если PrioritySource=profile. Или я неправильно понял?


2)
Автор: Захар Тихонов Перейти к цитате

Переопределять через запрос можно расширения, но не dn ... а что в субъект сертификата попадет - регулировать настройкой шаблона.

Подскажите, а мы можем передать нужные данные в расширении и потом шаблоном подставить это в DN?


3) Если PrioritySource=Subject(данные берутся из субъекта запроса) в шаблоне - это значит можно под одним фиксированным пользователем выдавать разные сертификаты с разными DN из CSR?

Отредактировано пользователем 1 июня 2026 г. 20:34:55(UTC)  | Причина: Не указана

Offline Захар Тихонов  
#4 Оставлено : 1 июня 2026 г. 13:41:52(UTC)
Захар Тихонов

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,379
Мужчина
Тонга
Откуда: Калининград

Сказал «Спасибо»: 40 раз
Поблагодарили: 599 раз в 575 постах
Автор: Cynepnaxa Перейти к цитате

Мы хотим использовать одного технического пользователя для выдачи сертификатов всех пользователей.


Вот как вы написали - это звучит как обход лицензионных ограничений.

Автор: Cynepnaxa Перейти к цитате
Раньше для этой цели мы меняли данные пользователя в УЦ и выдавали от него сертификаты. Но у такого подхода есть ряд проблем. Хотим устанавливать данные непосредственно в процессе выдачи сертификата. В идеале при помощи передачи данных где-то в подписи оператора, а не в самом csr, так как правила заполнения полей сертификатов у ЦБ меняются часто, и менять это в мобильном приложении проблематично, проще на бэке.



Автор: Cynepnaxa Перейти к цитате

Подскажите, пожалуйста, еще:

1)
Автор: Захар Тихонов Перейти к цитате
Здравствуйте.
Так не выйдет, надо передавать запрос с субъектом соответствующий профилю пользователя. Переопределять через запрос можно расширения, но не dn.

Расскажите, пожалуйста, подробнее про CpRaRequesterProfile - что это и как используется? В документации на УЦ ничего про него не нашел.
В старом руководстве на УЦ 2.0 от 2019г написано, что этот атрибут используется для сверки с профилем.
Но в свежем руководстве от 2025г написано следующее :

"PrioritySource - определяющее приоритет источника данных для формирования
субъекта. Может принимать одно из следующих значений:
Profile - данные для формирования субъекта берутся в первую очередь из
профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если
профиль отсутствует - то из субъекта"

То есть в запросе передается некий профиль, который используется для формирования субъекта, если PrioritySource=profile. Или я неправильно понял?


Microsoft-специфичный атрибут:

OID: 1.3.6.1.4.1.311.13.2.1
Имя: szOID_ENROLLMENT_NAME_VALUE_PAIR

Он используется внутри PKCS#10 CSR для передачи дополнительных данных. Эти данные не являются частью Subject и могут содержать совершенно другую информацию. УЦ может использовать их для формирования SAN, выбора параметров сертификата, EOBO и т.д. В вашем частном случае использовать CpRaRequesterProfile для отправки запроса пользователю у которого такой же Profile, но будет работать только если передавать в подписи, а не как атрибут запроса.

Автор: Cynepnaxa Перейти к цитате


2)
Автор: Захар Тихонов Перейти к цитате

Переопределять через запрос можно расширения, но не dn ... а что в субъект сертификата попадет - регулировать настройкой шаблона.

Подскажите, а мы можем передать нужные данные в расширении и потом шаблоном подставить это в DN?



При отправке запроса на ЦР проверяется:
1. профиль пользователя и субъект запроса - если есть отличия -> запрос отклоняется.
2. Если в подписи к запросу передавать атрибут CpRaRequesterProfile, то будет сравниваться профиль пользователя с профилем в данном атрибуте -> субъект будет игнорироваться в запросе.

В шаблоне обязательно должно быть указано, как должен быть сформирован субъект сертификата. Эта настройка содержится в объекте SubjectName и заключается в указании источника компонентов имени и правил формирования субъекта: PrioritySource - определяющее приоритет источника данных для формирования субъекта. Может принимать одно из следующих значений:
o Profile - данные для формирования субъекта берутся в первую очередь из профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если профиль отсутствует - то из субъекта
o Subject - данные для формирования субъекта берутся в первую очередь из субъекта запроса, а если субъект не заполнен - то из профиля.

Автор: Cynepnaxa Перейти к цитате


3) Если PrioritySource=Subject(данные берутся из субъекта запроса) в шаблоне - это значит можно под одним фиксированным пользователем выдавать разные сертификаты с разными DN из CSR?


Это реализовывалось, например, когда запрос делает дбо и кладет пустой субъект либо что-то типа DSN=guid, а хочется издать нормальный сертификат.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Захар Тихонов  
#5 Оставлено : 1 июня 2026 г. 14:58:42(UTC)
Захар Тихонов

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,379
Мужчина
Тонга
Откуда: Калининград

Сказал «Спасибо»: 40 раз
Поблагодарили: 599 раз в 575 постах
Автор: Cynepnaxa Перейти к цитате

В идеале при помощи передачи данных где-то в подписи оператора, а не в самом csr, так как правила заполнения полей сертификатов у ЦБ меняются часто, и менять это в мобильном приложении проблематично, проще на бэке.


Подскажите, пожалуйста, а в чем заключаются трудности, возможно мы подскажем как найти оптимальное решение.

Отредактировано пользователем 1 июня 2026 г. 15:00:26(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут.
Наша база знаний.
Offline Cynepnaxa  
#6 Оставлено : 1 июня 2026 г. 16:28:18(UTC)
Cynepnaxa

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.04.2008(UTC)
Сообщений: 46
Откуда: Новосибирск

Подскажите, пожалуйста, что означает этот пункт в документации на УЦ 2.0 1.63.0.32?

Цитата:
В шаблоне обязательно должно быть указано, как должен быть сформирован субъект сертификата. Эта настройка содержится в объекте SubjectName и заключается в указании источника компонентов имени и правил формирования субъекта:

PrioritySource - определяющее приоритет источника данных для формирования субъекта. Может принимать одно из следующих значений:

Profile - данные для формирования субъекта берутся в первую очередь из профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если профиль отсутствует - то из субъекта

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

Rules...


Т.е. из шаблона в сертификат могут попадать данные, которые не совпадают с профилем пользователя. PrioritySource = Subject работает через pkica, но через rest-api не получается это использовать, похоже RA требует точного соответствия запроса и пользователя, что делает бессмысленным настройки PrioritySource. Подскажите, пожалуйста, как можно воспользоваться PrioritySource через rest-api? как отключить проверку точного соответствия в RA?
Offline Захар Тихонов  
#7 Оставлено : 1 июня 2026 г. 16:43:58(UTC)
Захар Тихонов

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,379
Мужчина
Тонга
Откуда: Калининград

Сказал «Спасибо»: 40 раз
Поблагодарили: 599 раз в 575 постах
Автор: Cynepnaxa Перейти к цитате
Подскажите, пожалуйста, что означает этот пункт в документации на УЦ 2.0 1.63.0.32?

Цитата:
В шаблоне обязательно должно быть указано, как должен быть сформирован субъект сертификата. Эта настройка содержится в объекте SubjectName и заключается в указании источника компонентов имени и правил формирования субъекта:

PrioritySource - определяющее приоритет источника данных для формирования субъекта. Может принимать одно из следующих значений:

Profile - данные для формирования субъекта берутся в первую очередь из профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если профиль отсутствует - то из субъекта

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

Rules...


Т.е. из шаблона в сертификат могут попадать данные, которые не совпадают с профилем пользователя. PrioritySource = Subject работает через pkica, но через rest-api не получается это использовать, похоже RA требует точного соответствия запроса и пользователя, что делает бессмысленным настройки PrioritySource. Подскажите, пожалуйста, как можно воспользоваться PrioritySource через rest-api? как отключить проверку точного соответствия в RA?



Надо разбить на две части.

Отправка запроса на ЦР по API
При отправке запроса на ЦР проверяется:
1. Профиль пользователя и субъект запроса - если есть отличия -> запрос отклоняется.
2. Если в подписи к запросу передавать атрибут CpRaRequesterProfile, то будет сравниваться Профиль пользователя с Профилем в данном атрибуте (CpRaRequesterProfile) - если есть отличия -> запрос отклоняется, нет отличий -> субъект будет игнорироваться в запросе.

Обработка запроса на ЦС
Запрос обрабатывается на определенном шаблоне, и у него имеется правило формирования субъекта, а именно приоритет - использовать субъект запроса или Профиль пользователя (CpRaRequesterProfile). Вот вы и указываете откуда брать субъект для сертификата:
Profile - данные для формирования субъекта берутся в первую очередь из профиля пользователя в запросе (атрибут CpRaRequesterProfile), а если профиль отсутствует - то из субъекта
Subject - данные для формирования субъекта берутся в первую очередь из субъекта запроса, а если субъект не заполнен - то из профиля.
Техническую поддержку оказываем тут.
Наша база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.