Запоминание пароля при входе (постановка)
SYSDBA (обсуждение | вклад) |
SYSDBA (обсуждение | вклад) |
||
| Строка 3: | Строка 3: | ||
Предлагается следующее: | Предлагается следующее: | ||
| − | # Добавить в диалог ввода пароля чек-бокс "Запомнить пароль". | + | # Добавить в диалог ввода пароля ([[TdlgSecLogIn]]) чек-бокс "Запомнить пароль". |
# Если чек-бокс установлен, то после успешного подключения к базе данных сохранять пароль в зашифрованном виде в системном реестре в папке с именем: | # Если чек-бокс установлен, то после успешного подключения к базе данных сохранять пароль в зашифрованном виде в системном реестре в папке с именем: | ||
| Строка 11: | Строка 11: | ||
Возможно в будущем понадобиться кроме зашифрованного пароля хранить дополнительную информацию. Предлагается перед шифрованием дописывать в начало строки пароля два символа -- номер версии: 01, 02, 03, и т.д. А при расшифровке отбрасывать их. | Возможно в будущем понадобиться кроме зашифрованного пароля хранить дополнительную информацию. Предлагается перед шифрованием дописывать в начало строки пароля два символа -- номер версии: 01, 02, 03, и т.д. А при расшифровке отбрасывать их. | ||
| + | |||
| + | === Считывание пароля === | ||
| + | |||
| + | Считывание, расшифровку и подстановку пароля следует выполнять при выборе базы данных из списка и при вводе (выборе) имени пользователя. | ||
[[Category:Постановка]] | [[Category:Постановка]] | ||
Версия 16:50, 7 сентября 2007
Как видно из этой дискуссии при работе с Гедымином одного пользователя в локальном режиме, а также при работе одного пользователя с большим количеством зарегистрированных баз данных неудобно помнить и постоянно вводить пароль.
Предлагается следующее:
- Добавить в диалог ввода пароля (TdlgSecLogIn) чек-бокс "Запомнить пароль".
- Если чек-бокс установлен, то после успешного подключения к базе данных сохранять пароль в зашифрованном виде в системном реестре в папке с именем:
HKEY_CURRENT_USER\SOFTWARE\Golden Software\Gedemin\Client\CurrentVersion\Access\<db_alias>
Здесь <db_alias> -- псевдоним базы данных из выпадающего списка зарегистрированных баз данных. В папке будут располагаться строковые параметры, где имя параметра соответствует имени пользователя (логину), а значение параметра -- пароль в зашифрованном виде. Для шифрования использовать библиотеку CryptoAPI.
Возможно в будущем понадобиться кроме зашифрованного пароля хранить дополнительную информацию. Предлагается перед шифрованием дописывать в начало строки пароля два символа -- номер версии: 01, 02, 03, и т.д. А при расшифровке отбрасывать их.
Считывание пароля
Считывание, расшифровку и подстановку пароля следует выполнять при выборе базы данных из списка и при вводе (выборе) имени пользователя.