|   |   | 
| 
 | Хранение пароля для подключения к внешнему SQL | ☑ | ||
|---|---|---|---|---|
| 0
    
        Матадор 19.12.11✎ 14:28 | 
        Из 1С осуществляется подключение к внешнему источнику MS SQL 2008 через 
  COMОбъект("ADODB.Connection"). При этом в строке подключения в явном виде лежит и логин и пароль. Хотелось бы как нибудь защитить эту информацию от посторонних глаз, в т.ч. и других программистов. Есть способы? | |||
| 1
    
        Ёпрст гуру 19.12.11✎ 14:31 | 
        храни в реквизите формы, реквизит показывай в виде звездочек.. само значение - где угодно, хоть в хранилище..     | |||
| 2
    
        Amiralnar 19.12.11✎ 14:36 | 
        Доменная авторизация?     | |||
| 3
    
        Матадор 19.12.11✎ 14:42 | 
        (2) для того чтобы таким способом авторизоваться на SQL надо в домене авторизоваться, а это тоже логин, пароль :)     | |||
| 4
    
        Господин ПЖ 19.12.11✎ 14:43 | 
        из 1С дергать скрипт vbs, скрипт зашифровать средствами винды     | |||
| 5
    
        rs_trade 19.12.11✎ 14:45 | 
        (4) может проще модуль закрыть?     | |||
| 6
    
        Defender aka LINN 19.12.11✎ 14:45 | 
        (1) В момент подключения один фиг все можно будет увидеть :)     | |||
| 7
    
        Матадор 19.12.11✎ 14:46 | 
        (1)(2)(5) Поясню чуть подробнее. 
  Через ком-объект создается соединение на внешний SQL, куда затем пишется много чего. Внешний лог, который может вызываться как из клиента, так и из фонового задания, из разных баз данных. Соответственно авторизация только SQL, где бы ни хранился пароль в момент подключения он через отладчик виден, запароленный модуль можно вскрыть. Что еще я не перечислил? :) | |||
| 8
    
        Матадор 19.12.11✎ 14:49 | 
        Пока придумал только одно - sql юзер имеет права только на одну таблицу во внешней базе, а в ней триггером все инсерты дублируются в другую, а потом удаляются.     | |||
| 9
    
        Господин ПЖ 19.12.11✎ 14:50 | 
        гнездо параноика...     | |||
| 10
    
        leshikkam 19.12.11✎ 14:54 | 
        А может есть возможность Windows авторизацию использовать?     | |||
| 11
    
        Vladal 19.12.11✎ 14:55 | 
        Хранить логин-пароль не в явном виде - зашифровав, например, Base64 - посмотри в СП Base64Значение и Base64Строка.
  НО! В момент подключения все равно это расшифровывается и тот же программер в отладчике увидит строку подключения в явном виде. Скуль 2008? Значит и сервак 2008, в диспетчере задач которого достаточно включить отображение командной строки. Как вариант - запускать из скрипта JS, тогда диспетчер задач пишет процесс интерпретатора и параметр командной строки embedded. И всё. Никто ничего не видит. | |||
| 12
    
        Vladal 19.12.11✎ 14:57 | 
        Тогда еще политикой рубить использование диспетчера задач.
  Если программер зинтересован будет - он все твои коды достанет из дебаггера. Тогда создать служебную учетку для робота, ей дать доступ к серверу скуля и от её имени запускать. | |||
| 13
    
        Vladal 19.12.11✎ 14:59 | 
        (4) Скрипт можно шифровать и средствами интерпретатора, типа предкомпиляция и эту строку можно вставлять в код 1С.
  При вызове такой строки JS сам разберется с твоим скриптом и отработает его. | |||
| 14
    
        Матадор 19.12.11✎ 15:00 | 
        (13) Пример можно? и как передавать в такой JS параметры из кода 1С?     | |||
| 15
    
        Vladal 19.12.11✎ 15:01 | 
        Да так же и передавать. Только найду ща как его зашифровать     | |||
| 16
    
        rs_trade 19.12.11✎ 15:01 | 
        если такая параноя, используйте не АДО из 1С, а SSIS для трансформации данных.     | |||
| 17
    
        Vladal 19.12.11✎ 15:02 | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |