Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];

Вниз

Вход под одним логином   Найти похожие ветки 

 
Genzzz   (2003-02-02 11:24) [40]

passm
при всем написанном вся проверка на стороне клиена, что не есть ГУД.


 
Desdechado   (2003-02-02 18:20) [41]

не совсем по теме, но, может, придут еще мысли по мотивам
http://www.volny.cz/iprenosil/interbase/ip_ib_isc4.htm

а список подключенных юзеров можно в компонентах IBX через TIBDatabaseInfo прочитать


 
Tio   (2003-02-04 00:46) [42]

Блин, а как посмотреть список подключенных юзеров на стороне сервера ?
не нету там ни IBX, ни BDE :-)

Desdechado, спасибо за ссылку, пойду глядеть


 
Genzzz   (2003-02-04 00:46) [43]

Блин, а как посмотреть список подключенных юзеров на стороне сервера ?
не нету там ни IBX, ни BDE :-)

Desdechado, спасибо за ссылку, пойду глядеть


 
Johnmen   (2003-02-04 01:20) [44]

Для этого есть средства администрирования...


 
passm   (2003-02-04 09:59) [45]

Genzzz (02.02.03 11:24)> Разумеется, не хорошо. Но ведь ты собираешься реализовать весьма нестандартную весчь...


 
Desdechado   (2003-02-04 13:37) [46]

с клиента подключаешься через IBX к серверу и читаешь список подключенных к нему всех клиентов TIBDatabaseInfo (логинов, в смысле, а не тачек)


 
Genzzz   (2003-02-04 18:37) [47]

Ой, блиииин....

Desdechado, ну я ведь говорю ! Мне не на стороне КЛИЕНТА нужно, а на стороне СЕРВЕРА !


 
Genzzz   (2003-02-05 19:02) [48]

Задавая вопрос, даже и представить не мог, что это настолько сложно и никто не знает как реализовать...


 
Desdechado   (2003-02-05 19:23) [49]

я себе представляю процесс так:
1. программа-клиент запускается, требуя логин у юзера
2. юзер вводит логи-пароль
3. программа-клиент долбится к серверу и узнает список логинов, с которыми к БД уже подключились
4. проверяет, есть ли в нем логин, который ввел текущий юзер
5. ругается или пускает дальше - по обстоятельствам

так что НА СТОРОНЕ КЛИЕНТА.

а как применить при этом сторону сервера - не вижу. Покажи.


 
Harry   (2003-02-05 19:44) [50]

Если нельзя сделать этого стандартными средствами сервера, почему это нельзя проэмулировать самостоятельно? Скажем написать прогу, котроя периодически проверяет подключение к базе данных двух логинов и выдает каким-либо образом сообщекние, вплоть до отправления на мыло или SMS.


 
Genzzz   (2003-02-05 22:40) [51]

Desdechado, я себе представляю это так:

1. Когда идет подключение к серверу - вызывается некий триггер, типа OnLogin
2. В этом триггере идет проверка на существование уже такого логина
3. Если такой логин существует, то он аннулируется.

А вот как реализовать - не знаю...


Конечно, firebrid поставляется с исходниками... но у меня, думаю, не хватит квалификации


 
Sergey13   (2003-02-06 09:32) [52]

2Genzzz (05.02.03 22:40)
>1. Когда идет подключение к серверу - вызывается некий триггер, типа OnLogin
В ИБ нет тригеров уровня БД. Это тебе на Оракл надо. 8-) Че то ты кажись зациклился на проблеме. 8-) Какая для тебя принципиальная разница на какой стороне идет проверка. Тебе же предлагали вполне работоспособные варианты.


 
Reindeer Moss Eater   (2003-02-06 09:45) [53]

Какая для тебя принципиальная разница на какой стороне идет проверка.

Клиент не обязан использовать программу, в которой реализован механизм защиты. Он может запустить например SQL explorer


 
Sergey13   (2003-02-06 10:25) [54]

2Reindeer Moss Eater (06.02.03 09:45)
>Клиент не обязан использовать программу, в которой реализован механизм защиты. Он может запустить например SQL explorer
Ну тогда, только Оракл, хотя это и там не так просто реализовать.
Я где то видел описание такого решения. Вводя логин и пароль юзер на самом деле вводит данные для некоей функции, которая вместо введенных подставляет истинные логины и уже с ними лезет в базу. Например Иванов в базе может быть Bdfyjd. Тогда проблема с "чужими" программами отпадает - юзер не знает своего истинного логина.
Или стереть все программы типа SQL explorer у клиента, и запретить ставить их. 8-)


 
Genzzz   (2003-02-06 20:40) [55]

Sergey13
о, это уже идея... действительно, не подумал - можно ведь сделать некую прослойку, чтобы юзеры работали с одним аккаунтом, а сервер - с другими, надо только функцию преобразования поглубже запихнуть :-))

Правда, лучше реализовать все таки по нормальному, иначе проблемы с админстрированием и другие неприятности...


 
Sergey13   (2003-02-07 09:26) [56]

2Genzzz (06.02.03 20:40)
> иначе проблемы с админстрированием и другие неприятности...
А какие проблемы? Добавляй к имени пользователя например "-гад" - и мральное удовлетворение получишь и юзер ни о чем не догадается и все понятно кто работает - "иванов-гад". Можно и покрепче словечки подобрать. 8-)


 
Genzzz   (2003-02-08 00:32) [57]

Sergey13, а вдруг догадается ? И все равно это не очень... у базы могут быть различные администраторы, которые имеют различные права... и стоит увидеть, что в к именам пользователя приписывается -гад как вся защита накроется :-(

Это все, конечно, варианты, но полумерные...


 
Genzzz   (2003-02-09 14:28) [58]

может у кого появились идеи ?


 
Cranium   (2003-02-10 01:13) [59]

Ну тут вроде ни кто про UDF не вспомнил! Тогда схема такая:
1) Отлавливаем вход юзера, ну скажем по тригеру
2) А все остальное реализуем через UDF
Конечно другой админ может сделать тригер не активным, но на то он и админ....


 
Sergey13   (2003-02-10 09:03) [60]

2Cranium © (10.02.03 01:13)
>1) Отлавливаем вход юзера, ну скажем по тригеру
По какому????
2Genzzz (08.02.03 00:32)
>у базы могут быть различные администраторы
А зачем администраторов под одну гребенку с обычными юзерами? Что положено Юпитеру...
>Это все, конечно, варианты, но полумерные...
Опять повторюсь, ты много хочешь за бесплатно. Серьезные решения стоят серьезных денег. Иногда ОЧЕНЬ серьезных.
К тому же. А почему ты все про базу говоришь? Может подумать про нормальное администрирование сети. Там можно много чего настроить.


 
{bas}   (2003-02-10 10:02) [61]

А грант на ссесию м. в IB давать??


 
dash78   (2003-02-10 10:09) [62]

Удалено модератором
Примечание: Личная переписка


 
SergeyKatruk   (2003-02-10 16:57) [63]

Не обязательно Оракл, можна и Информикс.............


 
Nikolay M.   (2003-02-11 10:17) [64]

Может я поздно включился и чего не понял, но почему обязательно нужно реализовывать несколько коннектов к БАЗЕ? К собственно БД логин-пароль будет один (SYSDBA/masterkey), а у юзеров для входа в твою прогу будут заводимые администратором (или продвинутым пользователем) логины (vasya/1234), которые будут лежать в закодированном виде где-нибудь на сервере. И кто мешает сделать проверку на клиенте, стоит ли в этой таблице юзеров напротив введенного логина галочка "юзер уже находится в системе"?
Проблема, как я понимаю, не в том, чтобы дать каждому юзеру свой логин к базе, а в том, чтобы не дать двум юзерам работать под одним логином в твоей проге.
А заводить каждому юзеру логин в БД - имхо, чесаться левой ногой. Рано или поздно найдется продвинутый 10-классник, который запустит SQL Explorer и потрет под своим логином все записи в таблицах, на которые ему дан доступ.
Еще раз сорри, если пост не в тему или такая мысль уже проходила.


 
Genzzz   (2003-02-12 18:18) [65]

Nikolay M
спасибо, что пробегая рядом, решили поделиться мыслями...

Очень порадовало:

А заводить каждому юзеру логин в БД - имхо, чесаться левой ногой. Рано или поздно найдется продвинутый 10-классник, который запустит SQL Explorer и потрет под своим логином все записи в таблицах, на которые ему дан доступ

А вы как себе представляете логику работы базы ?


 
Genzzz   (2003-02-15 01:25) [66]

поднимаю ветку


 
Chubaiss   (2003-02-15 02:25) [67]

Аа-а-а-а-а-а-а-а-а--а-а-а..........Пук.....................


 
ЮЮ   (2003-02-15 03:19) [68]

Для Чубайса ветка оказалась неподъёмная :-) Ну, допустим, ты решишь эту проблему на стороне сервера и у тебя появится свободное время сделать ещё одно клиентское приложение. А оно не запускается, говорит "вы уже на Базе" :-) Твоё "извращеное" желание "один аккаунт - один коннект" верно только в рамках твоего приложения, вот в рамках своего приложения его и реализуй.


 
Genzzz   (2003-02-15 13:20) [69]

ЮЮ, а можно расшифровать ваш глубокомысленный пост ?
что-то не понял я


 
sndanil   (2003-02-15 17:00) [70]

2ЮЮ желание на самом деле вполне нормальное ... сам бы не отказался от решения ...
2Genzzz просто мысль ... а что если параллельно с сервером будет висеть прога, которая допустм на время соединения клиета будет менять его пароль ... тогда никто под этил логином не соедениться ... после отключения пользователя прога вернет пароль в исходное состояние ...


 
Johnmen   (2003-02-16 01:53) [71]

Потрясающее упрямство в нежелании понимать сущность коннекта и юзера....:(


 
Genzzz   (2003-02-18 00:26) [72]

Johnmen, я то понимаю. А вот если бы вы прочитали мои посты - может тоже поняли...

sndanil, интересно. Гиморно, но интересно... единственное, можно ли будет сменить пароль юзера, если он в системе ? надо проверить...


 
Genzzz   (2003-02-18 00:28) [73]

sndanil, опять же - это только препятствие для доступа к базе... Хотя уже хорошо =)

Но идеально было бы знать когда кто-нибудь пытается использовать чужой логин...


 
Johnmen   (2003-02-18 09:24) [74]

>Genzzz (18.02.03 00:26)
>...я то понимаю.

Следующая фраза однозначно доказывает обратное :

> (18.02.03 00:28)
>Но идеально было бы знать когда кто-нибудь пытается
>использовать чужой логин...

Поясню - невозможно (!) определить использование челом чужого логина ! :)



 
Соловьев   (2003-02-18 09:47) [75]

2 Genzzz
Ты уже полмесяца(!) стоишь, а мог сделать как я посоветовал
>>Соловьев © (27.01.03 15:42). Я сделал и не жалею, можно контролтровать как угодно: и по количеству коннектов, и по нику, и по пасворду.


 
Reindeer Moss Eater   (2003-02-18 09:47) [76]

Но очень хочется :)


 
NDeu   (2003-02-18 12:52) [77]

2 Genzzz
Давайте уточним задание
1. У тебя есть база на сервере(IB6) и клиентское ПО.
2. У тебя есть один или несколько BDадминов.(Они как Зевс. Им позволено все. Они знаят как свой пароль беречь)
3. У тебя есть несколько операторов на клиентское ПО ( Тетки, которые свой пароль клеят на мониторе, чтоб не забыли :)

Тебе нужно чтоб с пароль тетки, никто и никак не мог свезатся с сервера, даже с посторонным ПО (напр. IBConsole).

Решение
1.Создай юзер Application с свой пароль.
2.Этот пароль дай клиентскому ПО (в Registry или *.ini, лучше криптовано). Приложение конектикся к сервера под этот юзер Application.
3.Создай в базе табл. MyUsers, где записываеш UserName, Password, Permitions, IsConeccted и т.д. и т.п. что твоя душа захочет.
4.Запрашивай тетки за пароль, и сравнивай с запис в MyUsers. Эсли так хочется пиши логов в LogFile или LogTable.

Так пароль тетки не является пароль сервера и с этом никого и никогда не конектится.
С пороль админа можно сделать все (даже конектится сколко раз захочет), но так и надо.

Извини за плохого русского. Не родной :(
3.В базе


 
Andrey   (2003-02-18 13:33) [78]

>можно ли будет сменить пароль юзера, если он в системе
Поменять можно. Это точно.

>параллельно с сервером будет висеть прога, которая
>допустм на время соединения клиета будет менять его пароль
Паралельно это конечно можно, но как часто она будет проверять кто подключился, кто отключился. Раз в час, минуту, секунду, а это достаточная частота? А не перегрузит ли такая частота сервер? Короче минусов много. Есть конечно решение 3-х звенка, но IMHO это не та проблемма которая требует столь радикальной перепланировки 2-х уровневых систем.


Я тоже этот вопрос исследовал. Нет в IB такой возможности. Единственное естественное (выполненяемое не извратами на клиенте, а непосредственно сервером) решение это перекомпиляция IB... Скоро, через 1-2 месяца я этим вплотную займусь.

Тогда можно решить и более сложную (мою) проблемму: 1 коннект к 1 базе для 1 хоста.


 
Genzzz   (2003-02-18 20:53) [79]

NDeu, идея просто замечательная. Но ты хочешь, чтобы Application был админским аккаунтом ? Имхо, это серьезное нарушение безопасности. Где бы я его и как не хранил - хранить аккаунто администратора на компьютере...

Johnmen, вы очень хорошо все пояснили. Только я вас уверяю. Сделать можно все, ЧТО УГОДНО. Если вы не знаете как - это ничего не значит


 
Johnmen   (2003-02-19 09:33) [80]

>...Если вы не знаете как - это ничего не значит

Да. Я ничего не знаю о том, знаешь ли ты, что я знаю о твоих знаниях и пониманиях...Но это ничего не значит...




Страницы: 1 2 3 вся ветка

Форум: "Базы";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.61 MB
Время: 0.011 c
1-76453
GRR
2003-03-12 09:39
2003.03.24
Как убрать фокус из StringGrid


1-76423
BillyJeans
2003-03-11 15:52
2003.03.24
Как узнать ссылку на обработчик AfterPost


1-76440
Tundra
2003-03-11 16:10
2003.03.24
Кто помнит как конвертировать String в Pchar ?


1-76496
Строитель
2003-03-12 12:49
2003.03.24
Lock


8-76539
BALU1111
2002-12-10 13:40
2003.03.24
Регулировка громкости





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский