|
|
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Необходимо реализовать проверку прав пользователя при входе в БД. Есть 3 таблицы: Код: sql 1. 2. 3. 4. 5. 6. 7. Код: sql 1. 2. 3. 4. Код: sql 1. 2. 3. 4. При запуске приложения Delhi есть форма авторизации. После успешной авторизации запускается главное окно программы. В этом окне необходимо ограничить видимость(/доступность) некоторых компонентов в зависимости от группы пользователя. Для получения списка групп использую следующий код: Код: sql 1. 2. 3. Подскажите, как организовать проверку на видимость(/доступность) на форме Delphi. P.S. FireBird 2.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2013, 16:59:29 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
Hello, PunK_HS! You wrote on 4 сентября 2013 г. 17:06:58: PunK_HS> Подскажите, как организовать проверку > на видимость(/доступность) на форме Delphi. тут программист нужен Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2013, 17:07:52 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
PunK_HS, Обьедини выборку из 2 таблиц. В Query.SQL.Text вбей: Код: plsql 1. 2. 3. 4. 5. Выполни запрос и проверь: Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2013, 17:14:59 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2013, 18:36:15 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
PunK_HS Код: sql 1. 2. 3. 4. Код: sql 1. 2. 3. Подскажите, как организовать проверку на видимость(/доступность) на форме Delphi. P.S. FireBird 2.0 Эх. Понапихать домены в таблицы мы уже смогли, а вот уяснить для себя что CURRENT_USER это не INTEGER - уже не могем. Пичалька. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2013, 19:10:23 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 01:18:06 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
DarkMaster, Спасибо за Ваши советы! DarkMasterЭх. Понапихать домены в таблицы мы уже смогли, а вот уяснить для себя что CURRENT_USER это не INTEGER - уже не могем. Пичалька. а если при автроризации пользователя: Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 09:45:56 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
Мне кажется я непонятно описал ситуацию. Дело в том, что в результате выполнения запроса Код: sql 1. 2. 3. Я получаю список групп, в которых состоит пользователь. Для разных групп предполагаются разные права на просмотр/использование компонентов формы. Допустим пользователь состоит в группах Администратор и Кладовщик. Если с помощью этого кода Код: pascal 1. 2. я проверяю сначала группу с более высокими привилегиями, а затем группу с более низкими, то пользователь получит права последней проверенной группы, или я не прав? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 10:20:28 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
PunK_HS, Мне кажется здесь правильно всё таки права определять через роли. Пользователю должен входить в только одну группу. А вот уже к каждой группе должен относится набор ролей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 10:26:05 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
[quot PunK_HSЯ получаю список групп, в которых состоит пользователь. Для разных групп предполагаются разные права на просмотр/использование компонентов формы. Допустим пользователь состоит в группах Администратор и Кладовщик. ...... я проверяю сначала группу с более высокими привилегиями, а затем группу с более низкими, то пользователь получит права последней проверенной группы, или я не прав?[/quot] 1) Не получаешь. Ты свой запрос пробовал выполнить? 2) Где в структуре таблиц, приведенной тобой, поле, которое указывает на привилегии группы? Более высокие низкие привилегии легко определяются с помощью Код: plsql 1. И наконец: 3) Если пользователь "сидит" в нескольких группах - нужны дополнительные параметры при авторизации, иначе получается угадайка для пользователя, с какими привилегиями он должен зайти. Т.е. я как пользователь, ввожу логин/пароль - как ты угадаешь, что я хочу стать админом, а не Кладовщиком? - тебе нужно еще давать возможность выбора группы, и тогда все твои ухищрения по поводу определения принадлежности пользователя группе идут лесом за ненужностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 11:40:59 |
|
||
|
Проверка прав пользователя при входе в БД
|
|||
|---|---|---|---|
|
#18+
PunK_HS Код: sql 1. 2. 3. Я бы параметр CURRENT_USER на CURRENT_USER_ID переименовал во избежании. В FB уже есть такая встроенная контекстная переменная, поэтому написанное вносит путаницу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2013, 11:50:06 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38387315&tid=1564349]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
205ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 522ms |

| 0 / 0 |
