Этап тестирования 1.
У пользователя отсутствуют какие-либо права доступа на родительские сущности "Компания" и "Портфель проектов". Есть доступ к "Проектам" и к "Запросам клиента". Пользователь не может создать личный Стандартный отчет ни для для сущности "Запрос клиента", ни для "Проектов".
Отчеты: Доступ к сущностям при создании Отчетов обычным пользователем
-
- Спонсор
- Сообщения: 428
- Зарегистрирован: 02 дек 2017, 10:10
- Имя: Nikolay Rastegaev
- Откуда: Izhevsk
Отчеты: Доступ к сущностям при создании Отчетов обычным пользователем
Последний раз редактировалось nikolay.rastegaev 14 янв 2018, 10:39, всего редактировалось 1 раз.
-
- Спонсор
- Сообщения: 428
- Зарегистрирован: 02 дек 2017, 10:10
- Имя: Nikolay Rastegaev
- Откуда: Izhevsk
Re: Доступ к сущностям при создании Отчетов обычным пользователем
Этап тестирования 2.
Добавил пользователю (группа "Руководитель заказчика") права на "Стандартные отчеты".
Появилась возможность создать личный отчет пользователя "Стандартный отчет" для сущности "Запрос".
Но при этом появились ссылки в "хлебных крошках" на странице "Запросы".
При нажатии на ссылки (красное подчеркивание на скриншоте) попадаю на страницу "Доступ запрещен" (что правильно).
Нужно, чтобы ссылок не было.
Разбил на 2 сообщения, не смог прикрепить столько скриншотов к одному сообщению.
Используя этап 2 создал отчет для пользователя, потом убрал у него права. При этом на главной странице пользователя в отчете в фильтре все равно доступны Компания и Портфель проектов. Удалил в таблице БД app_reports 2 записи для "Компании" и "Портфель проектов" для отчета пользователя, теперь в пользователь может фильтровать только по Проекту и по Запросу.
Т.е. для создания стандартного отчета для пользователя по сущности "Запросы"
1) сначала дал доступ пользователю на все родительские сущности
2) создал отчет
3) полностью закрыл доступ к родительским сущностям
4) удалил из таблицы БД app_reports записи для родительских сущностей, к которым закрыл доступ, чтобы эти сущности не были доступы пользователю в фильтре.
Отмечу, что создание общего стандартного отчета не подходит, потому что мне нужно дать пользователю возможность применять фильтр к записям отчета, а для общих стандартных отчетов фильтра нет (хотя, предполагаю, что если внести изменения где-то в БД, то будет , но пока не смотрел, как это сделать и можно ли).
Кратко суть ошибки:
1) Нужно убрать гиперссылки с родительских сущностей, к которым дан доступ только "Стандартные отчеты"
2) Исключить появление таких сущностей в фильтре Стандартного отчета пользователя (т.к. пользователя нет доступа на их просмотр, то и отчет или фильтр по ним он не должен иметь права смотреть).
Добавил пользователю (группа "Руководитель заказчика") права на "Стандартные отчеты".
Появилась возможность создать личный отчет пользователя "Стандартный отчет" для сущности "Запрос".
Но при этом появились ссылки в "хлебных крошках" на странице "Запросы".
При нажатии на ссылки (красное подчеркивание на скриншоте) попадаю на страницу "Доступ запрещен" (что правильно).
Нужно, чтобы ссылок не было.
Разбил на 2 сообщения, не смог прикрепить столько скриншотов к одному сообщению.
Используя этап 2 создал отчет для пользователя, потом убрал у него права. При этом на главной странице пользователя в отчете в фильтре все равно доступны Компания и Портфель проектов. Удалил в таблице БД app_reports 2 записи для "Компании" и "Портфель проектов" для отчета пользователя, теперь в пользователь может фильтровать только по Проекту и по Запросу.
Т.е. для создания стандартного отчета для пользователя по сущности "Запросы"
1) сначала дал доступ пользователю на все родительские сущности
2) создал отчет
3) полностью закрыл доступ к родительским сущностям
4) удалил из таблицы БД app_reports записи для родительских сущностей, к которым закрыл доступ, чтобы эти сущности не были доступы пользователю в фильтре.
Отмечу, что создание общего стандартного отчета не подходит, потому что мне нужно дать пользователю возможность применять фильтр к записям отчета, а для общих стандартных отчетов фильтра нет (хотя, предполагаю, что если внести изменения где-то в БД, то будет , но пока не смотрел, как это сделать и можно ли).
Кратко суть ошибки:
1) Нужно убрать гиперссылки с родительских сущностей, к которым дан доступ только "Стандартные отчеты"
2) Исключить появление таких сущностей в фильтре Стандартного отчета пользователя (т.к. пользователя нет доступа на их просмотр, то и отчет или фильтр по ним он не должен иметь права смотреть).
- support
- Техническая поддержка
- Сообщения: 9016
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Доступ к сущностям при создании Отчетов обычным пользователем
Прикрепленный файл заменить в includes\classes\reports\
Сущности, у которых нед доступа, не должны отображаться для фильтров. Так же, отчет для вложенной сущности невозможно создать, если нет доступа к родительской.
Если нужны фильтры, ставьте опцию "Отображать в меню" для родительской сущности. В таком случае фильтры будут доступны, а хлебные крошки будут отображаться, но будут не кликабельны.
Сущности, у которых нед доступа, не должны отображаться для фильтров. Так же, отчет для вложенной сущности невозможно создать, если нет доступа к родительской.
Если нужны фильтры, ставьте опцию "Отображать в меню" для родительской сущности. В таком случае фильтры будут доступны, а хлебные крошки будут отображаться, но будут не кликабельны.
- Вложения
-
- filters_preview.php
- (12.45 КБ) 230 скачиваний