Есть ли какой-либо открытый источник, PHP based
, система управления доступом на основе ролей, которая может использоваться для CodeIgniter
?Управление доступом на основе ролей
ответ
Брандон Сэвидж выступил с презентацией на своем пакете PHP «ApplicationACL», который может или не может выполнять ролевой доступ. PHPGACL может работать, но я не могу сказать вам точно.
То, что я могу вам сказать, это компонент Zend_ACL Zend Framework, который будет выполнять установки на основе ролей (однако вам придется подклассы для проверки сразу нескольких ролей). Конечно, боль из этого вам придется вытащить Zend_ACL, я не верю, что он имеет какие-либо внешние зависимости, от монолитной загрузки (или проверки SVN).
Приятная вещь о Zend_ACL, хотя его агностик хранения. Вы можете либо перестраивать его каждый раз, либо он предназначен для сериализации (я использую комбинацию как сериализации для кеша, так и восстановления из БД).
phpgacl http://phpgacl.sourceforge.net/ является общей основой
ACL на основе контроля доступа, пока я не знаю, о какой-либо конкретной реализации CI, я знаю, что вам нужно только основной файл класса, чтобы сделать phpgacl работу. Поэтому я считаю, что интеграция с CI не будет проблемой. (Я работаю с CI)
Обнаружено, что ACI Khaos является библиотекой CI ... Я также проверяю phpgacl и как использовать его для CI ... Еще не проверял Zend ACL. Но может быть, он может быть «портирован» на CI
Возможно, я не понимаю вопрос, но не все ли суть контроля доступа на основе ролей (RBAC) до избегают Списки контроля доступа (ACL)?
RBAC отличается от списков контроля доступа (ACL) (...) в том, что он назначает разрешения на определенные операции со смыслом в организации, а не к объектам данных низкого уровня. Например, список управления доступом может использоваться для предоставления или запрета доступа к записи для определенного системного файла, но он не сказал бы, каким образом этот файл может быть изменен. В системе на основе RBAC операция может заключаться в создании транзакции «кредитного счета» в финансовом приложении (...). Назначение разрешения для выполнения конкретной операции имеет смысл, поскольку операции мелкозернистые и сами имеют смысл в приложении. (цитата: Wikipedia)
Я не знаю специфики на Zend_Acl или других реализаций упомянутых, но если они ACL основе, я бы не рекомендовал использовать их для ролевого разрешения.
jframework rbac then? – AbiusX 2013-02-15 19:03:59
У меня также есть мнение, что неправильный ответ принят для этого вопроса .. ACL и RBAC сильно различаются, и решение ACL принимается на вопрос о RBAC .. – 2014-08-13 11:37:02
Педантизм: «Я бы не рекомендовал использовать их для ролевых аутентификация." контроль доступа! = аутентификация И да, что более важно ACL! = RBAC^_^ – 2015-04-09 19:10:57
Попробуйте плагин DX_Auth для CodeIgniter. Я работаю над подобным (скорее, надмножеством) функций, которые имеют DX_Auth. Мой набор добавлений CI включает отображение меню (которое можно контролировать с помощью CSS), контроль доступа по ролям до запуска контроллера и другие функции. Я надеюсь опубликовать его в ближайшее время. Будет указывать URL проекта, когда я это сделаю
RBAC! = ACL - У Roland есть правильный ответ на этот вопрос.
Кстати, это важная часть рамки для реализации любой системы разрешений - по крайней мере, нет смысла использовать фреймворк, если он не дает вам хорошо спроектированной системы RBAC - это может быть лучше используя простую систему шаблонов с любым уровнем ORM.
Это распространенный антипаттерн в мире php, такие рамки, как Ruby или Django, «клонируются» только как часть того, что поставляются этими современными фреймами - как типичный синдром yuo видят отсутствие хорошей интеграции ACL или RBAC в эти рамки - что по сути является шуткой. В настоящее время существует только Yii PHP Framework, которая поставляется с достойной реализацией RBAC.
http://www.jframework.info (DeadLink)
jFramework имеет стандартный NIST уровень 2 RBAC с улучшениями, которые, как говорят, чтобы быть самым быстрым (в том числе контрольные), она может работать на одном файле базы данных SQLite и тщательно протестирован, работает как перчатка.
Имеет зависимость от DBF-файла jFramework, но вы можете просто заменить DBAL SQL-запросы в коде своим желаемым DBAL и, конечно же, вы можете использовать jFramework в SOP-манере.
Я создал проект с открытым исходным кодом под названием PHP-Bouncer, который может вас заинтересовать. Он еще довольно молод, но работает хорошо и легко настраивается. Я закончил его разработку, потому что ни одно из существующих решений, похоже, не отвечало моим потребностям. Надеюсь, это поможет!
Ion Auth Library использует пользователей и группы - https://github.com/benedmunds/CodeIgniter-Ion-Auth , но нет никакой системы RBAC, чтобы использовать их и управлять. Но вы можете белыми вашими функциями.
Я знаю, что след холодно, но новый проект выдвинулась:
PHP-RBAC является PHP Иерархическая NIST Уровень 2 Стандартный Role Based Access Control и довольно зрелый. Это также проект OWASP.
Я надеюсь, вам понравится в http://phprbac.net
Вот две библиотеки RBAC для PHP я нашел:
я использовал первый в PolyAuth : https://github.com/Polycademy/PolyAuth/
Это полнофункциональная библиотека auth, которая включает в себя NIB уровня 1 RBAC. И да, RBAC - это не то же самое, что ACL. Я также использую Codeigniter, все, что вам нужно сделать, это использовать драйвер PDO и передать идентификатор соединения. См. Этот учебник, как это сделать: http://codebyjeff.com/blog/2013/03/codeigniter-with-pdo
- 1. Управление доступом на основе ролей
- 2. Управление доступом на основе ролей для пользователя
- 3. Управление доступом на основе ролей DB Design
- 4. Весенняя безопасность: управление доступом на основе ролей
- 5. OAuth2 и управление доступом на основе ролей
- 6. Управление доступом на основе ролей на основе приложений
- 7. Управление доступом на основе ролей - правильный шаблон MVC
- 8. Управление доступом на основе ролей, используемое в MS Access
- 9. Управление доступом на основе ролей в системе с использованием C#
- 10. Управление доступом на основе ролей веб-приложения среднего стека
- 11. Управление доступом на основе ролей с помощью REST (HTTP)?
- 12. Управление доступом на основе ролей (RBAC) с контекстом?
- 13. Yii framework 2.0 Управление доступом на основе ролей PhpManager
- 14. Управление доступом на основе ролей с помощью Pyramid
- 15. ресурсов Управление доступом на основе ролей против управления доступом на основе
- 16. Управление доступом asp.net с перенаправлением ролей
- 17. фреймворка: управление на основе ролей доступа
- 18. Управление доступом на основе роли на основе Azure Blob
- 19. Система управления доступом на основе ролей для admin и super_admin
- 20. Сфера действия/роль/управление доступом на основе групп
- 21. Управление доступом на основе ролей (RBAC) в приложении Rails 4 + Emberjs
- 22. Управление доступом на основе ролей (RBAC) заботится о разрешении или ролях?
- 23. Аутентификация на основе ролей
- 24. Авторизация на основе ролей
- 25. доступ на основе ролей
- 26. Навигация на основе ролей
- 27. Управление SiteMap на основе ролей пользователя не работает
- 28. (Ruby, Rails) Аутентификация на основе ролей и управление пользователями ...?
- 29. Управление отказами на основе ролей в Spring Security - как?
- 30. Как создать управление заголовком на основе ролей в Spring MVC?
Robert: Этот ответ настолько стар, что лучше не следовать его совету, даже если ссылки все еще работают – dcousineau 2015-10-01 17:11:34