Удаление заказов без прав на эту операцию

Сложилось ситуация когда групп пользователей вот с таким набором прав, умудряется удалять заказы

Как такое может быть и как исправить?

возможно, пользователи еще в каких-то группах состоят, где есть право на удалени.

@skay Как вы определяете, что пользователь удалил заказ? Удалось воспроизвести проблему в чистой установке?

В таблице order_logs сделайте выборку по order_id=номер заказа
если в выборке присутствует запись с action=rus_order_logs_order_deleted
смотрите поле user_id - там будет ID администратора, который удалил заказ.
Изначально эти данные пишутся в лог, но к сожалению на этом разработчики остановились и другого средства просмотра кроме как напрямую в БД - нет

PS не тому ответил )

1 лайк

менеджеры мне сами об этом сообщили

состоят, но там они отклонены


а вот для группы Продавцы скрин с правами был выше

на данном скрине администратор продавца не входит в группу “Продавцы”, статус “вкл.” должен быть у него

1 лайк

Хм… странно , а как у них тогда доступ к остальным функциям был

@cs-cart_team можно пояснение по опциям для прав группы?
%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5

@skay Выше написали верно. Чтобы включить юзергруппу, нужно выбрать статус Вкл.

уже сделал,
просто становится тогда интересно, что дает статус - Доступно?

Здравствуйте, skay

Исходя из информации на вашем скрине, администратор не принадлежал ни к одной группе, поэтому имел полные права по всем возможным пунктам. Поэтому произошло так, что он смог удалить заказ.

Чтобы назначить юзер группу для администратора, нужно присвоить ей статус Вкл.
Статус Доступно означает, что для администратора доступна юзер группа с типом администратор, но она ему еще не назначена. Надеюсь, это объясняет ситуацию.

если пользователю разрешено самому выбирать себе группу - он может выбирать из тех, что имеют для него этот статус

Вот как то совсем не логично?
цитирую вас же - администратор не принадлежал ни к одной группе, поэтому имел полные права по всем возможным пунктам
Я бы сказал даже опасно

есть где то документация где об этом подробнее написано?

Администратор. Он по умолчанию имеет все права. Кроме тех, которые имеет только суперадминистратор (у которого в таблице БД is_root = 1)
Через группу пользователей вы можете ограничить права. Группа пользователей с выставленными правами - это пресет прав. Вы назначаете группу - и соответственно выдаете этот наболр прав конкретному пользователю.

2 лайка

@skay извините, что мои формулировки вас запутали. Выше пояснили правильно.
Вот документация на данную тему https://www.cs-cart.ru/docs/4.14.x/user_guide/users/administrators/admin_group.html
К сожалению, отдельной документации по статусам групп пользователей относительно пользователей нет.
Однако, я могу объяснить, как это работает сейчас:
Открывая вкладку Группы пользователей на странице редактирования любого пользователя (администратора, администратора продавца, покупателя) вы видите четыре возможных статуса:

  • Вкл. - пользователь принадлежит группе
  • Неподтвержденный - пользователь подал заявку на вступление в группу, но главный администратор её ещё не одобрил
  • Доступно - группа доступна для пользователя, но не используется
  • Отклонен - главный администратор отклонил заявку пользователя на вступление в группу

Статусы “Неподтвержденный” и “Отклонен” имеют смысл только для Покупателей, т.к. только они могут подавать заявку на вступление в группу. Продавцам и Администраторам группа назначается главным администратором или администратором, имеющим соответствующие права.
Возможно, в будущих версиях систему статусов переработают и скроют неиспользуемые статусы для продавцов и администраторов. На данный момент система статусов общая.