Электронная подпись клиент
ИспользоватьЭлектронныеПодписи
Описание, пример вызова
// Возвращает текущую настройку использования электронных подписей.//// Возвращаемое значение:// Булево - если Истина, электронные подписи используются.//Функция ИспользоватьЭлектронныеПодписи() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ИспользоватьЭлектронныеПодписи()
ИспользоватьШифрование
Описание, пример вызова
// Возвращает текущую настройку использования шифрования.//// Возвращаемое значение:// Булево - если Истина, шифрование используется.//Функция ИспользоватьШифрование() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ИспользоватьШифрование()
ПроверятьЭлектронныеПодписиНаСервере
Описание, пример вызова
// Возвращает текущую настройку проверки электронных подписей на сервере.//// Возвращаемое значение:// Булево - если Истина, электронные подписи будут проверяться на сервере.//Функция ПроверятьЭлектронныеПодписиНаСервере() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПроверятьЭлектронныеПодписиНаСервере()
СоздаватьЭлектронныеПодписиНаСервере
Описание, пример вызова
// Возвращает текущую настройку создания электронных подписей на сервере.// Настройка также предполагает шифрование и расшифровку на сервере.//// Возвращаемое значение:// Булево - если Истина, электронные подписи будут создаваться на сервере.//Функция СоздаватьЭлектронныеПодписиНаСервере() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.СоздаватьЭлектронныеПодписиНаСервере()
Подписать
Описание, пример вызова
// Подписывает данные, возвращает подпись и добавляет подпись в объект, если указано.//// Общий подход к обработке значений свойств с типом ОписаниеОповещения в параметре ОписаниеДанных.// При выполнении обработки оповещения в нее передается структура параметров, в которой всегда есть// свойство "Оповещение" типа ОписаниеОповещения, обработку которого нужно выполнить для продолжения.// Кроме того, в структуре всегда есть свойство ОписаниеДанных, полученное при вызове процедуры.// При вызове оповещения в качестве значения должна передаваться структура. Если в процессе асинхронного// выполнения возникает ошибка, тогда в эту структуру нужно вставить свойство ОписаниеОшибки типа Строка.//// Параметры:// ОписаниеДанных - Структура:// * Операция - Строка - заголовок формы подписания данных, например Подписание файла.// * ЗаголовокДанных - Строка - заголовок элемента или набора данных, например Файл.// * СообщитьОЗавершении - Булево - (необязательный) - если Ложь, то не будет показано оповещение о успешном// завершении операции для представления данных, указанного рядом с заголовком.// * ПоказатьКомментарий - Булево - (необязательный) - разрешает ввод комментария в форме// подписания данных. Если не указан, значит Ложь.// * ОтборСертификатов - Массив - (необязательный) - содержит ссылки на элементы справочника.// СертификатыЭлектроннойПодписиИШифрования, которые могут быть выбраны// пользователем. Отбор блокирует возможность выбора других сертификатов// из личного хранилища.// - Структура:// * Организация - ОпределяемыйТип.Организация - содержит ссылку на организацию,// по которой будет установлен отбор в списке сертификатов пользователя.// * БезПодтверждения - Булево - (необязательный) - пропустить подтверждение пользователя, если// в свойстве ОтборСертификатов только один сертификат и:// а) либо для сертификата указано "Вводить пароль в программе электронной подписи";// б) либо пользователь запомнил пароль к сертификату на время сеанса;// в) либо пароль установлен ранее методом УстановитьПарольСертификата.// Если в процессе подписания возникла ошибка, тогда будет открыта форма// с возможностью указать пароль. Параметр ПоказатьКомментарий игнорируется.// * ПередВыполнением - ОписаниеОповещения - (необязательный) - описание обработчика дополнительной// подготовки данных после выбора сертификата, которым будут подписаны данные.// В этом обработчике можно заполнить параметр Данные, если он зависит// от сертификата, который в момент вызова уже вставлен в ОписаниеДанных// как ВыбранныйСертификат (смотри ниже).// Также можно переопределить параметр ВыбраннаяДоверенность в ОписаниеДанных.// Следует учесть общий подход (смотри выше).// * ВыполнятьНаСервере - Неопределено// - Булево - (необязательный) - когда не указан или Неопределено,// тогда выполнение будет определено автоматически: если есть сервер, то сначала// на сервере, потом (при неудаче) на клиенте, потом сообщение о двух ошибках.// Когда Истина: если разрешено выполнение на сервере, тогда выполнение// только на сервере, при неудаче одно сообщение об ошибке на сервере.// Когда Ложь: выполнение только на клиенте, как будто нет сервера.// * ПараметрыДополнительныхДействий - Произвольный - (необязательный) - если указан, то передается// на сервер в процедуру ПередНачаломОперации общего модуля// ЭлектроннаяПодписьПереопределяемый как ВходныеПараметры.// * КонтекстОперации - Неопределено - (необязательный) - если указан, тогда в свойство будет// установлено определенное значение произвольного типа, которое позволяет// выполнить действие с тем же сертификатом повторно (у пользователя// не запрашивается ни пароль, ни подтверждение действия).// В случае ошибки после вызова процедуры, повторное действие, выполненное// с полученным контекстом, может быть также ошибочно.// - Произвольный - (необязательный) - если определено, то действие будет выполнено// с тем же сертификатом без запроса пароля или подтверждения.// Параметр БезПодтверждения считается равным Истина.// Параметры Операция, ЗаголовокДанных, ПоказатьКомментарий, ОтборСертификатов// и ВыполнятьНаСервере игнорируются, их значения остаются такими же, как при первом вызове.// Параметр ПараметрыДополнительныхДействий игнорируется.// Процедура ПередНачаломОперации не вызывается.// Если передать контекст, возвращенный процедурой Расшифровать, тогда// пароль, введенный для сертификата, может быть использован, как если бы// пароль был сохранен на время сеанса. В остальном контекст игнорируется.// * ПрекратитьВыполнение - Произвольный - если свойство существует и в процессе асинхронного выполнения возникает// ошибка, выполнение прекращается без отображения формы операции или с закрытием этой формы,// если она была открыта.//// Вариант 1.// * Данные - ДвоичныеДанные - данные для подписания.// - Строка - адрес временного хранилища, содержащего двоичные данные.// - ОписаниеОповещения - обработчик получения данных, который возвращает// их в свойстве Данные (смотри выше общий подход). В момент вызова// в ОписаниеДанных уже вставлен параметр ВыбранныйСертификат (смотри ниже).// - Структура:// * КонвертXML - см. ЭлектроннаяПодписьКлиент.КонвертXML// * ПараметрыXMLDSig - см. ЭлектроннаяПодписьКлиент.ПараметрыXMLDSig// - Структура:// * ПараметрыCMS - см. ЭлектроннаяПодписьКлиент.ПараметрыCMS// * Данные - Строка - произвольная строка для подписания,// - ДвоичныеДанные - двоичные данные для подписания.// * Объект - ЛюбаяСсылка - (необязательный) - ссылка на объект , к которому нужно добавить подпись.// Если не указан, то подпись не требуется добавлять.// - ОписаниеОповещения - (необязательный) - обработчик добавления подписи в// регистр сведений ЭлектронныеПодписи. Следует учесть общий подход (смотри выше).// В момент вызова в ОписаниеДанных уже вставлен параметр СвойстваПодписи.// В случае параметра НаборДанных, в ОписаниеДанных вставляется// свойство ТекущийЭлементНабораДанных, содержащее параметр СвойстваПодписи.// * ВерсияОбъекта - Строка - (необязательный) - версия данных объекта для проверки и// блокировки объекта перед добавлением подписи.// * Представление - ЛюбаяСсылка - (необязательный), если параметр не указан,// тогда представление вычисляется по значению свойства Объект.// - Строка// - Структура:// ** Значение - ЛюбаяСсылка// - ОписаниеОповещения - для открытия.// ** Представление - Строка - представление значения.// Вариант 2.// * НаборДанных - Массив - структуры со свойствами, описанными в Варианте 1.// * ПредставлениеНабора - Строка - представления нескольких элементов набора данных, например, "Файлы (%1)".// В это представление в параметр %1 заполняется количество элементов.// По гиперссылке можно открыть список.// Если в наборе данных 1 элемент, тогда используется значение// в свойстве Представление свойства НаборДанных, если не указано, тогда// представление вычисляется по значению свойства Объект элемента набора данных.// * СписокПредставлений - СписокЗначений// - Массив - (необязательный) - произвольный список элементов// или массив со значениями, как у свойства Представление, которые// сможет открыть пользователь. Если не указан, то заполняется из// свойств Представление или Объект в свойстве НаборДанных.//// Форма - ФормаКлиентскогоПриложения - форма, из которой нужно получить уникальный идентификатор,// который будет использоваться при блокировке объекта.// - УникальныйИдентификатор - уникальный идентификатор, который будет// использоваться при блокировке объекта.// - Неопределено - использовать стандартную форму.//// ОбработкаРезультата - ОписаниеОповещения -// Требуется для нестандартной обработки результата, например, если не указан параметр Объект и/или Форма.// В результат передается входной параметр ОписаниеДанных, который в успешном случае дополняется свойствами:// # Успех - Булево - Истина, если все прошло успешно. Если Успех = Ложь, то частичное завершение// определяется по наличию свойства СвойстваПодписи. Если есть, то шаг выполнен.// # Отказ - Булево - Истина, если пользователь отменил операцию интерактивно.// # ПользовательНажалКнопкуПодписать - Булево - если Истина, то пользователь хотя бы раз// нажал на кнопку Подписать. Используется для сценариев, когда для продолжения бизнес-процесса// достаточно простой подписи (намерения установить подпись), а установка квалифицированной подписи// является дополнением, которое можно реализовать позднее, если возникли технические проблемы.// # ВыбранныйСертификат - Структура - содержит свойства сертификата:// ## Ссылка - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - ссылка на сертификат.// ## Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// ## Данные - Строка - адрес временного хранилища, содержащего двоичные данные сертификата.// # ВыбраннаяДоверенность - ЛюбаяСсылка// # СвойстваПодписи = Строка - адрес временного хранилища, содержащего описанную ниже структуру,// если подписание произошло на сервере.// = Структура:// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии// * СрокДействияПоследнейМеткиВремени - Дата, Неопределено - заполняется только с помощью// менеджера криптографии.// * ДатаПодписиИзМетки - Дата, Неопределено - самый ранний штамп времени// * НеподтвержденнаяДатаПодписи - Дата - неподтвержденная дата подписи.// * Сертификат - ДвоичныеДанные - сертификат для проверки подписи.// * Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// * КомуВыданСертификат - Строка - представление субъекта, полученное из двоичных данных сертификата.// При передаче параметра НаборДанных, свойство нужно проверять в нем.//// ПараметрыПодписи - см. НовыйТипПодписи//Процедура Подписать(ОписаниеДанных, Форма = Неопределено, ОбработкаРезультата = Неопределено, ПараметрыПодписи = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.Подписать(ОписаниеДанных, Форма, ОбработкаРезультата, ПараметрыПодписи);
НовыйТипПодписи
Описание, пример вызова
// Конструктор параметра ТипПодписи для процедуры Подписать.// Игнорируется для подписи конверта XML.//// Параметры:// ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии//// Возвращаемое значение:// Структура:// * ТипыПодписи - Массив - массив типов подписей для выбора.// * Видимость - Булево - видимость типа подписи на форме подписания.// * Доступность - Булево - доступность типа подписи на форме подписания.// * ВыборДоверенности - Булево - показывать поле выбора доверенности.// * ПроверятьСертификат - Строка - режим проверки квалифицированности ЭП:// "ПроверятьКвалифицированные" - (по умолчанию) разрешать подписывать НЭП и проверять КЭП на действительность// с учетом списка разрешенных неаккредитованных УЦ.// "ТолькоКвалифицированные" - разрешать подписывать только КЭП и не учитывать список разрешенных// неаккредитованных УЦ.// "НеПроверятьСертификат" - не выполнять проверку сертификата.//Функция НовыйТипПодписи(ТипПодписи = Неопределено) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.НовыйТипПодписи(ТипПодписи);
ДобавитьПодписьИзФайла
Описание, пример вызова
// Предлагает пользователю выбрать файлы подписей для добавления к объекту и добавляет их.//// Общий подход к обработке значений свойств с типом ОписаниеОповещения в параметре ОписаниеДанных.// При выполнении обработки оповещения в нее передается структура параметров, в которой всегда есть// свойство "Оповещение" типа ОписаниеОповещения, обработку которого нужно выполнить для продолжения.// Кроме того, в структуре всегда есть свойство ОписаниеДанных, полученное при вызове процедуры.// При вызове оповещения в качестве значения должна передаваться структура. Если в процессе асинхронного// выполнения возникает ошибка, тогда в эту структуру нужно вставить свойство ОписаниеОшибки типа Строка.//// Параметры:// ОписаниеДанных - Структура:// * ЗаголовокДанных - Строка - заголовок элемента данных, например Файл.// * ПоказатьКомментарий - Булево - (необязательный) - разрешает ввод комментария в форме// добавления подписей. Если не указан, значит Ложь.// * Объект - ЛюбаяСсылка - (необязательный) - ссылка на объект , к которому нужно добавить подпись.// - ОписаниеОповещения - (необязательный) - обработчик добавления подписи в// регистр сведений ЭлектронныеПодписи. Следует учесть общий подход (смотри выше).// В момент вызова в ОписаниеДанных уже вставлен параметр Подписи.// * ВерсияОбъекта - Строка - (необязательный) - версия данных объекта для проверки и// блокировки объекта перед добавлением подписи.// * Представление - ЛюбаяСсылка// - Строка - (необязательный), если не указан, тогда// представление вычисляется по значению свойства Объект.// * Данные - ДвоичныеДанные - (необязательный) - данные для проверки подписи.// - Строка - (необязательный) - адрес временного хранилища, содержащего двоичные данные.// - ОписаниеОповещения - (необязательный) - обработчик получения данных, который// возвращает их в свойстве Данные (смотри выше общий подход).//// Форма - ФормаКлиентскогоПриложения - форма, из которой нужно получить уникальный идентификатор,// который будет использоваться при блокировке объекта.// - УникальныйИдентификатор - уникальный идентификаторы, который будет// использоваться при блокировке объекта.// - Неопределено - использовать стандартную форму.//// ОбработкаРезультата - ОписаниеОповещения -// Требуется для нестандартной обработки результата - например, если не указан параметр Объект и/или Форма.// В результат передается входной параметр ОписаниеДанных, который в успешном случае дополняется свойствами:// # Успех - Булево - Истина, если все прошло успешно.// # Отказ - Булево - Истина, если пользователь отменил операцию интерактивно.// # Подписи - Массив - который содержит элементы:// ## СвойстваПодписи = Строка - адрес временного хранилища, содержащего описанную ниже структуру.// = Структура - развернутое описание подписи// ### Подпись - ДвоичныеДанные - результат подписания.// ### УстановившийПодпись - СправочникСсылка.Пользователи - пользователь, который// подписал объект информационной базы.// ### Комментарий - Строка - комментарий, если он был введен при подписании.// ### ИмяФайлаПодписи - Строка - имя файла, из которого добавлена подпись.// ### ДатаПодписи - Дата - дата, когда подпись была сделана. Имеет смысл для случаев,// когда дату невозможно извлечь из данных подписи. Если не// указана или пустая, тогда используется текущая дата сеанса.// ### ДатаПроверкиПодписи - Дата - дата проверки подписи после добавления из файла, если// не указано свойство Данные в параметре ОписаниеДанных,// возвращает пустую дату.// ### ПодписьВерна - Булево - результат проверки подписи после добавления из файла, если// не указано свойство Данные в параметре ОписаниеДанных,// возвращает Ложь.//// Производные свойства:// ### Сертификат - ДвоичныеДанные - содержит выгрузку сертификата,// который использовался для подписания (содержится в подписи).// ### Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// ### КомуВыданСертификат - Строка - представление субъекта, полученное из двоичных данных сертификата.//Процедура ДобавитьПодписьИзФайла(ОписаниеДанных, Форма = Неопределено, ОбработкаРезультата = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ДобавитьПодписьИзФайла(ОписаниеДанных, Форма, ОбработкаРезультата);
СохранитьДанныеВместеСПодписью
Описание, пример вызова
// Предлагает пользователю выбрать подписи для сохранения вместе с данными объекта.//// Общий подход к обработке значений свойств с типом ОписаниеОповещения в параметре ОписаниеДанных.// При выполнении обработки оповещения в нее передается структура параметров, в которой всегда есть// свойство "Оповещение" типа ОписаниеОповещения, обработку которого нужно выполнить для продолжения.// Кроме того, в структуре всегда есть свойство ОписаниеДанных, полученное при вызове процедуры.// При вызове оповещения в качестве значения должна передаваться структура. Если в процессе асинхронного// выполнения возникает ошибка, тогда в эту структуру нужно вставить свойство ОписаниеОшибки типа Строка.//// Параметры:// ОписаниеДанных - Структура:// * ЗаголовокДанных - Строка - заголовок элемента данных, например Файл.// * ПоказатьКомментарий - Булево - (необязательный) - разрешает ввод комментария в форме// добавления подписей. Если не указан, значит Ложь.// * Представление - ЛюбаяСсылка// - Строка - (необязательный), если не указан, тогда// представление вычисляется по значению свойства Объект.// * Объект - ЛюбаяСсылка - ссылка на объект, из которого нужно получить список подписей.// - Строка - адрес временного хранилища массива подписей с составом свойств,// как возвращает процедура ДобавитьПодписьИзФайла.// * Данные - ОписаниеОповещения - обработчик сохранения данных и получения полного имени// файла с путем (после его сохранения), возвращаемое в свойстве ПолноеИмяФайла// типа Строка для сохранения электронных подписей (смотри выше общий подход).// Если расширение для работы с 1С:Предприятием не подключено, то нужно вернуть// имя файла без пути.// Если свойство не будет вставлено или заполнено - это считается отказом// от продолжения и будет вызвана ОбработкаРезультата с результатом Ложь.//// Для пакетного запроса разрешений у пользователя веб-клиента на сохранение файла данных// и подписей нужно вставить параметр ОбработкаЗапросаРазрешений типа ОписаниеОповещения.// В процедуру будет передана Структура со свойствами// # Вызовы - Массив - с описанием вызовов для сохранения подписей.// # ОбработкаПродолжения - ОписаниеОповещения - оповещение, которое нужно выполнить// после запроса разрешений, - параметры процедуры как у// оповещения для метода НачатьЗапросРазрешенияПользователя.// Если разрешение не получено, значит, все отменено.//// ОбработкаРезультата - ОписаниеОповещения -// В результат передается параметр типа Булево - Истина, если все прошло успешно.//Процедура СохранитьДанныеВместеСПодписью(ОписаниеДанных, ОбработкаРезультата = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.СохранитьДанныеВместеСПодписью(ОписаниеДанных, ОбработкаРезультата);
ПроверитьПодпись
Описание, пример вызова
// Проверяет действительность подписи и сертификата.// Сертификат всегда проверяется на сервере, если администратор// настроил проверку электронных подписей на сервере.//// Параметры:// Оповещение - ОписаниеОповещения - оповещение о результате выполнения следующих типов:// = Булево - Истина, если проверка выполнена успешно - если ПараметрыПроверки - Неопределено// = Строка - описание ошибки проверки подписи.// = Неопределено - не удалось получить менеджер криптографии (когда не указан).// = см. ЭлектроннаяПодписьКлиентСервер.РезультатПроверкиПодписи - если// ПараметрыПроверки.РезультатВВидеСтруктуры - Истина.// ИсходныеДанные - ДвоичныеДанные - двоичные данные, которые были подписаны.// Математическая проверка выполняется на стороне клиента, даже когда// администратор настроил проверку электронных подписей на сервере,// если указан менеджер криптографии или его удалось получить без ошибки.// Это повышает производительность, а также безопасность, когда проверяется подпись// в расшифрованном файле (он не будет передан на сервер).// - Строка - адрес временного хранилища, содержащего исходные двоичные данные.// - Структура:// * КонвертXML - Строка - подписанный КонвертXML,// смотри также функцию КонвертXML.// * ПараметрыXMLDSig - см. ЭлектроннаяПодписьКлиент.ПараметрыXMLDSig// - Структура:// * ПараметрыCMS - см. ЭлектроннаяПодписьКлиент.ПараметрыCMS// * Данные - Строка - произвольная строка для подписания,// - ДвоичныеДанные - двоичные данные для подписания.// Подпись - ДвоичныеДанные - двоичные данные электронной подписи.// - Строка - адрес временного хранилища, содержащего двоичные данные.// - Неопределено - если ИсходныеДанные - конверт SOAP.// МенеджерКриптографии - Неопределено - получить менеджер криптографии по умолчанию// (менеджер первой программы в списке, как настроил администратор).// - МенеджерКриптографии - использовать указанный менеджер криптографии.// НаДату - Дата - проверить сертификат на указанную дату,// если дату не удалось извлечь из подписи или если проверяется КонвертXML.// Если параметр не заполнен, тогда проверять на текущую дату сеанса,// если дату не удалось извлечь из подписи или если проверяется КонвертXML.// ПараметрыПроверки - см. ПараметрыПроверкиПодписи// - Неопределено - показать ошибку создания менеджера криптографии (когда не указан).//Процедура ПроверитьПодпись(Оповещение, ИсходныеДанные, Подпись, Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ПроверитьПодпись(Оповещение, ИсходныеДанные, Подпись, );
ПараметрыПроверкиПодписи
Описание, пример вызова
// Конструктор параметра "ПараметрыПроверки" для процедуры "ПроверитьПодпись".//// Возвращаемое значение:// Структура:// * ПоказатьОшибкуСозданияМенеджераКриптографии - Булево - показать ошибку// создания менеджера криптографии (когда не указан).// * РезультатВВидеСтруктуры - Булево - если Истина, результат будет в виде// см. ЭлектроннаяПодписьКлиентСервер.РезультатПроверкиПодписи// * ПроверятьСертификат - Строка - режим проверки квалифицированности ЭП, применяется, если РезультатВВидеСтруктуры =// Истина иначе проверка работает в режиме "ПроверятьКвалифицированные".// "ПроверятьКвалифицированные" - (по умолчанию) разрешать подписывать НЭП и проверять КЭП на действительность// с учетом списка разрешенных неаккредитованных УЦ.// "ТолькоКвалифицированные" - разрешать подписывать только КЭП и не учитывать список разрешенных// неаккредитованных УЦ.// "НеПроверятьСертификат" - не выполнять проверку сертификата подписи.//Функция ПараметрыПроверкиПодписи() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыПроверкиПодписи()
Зашифровать
Описание, пример вызова
// Шифрует данные, возвращает сертификаты шифрования и добавляет их в объект, если указано.//// Общий подход к обработке значений свойств с типом ОписаниеОповещения в параметре ОписаниеДанных.// При выполнении обработки оповещения в нее передается структура параметров, в которой всегда есть// свойство "Оповещение" типа ОписаниеОповещения, обработку которого нужно выполнить для продолжения.// Кроме того, в структуре всегда есть свойство ОписаниеДанных, полученное при вызове процедуры.// При вызове оповещения в качестве значения должна передаваться структура. Если в процессе асинхронного// выполнения возникает ошибка, тогда в эту структуру нужно вставить свойство ОписаниеОшибки типа Строка.//// Параметры:// ОписаниеДанных - Структура:// * Операция - Строка - заголовок формы шифрования данных, например Шифрование файла.// * ЗаголовокДанных - Строка - заголовок элемента или набора данных, например Файл.// * СообщитьОЗавершении - Булево - (необязательный) - если Ложь, то не будет показано оповещение об успешном// завершении операции для представления данных, указанного рядом с заголовком.// * НаборСертификатов - Строка - (необязательный) адрес временного хранилища, содержащего массив, описанный ниже.// - Массив - (необязательный) содержит значения// типа СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования или// типа ДвоичныеДанные (выгрузка сертификата).// - ЛюбаяСсылка - (необязательный) - ссылка на объект, для которого необходимо получить сертификаты.// * ИзменятьНабор - Булево - если Истина и НаборСертификатов задан и содержит только ссылки// на сертификаты, тогда будет возможность изменить состав сертификатов.// * БезПодтверждения - Булево - (необязательный) - пропустить подтверждение пользователя,// если указано свойство ОтборСертификатов.// * ВыполнятьНаСервере - Неопределено// - Булево - (необязательный) - когда не указан или Неопределено,// тогда выполнение будет определено автоматически: если есть сервер, то сначала// на сервере, потом (при неудаче) на клиенте, потом сообщение о двух ошибках.// Когда Истина: если разрешено выполнение на сервере, тогда выполнение// только на сервере, при неудаче одно сообщение об ошибке на сервере.// Когда Ложь: выполнение только на клиенте, как будто нет сервера.// * КонтекстОперации - Неопределено - (необязательный) - если указан, тогда в свойство будет// установлено определенное значение произвольного типа, которое позволяет// выполнить действие с теми же сертификатами шифрования повторно (у пользователя// не запрашивается подтверждение действия).// - Произвольный - (необязательный) - если определено, то действие будет выполнено// с теми же сертификатами шифрования.// Параметр БезПодтверждения считается равным Истина.// Параметры Операция, ЗаголовокДанных, НаборСертификатов, ИзменятьНабор// и ВыполнятьНаСервере игнорируются, их значения остаются такими же, как при первом вызове.// * ПрекратитьВыполнение - Произвольный - если свойство существует и в процессе асинхронного выполнения возникает// ошибка, выполнение прекращается без отображения формы операции или с закрытием этой формы,// если она была открыта.// * АлгоритмШифрования - Строка - (необязательный) - содержит явное название ("Магма", "Кузнечик", "ГОСТ 28147-89"),// OID или представление алгоритма шифрования,которым будет переопределен алгоритм шифрования// по умолчанию. Например, если передается представление "Магма", то это наименование будет// преобразовано в название алгоритма шифрования той программы, которой выполняется шифрование.//// Вариант 1.// * Данные - ДвоичныеДанные - данные для шифрования.// - Строка - адрес временного хранилища, содержащего двоичные данные.// - ОписаниеОповещения - обработчик получения данных, который возвращает// их в свойстве Данные (смотри выше общий подход).// * РазмещениеРезультата - Неопределено - (необязательный) - описывает куда поместить зашифрованные данные.// Если не указан или Неопределено, тогда через параметр ОбработкаРезультата.// - ОписаниеОповещения - обработчик сохранения зашифрованных данных.// Следует учесть общий подход (смотри выше).// В момент вызова в ОписаниеДанных уже вставлен параметр ЗашифрованныеДанные.// В случае параметра НаборДанных, в ОписаниеДанных вставляется// свойство ТекущийЭлементНабораДанных, содержащее параметр ЗашифрованныеДанные.// * Объект - ЛюбаяСсылка - (необязательный) - ссылка на объект, который необходимо зашифровать.// Если не указан, то сертификаты шифрования не требуется добавлять.// * ВерсияОбъекта - Строка - (необязательный) - версия данных объекта для проверки и// блокировки объекта перед добавлением сертификатов шифрования.// * Представление - ЛюбаяСсылка - (необязательный), если параметр не указан,// тогда представление вычисляется по значению свойства Объект.// - Строка// - Структура:// ** Значение - ЛюбаяСсылка// - ОписаниеОповещения - для открытия.// ** Представление - Строка - представление значения.//// Вариант 2.// * НаборДанных - Массив - структуры со свойствами, описанными в Варианте 1.// * ПредставлениеНабора - Строка - представления нескольких элементов набора данных, например, "Файлы (%1)".// В это представление в параметр %1 заполняется количество элементов.// По гиперссылке можно открыть список.// Если в наборе данных 1 элемент, тогда используется значение// в свойстве Представление свойства НаборДанных, если не указано, тогда// представление вычисляется по значению свойства Объект элемента набора данных.// * СписокПредставлений - СписокЗначений// - Массив - (необязательный) - произвольный список элементов// или массив со значениями, как у свойства Представление, которые// сможет открыть пользователь. Если не указан, то заполняется из// свойств Представление или Объект в свойстве НаборДанных.//// Форма - ФормаКлиентскогоПриложения - форма, из которой нужно получить уникальный идентификатор, который будет// использоваться при помещении зашифрованных данных во временное хранилище.// - УникальныйИдентификатор - уникальный идентификатор, который будет// использоваться при помещении зашифрованных данных во временное хранилище.// - Неопределено - использовать стандартную форму.//// ОбработкаРезультата - ОписаниеОповещения -// Требуется для нестандартной обработки результата, если не указан параметр Форма и/или РазмещениеРезультата.// В результат передается входной параметр ОписаниеДанных, который в успешном случае дополняется свойствами:// # Успех - Булево - Истина, если все прошло успешно. Если Успех = Ложь, то частичное завершение// определяется по наличию свойства ЗашифрованныеДанные. Если есть, то шаг выполнен.// # Отказ - Булево - Истина, если пользователь отменил операцию интерактивно.// # СертификатыШифрования = Строка - адрес временного хранилища, содержащего массив, описанный ниже.// = Массив - помещается перед началом шифрования и после этого не изменяется.// ## Значение - Структура// ### Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// ### Представление - Строка - сохраненное представление субъекта,// полученное из двоичных данных сертификата.// ### Сертификат - ДвоичныеДанные - содержит выгрузку сертификата,// который использовался для шифрования.// # ЗашифрованныеДанные = ДвоичныеДанные - результат шифрования.// При передаче параметра НаборДанных свойство нужно проверять в нем.// = Строка - адрес временного хранилища, содержащего результат шифрования.//Процедура Зашифровать(ОписаниеДанных, Форма = Неопределено, ОбработкаРезультата = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.Зашифровать(ОписаниеДанных, Форма, ОбработкаРезультата);
Расшифровать
Описание, пример вызова
// Расшифровывает данные, возвращает их и помещает в объект, если указано.//// Общий подход к обработке значений свойств с типом ОписаниеОповещения в параметре ОписаниеДанных.// При выполнении обработки оповещения в нее передается структура параметров, в которой всегда есть// свойство "Оповещение" типа ОписаниеОповещения, обработку которого нужно выполнить для продолжения.// Кроме того, в структуре всегда есть свойство ОписаниеДанных, полученное при вызове процедуры.// При вызове оповещения в качестве значения должна передаваться структура. Если в процессе асинхронного// выполнения возникает ошибка, тогда в эту структуру нужно вставить свойство ОписаниеОшибки типа Строка.//// Параметры:// ОписаниеДанных - Структура:// * Операция - Строка - заголовок формы расшифровки данных, например, Расшифровка файла.// * ЗаголовокДанных - Строка - заголовок элемента или набора данных, например Файл.// * СообщитьОЗавершении - Булево - (необязательный) - если Ложь, то не будет показано оповещение о успешном// завершении операции для представления данных, указанного рядом с заголовком.// * ОтборСертификатов - Массив - (необязательный) - содержит ссылки на элементы справочника.// СертификатыЭлектроннойПодписиИШифрования, которые могут быть выбраны// пользователем. Отбор блокирует возможность выбора других сертификатов// из личного хранилища.// * БезПодтверждения - Булево - (необязательный) - пропустить подтверждение пользователя, если// в свойстве ОтборСертификатов только один сертификат и:// а) либо для сертификата указано "Вводить пароль в программе электронной подписи";// б) либо пользователь запомнил пароль к сертификату на время сеанса;// в) либо пароль установлен ранее методом УстановитьПарольСертификата.// Если в процессе расшифровки возникла ошибка, тогда будет открыта форма// с возможностью указать пароль.// * ЭтоАутентификация - Булево - (необязательный) - если Истина, то вместо кнопки Расшифровать// будет показана кнопка ОК. А также скорректированы некоторые надписи.// Кроме того, параметр СообщитьОЗавершении устанавливается в Ложь.// * ПередВыполнением - ОписаниеОповещения - (необязательный) - описание обработчика дополнительной// подготовки данных после выбора сертификата, которым будут расшифрованы данные.// В этом обработчике можно заполнить параметр Данные, если необходимо.// В момент вызова в ОписаниеДанных уже вставлен выбранный сертификат,// как ВыбранныйСертификат (смотри ниже). Следует учесть общий подход (смотри выше).// * ВыполнятьНаСервере - Неопределено// - Булево - (необязательный) - когда не указан или Неопределено,// тогда выполнение будет определено автоматически: если есть сервер, то сначала// на сервере, потом (при неудаче) на клиенте, потом сообщение о двух ошибках.// Когда Истина: если разрешено выполнение на сервере, тогда выполнение// только на сервере, при неудаче одно сообщение об ошибке на сервере.// Когда Ложь: выполнение только на клиенте, как будто нет сервера.// * ПараметрыДополнительныхДействий - Произвольный - (необязательный) - если указан, то передается// на сервер в процедуру ПередНачаломОперации общего модуля.// ЭлектроннаяПодписьПереопределяемый, как ВходныеПараметры.// * КонтекстОперации - Неопределено - (необязательный) - если указан, тогда в свойство будет// установлено определенное значение произвольного типа, которое позволяет// выполнить действие с тем же сертификатом повторно (у пользователя// не запрашивается ни пароль, ни подтверждение действия).// В случае ошибки после вызова процедуры, повторное действие, выполненное// с полученным контекстом, может быть также ошибочно.// - Произвольный - (необязательный) - если определено, то действие будет выполнено// с тем же сертификатом без запроса пароля или подтверждения.// Параметр БезПодтверждения считается равным Истина.// Параметры Операция, ЗаголовокДанных, ОтборСертификатов, ЭтоАутентификация// и ВыполнятьНаСервере игнорируются, их значения остаются такими же, как при первом вызове.// Параметр ПараметрыДополнительныхДействий игнорируется.// Процедура ПередНачаломОперации не вызывается.// Если передать контекст, возвращенный процедурой Подписать, тогда// пароль, введенный для сертификата, может быть использован, как если бы// пароль был сохранен на время сеанса. В остальном контекст игнорируется.// * ПрекратитьВыполнение - Произвольный - если свойство существует и в процессе асинхронного выполнения возникает// ошибка, выполнение прекращается без отображения формы операции или с закрытием этой формы,// если она была открыта.//// Вариант 1.// * Данные - ДвоичныеДанные - данные для расшифровки.// - Строка - адрес временного хранилища, содержащего двоичные данные.// - ОписаниеОповещения - обработчик получения данных, который возвращает// их в свойстве Данные (смотри выше общий подход). В момент вызова// в ОписаниеДанных уже вставлен параметр ВыбранныйСертификат (смотри ниже).// * РазмещениеРезультата - Неопределено - (необязательный) - описывает, куда поместить расшифрованные данные.// Если не указан или Неопределено, тогда через параметр ОбработкаРезультата.// - ОписаниеОповещения - обработчик сохранения расшифрованных данных.// Следует учесть общий подход (смотри выше).// В момент вызова в ОписаниеДанных уже вставлен параметр РасшифрованныеДанные.// В случае параметра НаборДанных, в ОписаниеДанных вставляется// свойство ТекущийЭлементНабораДанных, содержащее параметр РасшифрованныеДанные.// * Объект - ЛюбаяСсылка - (необязательный) - ссылка на объект, который необходимо расшифровать,// а также очистить записи из регистра сведений СертификатыШифрования// после успешного завершения расшифровки.// Если не указан, то сертификаты не требуется получать из объекта и очищать.// - Строка - адрес временного хранилища, содержащий// ## Массив из Структура - массив сертификатов шифрования// ### Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// ### Представление - Строка - сохраненное представление субъекта,// полученное из двоичных данных сертификата.// ### Сертификат - ДвоичныеДанные - содержит выгрузку сертификата,// который использовался для шифрования.// * Представление - ЛюбаяСсылка - (необязательный), если параметр не указан,// тогда представление вычисляется по значению свойства Объект.// - Строка// - Структура:// ** Значение - ЛюбаяСсылка// - ОписаниеОповещения - для открытия.// ** Представление - Строка - представление значения.//// Вариант 2.// * НаборДанных - Массив - структуры со свойствами, описанными в Варианте 1.// * ПредставлениеНабора - Строка - представления нескольких элементов набора данных, например, "Файлы (%1)".// В это представление в параметр %1 заполняется количество элементов.// По гиперссылке можно открыть список.// Если в наборе данных 1 элемент, тогда используется значение// в свойстве Представление свойства НаборДанных, если не указано, тогда// представление вычисляется по значению свойства Объект элемента набора данных.// * СписокПредставлений - СписокЗначений// - Массив - (необязательный) - произвольный список элементов// или массив со значениями, как у свойства Представление, которые// сможет открыть пользователь. Если не указан, то заполняется из// свойств Представление или Объект в свойстве НаборДанных.// * СертификатыШифрования - Массив - (необязательный) значения, как у параметра Объект. Используется// для извлечения списков сертификатов шифрования для элементов, указанных// в параметре СписокПредставлений (порядок должен соответствовать).// Когда указан, параметр Объект не используется.//// Форма - ФормаКлиентскогоПриложения - форма, из которой нужно получить уникальный идентификатор, который будет// использоваться при помещении расшифрованных данных во временное хранилище.// - УникальныйИдентификатор - уникальный идентификатор, который будет использоваться// при помещении расшифрованных данных во временное хранилище.// - Неопределено - использовать стандартную форму.//// ОбработкаРезультата - ОписаниеОповещения -// Требуется для нестандартной обработки результата, если не указан параметр Форма и/или РазмещениеРезультата.// В результат передается входной параметр ОписаниеДанных, который в успешном случае, дополняется свойствами:// # Успех - Булево - Истина, если все прошло успешно. Если Успех = Ложь, то частичное завершение// определяется по наличию свойства РасшифрованныеДанные. Если есть, то шаг выполнен.// # Отказ - Булево - Истина, если пользователь отменил операцию интерактивно.// # ВыбранныйСертификат - Структура - содержит свойства сертификата:// ## Ссылка - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - ссылка на сертификат.// ## Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// ## Данные - Строка - адрес временного хранилища, содержащего двоичные данные сертификата.// # РасшифрованныеДанные = ДвоичныеДанные - результат расшифровки.// При передаче параметра НаборДанных, свойство нужно проверять в нем.// = Строка - адрес временного хранилища, содержащего результат расшифровки.//Процедура Расшифровать(ОписаниеДанных, Форма = Неопределено, ОбработкаРезультата = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.Расшифровать(ОписаниеДанных, Форма, ОбработкаРезультата);
УсовершенствоватьПодпись
Описание, пример вызова
// Усовершенствует одну или несколько подписей до указанного типа.//// Параметры:// ОписаниеДанных - Структура:// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии - тип подписи,// до которого требуется усовершенствование. Если фактический ТипПодписи// тот же или выше, тогда никаких действий произведено не будет.// * ДобавитьАрхивнуюМеткуВремени - Булево - если указано Истина и ТипПодписи указан архивная,// и фактический ТипПодписи архивная, тогда будет добавлена метка времени.//// * Подпись - ДвоичныеДанные - данные подписи.// - Строка - адрес временного хранилища, содержащего двоичные данные.// - Структура:// ** ПодписанныйОбъект - ЛюбаяСсылка - ссылка на объект, подписи которого нужно усовершенствовать.// ** ПорядковыйНомер - Число - порядковый номер подписи.// - Массив - значения указанного выше типа.// - Неопределено - все подписи объекта.// ** Подпись - ДвоичныеДанные - (необязательный) данные подписи, если порядковый номер// подписи - число// - Строка - адрес временного хранилища, содержащего двоичные данные подписи,// если порядковый номер подписи - число.// - Массив из ДвоичныеДанные.// - Массив из Строка - как для строки указанной выше.// - Массив из Структура - как структура, указанная выше.//// * Представление - ЛюбаяСсылка - (необязательный), если параметр не указан,// тогда представление вычисляется по значению свойств Объект и ПорядковыйНомер.// - Строка// - Структура:// ** Значение - ЛюбаяСсылка// - ОписаниеОповещения - для открытия.// ** Представление - Строка - представление значения.// - СписокЗначений// - Массив - (необязательный) - произвольный список элементов// или массив со значениями, как у описано выше, которые// сможет открыть пользователь. Если не указан, то заполняется из// свойств свойств Объект и ПорядковыйНомер.//// Форма - ФормаКлиентскогоПриложения - форма, из которой нужно получить уникальный идентификатор,// который будет использоваться при блокировке объекта.// - УникальныйИдентификатор - уникальный идентификатор, который будет// использоваться при блокировке объекта.//// ПрерыватьОбработкуМассиваПриОшибке - Булево - по умолчанию Истина - при ошибке обработка следующих элементов будет прервана.// ИгнорироватьСрокДействияСертификата - Булево - по умолчанию Ложь - не проверять срок действия сертификата подписи// перед усовершенствованием.//// ОбработкаРезультата - ОписаниеОповещения -// Требуется для нестандартной обработки результата, например, если не указана ссылка на объект и порядковый номер подписи.// Структура:// # Успех = Булево - Истина, если все прошло успешно. Если Успех = Ложь, то частичное завершение// определяется по наличию свойства СвойстваПодписи. Если есть, то шаг выполнен.// # ТекстОшибки = Строка// # СвойстваПодписей = Массив из Структура -// ## Подпись = ДвоичныеДанные - Подпись, которую надо усовершенствовать.// = Строка - адрес во временном хранилище.// ## ПодписанныйОбъект - ЛюбаяСсылка - если есть.// ## ПорядковыйНомер - Число - если есть.// ## ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии - тип подписи,// если подпись не удалось усовершенствовать, но удалось определить тип.// ## СрокДействияПоследнейМеткиВремени - Дата - срок действия,// если подпись не удалось усовершенствовать, но удалось определить срок действия.// ## СвойстваПодписи = см. ЭлектроннаяПодписьКлиентСервер.НовыеСвойстваПодписи -// свойства усовершенствованной подписи (заполнены только изменившиеся).// ## Ошибка = Строка - текст ошибки при попытке усовершенствования. Если произошла ошибка,// то структура не будет содержать свойств подписи, которую не удалось усовершенствовать.// = Строка - адрес временного хранилища, содержащего массив указанный выше.//Процедура УсовершенствоватьПодпись(ОписаниеДанных, Форма, ОбработкаРезультата = Неопределено, Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.УсовершенствоватьПодпись(ОписаниеДанных, Форма, ОбработкаРезультата, );
ПроверитьСертификат
Описание, пример вызова
// Проверяет действительность сертификата криптографии.//// Параметры:// Оповещение - ОписаниеОповещения - оповещение о результате выполнения следующих типов// = Булево - Истина, если проверка выполнена успешно.// = Строка - описание ошибки проверки сертификата.// = Неопределено - не удалось получить менеджер криптографии (когда не указан).//// Сертификат - СертификатКриптографии - сертификат.// - ДвоичныеДанные - двоичные данные сертификата.// - Строка - адрес временного хранилища, содержащего двоичные данные сертификата.//// МенеджерКриптографии - Неопределено - получить менеджер криптографии автоматически.// - МенеджерКриптографии - использовать указанный менеджер криптографии// (проверка на сервере не будет выполнена).//// НаДату - Дата - проверить сертификат на указанную дату в часовом поясе информационной базы.// Если параметр не указан или указана пустая дата,// тогда проверять на текущую дату сеанса.// ПараметрыПроверки - см. ПараметрыПроверкиСертификата.//Процедура ПроверитьСертификат(Оповещение, Сертификат, МенеджерКриптографии = Неопределено, НаДату = Неопределено, ПараметрыПроверки = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ПроверитьСертификат(Оповещение, Сертификат, МенеджерКриптографии, НаДату, ПараметрыПроверки);
ПараметрыПроверкиСертификата
Описание, пример вызова
// Дополнительные параметры проверки сертификата.//// Возвращаемое значение:// Структура - дополнительные параметры проверки сертификата:// * ВыполнятьПроверкуУдостоверяющегоЦентра - Строка - режим проверки квалифицированности ЭП:// "ПроверятьКвалифицированные" - (по умолчанию) разрешать подписывать НЭП и проверять КЭП на действительность// с учетом списка разрешенных неаккредитованных УЦ.// "ТолькоКвалифицированные" - разрешать подписывать только КЭП и не учитывать список разрешенных// неаккредитованных УЦ.// "НеПроверятьСертификат" - не выполнять проверку удостоверяющего центра сертификата.// * ИгнорироватьПроверкуВСпискеОтозванныхСертификатов - Булево - не проверять сертификат в списке отзыва.// * УказанаДатаМеткиВремени - Булево - в параметре НаДату указана дата, на которую будет выполнена проверка отзыва и// цепочки сертификатов.//Функция ПараметрыПроверкиСертификата() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыПроверкиСертификата()
ПроверитьСертификатСправочника
Описание, пример вызова
// Открывает форму ПроверкаСертификата и возвращает результат проверки.//// Параметры:// Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - проверяемый сертификат.//// ДополнительныеПараметры - Неопределено - обычная проверка сертификата.// - Структура - с необязательными свойствами:// * ВладелецФормы - ФормаКлиентскогоПриложения - другая форма.// * ЗаголовокФормы - Строка - если указан, тогда заменяет заголовок формы.// * ПроверкаПриВыборе - Булево - если Истина, тогда кнопка Проверить будет называться// "Проверить и продолжить", а кнопка Закрыть будет называться "Отмена".// * ОбработкаРезультата - ОписаниеОповещения - вызывается сразу после проверки, в процедуру// передается Результат.ПроверкиПройдены (смотри ниже) с начальным значением Ложь.// В режиме ПроверкаПриВыборе, если не установить Истина,// форма не будет закрыта после возврата из процедуры оповещения и// будет показано предупреждение о невозможности продолжения.// * БезПодтверждения - Булево - если установить Истина, тогда при наличии пароля// проверка будет выполнена сразу без открытия формы.// Если режим ПроверкаПриВыборе и установлен параметр ОбработкаРезультата, то// форма не будет открыта, если параметр ПроверкиПройдены установлен Истина.// * ОбработкаЗавершения - ОписаниеОповещения - вызывается при закрытии формы, в качестве результата// передается Неопределено или значение ПроверкиПройдены (смотри ниже).// * КонтекстОперации - Произвольный - если передать контекст, возвращенный процедурами Подписать,// Расшифровать и т.д., пароль, введенный для сертификата, может быть использован,// как если бы он был сохранен на время сеанса.// При повторном вызове параметр БезПодтверждения считается равным Истина.// * НеПоказыватьРезультаты - Булево - если параметр принимает значение Истина и параметр КонтекстОперации// содержит контекст предыдущей операции, результаты проверки не будут показаны// пользователю.// * ТипПодписи - ПеречислениеСсылка.ТипыПодписиКриптографии - по умолчанию тип, указанный в настройках,// если передан КонтекстОперации, возвращенный процедурой Подписать, то тип берется из него.// * ВыполнятьПроверкуУдостоверяющегоЦентра - см. ПараметрыПроверкиСертификата.ВыполнятьПроверкуУдостоверяющегоЦентра// * ИгнорироватьПроверкуВСпискеОтозванныхСертификатов - см. ПараметрыПроверкиСертификата.ИгнорироватьПроверкуВСпискеОтозванныхСертификатов// * Результат - Неопределено - проверка ни разу не выполнялась.// - Структура - возвращаемое значение. Вставляется перед обработкой результата:// * ПроверкиПройдены - Булево - возвращаемое значение. Устанавливается в процедуре параметра ОбработкаРезультата.// * ПроверкиНаСервере - Неопределено - проверка не выполнялась на сервере:// - Структура - со свойствами, как в следующем параметре.// * ПроверкиНаКлиенте - Структура:// * НаличиеСертификата - Булево// - Неопределено - если Истина, тогда проверка прошла успешно,// если Ложь - проверка прошла не успешно, если Неопределено - не выполнялась.// Если стандартные проверки скрыты в процедуре ПриСозданииФормыПроверкаСертификата,// общего модуля ЭлектроннаяПодписьПереопределяемый, тогда свойства нет.// * ДанныеСертификата - Булево// - Неопределено - так же, как указано выше.// * НаличиеПрограммы - Булево// - Неопределено - так же, как указано выше.// * Подписание - Булево// - Неопределено - так же, как указано выше.// * ПроверкаПодписи - Булево// - Неопределено - так же, как указано выше.// * Шифрование - Булево// - Неопределено - так же, как указано выше.// * Расшифровка - Булево// - Неопределено - так же, как указано выше.// <Имя дополнительной проверки> имя дополнительной проверки, определенной// в общем модуле ПриСозданииФормыПроверкаСертификата// с типами, как указано выше.// <Имя дополнительной проверки>Ошибка имя дополнительной проверки с окончанием Ошибка и// типом Строка (содержит текст ошибки, если проверка имеет значение Ложь).//// * ПараметрыДополнительныхПроверок - Произвольный - параметры, которые передаются в процедуру// ПриСозданииФормыПроверкаСертификата общего модуля ЭлектроннаяПодписьПереопределяемый.//Процедура ПроверитьСертификатСправочника(Сертификат, ДополнительныеПараметры = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ПроверитьСертификатСправочника(Сертификат, ДополнительныеПараметры);
УстановитьРасширение
Описание, пример вызова
// Показывает диалог установки расширения для работы с электронной подписью и шифрованием.// Только для работы через средства платформы (МенеджерКриптографии).//// Параметры:// БезВопроса - Булево - если указано Истина, тогда вопроса показано не будет.// Требуется, если пользователь нажал на кнопку Установить расширение.//// ОбработчикРезультата - ОписаниеОповещения - описание процедуры, принимающей результат выбора// РасширениеУстановлено типов:// = Булево// Истина - Пользователь подтвердил установку, после установки расширение было успешно подключено.// Ложь - Пользователь подтвердил установку, однако после установки расширение не удалось подключить.// = Неопределено - Пользователь отказался от установки.//// ТекстВопроса - Строка - текст вопроса.// ЗаголовокВопроса - Строка - заголовок вопроса.////Процедура УстановитьРасширение(БезВопроса, ОбработчикРезультата = Неопределено, ТекстВопроса = "", ЗаголовокВопроса = "") Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.УстановитьРасширение(БезВопроса, ОбработчикРезультата, ТекстВопроса, ЗаголовокВопроса);
ОткрытьНастройкиЭлектроннойПодписиИШифрования
Описание, пример вызова
// Открывает или активизирует форму настроек электронной подписи и шифрования.//// Параметры:// Страница - Строка - допустимы строки "Сертификаты", "Настройки", "Программы".//Процедура ОткрытьНастройкиЭлектроннойПодписиИШифрования(Страница = "Сертификаты") Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ОткрытьНастройкиЭлектроннойПодписиИШифрования(Страница);
ОткрытьФормуРасширенногоПредставленияОшибки
Описание, пример вызова
// Открывает форму диагностики с причинами и вариантами решения известных проблем при работе с электронной подписью.// Эти рекомендации автоматически загружаются из классификатора через Интернет. Также в форме можно отправить информацию// в службу технической поддержки. Рекомендуется вызывать эту функцию вместо вывода пользователю технологического// сообщения об ошибке во всех случаях после неуспешной операции с электронной подписью.//// Параметры:// ПараметрыФормы - см. ПараметрыФормыРасширенногоПредставленияОшибки.// ФормаВладелец - ФормаКлиентскогоПриложения - владелец формы.// ОповещениеОЗавершении - ОписаниеОповещения - оповещение о закрытии формы ошибки.//// Пример:// ПараметрыФормы = ПараметрыФормыРасширенногоПредставленияОшибки();// ПараметрыФормы.ЗаголовокПредупреждения = НСтр("ru = 'Не удалось выполнить рассылку отчетов'");// ПараметрыФормы.ТекстОшибкиСервер = ТекстОшибкиШифрованияНаСервере;// ПараметрыФормы.ДополнительныеДанные.Вставить("Сертификат", Результат.СертификатДляШифрования);// ПараметрыФормы.ПоказатьТребуетсяПомощь = Истина;// ПараметрыФормы.ПоказатьИнструкцию = Истина;// МодульЭлектроннаяПодписьКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ЭлектроннаяПодписьКлиент");// МодульЭлектроннаяПодписьКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(ПараметрыФормы);//Процедура ОткрытьФормуРасширенногоПредставленияОшибки(ПараметрыФормы, ФормаВладелец = Неопределено, ОповещениеОЗавершении = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(ПараметрыФормы, ФормаВладелец, ОповещениеОЗавершении);
ПараметрыФормыРасширенногоПредставленияОшибки
Описание, пример вызова
// Конструктор параметров формы расширенного представления ошибки.//// Возвращаемое значение:// Структура - параметры формы расширенного представления ошибки:// * ЗаголовокПредупреждения - Строка - заголовок формы ошибки.// * ИнформацияДляПоддержки - ФорматированнаяСтрока - заголовок элемента для обращения в техподдержку.// * ТекстОшибкиКлиент - Строка - текст, по которому будет производиться поиск причин и решений на клиенте,// заполняется в случае, если важен контекст возникновения ошибки// или текст общей ошибки, если она одна.// * ТекстОшибкиСервер - Строка - текст, по которому будет производиться поиск причин и решений на сервере// заполняется в случае, если важен контекст возникновения ошибки.// * ДополнительныеДанные - Структура:// ** ДанныеПодписи - Строка - (необязательный) адрес данных подписи во временном хранилище, если ошибка подписи.// ** Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - (необязательный) ссылка// на сертификат, с которым связана ошибка.// ** ДанныеСертификата - Строка - (необязательный) адрес данных сертификата во временном хранилище.// * ПоказатьТребуетсяПомощь - Булево - показать группу Требуется помощь и кнопки установки расширения и настройки приложений.// * ПоказатьПереходКНастройкеПрограмм - Булево - если ПоказатьТребуетсяПомощь = Истина,// показать кнопку для перехода к настройке приложений для работы с электронной подписью.// * ПоказатьУстановкуРасширения - Булево - если ПоказатьТребуетсяПомощь = Истина,// показать кнопку для установки расширения криптографии.// * ПоказатьИнструкцию - Булево - если ПоказатьТребуетсяПомощь = Истина, показывать гиперссылку Требуется помощь.// * ТекстДополнительнойСсылки - Строка - заголовок дополнительной ссылки, по которой будет запускаться// обработчик оповещения ОбработчикДополнительнойСсылки, с результатом типа Структура:// # НавигационнаяСсылка - Строка - ссылка, указанная в ТекстДополнительнойСсылки.// # ПараметрОбработчикаДополнительнойСсылки - описан ниже.// * ОбработчикДополнительнойСсылки - Строка - имя обработчика оповещения из общего модуля,// например, "ОбработкаНеисправностейБЭД.ОткрытьМастерДиагностики".// * ПараметрОбработчикаДополнительнойСсылки - Произвольный - параметр обработчика ОбработчикДополнительнойСсылки.//Функция ПараметрыФормыРасширенногоПредставленияОшибки() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыФормыРасширенногоПредставленияОшибки()
ОткрытьИнструкциюПоРаботеСПрограммами
Описание, пример вызова
// Открывает ссылку на раздел ИТС "Инструкции по работе с программами электронной подписи и шифрования".//Процедура ОткрытьИнструкциюПоРаботеСПрограммами() Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоРаботеСПрограммами()
ДатаПодписания
Описание, пример вызова
// Возвращает дату, извлеченную из двоичных данных подписи, или Неопределено.//// Параметры:// Оповещение - ОписаниеОповещения - вызывается для передачи возвращаемого значения типов:// = Дата - успешно извлеченная дата подписи,// = Неопределено - не удалось извлечь дату из данных подписи.// Подпись - ДвоичныеДанные - данные подписи, из которых нужно извлечь дату.// ПривестиКЧасовомуПоясуСеанса - Булево - привести универсальное время к времени сеанса.//Процедура ДатаПодписания(Оповещение, Подпись, ПривестиКЧасовомуПоясуСеанса = Истина) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ДатаПодписания(Оповещение, Подпись, ПривестиКЧасовомуПоясуСеанса);
ПредставлениеСертификата
Описание, пример вызова
// Возвращает представление сертификата в справочнике, формируемое// из представления субъекта (КомуВыдан) и срока действия сертификата.//// Параметры:// Сертификат - СертификатКриптографии - сертификат криптографии.// - Структура:// * ДействителенДо - см. ЭлектроннаяПодпись.СвойстваСертификата.ДействителенДо// * Сертификат - СертификатКриптографии - сертификат криптографии.//// Возвращаемое значение:// Строка - представление сертификата в справочнике.//Функция ПредставлениеСертификата(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПредставлениеСертификата(Сертификат)
ПредставлениеСубъекта
Описание, пример вызова
// Возвращает представление субъекта сертификата (КомуВыдан).//// Параметры:// Сертификат - СертификатКриптографии - сертификат криптографии.//// Возвращаемое значение:// Строка - представление субъекта в формате "Фамилия Имя, Организация, Подразделение, Должность".// Если ФИО не удалось определить, тогда оно заменяется на ОбщееИмя.// Организация, Подразделение и Должность могут отсутствовать, если не указаны или// их не удалось определить.//Функция ПредставлениеСубъекта(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПредставлениеСубъекта(Сертификат)
ПредставлениеИздателя
Описание, пример вызова
// Возвращает представление издателя сертификата (КемВыдан).//// Параметры:// Сертификат - СертификатКриптографии - сертификат криптографии.//// Возвращаемое значение:// Строка - представление издателя в формате "ОбщееИмя, Организация, Подразделение",// Организация и Подразделение могут отсутствовать, если не указаны.//Функция ПредставлениеИздателя(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПредставлениеИздателя(Сертификат)
СвойстваСертификата
Описание, пример вызова
// Возвращает основные свойства сертификата в виде структуры.//// Параметры:// Сертификат - СертификатКриптографии - сертификат криптографии.//// Возвращаемое значение:// Структура:// * Отпечаток - Строка - отпечаток сертификата в формате строки Base64.// * СерийныйНомер - ДвоичныеДанные - свойство сертификата СерийныйНомер.// * Представление - см. ЭлектроннаяПодписьКлиент.ПредставлениеСертификата.// * КомуВыдан - см. ЭлектроннаяПодписьКлиент.ПредставлениеСубъекта.// * КемВыдан - см. ЭлектроннаяПодписьКлиент.ПредставлениеИздателя.// * ДатаНачала - Дата - свойство сертификата ДатаНачала в часовом поясе сеанса.// * ДатаОкончания - Дата - свойство сертификата ДатаОкончания в часовом поясе сеанса.// * Назначение - Строка - описание расширенного свойства сертификата EKU.// * Подписание - Булево - свойство сертификата ИспользоватьДляПодписи.// * Шифрование - Булево - свойство сертификата ИспользоватьДляШифрования.// На платформах 8.3.27 и выше структура содержит свойства:// * ДействителенДо - Дата - минимальная дата из ДатаОкончания и ДатаОкончанияЗакрытогоКлюча (если указана в сертификате).// * ДатаНачалаЗакрытогоКлюча - Дата - свойство сертификата, указанное в OID 2.5.29.16 в часовом поясе сеанса.// * ДатаОкончанияЗакрытогоКлюча - Дата - свойство сертификата, указанное в OID 2.5.29.16 в часовом поясе сеанса.// * ИдентификаторКлючаУдостоверяющегоЦентра - Строка - идентификатор ключа издателя.// * АлгоритмПодписи - Строка - OID алгоритма подписи сертификата.// * АлгоритмОткрытогоКлюча - Строка - OID алгоритма открытого ключа сертификата.// * АдресаСписковОтзыва - Массив из Строка//Функция СвойстваСертификата(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.СвойстваСертификата(Сертификат)
СвойстваСубъектаСертификата
Описание, пример вызова
// Возвращает свойства субъекта сертификата криптографии.//// Параметры:// Сертификат - СертификатКриптографии - для которого нужно вернуть свойства субъекта.//// Возвращаемое значение:// Структура - со свойствами, состав которых зависит от национальной специфики. Пример для Российской Федерации:// * ОбщееИмя - Строка - (64) - извлекается из поля CN.// ЮЛ - в зависимости от типа конечного владельца СКПЭП// а) наименование организации;// б) название автоматизированной системы;// в) другое отображаемое имя по требованиям информационной системы.// ФЛ - ФИО.// - Неопределено - такое свойство сертификата отсутствует.//// * Страна - Строка - (2) - извлекается из поля C - двухсимвольный код страны// согласно ИСО 3166-1:1997 (ГОСТ 7.67-2003).// - Неопределено - свойство сертификата не существует.//// * Регион - Строка - (128) - извлекается из поля S - наименование субъекта РФ.// ЮЛ - по адресу местонахождения.// ФЛ - по адресу регистрации.// - Неопределено - такое свойство сертификата отсутствует.//// * НаселенныйПункт - Строка - (128) - извлекается из поля L - наименование населенного пункта.// ЮЛ - по адресу местонахождения.// ФЛ - по адресу регистрации.// - Неопределено - такое свойство сертификата отсутствует.//// * Улица - Строка - (128) - извлекается из поля Street - наименование улицы, дома, офиса.// ЮЛ - по адресу местонахождения.// ФЛ - по адресу регистрации.// - Неопределено - такое свойство сертификата отсутствует.//// * Организация - Строка - (64) - извлекается из поля O.// ЮЛ - полное или сокращенное наименование организации.// - Неопределено - такое свойство сертификата отсутствует.//// * Подразделение - Строка - (64) - извлекается из поля OU.// ЮЛ - в случае выпуска СКПЭП на должностное лицо - подразделение организации.// Подразделение - это территориальная структурная единица крупной организации,// которое обычно не заполняется в сертификате.// - Неопределено - такое свойство сертификата отсутствует.//// * ЭлектроннаяПочта - Строка - (128) - извлекается из поля E - адрес электронной почты.// ЮЛ - адрес электронной почты должностного лица.// ФЛ - адрес электронной почты физического лица.// - Неопределено - такое свойство сертификата отсутствует.//// * Должность - Строка - (64) - извлекается из поля T.// ЮЛ - в случае выпуска СКПЭП на должностное лицо - его должность.// - Неопределено - такое свойство сертификата отсутствует.//// * ОГРН - Строка - (13) - извлекается из поля OGRN.// ЮЛ - ОГРН организации.// - Неопределено - такое свойство сертификата отсутствует.//// * ОГРНИП - Строка - (15) - извлекается из поля OGRNIP.// ИП - ОГРН индивидуального предпринимателя.// - Неопределено - такое свойство сертификата отсутствует.//// * СНИЛС - Строка - (11) - извлекается из поля SNILS.// ФЛ - СНИЛС// ЮЛ - не обязательно, в случае выпуска СКПЭП на должностное лицо - его СНИЛС.// - Неопределено - такое свойство сертификата отсутствует.//// * ИНН - Строка - (12) - извлекается из поля INN.// ФЛ - ИНН.// ИП - ИНН.// ЮЛ - не обязательно, но может быть заполнен в старых сертификатах.// - Неопределено - такое свойство сертификата отсутствует.//// * ИННЮЛ - Строка - (10) - извлекается из поля INNLE.// ЮЛ - обязательно, но может отсутствовать в старых сертификатах.// - Неопределено - такое свойство сертификата отсутствует.//// * Фамилия - Строка - (64) - извлекается из поля SN, если заполнено.// - Неопределено - такое свойство сертификата отсутствует.//// * Имя - Строка - (64) - извлекается из поля GN, если заполнено.// - Неопределено - такое свойство сертификата отсутствует.//// * Отчество - Строка - (64) - извлекается из поля GN, если заполнено.// - Неопределено - такое свойство сертификата отсутствует.//Функция СвойстваСубъектаСертификата(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.СвойстваСубъектаСертификата(Сертификат)
СвойстваИздателяСертификата
Описание, пример вызова
// Возвращает свойства издателя сертификата криптографии.//// Параметры:// Сертификат - СертификатКриптографии - для которого нужно вернуть свойства издателя.//// Возвращаемое значение:// Структура - со свойствами, состав которых зависит от национальной специфики.// Пример для Российской Федерации:// * ОбщееИмя - Строка - (64) - извлекается из поля CN - псевдоним удостоверяющего центра.// - Неопределено - такое свойство сертификата отсутствует.//// * Страна - Строка - (2) - извлекается из поля C - двухсимвольный код страны// согласно ИСО 3166-1:1997 (ГОСТ 7.67-2003).// - Неопределено - такое свойство сертификата отсутствует.//// * Регион - Строка - (128) - извлекается из поля S - наименование субъекта РФ// по адресу местонахождения ПАК УЦ.// - Неопределено - такое свойство сертификата отсутствует.//// * НаселенныйПункт - Строка - (128) - извлекается из поля L - наименование населенного пункта// по адресу местонахождения ПАК УЦ.// - Неопределено - такое свойство сертификата отсутствует.//// * Улица - Строка - (128) - извлекается из поля Street - наименование улицы, дома, офиса// по адресу местонахождения ПАК УЦ.// - Неопределено - такое свойство сертификата отсутствует.//// * Организация - Строка - (64) - извлекается из поля O - полное или сокращенное наименование организации.// - Неопределено - такое свойство сертификата отсутствует.//// * Подразделение - Строка - (64) - извлекается из поля OU - подразделение организации.// Подразделение - это территориальная структурная единица крупной организации,// которое обычно не заполняется в сертификате.// - Неопределено - такое свойство сертификата отсутствует.//// * ЭлектроннаяПочта - Строка - (128) - извлекается из поля E - адрес электронной почты удостоверяющего центра.// - Неопределено - такое свойство сертификата отсутствует.//// * ОГРН - Строка - (13) - извлекается из поля OGRN - ОГРН организации удостоверяющего центра.// - Неопределено - такое свойство сертификата отсутствует.//// * ИНН - Строка - (12) - извлекается из поля INN - ИНН организации удостоверяющего центра.// ЮЛ - необязательно, но может присутствовать в старых сертификатах.// - Неопределено - такое свойство сертификата отсутствует.//// * ИННЮЛ - Строка - (10) - извлекается из поля INNLE - ИНН организации удостоверяющего центра.// ЮЛ - обязательно, но может отсутствовать в старых сертификатах.// - Неопределено - такое свойство сертификата отсутствует.//Функция СвойстваИздателяСертификата(Сертификат) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.СвойстваИздателяСертификата(Сертификат)
КонвертXML
Описание, пример вызова
// Возвращает шаблон формата XML, содержащий один стандартный элемент// Signature (см. стандарт https://www.w3.org/TR/xmldsig-core1)// с одним элементом Reference и заполненным атрибутом URI// (ссылка на сообщение XML, которое будет подписано).//// Возвращаемый шаблон содержит параметры %SignatureMethod%, %DigestMethod%,// %DigestValue%, %SignatureValue%, %BinarySecurityToken%,// которые автоматически заполняются при подписании.// Параметры %SignatureMethod% (алгоритм подписи в формате xml) и// %DigestMethod% (алгоритм хеширования в формате xml) вычисляются по// алгоритму открытого ключа сертификата, которым выполняется подписание,// сначала по таблице, указанной в ПараметрыXMLDSig, затем// если таблица не заполнена или соответствие не найдено,// по внутренней таблице соответствия (рекомендуется).//// Поддерживаются также шаблоны с несколькими элементами Signature// и несколькими элементами Reference.// Подпись будет добавлена в первый найденный элемент Signature, не содержащий значение подписи.//// Поддерживаются алгоритмы подписания и хеширования ГОСТ 94…2012.// Поддерживаются алгоритмы канонизации:// Exclusive XML Canonicalization 1.0// HTTP://www.w3.org/2001/10/xml-exc-c14n#// HTTP://www.w3.org/2001/10/xml-exc-c14n#WithComments// Canonical XML 1.0// HTTP://www.w3.org/TR/2001/REC-xml-c14n-20010315// HTTP://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments// Canonical XML 1.1// HTTP://www.w3.org/2006/12/xml-c14n11// HTTP://www.w3.org/2006/12/xml-c14n11#WithComments// Enveloped signature (по факту игнорируется, так как// не поддерживается пустой URI в элементе SignedInfo.Reference):// HTTP://www.w3.org/2000/09/xmldsig#enveloped-signature// СМЭВ рекомендации 3.5.0.1, "АЛГОРИТМ трансформации XML":// urn://smev-gov-ru/xmldsig/transform//// Сертификат может быть указан в KeyInfo, как base64 значение:// - либо в виде элемента X509Data.X509Certificate// - либо в виде элемента KeyInfoReference.Reference или// SecurityTokenReference.Reference с URI на элемент со значением.//// Параметры:// Параметры - см. ЭлектроннаяПодписьКлиент.ПараметрыКонвертаXML// - Неопределенно - использовать параметры по умолчанию.//// Возвращаемое значение:// Строка//// Пример:// ПараметрыКонверта = ЭлектроннаяПодписьКлиент.ПараметрыКонвертаXML();// ПараметрыКонверта.Вариант = "furs.mark.crpt.ru_v1";// ПараметрыКонверта.СообщениеXML =// " <getProductDetailsResponse xmlns=""HTTP://warehouse.example.com/ws"">// | <getProductDetailsResult>// | <productID>12345</productID>// | <productName>Стакан граненый</productName>// | <description>Стакан граненый. 250 мл.</description>// | <price>9.95</price>// | <currency>// | <code>840</code>// | <alpha3>USD</alpha3>// | <sign>$</sign>// | <name>US dollar</name>// | <accuracy>2</accuracy>// | </currency>// | <inStock>true</inStock>// | </getProductDetailsResult>// | </getProductDetailsResponse>";//// КонвертXML = ЭлектроннаяПодписьКлиент.КонвертXML(Параметры);//Функция КонвертXML(Параметры = Неопределено) Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.КонвертXML(Параметры);
ПараметрыКонвертаXML
Описание, пример вызова
// Возвращает параметры, которые можно задать для конверта XML.//// Возвращаемое значение:// Структура:// * Вариант - Строка - вариант типового шаблона XML для обмена с сервисом:// "furs.mark.crpt.ru_v1" (начальное значение) или "dmdk.goznak.ru_v1".// Возможны другие форматы, если удовлетворяют требованиям,// указанным в описании функции КонвертXML.//// * СообщениеXML - Строка - сообщение в формате XML, которое вставлено в шаблон.// Если не заполнено, остается параметр %MessageXML%.//Функция ПараметрыКонвертаXML() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыКонвертаXML()
ПараметрыXMLDSig
Описание, пример вызова
// Формирует структуру свойств для настройки нестандартной обработки// конверта XML и алгоритмов подписания и хеширования.//// Рекомендуется не заполнять параметры XPathSignedInfo и XPathПодписываемыйТег// Параметр XPathSignedInfo вычисляется по алгоритмам канонизации,// а параметр XPathПодписываемыйТег вычисляется по ссылке// в атрибуте URI элемента SignedInfo.Reference конверта XML.// Параметры оставлены для обратной совместимости. Если указаны, работает по-старому:// не выполняется извлечение параметров из конверта XML и их контроль, при этом// конверт должен содержать алгоритмы канонизации и иметь элементы// размещения сертификата, как в варианте конверта "furs.mark.crpt.ru_v1".//// Не требуется заполнять алгоритмы для использования сертификатов// с алгоритмами открытого ключа ГОСТ 94, ГОСТ 2001, ГОСТ 2012/256 и ГОСТ 2012/512.// Алгоритмы подписания и хеширования вычисляются по алгоритму открытого ключа,// извлекаемого из сертификата, которым выполняется подписание. Сначала// по переданной таблице, затем если таблица не заполнена или соответствие// не найдено, по внутренней таблице соответствия (рекомендуется).//// Возвращаемое значение:// Структура:// * XPathSignedInfo - Строка - по умолчанию: "(//. | //@* | //namespace::*)[ancestor-or-self::*[local-name()='SignedInfo']]".// * XPathПодписываемыйТег - Строка - по умолчанию: "(//. | //@* | //namespace::*)[ancestor-or-self::soap:Body]".//// * OIDАлгоритмаОткрытогоКлюча - Строка - например, "1.2.643.2.2.19" + Символы.ПС + "1.2.643.7.1.1.1.1" + ...// * ИмяАлгоритмаПодписи - Строка - например, "GOST R 34.10-2001" + Символы.ПС + "GOST R 34.11-2012" + ...// * OIDАлгоритмаПодписи - Строка - например, "1.2.643.2.2.3" + Символы.ПС + "1.2.643.7.1.1.3.2" + ...// * ИмяАлгоритмаХеширования - Строка - например, "GOST R 34.11-94" + Символы.ПС + "GOST R 34.11-12" + ...// * OIDАлгоритмаХеширования - Строка - например, "1.2.643.2.2.9" + Символы.ПС + "1.2.643.7.1.1.2.2" + ...// * АлгоритмПодписи - Строка - например, "HTTP://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411"// + Символы.ПС +// "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256" + ...// * АлгоритмХеширования - Строка - например, "HTTP://www.w3.org/2001/04/xmldsig-more#gostr3411"// + Символы.ПС + "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256" + ...//Функция ПараметрыXMLDSig() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыXMLDSig()
ПараметрыCMS
Описание, пример вызова
// Формирует структуру свойств для подписания данных в формате CMS.//// Возвращаемое значение:// Структура:// * ТипПодписи - Строка - "CAdES-BES" - остальные варианты пока не используются.// * Открепленная - Булево - Ложь (по умолчанию) - включать данные в контейнер подписи.// Истина - не включать данные в контейнер подписи.// * ВключениеСертификатовВПодпись - РежимВключенияСертификатовКриптографии - определяет длину цепочки// сертификатов, включаемых в подпись. Значение ВключатьЦепочкуБезКорневого// не поддерживается и считается равным значению ВключатьПолнуюЦепочку.//Функция ПараметрыCMS() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыCMS()
ПараметрыЗаписиСертификата
Описание, пример вызова
// Инициализирует структуру параметров для добавления сертификата// в справочник СертификатыКлючейЭлектроннойПодписиИШифрования.// Для использования в процедуре ЗаписатьСертификатВСправочник.//// Возвращаемое значение:// Структура:// * Наименование - Строка - представление сертификата в списке.// Значение по умолчанию - "".// * Пользователь - СправочникСсылка.Пользователи - пользователь, которому принадлежит сертификат.// Значение используется при получении списка личных сертификатов пользователя// в формах подписания и шифрования данных.// Значение по умолчанию - Неопределено.// * Организация - ОпределяемыйТип.Организация - организация, к которой относится сертификат.// Значение по умолчанию - Неопределено.// * ФизическоеЛицо - ОпределяемыйТип.ФизическоеЛицо - физическое лицо, к которому относится сертификат.// Значение по умолчанию - Неопределено.// * Программа - СправочникСсылка.ПрограммыЭлектроннойПодписиИШифрования - программа, которая// требуется для подписания и расшифровки.// Значение по умолчанию - Неопределено.// * ВводитьПарольВПрограммеЭлектроннойПодписи - Булево - флажок "Вводить пароль в программе электронной подписи",// требуется Истина, когда сертификат был установлен на компьютере с усиленной// защитой закрытого ключа, которая означает поддержку только пустого пароля на// уровне 1С:Предприятия (пароль у пользователя не запрашивается - это делает// операционная система, которая не принимает от 1С:Предприятия непустой пароль).// Значение по умолчанию - Ложь.//Функция ПараметрыЗаписиСертификата() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыЗаписиСертификата()
ЗаписатьСертификатВСправочник
Описание, пример вызова
// Осуществляет проверку сертификата и, в случае успеха, добавляет новый или обновляет существующий сертификат// в справочнике СертификатыКлючейЭлектроннойПодписиИШифрования. Если проверка не пройдена, показывает// информацию о возникших ошибках.// Для добавления сертификата на сервере смотри ЭлектроннаяПодпись.ЗаписатьСертификатВСправочник.//// Параметры:// ОбработчикЗавершения - ОписаниеОповещения - вызывается после добавления сертификата// для передачи возвращаемого значения типов:// = Неопределено - при проверке или добавлении сертификата произошла ошибка.// = СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - добавленный сертификат.// Сертификат - ДвоичныеДанные - двоичные данные сертификата.// - Строка - двоичные данные сертификата электронной подписи или// адрес данных во временном хранилище.// ПарольСертификата - Строка - пароль сертификата для проверки операций с закрытым ключом.// ДляШифрования - Булево - определяет состав проверок,// выполняемых перед добавлением сертификата. Если параметр принимает значение Истина,// выполняется проверка шифрования и расшифровки, иначе - подписания и проверки подписи.// ДополнительныеПараметры - Неопределено - без дополнительных параметров.// - см. ПараметрыЗаписиСертификата//Процедура ЗаписатьСертификатВСправочник(ОбработчикЗавершения, Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ЗаписатьСертификатВСправочник(ОбработчикЗавершения, );
ПараметрыДобавленияСертификата
Описание, пример вызова
// Инициализирует структуру параметров для интерактивного добавления сертификата.// Если параметр СоздатьЗаявление - Истина и ИзЛичногоХранилища - Ложь, открывает новое заявление// на выпуск сертификата.// Если параметр СоздатьЗаявление - Ложь и ИзЛичногоХранилища - Истина, добавляет сертификат из// личного хранилища.// Если параметр СоздатьЗаявление - Истина и ИзЛичногоХранилища - Истина, открывает окно выбора// способа добавления сертификата.// Для использования в ЭлектроннаяПодписьКлиент.ДобавитьСертификат//// Возвращаемое значение:// Структура:// * ВЛичныйСписок - Булево - если параметр принимает значение Истина, то реквизит Пользователь// будет заполнен текущим пользователем, иначе - реквизит не будет заполнен.// Значение по умолчанию - Ложь.// * Организация - ОпределяемыйТип.Организация - организация, к которой относится сертификат.// Значение по умолчанию - Неопределено.// В случае, когда параметр используется для создания заявления, тогда значение// передается в процедуру ПриЗаполненииРеквизитовОрганизацииВЗаявленииНаСертификат// общего модуля ЗаявлениеНаСертификатПереопределяемый без изменения, а после вызова// приводится к составу типов свойства ТипОрганизации.// * СоздатьЗаявление - Булево - если параметр принимает значение Истина, добавляет возможность// создать новое заявление на выпуск сертификата.// Значение по умолчанию - Истина.// * ИзЛичногоХранилища - Булево - если параметр принимает значение Истина, добавляет возможность// выбрать сертификат из установленных в личном хранилище.// Значение по умолчанию - Истина.// * ФизическоеЛицо - СправочникСсылка - физическое лицо, для которого нужно создать заявление// на выпуск сертификата (когда заполнено, имеет приоритет над организацией).// Значение по умолчанию - Неопределено.// Значение передается в процедуру ПриЗаполненииРеквизитовВладельцаВЗаявленииНаСертификат// общего модуля ЗаявлениеНаСертификатПереопределяемый без изменения, а после вызова// приводится к составу типов свойства ТипВладельца.// * НаТокене - Булево - по умолчанию выбирать в заявлении на сертификат токен.//Функция ПараметрыДобавленияСертификата() Экспорт
Пример вызова
Результат = ЭлектроннаяПодписьКлиент.ПараметрыДобавленияСертификата()
ДобавитьСертификат
Описание, пример вызова
// Интерактивно добавляет сертификат из установленных на компьютере или создает заявление на выпуск сертификата.//// Параметры:// ОбработчикЗавершения - ОписаниеОповещения - вызывается после добавления сертификата со значением одного из типов:// = Неопределено - при проверке или добавлении сертификата произошла ошибка.// = Структура:// # Ссылка - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - добавленный сертификат.// # Добавлен - Булево - признак того, что сертификат успешно добавлен. Если сертификат добавляется// с помощью заявления на выпуск нового квалифицированного сертификата, признак принимает// значение Ложь пока заявление не будет исполнено и сертификат не будет установлен на// компьютере.// ПараметрыДобавления - Неопределено - без дополнительных параметров.// - см. ЭлектроннаяПодписьКлиент.ПараметрыДобавленияСертификата//// Пример:// 1) Добавление сертификата из установленных в личном хранилище:// ПараметрыДобавления = ЭлектроннаяПодписьКлиент.ПараметрыДобавленияСертификата();// ПараметрыДобавления.СоздатьЗаявление = Ложь;// ЭлектроннаяПодписьКлиент.ДобавитьСертификат(, ПараметрыДобавления);//// 2) Создание заявления на выпуск сертификата:// ПараметрыДобавления = ЭлектроннаяПодписьКлиент.ПараметрыДобавленияСертификата();// ПараметрыДобавления.ИзЛичногоХранилища = Ложь;// ЭлектроннаяПодписьКлиент.ДобавитьСертификат(, ПараметрыДобавления);//// 3) Интерактивный выбор способа добавления сертификата:// ЭлектроннаяПодписьКлиент.ДобавитьСертификат();//Процедура ДобавитьСертификат(ОбработчикЗавершения = Неопределено, ПараметрыДобавления = Неопределено) Экспорт
Пример вызова
ЭлектроннаяПодписьКлиент.ДобавитьСертификат(ОбработчикЗавершения, ПараметрыДобавления);
© 2024, ООО 1С-Софт
Все права защищены. Эта программа и сопроводительные материалы предоставляются
в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0).