![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
права доступа к таблице Paradox [D5, Paradox]
ks © (2005-06-25 17:11:00)Уважаемые знатоки, подскажите пожалуйста:
имеется таблица Paradox для неё задано два пароля, один на полный доступ и другой на ограниченый. Как узнать с каким паролем был произведён вход или с какими правами доступа была открыта таблица?
Imshanya (2005-06-28 12:05:00) [1]To ks ©
На Ваше "с какими правами доступа была открыта таблица?"
По хорошему, надо работать с WinApi:
У парадоксовской таблы есть такая штука - Security Descriptor.
Смотри модуль BDE, а именно SECDesc
Вот в энтой штуке "лежат" права паролей на таблу и на ее поля.
Можно читать оттэнда инфу, менять ее, добавлять, удалять.
ks (2005-06-25 18:25:00) [2]
> Reindeer Moss Eater © (25.06.05 18:18) [10]
> Разумеется можно.
> Если получается работать не на чтение, то права получены
> не на чтение.
ценю юмор - остроумно! но я попробовал вот так:
table1.Active:=true;
if table1.CanModify then (делаю то что мне нужно) else (делаю то что нужно в противном случае);
Reindeer Moss Eater (2005-06-25 18:18:00) [3]Разумеется можно.
Если получается работать не на чтение, то права получены не на чтение.
ks (2005-06-25 18:16:00) [4]
> Reindeer Moss Eater © (25.06.05 18:11) [8]
> Пароли Парадокса к видимости лейблов никакого отношения
> не имеют.
я же написал НАПРИМЕРили нужно описать всю задачу программы? :)
у меня вопрос можно ли узнать с какими правами доступа была открыта таблица при запуске приложения?
Reindeer Moss Eater (2005-06-25 18:11:00) [5]Пароли Парадокса к видимости лейблов никакого отношения не имеют.
ks (2005-06-25 18:10:00) [6]права заданы при проэктировании таблиц
поставлю вопрос по другому,
например если пользователь подключается с правами полного доступа происходит визуализация какого то лейбла (label1.visible:=true) если с ограничеными правами на таблицу то скрываем (label1.visible:=false)
Val (2005-06-25 17:56:00) [7]стоп. ваши права зависят от пароля, насколько я понимаю. значит все упирается в него. пользователь вводит пароль с помощью вашей программы?
Reindeer Moss Eater (2005-06-25 17:56:00) [8]Если решил раздавать права средствами паролей парадокса - тогда забудь про свою собственную "нарезку" прав пользователям.
Хочешь сам раздавать права - не используй пароли парадокса.
Логично?
ks (2005-06-25 17:54:00) [9]задача у меня такова что в зависимости от того кто подключился (то есть с какими правами) показывать ту или иную информацию а в свойствах TSession я нашёл AddPassword, RemovePassword, RemoveAllPassword, GetPassword но с помощю этого можна добавить пароль, удалить его или проверить был ли он введён вообще, а мне то нужно с какими правами была открыта таблица
Val (2005-06-25 17:42:00) [10]Понятно. Зачем универсальный пароль тому кто паролит? Он нужен тому кто вскрывает.
По поводу "как именно" - у вас нет справки, исходников и среда не показывает методы после точки и Ctrl+Enter, хотя бы? Вы же как-то реализуете доступ пользователя к запароленным таблицам?
ks (2005-06-25 17:33:00) [11]универсальный пароль мне не нужен, а бросить пароли не могу так как надо разделять права разных пользователей, в TSession как имено?
Val (2005-06-25 17:28:00) [12]ух ты. вообще в TSession, но лучше бросьте паролить - тут также часто задают вопросы по универсальным паролям.