Прошу привести пример кода авторизации по логину/паролю из 1с . · Issue #123 · diadoc/diadocsdk-1c-docs · GitHub

Авторизация по сертификату js · issue #218 · diadoc/diadocapi-docs

Доброе время суток, уважаемые коллеги разработчики,
Не достиг я успеха в авторизации через ASP.NET C#
Код на C# при публикации в IIS на клиенте не отработал с правадли того кто открыл сайт

Сейчас пытаюсь авторизоваться на клиенте и отправить на сервер токен, сигнатуру и отпечаток для дальнейших подписаний документов
Попытки подключиться к Вашей Com на языке JS у меня безрезультатны. Поэтому попробовал воспользоваться Крипто ПРО плугином и тут всё стало проще, но возникли вопросы по x509:

Вопрос:
Как мне получить

<Двоичное DER-представление X.509-сертификата пользователя>

из статьи:
Как авторизоваться в системе

Используя следующую функцию:

function FillCertList_NPAPI() { let certList = {}; return new Promise(function(resolve, reject){ cadesplugin.async_spawn(function *(args) { try { let oStore = yield cadesplugin.CreateObjectAsync("CAPICOM.Store"); yield oStore.Open(CAPICOM_CURRENT_USER_STORE, CAPICOM_MY_STORE,CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED); let CertificatesObj = yield oStore.Certificates; let Count = yield CertificatesObj.Count; if (Count == 0) { certList.globalCountCertificate = 0; reject({certListNotFound: true}); return; } if (!Array.isArray(certList.globalOptionList)) { certList.globalOptionList = []; } let text; let dateObj = new Date(); let count = 0; for (let i = 1; i <= Count; i ) { let cert = yield CertificatesObj.Item(i); let ValidToDate = new Date((yield cert.ValidToDate)); let ValidFromDate = new Date((yield cert.ValidFromDate)); let HasPrivateKey = yield cert.HasPrivateKey(); let Validator = yield cert.IsValid(); let IsValid = yield Validator.Result; if( dateObj < new Date(ValidToDate) && IsValid && HasPrivateKey) { let issuedBy = yield cert.GetInfo(1); issuedBy = issuedBy || ""; var Adjust = new CertificateAdjuster(); text = new CertificateAdjuster().GetCertInfoString(yield cert.SubjectName, ValidFromDate, issuedBy); var pubKey = yield cert.PublicKey(); var algo = yield pubKey.Algorithm; var fAlgoName = yield algo.FriendlyName; var oPrivateKey = yield cert.PrivateKey; var sProviderName = yield oPrivateKey.ProviderName; let subjectName = yield Adjust.GetCertName(yield cert.SubjectName); var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner"); yield oSigner.propset_Certificate(cert); certList.globalOptionList.push({ 'value': text.replace(/^cn=([^;] );. /i, '$1'), 'text' : text.replace("CN=", ""), 'subject' : subjectName, 'issuer' : Adjust.GetIssuer(yield cert.IssuerName), 'from' : Adjust.GetCertDate(yield cert.ValidFromDate), 'till' : Adjust.GetCertDate(yield cert.ValidToDate), 'algorithm' : fAlgoName, 'provname' : sProviderName, 'signature' : signatures }); count ; } } certList.globalCountCertificate = count; resolve(certList.globalOptionList, certList); } catch (err) { reject(err); // throw errormes; } }); });
}

В ней добрался до описания

Непонятно что должен отправить из полученного Вам.
Код взят и статьи: КриптоПро ЭЦП Browser plug-in. Создание и проверка подписи
А также из проекта: splincode/cryptopro-browser-plugin
Понимаю что вот прос звучит не по адресу, но огромное спасибо если окажите помощь и поможете разобраться.

Похожее:  Что такое отмена авторизации по карте сбербанка