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

Уведомление

Icon
Error

4 Страницы«<234
Опции
К последнему сообщению К первому непрочитанному
Offline Захар Тихонов  
#31 Оставлено : 29 августа 2018 г. 20:09:08(UTC)
Захар Тихонов

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 567 раз в 544 постах
Здравствуйте.

Да, значения передаются через атрибут NameValuePair, который умеют добавлять XEnroll и CertEnroll. Позволяют устанавливать как абсолютные даты начала/окончания, так и срок действия сертификата и закрытого ключа.
Относительный срок действия сертификата и ключа добавляется аналогично абсолютному, в тот же атрибут, только с другими значениями.
CpRaCertPeriod - длительность срока действия сертификата (целое число)
CpRaCertPeriodUnits - единицы, в которых измеряется длительность срока действия сертификата (Years, Months, Weeks, Days, Hours, Minutes)
Техническую поддержку оказываем тут.
Наша база знаний.
Offline bstas  
#32 Оставлено : 30 августа 2018 г. 10:07:03(UTC)
bstas

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

Группы: Участники
Зарегистрирован: 11.01.2017(UTC)
Сообщений: 120
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 5 раз в 5 постах
А можно элементарный пример как инициировать объект, передать в него параметр и добавить его в запросу? На примере стандартной функции по созданию запроса:
Код:
function GenerateSelfSignedCertRequest(sEKU, ContainerName){
	var Pkcs10Request = null;
	try { Pkcs10Request = new ActiveXObject("X509Enrollment.CX509CertificateRequestPkcs10");
} catch(e) {alert(e)} 
	Pkcs10Request.Initialize(ContextUser)

	var PrivateKey = Pkcs10Request.PrivateKey
	PrivateKey.ProviderType = PROV_GOST_2001_DH
	PrivateKey.ProviderName = "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"
	PrivateKey.KeySpec = AT_KEYEXCHANGE
	PrivateKey.ExportPolicy = XCN_NCRYPT_ALLOW_EXPORT_FLAG
	PrivateKey.ContainerName = ContainerName

	var objObjectId = new ActiveXObject("X509Enrollment.CObjectId")
        objObjectId.InitializeFromValue(sEKU)

        var objTemplateExt  = new ActiveXObject("X509Enrollment.CX509ExtensionTemplate") ;
        objTemplateExt.InitializeEncode(objObjectId, 1, 0) 

  Pkcs10Request.X509Extensions.Add(objTemplateExt)
  Pkcs10Request.Encode()
	
	return  Pkcs10Request.RawData
}

В ветке https://www.cryptopro.ru...aspx?g=posts&t=13553 посмотрел, что не всё так очевидно, и решения там не было

Отредактировано пользователем 30 августа 2018 г. 10:09:19(UTC)  | Причина: Не указана

Offline Захар Тихонов  
#33 Оставлено : 6 сентября 2018 г. 10:04:08(UTC)
Захар Тихонов

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

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

Сказал «Спасибо»: 38 раз
Поблагодарили: 567 раз в 544 постах
Автор: bstas Перейти к цитате
А можно элементарный пример как инициировать объект, передать в него параметр и добавить его в запросу? На примере стандартной функции по созданию запроса:
Код:
function GenerateSelfSignedCertRequest(sEKU, ContainerName){
	var Pkcs10Request = null;
	try { Pkcs10Request = new ActiveXObject("X509Enrollment.CX509CertificateRequestPkcs10");
} catch(e) {alert(e)} 
	Pkcs10Request.Initialize(ContextUser)

	var PrivateKey = Pkcs10Request.PrivateKey
	PrivateKey.ProviderType = PROV_GOST_2001_DH
	PrivateKey.ProviderName = "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"
	PrivateKey.KeySpec = AT_KEYEXCHANGE
	PrivateKey.ExportPolicy = XCN_NCRYPT_ALLOW_EXPORT_FLAG
	PrivateKey.ContainerName = ContainerName

	var objObjectId = new ActiveXObject("X509Enrollment.CObjectId")
        objObjectId.InitializeFromValue(sEKU)

        var objTemplateExt  = new ActiveXObject("X509Enrollment.CX509ExtensionTemplate") ;
        objTemplateExt.InitializeEncode(objObjectId, 1, 0) 

  Pkcs10Request.X509Extensions.Add(objTemplateExt)
  Pkcs10Request.Encode()
	
	return  Pkcs10Request.RawData
}

В ветке https://www.cryptopro.ru...aspx?g=posts&t=13553 посмотрел, что не всё так очевидно, и решения там не было


Здравствуйте.
Создание PKCS#10 запроса
Цитата:
Dim Pkcs10Request: Set Pkcs10Request = CreateObject("X509Enrollment.CX509CertificateRequestPkcs10")
Call Pkcs10Request.Initialize(1)
Dim PrivateKey: Set PrivateKey = Pkcs10Request.PrivateKey
PrivateKey.ProviderType = 75
PrivateKey.ReaderName = "registry"
PrivateKey.Silent = True


Добавление шаблона "Пользователь"
Цитата:
Dim objObjectId: Set objObjectId = CreateObject("X509Enrollment.CObjectId")
Call objObjectId.InitializeFromValue("1.2.3.4.5")
Dim objTemplateExt: Set objTemplateExt = CreateObject("X509Enrollment.CX509ExtensionTemplate")
Call objTemplateExt.InitializeEncode(objObjectId, 1, 0)
Call Pkcs10Request.X509Extensions.Add(objTemplateExt)

'Dim CmcRequest: Set CmcRequest = CreateObject("X509Enrollment.CX509CertificateRequestCmc")
'Call CmcRequest.InitializeFromInnerRequestTemplateName(Pkcs10Request, "")

Dim nvp: Set nvp = CreateObject("X509Enrollment.CX509NameValuePair")
Call nvp.Initialize("CpRaStartDate","20161204210000")
Call Pkcs10Request.NameValuePairs.Add(nvp)

Call Pkcs10Request.Encode()

Техническую поддержку оказываем тут.
Наша база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
4 Страницы«<234
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.