Показать/Скрыть содержание

    Отображаемые сведения об операциях

    Сведения о подтверждаемой операции передаются (отображаются) пользователю в зависимости от выбранного метода вторичной аутентификации. Сведения об операции могут отображаться в SMS-сообщении с одноразовым паролем, в мобильном приложении, интерфейсе Прикладной системы или Веб-интерфейсе СЭП.

    Отображаемые сведения настраиваются через шаблоны сообщений, связанные с каждым типом операции и способом доставки сообщения пользователю.

    Просмотреть список шаблонов можно с помощью команд:

    
    # Полный список шаблонов
    Get-IdsFormatterTemplate
    
    # Список шаблонов для выбранного метода аутентификации
    Get-IdsFormatterTemplate -Destination MyDssAuth -Recipient User
    
    # Список шаблонов для выбранного типа операции и метода аутентификаци
    Get-IdsFormatterTemplate -Destination MyDssAuth -Recipient User -EventTypes SecondaryAuthSign
    

    В параметре -Destination передается идентификатор канала доставки, для которого требуется просмотреть шаблон.

    Идентификатор Описание
    SMS Шаблон сообщения для подтверждения операций через одноразовый пароль в SMS
    Email Шаблон сообщения для подтверждения операций через одноразовый пароль в Email
    MyDssAuth Шаблон сообщения для подтверждения операций в мобильном приложении со встроенным Ключ SDK
    Challenge Шаблон сообщения, отображаемый в интерфейсе Прикладной системы или Веб-интерфейсе

    В параметре -EventTypes передается тип события, для которого требуется просмотреть шаблон. Ниже представлено соответствие кодов операций типам событий:

    Операция Код операции Имя событие Код события Описание
    Issue 1 SecondaryAuthLogin 92 Вход пользователя (выпуск маркера безопасности)
    SignDocument 2 SecondaryAuthSign 93 Подпись документа
    DecryptDocument 8 SecondaryAuthDecrypt 95 Расшифрование документа
    CreateRequest 16 SecondaryAuthCreateRequest 96 Создание запроса на сертификат
    ChangePin 32 SecondaryAuthChangePin 97 Смена ПИН-кода
    RenewCertificate 64 SecondaryAuthRenewCert 98 Обновление сертификата
    RevokeCertificate 128 SecondaryAuthRevokeCert 99 Отзыв сертификата
    DeleteCertificate 1024 SecondaryAuthDeleteCert 102 Удаление сертификата
    DeleteCertificate 1024 SecondaryAuthDeleteCerts 103 Удаление всех сертификатов
    PrivateKeyAccess 2048 SecondaryAuthPrivateKeyAccess 104 Доступ к закрытому ключу
    Примечание

    Имя события и код события соответствуют кодам соответствующих событий в Сервисе Аудита.

    Часть каналов доставки соответствует выбранному методу вторичной аутентификации. Отдельно можно рассматривать канал доставки Challenge, который представляет собой сообщения, отображаемые в интерфейсе Прикладной системы или Веб-интерфейсе DSS. Сообщение сформированное по данному шаблону возвращается прикладной системе в ответе RequestSecurityTokenResponse конечной точки /v2.0/confirmation в поле TextChallenge->Label.

    Примечание

    Шаблон сообщения типа Challenge является общим для всех методов аутентификации выбранного типа операции. То есть можно настроить разные сообщения для подтверждения подписи документа для SMS и мобильного приложения, но сообщение, отображаемое в Веб-интерфейсе СЭП (или прикладной системы), будет общее.

    Пример:

    {
        "Challenge": {
            "Title": {
                "Value": "Подтвердите операцию на устройстве с помощью приложения."
            },
            "TextChallenge": [
                {
                    "Label": "Подпись документа. test2.txt. Тип подписи: CMS. Сертификат: test from ma 1. Идентификатор запроса rqa1qbyy",
                    "ExpiresIn": 600,
                    "CreatedAt": 1644399008,
                    "ExpiresInSpecified": true,
                    "IsHidden": false,
                    "AuthnMethod": "http://dss.cryptopro.ru/identity/authenticationmethod/mydss",
                    "RefID": "8b077e7d-ccb2-4c75-bdf7-6bb285b3aaec",
                    "Title": "Подтвердите операцию на устройстве с помощью приложения."
                }
            ],
            "ContextData": {
                "RefID": "8b077e7d-ccb2-4c75-bdf7-6bb285b3aaec"
            }
        },
        "IsFinal": false,
        "IsError": false
    }
    

    Шаблон сообщения представляет собой текст с подстановочными параметрами. Исключение составляет шаблоны сведений об операциях, подтверждаемых в мобильном приложении. Подробное описание формата и настройки шаблона общих сведений об операции для мобильного приложения приведено в разделе Шаблоны отображаемых данных

    Пример шаблона сообщения для подтверждения подписи документа одноразовым паролем в SMS:

    Подпись документа. {0:DocumentInfo}. Тип подписи: {0:SignatureType}. Сертификат: {0:CertFriendlyName}. Введите одноразовый пароль для подтверждения операции: {0:OTP}
    

    Подстановочные поля имеют вид:

    • краткая форма: {0:ParamName}
    • полная форма: {0:ParamName:Type:InFormat:OutFormat}

    где

    • ParamName - имя параметра
    • Type - тип параметра
    • InFormat - формат входного значения
    • OutFormat - формат исходящего значения

    В зависимости от типа Type поля InFormat, OutFormat могут быть не заполнены.

    Возможные значения Type:

    Значение Описание
    Default Подстановочный параметр со значением по умолчанию
    Значение по умолчанию задается в пареметре OutFormat в кодировке Base64.
    SubString Извлечение подстроки из подстановочного параметра
    Параметры подстроки передаются в пареметре OutFormat в виде [startIndex],[lenght] в кодировке Base64
    Double Подстановочный параметр для чисел с плавающей запятой
    Формат входящего значения передается в параметре InFormat в кодировке Base64.
    Формат исходящего значения передается в параметре OutFormat в кодировке Base64
    Date Подстановочный параметр для времени Формат входящего значения передается в параметре InFormat в кодировке Base64.
    Формат исходящего значения передается в параметре OutFormat в кодировке Base64
    StrFormat Подстановочный параметр для строк
    Строка форматирования передается в пареметре OutFormat в виде "sometext1 {0} sometext2" в кодировке Base64.
    {0} - подстаночное поле для переданного значения.
    Примечание

    Значения для всех перечисленных в шаблоне подстановочных параметров обязаны быть заполнены из параметров операции. Исключение составляют параметры типа Default. Если значение для подстановочного поля типа Default не передано, то значение будет взято из OutFormat. Если значение подстановочного параметра не найдено, то запрос на подтверждение операции завершится с ошибкой.

    Каждому типу операции соответствует набор параметров, формируемых СЭП и переданных пользователем при создании операции. Ниже перечислены параметры, которые формирует СЭП для каждого типа операции.

    Так же Прикладная система может передать дополнительные (произвольные) сведения об операции.

    Issue - Вход пользователя (выпуск маркера безопасности)

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции

    SignDocument - подпись документов

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertCommonName CommonName (CN) сертификата подписи
    CertSubjectName Имя субъекта сертификата
    CertIssuerName Имя издателя сертификата
    CertSerialNumber Серийный номер сертификата
    CertFriendlyName Дружественное имя сертификата
    CertificateID Идентификатор сертификата
    DocumentInfo Произвольные сведения
    SignatureType Формат подписи
    ProcessingTemplate Идентификатор шаблона подписи
    IsClientCertificate Флаг, показывающий что подпись выполняется на ключе хранимом в мобильном приложении пользователя.

    Так же доступны все параметры подписи.

    Параметр DocumentInfo задается при создании операции на Сервисе Подписи. Параметр может содержать любые сведения о документе (-ах), операции и т.п.

    DecryptDocument - Расшифрование документа

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertCommonName CommonName (CN) сертификата подписи
    CertSubjectName Имя субъекта сертификата
    CertIssuerName Имя издателя сертификата
    CertSerialNumber Серийный номер сертификата
    CertFriendlyName Дружественное имя сертификата
    CertificateID Идентификатор сертификата
    DocumentInfo Произвольные сведения
    EncryptionType Формат расшифрования
    IsClientCertificate Флаг, показывающий что расшифрование выполняется на ключе хранимом в мобильном приложении пользователя.

    CreateRequest - Создание запроса на сертификат

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertTemplateName Имя шаблона сертификата
    CAName Имя модуля УЦ
    CertTemplateOid OID шаблона сертификата
    TemplateOid OID шаблона сертификата
    CertSubjectName Имя субъекта сертификата
    CAId Идентификатор модуля УЦ
    RequestType Тип запроса.
    Возможные значения: First, Renew

    RevokeCertificate - Отзыв сертификата

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertificateID Идентификатор сертификата
    RevocationReason Причина отзыва
    CertFriendlyName Дружественное имя сертификата

    DeleteCertificate - Удаление сертификата

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertCommonName CommonName (CN) сертификата подписи
    CertSubjectName Имя субъекта сертификата
    CertIssuerName Имя издателя сертификата
    CertSerialNumber Серийный номер сертификата
    CertFriendlyName Дружественное имя сертификата
    CertificateID Идентификатор сертификата

    ChangePin - Смена ПИН-кода

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertCommonName CommonName (CN) сертификата подписи
    CertSubjectName Имя субъекта сертификата
    CertIssuerName Имя издателя сертификата
    CertSerialNumber Серийный номер сертификата
    CertFriendlyName Дружественное имя сертификата
    CertificateID Идентификатор сертификата

    HoldCertificate - Приостановление сертификата

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertificateID Идентификатор сертификата

    UnholdCertificate - Возобноление сертификата

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertificateID Идентификатор сертификата

    PrivateKeyAccess - Доступ к закрытому ключу

    Имя параметра Описание
    SessionId Отображаемый идентификатор операции
    TransactionId Технический идентификатор операции (guid)
    Login Логин пользователя
    Date Время создания операции
    CertCommonName CommonName (CN) сертификата подписи
    CertSubjectName Имя субъекта сертификата
    CertIssuerName Имя издателя сертификата
    CertSerialNumber Серийный номер сертификата
    CertFriendlyName Дружественное имя сертификата
    CertificateID Идентификатор сертификата

    Форматированные отображаемые данные

    Сервис Подписи позволяет формировать отображаемое представление обрабатываемого документа, которое может быть показано пользователю в процессе подтверждения операции.

    Для этого на Сервисе Подписи предусмотрен механизм плагинов, преобразующих документы в XML особого вида. Схема XML-документа приведена ниже:

    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema targetNamespace="http://www.cryptopro.ru/schemas/2014/08/dtbs"
        elementFormDefault="qualified"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        xmlns:dtbs="http://www.cryptopro.ru/schemas/2014/08/dtbs">
        <xs:element name="dtbs" type="dtbs:dtbsType" />
        <xs:complexType name="dtbsType">
            <xs:sequence>
                <xs:element ref="dtbs:row" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attribute name="unattendedSign" type="xs:boolean">
                <xs:annotation>
                    <xs:documentation>
                        Если 'true', то документ подписывается без отображения и
                        подтверждения пользователем. В этом случае элементы row
                        должны отсутствовать.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    
        <xs:element name="row" type="dtbs:rowType" />
        <xs:complexType name="rowType">
            <xs:sequence>
                <xs:element name="name" type="xs:string">
                    <xs:annotation>
                        <xs:documentation>
                            Название ключевого поля выжимки документа
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="value" type="xs:string">
                    <xs:annotation>
                        <xs:documentation>
                            Значение ключевого поля выжимки документа
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:schema>
    

    Отображение подписываемых данных происходит, когда на Сервисе Подписи включен режим подтверждения операций. Во время создания транзакции клиентское приложение передает на сервер содержимое документа и его тип. Если по типу документа удалось подобрать соответствующий плагин для формирования отображаемого представления, то сервис подписи сохранит их вместе со сведениями об операции.

    Центр Идентификации при подтверждении операции, используя отображаемые данные, формирует текст, отображаемый пользователю в ходе процедуру аутентификационного испытания. Например, при формировании SMS сообщения с одноразовым паролем или отображении на Веб-интерфейсе пользователя к XML-документу применяется XSL-преобразование, преобразующее его в текст вида:

     Name1 : Value1, Name2 : Value2, … , NameN : ValueN.
    

    Пример отображаемых данных:

    <?xml version="1.0" encoding="utf-8"?>
    <dtbs xmlns="http://www.cryptopro.ru/schemas/2014/08/dtbs">
        <row>
            <name>Наименование документа</name>
            <value>Платежное поручение</value>
        </row>
        <row>
            <name>Банк получателя</name>
            <value>АКБ "Рога и копыта"</value>
        </row>
        <row>
            <name>Счет получателя</name>
            <value>40781032100000000000</value>
        </row>
        <row>
            <name>Сумма платежа</name>
            <value>100 RUB</value>
        </row>
    </dtbs>
    
    В начало © ООО "КРИПТО-ПРО", 2000–2025