|
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
|
||||||
Разграничение прав Delphi БД Access11.06.2019, 23:07. Показов 2240. Ответов 13
Метки нет (Все метки)
вот я добавил столбец role(роль) в таблицу "table_users" как сделать чтобы при входе он проверял если в столбце роль у этого пользователя стоит admin то доступно всё, а если user то некоторые кнопки и формы не доступны
0
|
||||||
| 11.06.2019, 23:07 | |
|
Ответы с готовыми решениями:
13
Сделать разграничение прав доступа к таблицам и кнопкам в проекте Delphi через данные из Access Разграничение прав в delphi Разграничение прав, админ и юзер |
|
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|
| 11.06.2019, 23:35 | |
|
А из таблицы table_users можно узнать на какую именно таблицу распространяется роль admin ?
0
|
|
|
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
|
||
| 11.06.2019, 23:49 [ТС] | ||
|
0
|
||
|
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|
| 12.06.2019, 00:05 | |
|
Админ это тоже пользователь, но с максимальными правами, а права вы должны где-то задать.
У вас должна быть примерно такая связка. Пользователи (Имя) -> Права(Пользователь,Таблица,Просмотр,Изме нение,Добавление,Удаление) И если у нас есть пользователь Администратор, для которого нет ни одной записи в таблице Права, то такой пользователь обладает всеми правами. В ином случае смотрим какие у нас есть ограничения по таблице прав.
0
|
|
|
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
|
||
| 12.06.2019, 00:43 [ТС] | ||
|
0
|
||
|
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|||||||||||
| 12.06.2019, 01:30 | |||||||||||
|
Если у вас только 2 пользователя и для второго жесткие ограничения, то вам таблица прав, как и пользователей вообще не нужны. Авторизация пользователя даст вам информацию об этом с лихвой. Можно прямо к свойствам формы авторизации обращаться для проверки. Скажем у вас в главном меню есть пункт по которому можно открыть таблицу сотрудников и открыть ее имеет право только Администратор. Тогда сразу после логина вы пишете такой код:
0
|
|||||||||||
|
|
|
| 12.06.2019, 07:36 | |
|
вот только на самом деле так делать не нужно
вы опять предлагаете хранить данные "на экране" т.е. в frmLogin.edit1.text неужто так трудно завести переменные, где хранить все свое добро, а форма, как элемент интерфейса - одноразовая часто вы второй раз в программе логин вводите? показали, данные у юзера забрали, и всё, уничтожьте.
0
|
|
|
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
|
|
| 12.06.2019, 10:46 | |
|
1. Я сторонник минимализма и абсолютно не вижу никакого криминала к обращению к свойствам формы после ее закрытия. Это такие-же переменные, ничем не хуже предлагаемых вами промежуточных. Вот это как-раз лишнее - гонять данные непонятно зачем.
2. Как раз форма логина нужна, ее уничтожать не надо. Смена пользователя это стандартная операция для которой перезапускать приложение неудобно.
0
|
|
|
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
|
|
| 12.06.2019, 19:30 [ТС] | |
|
0
|
|
|
|
||||||
| 13.06.2019, 09:27 | ||||||
|
так и не понял, в чем вопрос
в зависимости от значения поля USER_ROLE или как вы там его назовете (!! ROLE- это зарезервированное слово обычно) гасим/зажигаем нужные элементы интерфейса
0
|
||||||
|
0 / 0 / 0
Регистрация: 26.10.2016
Сообщений: 72
|
||
| 13.06.2019, 21:24 [ТС] | ||
|
0
|
||
|
|
|||||||||||
| 14.06.2019, 08:39 | |||||||||||
|
ну так вот вы получили это значение из поля USER_ROLE и я написал вам кусок, в котором ответы на все вопросы
есть еще немного тут https://www.cyberforum.ru/blog... g4874.html дальше все просто как мычание
0
|
|||||||||||
| 14.06.2019, 08:47 | |
|
0
|
|
| 14.06.2019, 08:47 | |
|
Помогаю со студенческими работами здесь
14
Как делается разграничение прав? Разграничение прав доступа пользователей Разграничение прав на уровне приложения
Разграничение прав доступа в БД (Access 2003) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать контроль заполнения реквизита табличной части. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|