|
|
|
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
||||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Ох, как много текста Они не могли все более кратко сформулировать?
Я на деле представляю себе такую систему. Есть таблица: ИД группы|ИД пользователя|привелегия 1||create_user 1||edit_user 2||edit_my_profil Сюда заносятся только разрешенные действия для группы или юзера. Всё, что не разрешено - запрещено. И есть функция для проверки:
Предлагаю так делать. |
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Wowa,
Ты как нить почитай, очень гибкая система. ИМХО Это стоит прочесть :) |
|||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Opik, а чем моя не гибкая? Ответь, тогда прочту
|
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Wowa,
Такой системой как ты предложил сложно сделать группы пользователей, а если пользователей в двух группах? трех? Там по ссылке есть хороший пример:
|
|||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Opik, сколько времени уйдет на организацию такой системы разграничения доступа? Действительно ли нам это нужно?
|
|||
|
||||
Sardar |
|
|||
Бегун Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: нет Всего: 317 |
Opik, все свежие системты управления доступом основываються на ролях и уникальных привилегиях с точностью до одного пользователя. Я разработал(дорабатываю) похожую систему, но есть отличия (с начала):
Это основа, далее конкретный модуль может проверить:
Таким образом модуль для работы с юзерами и правами (да, фактически это модуль и его можно убрать физически отключив этот функционал, постовляеться вместе с основой) собирает всех пользователей в группы/контейнерый, при этом группы не имеют иерархии. Один юзер может находиться в нескольких группах, груп может быть сколько угодно. Пользователю можно выдать право на выполнение конкретного действия над пользователями в другой группе. Таким образом можно собрать людей в "топлы" и назначить им одного или более админов с точно разрешёнными действиями над этими юзерами. Модуль создаёт проверку: конкретное_право + конкретные_группы, где:
Как видм костяк расширяеться новыми связями по задаче. Естественно что такая гибкость означает тяжёлые запросы и возможно массу инфы доставаемой из БД. Естественно что при каждом запросе БД не трогаеться, для этого система контроля доступа плотно связана с кешированием (не удаляемый (только руками) модуль). При логине человек может подождать 1-5 секунд пока его инфа вся разберёться, затем в его персональный кешь/сессию сбрасываеться эта инфа в виде var_dump файлов и SQLite таблиц. Модули имеют почтовые ящики, куда другие модули могут посылать уведомления. Система контроля правами проверяет при каждом запросе изменились ли права, если надо, перестраивет кеш. Валидность по календарю, ИП и прочему естественно проверяеться из кеша. Отсюда приемлемая скорость работы. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Wowa,
Перефразирую твой вопрос: "Действительно ли нам нужна гибкая система?". Мое ИМХО - нужна. Sardar лишь это подтвердил |
|||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Opik, сколько времени у тебя уйдет на ее реализацию?
|
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Wowa,
Ну начинать нужно все равно не с нее. Нужно для начала как минимум ядро системы. Я не знаю, что там в репозитариях сейчас. Нужно посмотреть. Ну если сесть, то пару дней наверно. сейчас конкретнее сказать не могу. |
|||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Кстати, предлагаю сделать возможным подключать базы юзеров сторонних движок для прохождение авторизации. Например так, чтобы пользователи форума Invision могли залогиниться на сайте с Vingrad CMS. (естественно при этом должен быть обеспечен доступ к таблице ibf_users). На мой взгляд это довольно легко реализовать, но польза будет колоссальная.
|
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
Opik, пиши спецификаицю системы, как будет работать и т.п., структура таблиц, логика работы системы прав.
Если будут вопросы по ядру, обращайся ко мне - я все объясню. В принципе ядро у нас будет масштабируемое и гибкое, так что проблем с внедрением быть не должно. Я думаю можно реализовать некие плагины под это дело. А то и вовсе авторизовывать через SOAP сервис какой. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Wowa |
|
|||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
Опик с сегодняшнего дня в отпуске 41 день. Поэтому системой прав придеться заняться мне.
|
|||
|
||||
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Vingrad CMS | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |