Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 22.05.2007, 16:30   #1
marco
Senior Member
 
Регистрация: 04.02.2005
Адрес: Львів
Сообщений: 126
Отправить сообщение для marco с помощью ICQ Отправить сообщение для marco с помощью Yahoo
Question Возможно ли delete fe_users из папки за пределами webmount?

Привет всем.

Есть проект в котором все fe_users хранятся в одной папке (скажем WebUsers) и принаджлежат ко многим fe_groups.
Есть много неадмин be_user-ов для которых папка WebUsers недоступна (находится за пределами WebMount). В тоже время они могут редактировать fe_users из разрешенных (своих) fe_groups посредством соответственно созданных Actions (обычний SQL select). Редактировать могут все разрешенные поля включительно с disable.

Но тут возникла необходимость дать неадмин be_user-ам возможность удалять своих fe_user-ов. Typo3 такое дело понятно не понравилось, поскольку функция deleteRecord проверяет isRecordInWebMount($table,$id) и говорит низззя! (т.е. Attempt to delete record without delete-permissions).

Добавлять папку WebUsers в вебмаунт, означает давать доступ be_user-ам ко всем fe_user-ам а не только "своим" - что крайне нежелательно. Разносить fe_user-oв по локальным папкам тоже не выход.

Что можете посоветовать?
marco вне форума   Ответить с цитированием
Старый 22.05.2007, 17:17   #2
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Если BE-пользователь может делать такое с FE-пользователями, то почему просто не дать ему доступ к папке?
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 22.05.2007, 17:21   #3
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

1) Быстро, но грязно
XCLASS-нуть tcemain и сделать чтобы функция isRecordInWebMount всегда возвращала true
2) Долго, но чисто
Написать свой бекенд-модуль для администрирования пользователей.
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 22.05.2007, 18:14   #4
marco
Senior Member
 
Регистрация: 04.02.2005
Адрес: Львів
Сообщений: 126
Отправить сообщение для marco с помощью ICQ Отправить сообщение для marco с помощью Yahoo
По умолчанию

Цитата:
Сообщение от Pavel Antonov Посмотреть сообщение
Если BE-пользователь может делать такое с FE-пользователями, то почему просто не дать ему доступ к папке?
Потому что каждый be_user должен иметь доступ только к fe_user-ам из своей группы. Например, если группы == странам. Be_user который админит страну Зимбабве должен видеть и админить только юзеров с группы (страны) Зимбабве.

Если дать доступ к папке, то поставить ограничения на выборку fe_users принадлежащих к определенной fe_usergroup невозможно. Или убедите меня в другом.
marco вне форума   Ответить с цитированием
Старый 22.05.2007, 18:20   #5
marco
Senior Member
 
Регистрация: 04.02.2005
Адрес: Львів
Сообщений: 126
Отправить сообщение для marco с помощью ICQ Отправить сообщение для marco с помощью Yahoo
По умолчанию

Цитата:
Сообщение от void Посмотреть сообщение
1) Быстро, но грязно
XCLASS-нуть tcemain и сделать чтобы функция isRecordInWebMount всегда возвращала true
:-/ да, крайний случай

Цитата:
Сообщение от void Посмотреть сообщение
2) Долго, но чисто
Написать свой бекенд-модуль для администрирования пользователей.
Такой вариант был сначала, но вследствие урезания бюджета, было принято решение обойтись акциями.
Может кто знает/подскажет какой из существующих не-админ be-модулей для редактирования fe_users использует собственные delete functions?
marco вне форума   Ответить с цитированием
Старый 22.05.2007, 19:28   #6
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Цитата:
Сообщение от marco Посмотреть сообщение
Потому что каждый be_user должен иметь доступ только к fe_user-ам из своей группы. Например, если группы == странам. Be_user который админит страну Зимбабве должен видеть и админить только юзеров с группы (страны) Зимбабве.

Если дать доступ к папке, то поставить ограничения на выборку fe_users принадлежащих к определенной fe_usergroup невозможно. Или убедите меня в другом.
А разнести группы(страны) по отдельным папкам? И дать к ним доступ...
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 22.05.2007, 21:27   #7
marco
Senior Member
 
Регистрация: 04.02.2005
Адрес: Львів
Сообщений: 126
Отправить сообщение для marco с помощью ICQ Отправить сообщение для marco с помощью Yahoo
По умолчанию

Цитата:
Сообщение от Pavel Antonov Посмотреть сообщение
А разнести группы(страны) по отдельным папкам? И дать к ним доступ...
Такой вариант не рассматривается из нескольких соображений.
Первое: есть еще суперадмин/заказчик (без админ прав ), который курирует субадминов и хочет чтобы все fe_users были в одном месте. Групп более 20 и будет еще больше. Такое требование обосновано.

Второе: используется нескольно других экстеншенов которые используют один pid и fe_usergroups для выборки юзеров. Дописывать экстендить их - слишком менингитно. В таком случаe уже меньше времени потребуется чтобы написать "свой бекенд-модуль для администрирования пользователей", как предлагал void...

Могу приводить аргументы еще, то суть то не в этом...
marco вне форума   Ответить с цитированием
Старый 23.05.2007, 00:14   #8
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Ну вот сами себе на все вопросы и ответили...
Других "волшебных палочек", к сожалению, не завезли.
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 05:45.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория