Клиентские сценарии в браузере
От: GromRom  
Дата: 13.08.20 13:46
Оценка:
Здравствуйте!
Прошу сориентировать в методах решения задачи.
Нужно, средствами web-страницы (сервер IIS), обратится к хранилищу сертификатов клиента и подписать (этим сертификатом) документ (в идеале, вызвав методы .Net).
Верно ли я понимаю, что нужно курить доки по JavaScript?
сертификаты javascript
Re: Клиентские сценарии в браузере
От: Maniacal Россия  
Дата: 13.08.20 14:09
Оценка:
Здравствуйте, GromRom, Вы писали:

GR>Здравствуйте!

GR>Прошу сориентировать в методах решения задачи.
GR>Нужно, средствами web-страницы (сервер IIS), обратится к хранилищу сертификатов клиента и подписать (этим сертификатом) документ (в идеале, вызвав методы .Net).
GR>Верно ли я понимаю, что нужно курить доки по JavaScript?

Если .Net, то это что-то уровня ASP.NET нужно и сервис на серверной стороне на нём написанный ИМХО. Тогда и JavaScript особо не понадобится. Можно, конечно, без ASP. Просто порты нужные слушать, чтобы JavaScript к ним обращался по HTTP или через WebSockets. Можно на PHP, чтобы исходники страницы не достались врагу.
Re[2]: Клиентские сценарии в браузере
От: GromRom  
Дата: 13.08.20 14:22
Оценка:
Здравствуйте, Maniacal, Вы писали:

M>Здравствуйте, GromRom, Вы писали:

M>Если .Net, то это что-то уровня ASP.NET нужно и сервис на серверной стороне на нём написанный ИМХО. Тогда и JavaScript особо не понадобится. Можно, конечно, без ASP. Просто порты нужные слушать, чтобы JavaScript к ним обращался по HTTP или через WebSockets. Можно на PHP, чтобы исходники страницы не достались врагу.

Спасибо! Простите, но не понял ясно вашу мысль... Сертификат стоит у клиента. Он неперемещаемый — по крайней мере закрытая часть ключа не может покинуть хранилище.
Допустим у меня есть WСF сервис на стороне сервера, и страницы сайта написаны на ASP.NET. Кто, по Вашему замыслу, подписывает и где?
Re: Клиентские сценарии в браузере
От: kov_serg Россия  
Дата: 13.08.20 14:27
Оценка:
Здравствуйте, GromRom, Вы писали:

GR>Здравствуйте!

GR>Прошу сориентировать в методах решения задачи.
GR>Нужно, средствами web-страницы (сервер IIS), обратится к хранилищу сертификатов клиента и подписать (этим сертификатом) документ (в идеале, вызвав методы .Net).
GR>Верно ли я понимаю, что нужно курить доки по JavaScript?
Клиентскому скрипту никто просто так приватные ключи не доверит. Так что на стороне клиента придётся ставить костыли.

Начните cades plugin
https://github.com/vgoma/crypto-pro
https://www.cryptopro.ru/products/cades/sdk
Re[3]: Клиентские сценарии в браузере
От: Maniacal Россия  
Дата: 13.08.20 14:41
Оценка:
Здравствуйте, GromRom, Вы писали:

GR>Спасибо! Простите, но не понял ясно вашу мысль... Сертификат стоит у клиента. Он неперемещаемый — по крайней мере закрытая часть ключа не может покинуть хранилище.

GR>Допустим у меня есть WСF сервис на стороне сервера, и страницы сайта написаны на ASP.NET. Кто, по Вашему замыслу, подписывает и где?

Если закрытая часть не может быть передана на сервер, то тут разве что Java applet писать, т.е. веб-приложение, которое запустится на клиентской стороне и подпишет документ. В сети есть какие-никакие примеры.
Re[3]: Клиентские сценарии в браузере
От: bnk СССР http://unmanagedvisio.com/
Дата: 13.08.20 14:46
Оценка: 3 (1) +2
Здравствуйте, GromRom, Вы писали:

M>>Если .Net, то это что-то уровня ASP.NET нужно и сервис на серверной стороне на нём написанный ИМХО. Тогда и JavaScript особо не понадобится. Можно, конечно, без ASP. Просто порты нужные слушать, чтобы JavaScript к ним обращался по HTTP или через WebSockets. Можно на PHP, чтобы исходники страницы не достались врагу.


GR>Спасибо! Простите, но не понял ясно вашу мысль... Сертификат стоит у клиента. Он неперемещаемый — по крайней мере закрытая часть ключа не может покинуть хранилище.

GR>Допустим у меня есть WСF сервис на стороне сервера, и страницы сайта написаны на ASP.NET. Кто, по Вашему замыслу, подписывает и где?

Без установки софта (это может быть как браузерное расширение, типа Signer.Digital или КриптоПро, так и отдельная программа) на комп пользователя, это невозможно.
То есть, средствами одного браузера (javascript) получить доступ к хранилищу сертификатов пользователя (и подписать что-либо) невозможно.
И это хорошо, потому что всякая малварь не может подписывать документы вместо меня.
Отредактировано 13.08.2020 14:57 bnk . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.