| ||||
| ||||
Здравствуйте, Я создаю запрос с помощью командной строки: 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, то сертификат на этот запрос выдаеться без проблем. В чем может быть дело? | ||||
Ответы: | ||||
| ||||
Дело в порядке перечисления компонентов DN. При создании запроса порядок в строке должен быть таким E, C, S, L, O, OU, CN. | ||||
| ||||
А где можно взять полный список прорядка для всех компанент, типа от CN, ORG, UnstructedAddress и т.д | ||||
| ||||
В нашей документации (КриптоПро УЦ. Общее описание. ЖТЯИ.00009-02 90 03) это есть. Вот такой порядок при отображении в окне просмотра сертификата: SurName Фамилия GivenName Отчество Initials Инициалы Title Должность UnstructuredName Неструктурированное имя. StreetAddress Адрес UnstructuredAddress Неструктурированный адрес DeviceSerialNumber Серийный номер устройства DomainComponent Компонента доменного имени CommonName Общее имя/псевдоним OrganizationalUnit Наименование подразделения Organization Наименование организации Locality Город State Область/субъект Федерации Country Страна Email Адрес электронной почты При формировании запроса на сертификат компоненты перечисляются в обратном порядке. | ||||
| ||||
И еще вопрос: почему то если в запросе содержиться больше полей чем рарешено на ЦР, то регистрация юзера проходит, а запрос на сертификат нет с той же ошибкой. и почему-то такие поля как DeviceSerialNumber UnstructuredName UnstructuredAddress по именам не проходят, их нужно указывать как номера оидов. DomainComponent проходит только как DC или оид соответственно. | ||||
| ||||
1. При регистрации на ЦР нет тех полей DN, при наличии которых регистрация будет запрещена. А в модуле политики на ЦС - как раз так, если в запросе есть неразрешённое поле, то сертификат не выдаётся. 2. По именам полей. Вообще-то каждое из них идентифицируется в первую очередь OID-ом, и только некоторые имеют символические синонимы. | ||||
| ||||
При регистрации пользователя, как я понимаю, из запроса считываються только те поля, которые обозначены в политиках имен на ЦР, а остальные отбрасываються и в базу ЦР не заносятся , а при попытке создания запроса на сертификат из файла, заполненых полей в файле запроса оказываеться больше чем в базе, поэтому ЦР и выдает ошибку, что запрос пренадлежит другому пользователю, даже если на ЦС в политики имен установлены разрешены все компаненты имени. | ||||
| ||||
точно | ||||