Текущий архив: 2005.09.25;
Скачать: CL | DM;
Вниз
Где лучше сохранять список пользователей с паролями ? Найти похожие ветки
← →
Alpine (2005-09-04 21:04) [0]Написал прогу складскую. Нужно сделать возможность добавления пользователей с возможностью управления их прав. Жду советов. Заранее благодарю всех откликнувшихся !
← →
Zacho © (2005-09-04 21:09) [1]Зависит от..
Например, от используемой СУБД.
А пароли вообще хранить не стоит - стоит хранить хеши паролей.
← →
Defunct © (2005-09-04 21:12) [2]> Где лучше сохранять список пользователей с паролями ?
В отдельной таблице
← →
Alpine (2005-09-04 21:20) [3]СУБД Paradox. В отдельной таблице понятно ! Но ведь её легко можно просмотреть !!! Надо чтоб её не смогли открыть пользователи !
← →
Zacho © (2005-09-04 21:30) [4]Alpine (04.09.05 21:20) [3]
Храни именно хеши, а не сами пароли. Тогда тебе будет пофиг, открыли пользователи или не открыли ..
А вообще, Парадокс и полноценное user security - понятия не совместимые.
Какая разница, сможет пользователь узнать какие-либо пароли или не сможет, если у каждого пользователя есть доступ ко всем файлам БД ???
Хочешь полноценное секьюрити - используй клиент-серверные СУБД, а не файд-серверные.
Кстати, хотя парадокс и поддерживает "пароли", но любой дурак без особого труда найдёт в сети "инженерные" пароли к Парадоксу.
← →
Anatoly Podgoretsky © (2005-09-04 21:37) [5]Прочитать и сжеть, или по партизански, прочитал дай почитать другому.
← →
Defunct © (2005-09-04 21:41) [6]Alpine (04.09.05 21:20) [3]
> Но ведь её легко можно просмотреть
Шифруйте, чтобы просмотр ничего не дал.
> Надо чтоб её не смогли открыть пользователи !
Paradox таблицы можно и под досом просмотреть, так что тут только шифровать. И пусть себе смотрят на абракадабру.
← →
Alpine (2005-09-04 22:30) [7]2 Defunct
А чем шифромать ?? Есть компонента ?
← →
Defunct © (2005-09-05 01:27) [8]Alpine (04.09.05 22:30) [7]
Да уж придумай что-нить. Компонент точно не нужен. Тебе скорее всего нужна функция симметрического шифрования (xor или похожее).
← →
Big Joe © (2005-09-05 10:27) [9]Шифруй этим...
const
csCryptFirst = 20;
csCryptSecond = 230;
csCryptHeader = "Crypted";
type
ECryptError = class(Exception);
function CryptString(Str:String):String;
var i,clen : Integer;
begin
clen := Length(csCryptHeader);
SetLength(Result, Length(Str)+clen);
Move(csCryptHeader[1], Result[1], clen);
For i := 1 to Length(Str) do
begin
if i mod 2 = 0 then
Result[i+clen] := Chr(Ord(Str[i]) xor csCryptFirst)
else
Result[i+clen] := Chr(Ord(Str[i]) xor csCryptSecond);
end;
end;
function UnCryptString(Str:String):String;
var i, clen : Integer;
begin
clen := Length(csCryptHeader);
SetLength(Result, Length(Str)-clen);
if Copy(Str, 1, clen) < > csCryptHeader then
raise ECryptError.Create("UnCryptString failed");
For i := 1 to Length(Str)-clen do
begin
if (i) mod 2 = 0 then
Result[i] := Chr(Ord(Str[i+clen]) xor csCryptFirst)
else
Result[i] := Chr(Ord(Str[i+clen]) xor csCryptSecond);
end;
end;
← →
Anatoly Podgoretsky © (2005-09-05 10:40) [10]Имя зашифрованую и расшифрованую последоватьельност - ключ вскрывается за доли секунды.
← →
Igor_thief (2005-09-05 23:25) [11]Zacho © (04.09.05 21:30) [4]
Храни именно хеши, а не сами пароли. Тогда тебе будет пофиг, открыли пользователи или не открыли ..
Веселись :)
http://www.securitylab.ru/news/239725.php?phrase_id=73399
← →
Zacho © (2005-09-06 08:12) [12]Igor_thief (05.09.05 23:25) [11]
Повеселился :)
← →
Anatoly Podgoretsky © (2005-09-06 09:15) [13]Zacho © (06.09.05 08:12) [12]
Еше бы, особо развеселила эта фразы
Проблема в том что хеш функции используются для хранения паролей
Конечно не только она
Страницы: 1 вся ветка
Текущий архив: 2005.09.25;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.036 c