Oracle ODAC (Delphi 7) и пароли

Модераторы: Duncon, Naeel Maqsudov, Хыиуду, Игорь Акопян

Ответить
Deady
Сообщения: 193
Зарегистрирован: 17 фев 2004, 13:13
Откуда: Москва
Контактная информация:

22 дек 2004, 10:41

В пакете Oracle Odac v.5.10 в компонент OraSession можно вписать адрес БД, имя пользователя и пароль в design time. Засада в том, что потом эти данные можно легко из exe вытянуть - они в конце exe-шника хранятся, как и все запросы и пр...
Кто нибудь знает, как этого избежать? При учете, что вводить пароль при старте программы нежелательно.
На рассмотрении вариант вписать логин/пароль в private поля формы в шифрованном виде, а потом в методе FormCreate расшифровать их и установить соединение.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

22 дек 2004, 14:07

Конкретнее, все это хранится в ресурсах.
Если Oracle Odac у Вас с исходниками, то можно у соответствующих published свойств (включая active/connected... или как там оно называется) поставить "store fase" и пересобрать. Но в этом случае логин/пароль/коннекттстринг естественно прийется вводить всегда при запуске.
Можно также присваиватьь эти свойства в runtime. Например, в обработчике OnCreate той фоормы на которой лежит TOraSession, но если это сделать открыто, то строковую константу также можно будет найти в exe-файле, а поэтому ее надо закриптовать.
Проще всего (это минимальный вариант) по-XOR-ить с другой ключевой строкой.

Чесно говоря, довольно странное желание вставить кооннектстринг в код программы.

PS
Я последний раз ODAC использовал больше года назад... Там кажется есть возможность в реестре хранить шифрованный коннектстринг... Или я ошибаюсь...
Jack
Сообщения: 3
Зарегистрирован: 07 дек 2006, 21:37

07 дек 2006, 21:53

Народ! Срочно нужен ODAC для 7 дельфы не триал версия или триал 4.1
Может есть у кого киньте сылочку или в почту emk@aport.ru
BBB
Сообщения: 1272
Зарегистрирован: 27 дек 2005, 13:37

19 мар 2009, 14:07

[quote="Naeel Если Oracle Odac у Вас с исходниками, ... [/QUOTE"]А не подскажете, где можно посмотреть (взять) исходники. Как я понял, на офиц.сайте (http://www.devart.com/odac) эти компоненты идут без исходных текстов.

Причина вопроса такова. Есть класс TQraSQL. В нем есть поле Session (собстванно, и во многих других классах). В справке написано "Use the Session property to specify the session in which SQL will be executed."
Но пробы показывают (смотрю под отладчиком), что Session у меня nil. Тем не менее, запрос (Execute ()) выполняется! Вот и интересно было бы посмотреть по исходному тексту, как и что там в этом случае происходит.
Мой экземпляр класса TQraSQL лежит на форме (НЕ главной форме приложения), приложение само довольно могучее (я ковыряюсь в одном из его "уголков").
Ответить