Я вижу, есть несколько . Какие из них поддерживаются и просты в использовании? Каковы их плюсы и минусы?
php
codeigniter
authentication
GavinR
источник
источник
Ответы:
Обновление (14 мая 2010 г.):
Оказывается, российский разработчик Илья Конюхов, прочитав это, взял вызов и создал новую библиотеку аутентификации для CI на основе DX Auth, следуя рекомендациям и требованиям ниже.
И полученный Tank Auth выглядит как ответ на вопрос ОП. Я собираюсь выйти на конечность и назвать Tank Auth лучшей библиотекой аутентификации для CodeIgniter, доступной сегодня. Это непревзойденная библиотека, в которой есть все необходимые функции, и ни одна из тех вещей, которые вам не нужны:
Tank Auth
Скачать Tank Auth можно здесь
Оригинальный ответ:
Я также реализовал свою собственную (в настоящее время около 80% сделано после нескольких недель работы). Я попробовал все остальные в первую очередь; FreakAuth Light, DX Auth, Redux, SimpleLogin, SimpleLoginSecure, pc_user, Fresh Powered и некоторые другие. IMO, ни один из них не был на высоте, либо у них не было базовых функций, изначально небезопасных, либо слишком раздутых на мой вкус.
На самом деле, я сделал подробный обзор всех библиотек аутентификации для CodeIgniter, когда тестировал их (сразу после Нового года). FWIW, я поделюсь им с вами:
DX Auth
FreakAuth Light
pc_user
Свежий Приведенный в действие
Redux / Ion Auth
Согласно вики CodeIgniter , Redux больше не выпускается, но форк Ion Auth набирает силу: https://github.com/benedmunds/CodeIgniter-Ion-Auth
Ion Auth - отличная библиотека, не слишком тяжелая и не слишком продвинутая. В большинстве случаев его набор функций будет более чем соответствовать требованиям проекта.
SimpleLoginSecure
Не поймите меня неправильно: я не имею в виду неуважение к любой из вышеперечисленных библиотек; Я очень впечатлен тем, чего достигли их разработчики, и как далеко продвинулся каждый из них, и я не стесняюсь повторно использовать часть их кода для создания своего собственного. Я имею в виду, что иногда в этих проектах акцент смещается с основных «нужных» (таких как жесткие меры безопасности) на более мягкие «приятные», и я надеюсь, что это исправит ,
Поэтому вернемся к основам.
Аутентификация для CodeIgniter выполнена правильно
Вот мой МИНИМАЛЬНЫЙ требуемый список функций из библиотеки аутентификации. Он также является подмножеством списка возможностей моей собственной библиотеки;)
Примечание: эти последние несколько пунктов не излишним сверх-высоким уровнем безопасности, который вам не нужен для вашего веб-приложения. Если библиотека аутентификации не соответствует этим стандартам безопасности на 100%, НЕ ИСПОЛЬЗУЙТЕ ЕГО!
Недавние громкие примеры безответственных кодеров, которые оставили их в своем программном обеспечении: # 17 - как AOL электронная почта Сары Пэйлин была взломана во время президентской кампании; противная комбинация № 18 и № 19 стала причиной недавнего взлома аккаунтов Бритни Спирс, Барака Обамы, Fox News и других в Twitter; и №20 - это то, как китайским хакерам удалось украсть 9 миллионов единиц личной информации с более чем 70 000 корейских веб-сайтов за один автоматический взлом в 2008 году.
Эти атаки не являются операцией на головном мозге. Если вы оставите свои задние двери широко открытыми, вы не должны вводить себя в заблуждение, вводя в действие переднюю часть. Более того, если вы достаточно серьезно относитесь к кодированию, чтобы выбрать подходящую среду, такую как CodeIgniter, вы должны сделать это, по крайней мере, правильно, выполнив самые основные меры безопасности.
<Напыщенная>
По сути, вот как это выглядит: мне все равно, если библиотека аутентификации предлагает набор функций, расширенное управление ролями, совместимость с PHP4, красивые шрифты CAPTCHA, таблицы стран, полные админ-панели, навороты и свистки - если библиотека действительно делает мой сайт менее безопасен , не следуя передовым методам. Это пакет аутентификации ; он должен сделать одну вещь правильно: аутентификация. Если это не удается сделать , что это на самом деле приносит больше вреда , чем пользы.
</ Декламация>
/ Дженс Роланд
источник
Обратите внимание, что «полный список» Дженса Роланда не включает роли пользователей. Если вы заинтересованы в назначении различных пользовательских ролей (например, admin / user или admin / editor / user), эти библиотеки позволяют это:
Tank_Auth (№ 1 выше в списке Дженса) не имеет пользовательских ролей. Я понимаю, что это не совсем часть аутентификации, но так как
Имеет много смысла иметь одну библиотеку для обработки обеих, если вам это нужно. Из-за этого я переключаюсь на Ion_Auth с Tank_Auth.
источник
Ion_auth! Выглядит очень многообещающе и компактно! Мне нравиться..
http://github.com/benedmunds/CodeIgniter-Ion-Auth
источник
Я разработчик Redux Auth, и некоторые из упомянутых вами проблем были исправлены в бета-версии 2. Вы также можете загрузить это с официального сайта с помощью образца приложения.
Вопросы безопасности теперь не используются, и была введена более простая система забытых паролей.
Это было исправлено в версии 2 и возвращает логические значения. Я ненавидел сборную столько, сколько ты.
В примере приложения используется система проверки CI.
Работа в процессе
Я также реализовал некоторые другие функции, такие как просмотр электронной почты, что дает вам возможность использовать помощников CodeIgniter в своих письмах.
Это все еще в стадии разработки, поэтому, если у вас есть какие-либо предложения, пожалуйста, продолжайте их присылать.
-Попкорн
Ps: Спасибо за рекомендацию Redux.
источник
Я сталкивался с Flexi Auth ( http://haseydesign.com/flexi-auth/ ). Это выглядит очень многообещающе, и я начал его использовать. У этого есть замечательные особенности. Полностью интегрируется с CI и поставляется с двумя различными библиотечными файлами, в которых один очень загружен всеми функциями, а другой содержит только проверки.
Одним из лучших является то, что недавно зарегистрированный участник получает временный доступ на определенный период времени на сайте, пока они не нажмут на ссылку в своем электронном письме и не активируют.
источник
Может быть, вы найдете Redux отвечающий вашим потребностям. Это не излишество и поставляется исключительно с голыми функциями, которые потребуются большинству из нас. Разработчики и участники очень строго указали, какой код был добавлен.
Это официальная страница
источник
Ion_Auth превосходит tank_auth в основном по двум причинам: пользовательские роли и документация, эти два отсутствуют в tank_auth.
источник
Я использую настроенную версию DX Auth . Я нашел его простым в использовании, чрезвычайно простым в модификации, и у него есть руководство пользователя (с отличными примерами) , которое очень похоже на Code Igniter.
источник
Также взгляните на BackendPro
В конечном итоге вы, вероятно, в конечном итоге напишите что-то свое, но нет ничего плохого в том, чтобы заимствовать концепции из DX Auth, Freak Auth, BackendPro и т. Д.
Мой опыт работы с упакованными приложениями заключается в том, что они относятся к определенным структурам, и у меня возникли проблемы при интеграции их в мои собственные приложения без необходимости взлома, поэтому, если в предварительном пакете есть обновление, я должен перенести их.
Я также использую Smarty и ADOdb в своем коде CI, поэтому независимо от того, что я всегда буду делать серьезные изменения кода.
источник
Tank Auth выглядит хорошо, но документация - это всего лишь одностраничное объяснение того, как установить, плюс быстрое завершение работы каждого PHP-файла. По крайней мере, это все, что я нашел после большого количества Google. Может быть, то, что люди имеют в виду выше, когда говорят, что Tank Auth хорошо документированы, это то, что код хорошо прокомментирован. Это хорошо, но отличается от документации. Было бы неплохо иметь некоторую документацию о том, как интегрировать функции Tank Auth с существующим кодом.
источник
Я пытаюсь Ion_Auth и ценю это, кстати ...
SimpleLoginSecure Делает аутентификацию простой и безопасной.
источник