@EvilLord

Как изменить запрос на сертификат?

Добрый день!
Есть удостоверяющий центр Windows, для него клиенты генерируют запросы с использованием openssl.
Проблема в том, что в клиентских запросах отсутствует атрибут "Проверка подлинности сервера (1.3.6.1.5.5.7.3.1)" или "serverauth" и удостоверяющий центр выдает сертификат со всеми политиками применения.
Вопрос как можно изменить файл запроса или при генерации запроса в openssl указывать на необходимость выпустить ключ с политикой:Проверка подлинности сервера?
  • Вопрос задан
  • 1667 просмотров
Решения вопроса 1
@EvilLord Автор вопроса
Немного удалось разобраться в вопросе, в операционной системе windows есть утилита certreq и политики сертификата в виде файла например policy.inf:
Содержимое policy.inf
[PolicyStatementExtension] 
Policies=LegalPolicy

[LegalPolicy] 
OID=1.1.1.1.1.1.1
Notice = "Данный сертификат является собственностью организации, и предназначен для использования в системе ."
URL = https://toster.ru/q/462222?e=5738597#comment_1490836

[EnhancedKeyUsageExtension]
OID = 1.3.6.1.5.5.7.3.2 ; Client Authentication

[BasicConstraintsExtension]
pathlength=0
critical=true

[RequestAttributes]



Данным файлом можно изменить запрос пришедший из openssl с помощью примерно такой команды:
certreq -q -policy in.req policy.inf out.req
Тогда в запрос подтянутся все необходимые политики и можно простой командой выпустить готовый сертификат.
Надеюсь, некоторым администраторам это облегчит жизнь!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
CityCat4
@CityCat4 Куратор тега Цифровые сертификаты
//COPY01 EXEC PGM=IEBGENER
В клиентских запросах нет атрибутов политик применения. Они появляются в сертификате после его выпуска. Если СА Ваш - используйте нужный шаблон или создайте новый, в котором будет указано нужное число политик.
CSR содержит практически только данные для Subject, которые вписываются в сертификат.
Вот его примерное содержание:
Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: C=RU, ST=*** region, L=***, O=*** Ltd, OU=***, CN=***/emailAddress=certmgr@***.ru
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                ...
                Exponent: 65537 (0x10001)
        Attributes:
        Requested Extensions:
            X509v3 Basic Constraints: 
                CA:FALSE
            X509v3 Key Usage: 
                Digital Signature, Non Repudiation, Key Encipherment
            X509v3 Subject Alternative Name: 
                email:certmgr@***.ru, URI:http://***.ru
    Signature Algorithm: sha256WithRSAEncryption


Там где звездочки понятно будут другие данные, может вообще не быть
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы