Аутентификация CodeIgniter + привилегии пользователя
Я пытаюсь создать систему аутентификации в своем приложении, но у меня возникли некоторые проблемы с выбором наилучшего способа, которым я мог бы выполнить то, что я хочу в CodeIgniter.
Веб-сайт позволяет компаниям управлять своими зданиями. У компании может быть много зданий и много пользователей (когда я говорю "пользователи", я имею в виду сотрудников этой компании).
На этом веб-сайте я хотел бы, чтобы у двух (в основном) было четыре пользователя общего типа.
- Супер Администратор: Это было бы возможность добавлять новых администраторов и новые компании в базу данных и предоставлять привилегии остальным администраторам.
- Администратор: Это позволит делать разные вещи в зависимости от назначенных привилегий.
- Суперпользователь компании: Этот пользователь будет создан непосредственно, когда администратор создаст новую компанию. Этот пользователь сможет создавать новых пользователей для этой компании, и, поскольку у него/нее будут полные разрешения, он сможет делать все, что могут делать другие пользователи.
- Компания Пользователь: В зависимости от привилегий, назначенных его суперпользователем, этот пользователь сможет выполнять и просматривать различные данные (например, простой пользователь сможет просто просматривать информацию из одного из многих зданий компании).
Итак, хотя я видел много библиотек аутентификации для CodeIgniter, было бы неплохо услышать какие-либо рекомендации о том, как я мог бы разработать эту систему "на основе ролей аутентификации", и если вы особенно рекомендуете библиотеку, которая могла бы помочь добейтесь этого.
Ценю!
4 answers
Существует множество библиотек, которые уже обрабатывают аутентификацию в Codeigniter, но я бы рекомендовал ion_auth. Он очень хорошо обрабатывает разрешения пользователей (группы), и я на самом деле сделал подробную запись, в которой описан хороший способ справиться с этой ситуацией с помощью Ion_Auth.
Я предлагаю библиотеку flexiauth, которая является модифицированной версией ion Auth и имеет множество уже встроенных функций, просто из коробки.
Я разрабатываю систему аутентификации на основе ролей для Codeigniter под названием Wolfauth, вот репозиторий. Это еще только начало, но это вроде как работает. Вы можете добавлять роли и т. Д., А затем ограничивать функции и классы определенными ролями пользователей и именами пользователей.
Используйте CI_aauth. Мне это нравится, это очень хорошо от других авторов.