Из customer.pl любой получает доступ к чужим тикетам?!

Обсуждение вопросов и решений

Модератор: ykolesnikov

Ответить
TitovLab
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 17 апр 2015, 17:22

Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение TitovLab » 28 мар 2017, 21:27

Добрый день!

Обнаружил странную вещь: если в SysConfig отключена опция Ticket::Frontend::CustomerDisableCompanyTicketAccess (что является по умолчанию), то любой из личного кабинета customer.pl может получить доступ ко всем тикетам организации. Для этого достаточно при просмотре любого своего тикета поменять номер тикета в адресной строке браузера: /otrs/customer.pl?Action=CustomerTicketZoom;TicketNumber=ЧУЖОЙ_ТИКЕТ_МОЕЙ_Компании

Самое интересное, ситуацию не исправляет ни один из рекомендуемых разработчиками способов:
1. включение групп для клиентов и указание определенной группы в CustomerFrontend::Module###CustomerTicketOverview для CompanyTickets, чтобы ограничить доступ к разделу CompanyTickets в личном кабинете. Да, из меню он пропадает, но обход со сменой URL отрабатывает на ура.
2. включение CustomerUserExcludePrimaryCustomerID => 1 в Config.pm. Да, остаются только свои тикеты в личном кабинете, но опять обход со сменой URL отрабатывает на ура.
В любом случае как ни крути любой получает доступ к чужой информации.
Это у всех так? Кто-нибудь пробовал исправить?
OTRS 5.0.19 на CentOS 6

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 28 мар 2017, 22:55

Хм, интересно, надо проверить. Посмотрим, отпишусь по результатам.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 28 мар 2017, 23:03

Проверили на
PRODUCT = OTRS
VERSION = 5.0.7
BUILDDATE = Wed Feb 10 19:56:58 CET 2016
BUILDHOST = otrsbuild.otrs.com

Всё работает корректно. При включённой опции Ticket::Frontend::CustomerDisableCompanyTicketAccess, чужой тикет Компании клиента не отображается, ругается:
Недостаточно прав
Сообщение: No Permission!
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение ykolesnikov » 29 мар 2017, 08:11

Алексей, он имеет в виду подстановку номера заявки в адресную строку браузера.
Только что попробовал:
.../otrs/customer.pl?Action=CustomerTicketZoom;TicketNumber=10030079
Здесь номер заявки взят из чужой компании клиента. И она отображается. Но если идти через меню "Заявки компании" то доступа нет -
Недостаточно прав
Сообщение: Нет прав доступа!
Обратно на предыдущую страницу
:shock:
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

TitovLab
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 17 апр 2015, 17:22

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение TitovLab » 29 мар 2017, 11:16

Юрий, верно.
Речь идет о поведении OTRS если настройки параметра Ticket::Frontend::CustomerDisableCompanyTicketAccess оставлены по-умолчанию. Этот параметр должен быть установлен в "Нет" чтобы в личном кабинете хотя бы у кого-то (например, топ-менеджеров) был доступ к заявкам всей организации.
И не смотря на весь функционал OTRS (включение групп для клиентов, изменение конфигурации и т.п.) после включения ограничений на просмотр всех заявок по компании только для топ-менеджеров по факту у всех сотрудников остается доступ к чужим тикетам.
Более того, для получения доступа уже даже не обязательно знать номер тикета и менять что-то в адресной строке. Чужие тикеты находятся через поиск в личном кабинете :D
OTRS 5.0.19 на CentOS 6

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 29 мар 2017, 11:43

ykolesnikov писал(а):Алексей, он имеет в виду подстановку номера заявки в адресную строку браузера.
Мы так и делали. Работало корректно, доступа не было. Проверим где-нибудь на 5.0.17.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

TitovLab
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 17 апр 2015, 17:22

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение TitovLab » 29 мар 2017, 12:15

Алексей, хочу убедиться что мы говорим об одном и том же.
Цель состоит из двух частей:
первая часть: директор клиента должен через личный кабинет видеть все заявки компании
вторая часть: остальные клиенты ни при каких обстоятельствах не должны получать доступ к чужим тикетам.

Для решения первой части параметр Ticket::Frontend::CustomerDisableCompanyTicketAccess должен быть установлен в положение "Нет" (значение по умолчанию).
Для решения второй части нужно включить поддержку групп для клиентов, создать группу "Руководство клиентов" и для параметра CustomerFrontend::Module###CustomerTicketOverview в CompanyTickets указать группу "Руководство клиентов".
На первый взгляд все получается. Но по факту:
1. все сотрудники могут найти тикеты коллег через поиск. Достаточно поставить * в номере тикета при поиске.
2. все сотрудники могут напрямую выйти в тикет коллег поменяв номер тикета в адресной строке в браузере на желаемый.
OTRS 5.0.19 на CentOS 6

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение ykolesnikov » 29 мар 2017, 12:41

И даже если Ticket::Frontend::CustomerDisableCompanyTicketAccess установлен в "ДА", как у меня, такой доступ, через адресную строку и поиск есть у всех.
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 29 мар 2017, 15:49

ykolesnikov писал(а):И даже если Ticket::Frontend::CustomerDisableCompanyTicketAccess установлен в "ДА", как у меня, такой доступ, через адресную строку и поиск есть у всех.
Юрий, у меня корректно работает. Доступ не даёт при "спуффинге" номера тикета :)
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 29 мар 2017, 15:50

TitovLab писал(а):Алексей, хочу убедиться что мы говорим об одном и том же.
Цель состоит из двух частей:
первая часть: директор клиента должен через личный кабинет видеть все заявки компании
вторая часть: остальные клиенты ни при каких обстоятельствах не должны получать доступ к чужим тикетам.
В базе так не получится сделать. Доступ к тикетам компании или есть для всех или его нет совсем ни для кого. Нужен кастом.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение ykolesnikov » 29 мар 2017, 16:19

alexus писал(а):
ykolesnikov писал(а):И даже если Ticket::Frontend::CustomerDisableCompanyTicketAccess установлен в "ДА", как у меня, такой доступ, через адресную строку и поиск есть у всех.
Юрий, у меня корректно работает. Доступ не даёт при "спуффинге" номера тикета :)
Я еще попроверяю, есть идея, возможно, это как-то связано с группами клиентов. Я знаю, Вы к этому относитесь отрицательно, но мне пришлось это использовать для разделения через ACL списков доступных очередей по территориям. Но все являются членами группы users, иначе, при перемещении заявок в очереди второй линии клиенты их не видят (доступ пропадает).
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

paver
OTRS Мастер
Сообщения: 507
Зарегистрирован: 22 апр 2015, 06:45
Откуда: Томск
Благодарил (а): 7 раз
Поблагодарили: 45 раз

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение paver » 30 мар 2017, 06:58

ykolesnikov писал(а): Но все являются членами группы users, иначе, при перемещении заявок в очереди второй линии клиенты их не видят (доступ пропадает).
А очереди второй линии на какие группы настроены?
--
OTRS 6.0.22

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение ykolesnikov » 30 мар 2017, 07:10

Группы клиентов с очередями не связаны. Доступ к выбору очереди, через ACL ограничен в зависимости от группы клиентов. Группа users присваивается всем клиентам, но не связана ни с какой очередью. Группы, связанные с Очередями не пересекаются с группами клиентов
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

paver
OTRS Мастер
Сообщения: 507
Зарегистрирован: 22 апр 2015, 06:45
Откуда: Томск
Благодарил (а): 7 раз
Поблагодарили: 45 раз

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение paver » 31 мар 2017, 11:26

ykolesnikov писал(а):Группы клиентов с очередями не связаны.
Хм. Просто когда-то
ykolesnikov писал(а):Кроме того все клиенты автоматом, с помощью SysConfig, включаются в группы связанные с очередями и users.
http://otrs.ru/forum/viewtopic.php?p=16127#p16127
--
OTRS 6.0.22

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 31 мар 2017, 17:43

ykolesnikov писал(а):Группы клиентов с очередями не связаны. Доступ к выбору очереди, через ACL ограничен в зависимости от группы клиентов. Группа users присваивается всем клиентам, но не связана ни с какой очередью. Группы, связанные с Очередями не пересекаются с группами клиентов
А как тогда клиенты видят тикеты?
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение alexus » 31 мар 2017, 17:52

TitovLab писал(а):Алексей, хочу убедиться что мы говорим об одном и том же.
Цель состоит из двух частей:
первая часть: директор клиента должен через личный кабинет видеть все заявки компании
вторая часть: остальные клиенты ни при каких обстоятельствах не должны получать доступ к чужим тикетам.
http://forums.otterhub.org/viewtopic.php?f=53&t=34798 - Вы зря полагаете, что немцы намного умнее нас, и что дают более развёрнутые ответы. Тут одна барышня очень возмущалась, что ей прямых ответов не дают (это не про Вас, а так, к слову). Глянула бы она, на немецкую лаконичность :)
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

ykolesnikov
OTRS Гуру
Сообщения: 3119
Зарегистрирован: 24 дек 2010, 09:27
Откуда: Череповец
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Контактная информация:

Re: Из customer.pl любой получает доступ к чужим тикетам?!

Сообщение ykolesnikov » 31 мар 2017, 18:54

alexus писал(а):
ykolesnikov писал(а):Группы клиентов с очередями не связаны. Доступ к выбору очереди, через ACL ограничен в зависимости от группы клиентов. Группа users присваивается всем клиентам, но не связана ни с какой очередью. Группы, связанные с Очередями не пересекаются с группами клиентов
А как тогда клиенты видят тикеты?
Алексей, наврал конечно в запале. Просто группы очередей по умолчанию присоединяются клиентам.
Чувствую, пришло время внимательней посмотреть на проблему, опыты поставить на тестовой системе.
С уважением Юрий Колесников
OTRS 5.0.22, ITSM 5.0.22
OpenSuse 13.2, MariaDB 10.0.22
OTRS 5.0.22, ITSM 5.0.22 тестовая

Ответить