Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Всем привет. Нужен совет опытных людей по следующей ,как выяснилось, проблеме. На предприятии крутятся две учетные системы (1С и Парус). Соответственно на MS SQL Server и Oracle. Было решено реализовать электронный документооборот с квалифицированной ЭЦП по ГОСТ -у без оператора электронного документооборота. Почему так сделано - не спрашивайте. Это и не важно. В данный момент я разработчик Oracle. Поэтому я написал программы (DDL-ки для Windows и SO - шки для Linux на C++), которые реализуют подпись, шифрование, дешифрование, проверку подписи по реализованным компанией Крипто Про алгоритмам.И подключил эти библиотеки в Oracle с помощью технологии подключения внешних библиотек. Теперь легко ими пользуюсь, вызывая функции подписи/проверки подписи, прямо из оракловых процедур. Т.е. функционал завязан на сервере (криптоправайдер,контейнеры с закрытыми ключами и сертификатами находятся на сервере), где установлен СУБД, а не на клиенте. Удобно. С юридической точки зрения может и не правильно. Теперь разные базы данных Oracle могут использовать одну и ту же технологию подписи. Удобно. В 1С это реализовано не так. Там все дано на откуп клиенту. Криптоправайдер, сертификаты, ключи - все установлено на локальной машине пользователя и ответственность за их хранение возложено на юзера. Но я не говорю что это не правильно. Я ищу пути взаимовыгодного удобного существования 1C и Парус на нашем предприятии... Я предлагаю написать библиотеки, которые будут подключатся и Oracle и MS SQL Server- ом. Надеюсь в этом плане у MS SQL SERVER все в порядке, иначе моя затея провалится... Предполагаю что наличие общих библиотек сделает сопровождение электронного документооборота в разных учетных системах, использующих разные СУБД, более удобным. Что вы думаете об этом? |
10 дек 13, 16:43 [15272713] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Кто будет инициировать подключение ? |
||
10 дек 13, 17:14 [15272972] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Glory, Хранимая процедура |
10 дек 13, 17:16 [15272994] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Т.е. вы хотите написать драйвера доступа к Oracle и MS SQL ? Которые будут - создавать секьюрный коннект - транслировать инструкции обеих языков друг в друга - поддерживать распределнные транзакции ? |
||
10 дек 13, 17:20 [15273016] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Glory, Нет. Я предполагаю что MS SQL SERVER есть технология подключения сторонних DLL. Потом можно пользоваться этими DLL как обычными хранимыми процедурами. Разве не так? |
10 дек 13, 17:26 [15273054] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Так А что будут делать то ваши DLL для "сопровождение электронного документооборота в разных учетных системах" ? |
||
10 дек 13, 17:28 [15273064] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Glory, "Поэтому я написал программы (DDL-ки для Windows и SO - шки для Linux на C++), которые реализуют подпись, шифрование, дешифрование, проверку подписи по реализованным компанией Крипто Про алгоритмам." |
10 дек 13, 17:30 [15273079] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Что "подписывают", "шифруют", "дешифруют" ваши программы ? Файлы ? Пакеты между серверами ? ... |
||
10 дек 13, 17:33 [15273084] Ответить | Цитировать Сообщить модератору |
Crimean Member Откуда: Сообщений: 13147 |
криптографическая каша. жуткая. какую информацию вы защищаете средствами КЗИ? для чего там ЭЦП? подсказка. "на клиента" ЭЦП выносится ибо секретный ключ пользователя - его личная и безраздельная собственность, он вам носитель даже из-за угла не покажет. и накладывается подпись пользователя зачастую вообще "крипто-устройством", которое ключ наружу никогда не отдает. да, сертификат этого ключа хранится в ЦСК, но не более того. и этим ключом пользователь подтверждает свое "авторство" неким действиям / данным. а что можно подтвердить ключом, который хранится на сервере? правильно, меж-серверное взаимодействие. то есть, "для обеспечения непрерывности КЗИ" сервер, принимая данные пользователя, верифицирует его ЭЦП и на основании положительной верификации формирует свою, сохраняя пользовательскую ЭЦП. но вот передавать дальше для обработки пользовательскую ЭЦП он уже не обязан, может только свою ибо для нее он хранит основание - пользовательскую ЭЦП. как-то так. так что у вас могут быть в принципе разные ЦСК, но обеспечена должная стойкость КЗИ внезапно даже при использовании серверных секретных ключей, хотя на этом месте "безопасников", скорее всего, стошнит. возможно, несколько раз. но иногда это им можно объяснить, ссылаясь на то, что сервер может быть поднять до C2.. как-то так :) |
10 дек 13, 17:38 [15273101] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Glory, А что это имеет существенное для вас значение? Допустим сразу двоичные данные, а может быть файлы. В текущей реализации на сервере формируются файлы, DLL - ка подписывает двоичнное представление данных в файле и формирует новый подписанный и шифрованный файл с двоичными данными. Если и так не дошло - могу исходник на C++ скинуть. |
10 дек 13, 17:44 [15273120] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Разумеется имеет Вы считаеет, что слово "шифрование" объясняет, как собственно вы собираетесь осуществлять совместный документооборот двух систем на разных платформах ? |
||
10 дек 13, 17:46 [15273129] Ответить | Цитировать Сообщить модератору |
Konst_One Member Откуда: Сообщений: 11568 |
ТС, а смысл тут вам что-то на сервере шифровать? может проще поднимите секьюрное соединение между серверами? |
10 дек 13, 17:47 [15273131] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Потому что размер данных в концерне огромный! Потому что это подразумевает автоматическое формирование приходных документов в системе как только пришло зашифрованные письмо. Или вы думаете что там пользователь будет сидеть и в ручную проверять подпись,генерировать и формировать документы ? Все должно быть автоматически и быстро! В моем понимании C++ и СУБД решают проблему. Для маленьких предприятий ,возможно, и прокатит 1с-ный вариант... Иначе никому такой документооборот не нужен! |
10 дек 13, 17:53 [15273158] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Оффлайн репликация через мейл - это автоматически и быстро ??? Смешно. |
||
10 дек 13, 17:55 [15273171] Ответить | Цитировать Сообщить модератору |
Crimean Member Откуда: Сообщений: 13147 |
Cristiano_Rivaldo, вы мой ответ перечитайте. он по идее соединяет все ваши проблемы вместе и дает вариант решения. а DLL для MS SQL можно писать, сам с КЗИ так работаю на MS SQL, но вам для начала, все же, нужно перечитать то, что я уже написал. возможно, после осознания появится "дополнительная легкость" |
10 дек 13, 17:55 [15273172] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Кто говорил про майл??? Е мое. Вы кто по професси??? |
||||
10 дек 13, 17:58 [15273196] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
некто, по имени Cristiano_Rivaldo "Потому что это подразумевает автоматическое формирование приходных документов в системе как только пришло зашифрованные письмо. " |
||
10 дек 13, 17:59 [15273202] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Crimean, Да. Разница в том, что в таком случае оператором ЭДО в этом случае являемся мы сами. Но это уже к юристам... Моя задача чтоб все было автоматизированно и быстро работало. И чтоб было легко в сопровождении - так как там каждый раз новый формат придумывает ФНС России. Попробую воплотить в реальность задуманное. |
10 дек 13, 18:07 [15273250] Ответить | Цитировать Сообщить модератору |
Crimean Member Откуда: Сообщений: 13147 |
Cristiano_Rivaldo, так объедините оба подхода. пусть подписывают и клиент и сервер. вам, возможно, будет необходимо дополнительно подписывать некоторые данные, уже подписанные клиентами, серверными ключами. ну и ладно. и - да - "сертификаты на локальной машине" - так не бывает. это не имеет смысла. для сертификатов есть ЦСК. другое дело, что самих ЦСК вполне может быть много. но тогда все упрется в (решаемые) вопросы доверия друг другу разных ЦСК еще раз. на MS либы писать / использовать можно. хоть Ц++ хоть C#. так что технических проблем (кроме как собственно "договориться с 1С") я не особо вижу. а теологические, вроде как, решаемы |
10 дек 13, 18:13 [15273281] Ответить | Цитировать Сообщить модератору |
Cristiano_Rivaldo Member Откуда: Сообщений: 346 |
Crimean, Спасибо большое! Можно ваш майл? Если понадобится какая-нибудь небольшая консультация... Заранее спасибо! |
10 дек 13, 18:20 [15273314] Ответить | Цитировать Сообщить модератору |
Crimean Member Откуда: Сообщений: 13147 |
Cristiano_Rivaldo, профиль :) |
10 дек 13, 19:46 [15273629] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |