17.11.2004 16:44:37Генерация запроса на сертификат с помощью командной строки Ответов: 7
Алексей
Здравствуйте,

Я создаю запрос с помощью командной строки:
cryptcp.exe -creatrqst -both -ku -dn "CN=12345,E=4321" "C:\kav\12345.req" -provname "Crypto-Pro Cryptographic Service Provider" -certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2" -provtype 2

т.е. задаеться только общее имя и почта. Дальше этот запрос обрабатываеться с помощью АРМ администратора (ПАК УЦ 1.3). При регистрации пользователя информация из запроса считываеться нормально и пользователь создаеться, однако при выдачи сертификата если запрос считывать из этого же файла запроса выдаеться ошибка:
Запрос не может быть использован, так как пренадлежит другому пользователю.

И так со всеми другими полями, кроме поля CN, то есть если формируеться запрос содержащий только CN, то сертификат на этот запрос выдаеться без проблем.
В чем может быть дело?
 
Ответы:
18.11.2004 16:54:00Василий
Дело в порядке перечисления компонентов DN. При создании запроса порядок в строке должен быть таким E, C, S, L, O, OU, CN.
18.11.2004 17:23:16Алексей
А где можно взять полный список прорядка для всех компанент, типа от CN,
ORG, UnstructedAddress и т.д
18.11.2004 17:44:27Василий
В нашей документации (КриптоПро УЦ. Общее описание. ЖТЯИ.00009-02 90 03) это есть.
Вот такой порядок при отображении в окне просмотра сертификата:
SurName Фамилия
GivenName Отчество
Initials Инициалы
Title Должность
UnstructuredName Неструктурированное имя.
StreetAddress Адрес
UnstructuredAddress Неструктурированный адрес
DeviceSerialNumber Серийный номер устройства
DomainComponent Компонента доменного имени
CommonName Общее имя/псевдоним
OrganizationalUnit Наименование подразделения
Organization Наименование организации
Locality Город
State Область/субъект Федерации
Country Страна
Email Адрес электронной почты

При формировании запроса на сертификат компоненты перечисляются в обратном порядке.
19.11.2004 12:35:02Алексей
И еще вопрос:
почему то если в запросе содержиться больше полей чем рарешено на ЦР, то регистрация юзера проходит, а запрос на сертификат нет с той же ошибкой.

и почему-то такие поля как
DeviceSerialNumber
UnstructuredName
UnstructuredAddress
по именам не проходят, их нужно указывать как номера оидов.
DomainComponent проходит только как DC или оид соответственно.
19.11.2004 13:08:15Василий
1. При регистрации на ЦР нет тех полей DN, при наличии которых регистрация будет запрещена. А в модуле политики на ЦС - как раз так, если в запросе есть неразрешённое поле, то сертификат не выдаётся.
2. По именам полей. Вообще-то каждое из них идентифицируется в первую очередь OID-ом, и только некоторые имеют символические синонимы.
19.11.2004 13:27:54Алексей
При регистрации пользователя, как я понимаю, из запроса считываються только те поля, которые обозначены в политиках имен на ЦР, а остальные отбрасываються и в базу ЦР не заносятся , а при попытке создания запроса на сертификат из файла, заполненых полей в файле запроса оказываеться больше чем в базе, поэтому ЦР и выдает ошибку, что запрос пренадлежит другому пользователю, даже если на ЦС в политики имен установлены разрешены все компаненты имени.
19.11.2004 14:33:07Василий
точно