|
Чтение сертификата ключа подписи из файла
| ☑ |
0
Rosinv
27.11.15
✎
12:04
|
Имеется платформа 1с 8.2 ( с МенеджеромКриптографии) и файл ИмяСерт.p7b.
Как программно получить сертификат ключа не из хранилища сертификатов,
а из файла *.p7b (файла сертификата)?
|
|
1
Rosinv
27.11.15
✎
12:38
|
Для получения из ХранилищаСертификатов понятно:
ТипХранилища = ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты;
РасположениеХранилища = РасположениеХранилищаСертификатовКриптографии.ДанныеПользователяОС;
Хранилище = МенеджерКриптографии.ПолучитьХранилищеСертификатов(ТипХранилища,РасположениеХранилища);
СертификатыХранилища = Хранилище.ПолучитьВсе();
Для Каждого Сертификат Из СертификатыХранилища Цикл
...
КонецЦикла;
Но как быть, если надо получить сертификат из файла *.p7b?
|
|
2
Stim213
27.11.15
✎
13:45
|
СертификатКриптографии (CryptoCertificate)
Из файла
Синтаксис:
Новый СертификатКриптографии(<ИмяФайла>)
Параметры:
<ИмяФайла> (необязательный)
Тип: Строка.
Имя файла, из данных которого будет создан сертификат.
Описание:
Создает сертификат из данных, полученных из файла.
|
|
3
Rosinv
27.11.15
✎
14:09
|
Для тестирования с помощью остнастки Сертификаты получил из хранилища сертификатов сертификат ИвановИванИванович.p7b.
При тестировании сообщение:
Обработка.ТестМенеджераКриптографии1.Форма.Форма.Форма(19)}: Ошибка при вызове конструктора (СертификатКриптографии)
Сертик = Новый СертификатКриптографии("C:\ИвановИванИван.p7b");
по причине:
Ошибка при создании контекста сертификата.
|
|
4
Rosinv
27.11.15
✎
14:10
|
Сертификат самоподписанный (если это имеет значение )
|
|
5
Rosinv
27.11.15
✎
14:17
|
Аналогичная ошибка, если вместо пути к файлу взять его ДвоичныеДанные.
ДвоичныеДанныеФайла = Новый ДвоичныеДанные("C:\ИвановИванИван.p7b");
Сертик = Новый СертификатКриптографии(ДвоичныеДанныеФайла);
|
|
6
Rosinv
27.11.15
✎
15:11
|
Интересно, если создать сертификат с расширением cer,
то все работает, как писал Stim213 !
Спасибо, буду работать с сертификатами с расширением cer!
|
|