GUI RBAC YII2

Выкладываем свои наработки
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

GUI RBAC YII2

Сообщение yiijeka »

Привет мальчишки и девчонки.

Есть такая задача у Yii2 Реализация интерфейса для rbac.

Я тут сделал набросок - https://github.com/githubjeka/gui-rbac-yii2

Кто чем может помогите ;)
Аватара пользователя
Insolita
Сообщения: 788
Зарегистрирован: 2011.06.06, 01:39
Контактная информация:

Re: GUI RBAC YII2

Сообщение Insolita »

красиво :-)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: GUI RBAC YII2

Сообщение samdark »

Идеями помогайте тоже, штука не очень тривиальная как по части идей, так и по части реализации.
Avgusto
Сообщения: 46
Зарегистрирован: 2013.11.07, 21:09

Re: GUI RBAC YII2

Сообщение Avgusto »

Sam Dark писал(а):Идеями помогайте тоже, штука не очень тривиальная как по части идей, так и по части реализации.
а эта "штука" про визуализацию или про логику привязки RBAC к модулям? (там часть высказываний про логику)
Или задача в том, как доступно и наглядно показать сложную ветвистую структуру наследования ролей?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: GUI RBAC YII2

Сообщение samdark »

У RBAC нет никакой привязки к модулям, так что речь о визуальном редакторе. Как лучше представить, как лучше построить процесс редактирования и т.д.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Может кто знает, что-нибудь про "алгоритмы построения связей блоков"? Пока тяжело даётся - как оптимально строить линии с ломанием их в определённых местах, учитывая расположения блоков.

Заумно написал пожалуй, ну да ладно. Эх, школьные годы ... ничего уже не помню, изобретаю велосипед :)

http://basic-rbac-githubjeka.c9.io/basi ... php?r=rbac
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Более менее настроил связи(линии). Отцентрировал.

Пожелания, замечания приветствуются.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: GUI RBAC YII2

Сообщение zelenin »

yiijeka писал(а):Более менее настроил связи(линии). Отцентрировал.

Пожелания, замечания приветствуются.
сейчас стало намного лучше.
Интересно, как это будет работать с большим количеством прав. У нас например очень большой файл с различными ролями и правами (100-200, а может 500).
Соответственно сделай плз импорт из файла в схему.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Ок по импорту. По поводу большого файла, csv есть ? Сделай выгрузку базы по этому методу if u can :)
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: GUI RBAC YII2

Сообщение zelenin »

yiijeka писал(а):Ок по импорту. По поводу большого файла, csv есть ? Сделай выгрузку базы по этому методу if u can :)
не, у меня php-файл готовый
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

так запусти консольку, он выгрузку сделает в json, ещё и лучше будет, чем csv
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: GUI RBAC YII2

Сообщение zelenin »

yiijeka писал(а):так запусти консольку, он выгрузку сделает в json, ещё и лучше будет, чем csv
в личке
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Спасибо, не тормозит. Но вот с начальным построением проблемы, есть над чем подумать. Спасибо ещё раз.

P.S.

Object {nodes: Array[238], links: Array[654]}

Изображение
Вкладка съедает 57 Мб памяти.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: GUI RBAC YII2

Сообщение samdark »

Серьёзно так кушает...
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Нашёл вот такое разрешение - createOrUpdateUserAsChiefManagerForPartnerAndContent 410px в ширину.
Как поступать с такими штуками?
Прямоугольники в 410px не очень смотрятся, на мой взгляд -
Изображение
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Ладно с прямоугольниками, но вот со связями. Всё хорошо пока этих связей не много, но вот проект от zelenin ломает на корне всю красоту от квадратных углов в соединениях. К вышевыложенной картинке добавлю и ещё две .

Изображение
Изображение

На этой используется алгоритм ациклических ориентированных графов (directed acyclic graph, DAG). В его основе лежит идея: расположить вершины графа по иерархии(максимальное количество связей), а потом переставить их таким образом, чтобы по максимуму убрать пересечения. Я применил его к базе с 238 ролями и правилами, и 654 их назначениями. Возможно, эта база требует оптимизации, но если бы это было не от zelenin, то я бы усомнился в избыточности связей, а так вроде берём как есть. Вывод из сложившейся ситуации такой: использовать первоначальное построение узлов по Y иерархическим уровнями не применимо к нашей ситуации. Ломать линии для наглядности в определённых точках тоже лишнее, так как пересечений и наложений линий будет очень много. Обычно в крупном проекте на одну, две "главные" роли назначено много правил, а это линии, линии, линии....

Из всего это я вернулся к первоначальному варианту, он самый лучший для данной картины:
Изображение
Изображение

В этом варианте, связанные узлы будут максимально притянуты друг к другу и пересечения не такие "ужасные".

Что думаете?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: GUI RBAC YII2

Сообщение zelenin »

имхо, при таком количестве связей визуальное отражение мало юзабельно. Может имеет смысл взять какую-то цифру и точить под нее?
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Ну визуально по линиям с подсветкой, для твоей базы, я легко гуляю на круговом варианте. Удалять, назначать тоже нормально. Точить нужно под любую цифру, так как противоположный концепт визуализации - форма https://github.com/githubjeka/gui-rbac- ... rms-layout тоже мало юзабильна.

Изображение
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: GUI RBAC YII2

Сообщение yiijeka »

Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: GUI RBAC YII2

Сообщение samdark »

Для визуализации прям конфета. Нравится.
Ответить