Какая инфраструктура PHP обеспечивает наиболее многофункциональную аутентификацию и / или контроль доступа?

В настоящее время я изучаю Zend_Auth, часть Zend Framework, но разочарован отсутствием более продвинутых функций, таких как одноразовые номера, токены аутентификации, блокировка и т. Д. В своих последних проектах я реализовал схему аутентификации и ACL (список контроля доступа), которая имеет следующие особенности:

  • Соленые хеши
  • Автоматическая блокировка IP-адреса
  • Одноразовые номера (несколько типов)
  • Жетоны аутентификации (сохраняются в течение всего сеанса)

Было бы здорово, если бы я мог абстрагироваться от этой функциональности и создать многоразовый класс аутентификации, но мне было любопытно, существует ли уже многофункциональный модуль аутентификации, чтобы я мог сэкономить на работе. Если нет, то я обязательно это сделаю.

Я предполагаю, что мои вопросы таковы: Какой (на основе базы данных) модуль / схему аутентификации вы используете в настоящее время, и довольны ли вы его функциями? В частности, использует ли кто-нибудь устройство, поддерживающее перечисленные выше функции?

Жду ваших ответов.


person Chris Laplante    schedule 16.09.2010    source источник
comment
Сложность - злейший враг безопасности. - Брюс Шнайер.   -  person rook    schedule 17.09.2010
comment
@Rook: Базовые вещи вроде nonces несложны.   -  person Chris Laplante    schedule 17.09.2010
comment
Функции @SimpleCoder - это не то, что вам нужно в настройках безопасности. Генерация одноразового номера - это всего лишь несколько строк кода, зачем вам библиотека?   -  person rook    schedule 17.09.2010
comment
@ Ладья; Nonce generation is only a few lines of code, why do you need a library? Я точно знаю, как реализовать одноразовый номер, но дело не в этом. Мне не нужна библиотека для каждого из них; Мне нужен один-единственный модуль вроде Zend_Auth, в котором есть все эти функции. И вы определенно хотите security features, однако я не уверен, что это правильная фраза. Layered security или multi-faceted security, наверное, лучше описывает то, что мне нужно. По сути, это нечто большее, чем вход в систему, выход из системы для защиты от таких вещей, как захват сеанса, XSS и т. Д.   -  person Chris Laplante    schedule 18.09.2010
comment
@SimpleCoder Итак, вам нужна волшебная палочка.   -  person rook    schedule 18.09.2010
comment
@ Ладья; Нет, не думаю, что я сказал или указал на это. Я просто ищу модуль / библиотеку аутентификации для PHP, похожую на Zend_Auth.   -  person Chris Laplante    schedule 18.09.2010


Ответы (1)


Забавно, я собирался ответить "Zend Framework!" когда увидел этот вопрос. Думаю, вы уже этим пользуетесь.

Я сделал многое из того, что делаете вы, используя ZF. Верно то, что не все сделано для вас, но детали есть. Честно говоря, если бы он уже был собран, он не был бы гибким и не подходил бы ко многим вариантам использования. Я бы предпочел сделать его подходящим для приложения, которое я создаю, чем строить свое приложение на его основе. Вы можете превратить свой код в библиотеку и включить ее в другие приложения ZF.

Хотя меня бы интересовали и другие варианты.

person d-_-b    schedule 17.09.2010
comment
Спасибо, я подумывал о продлении Zend_Auth. - person Chris Laplante; 18.09.2010