PHP的基本身份验证和会话管理库?

Pek*_*ica 7 php authentication

我知道很多次都会问这样的问题,但不是这个问题.如果我忽略了一个明显的重复,请原谅我.

在我的许多Web应用程序的核心是一个自编写的用户/会话管理类,其起源可以追溯到2002年.我已经决定是时候进行基本的重写了,或者最好是引入一个就绪的制作标准库.

我对该库的要求是:

  • 面向对象,干净,优秀的代码
  • 完整的会话管理:包装到session_start()和consorts
  • 理想情况下会提供各种存储方法(PHP标准/ tmp,基于数据库)
  • 理想情况下能够连接到不同类型的用户数据存储,但mySQL会很好
  • 理想情况下,它将提供方便的功能来支持OpenID,但这是一个奇特的想法,现在没有要求
  • 方法:验证会话,获取用户数据,获取会话数据,登录用户,注销用户
  • 设置:会话生存期,密码加密
  • 必须是开源的

如果它非常通用,用户管理API 周围应用程序的用户管理的通用连接器将是很好的:

  • 创建/更新/删除用户记录
  • 获取并修改当前登录用户的数据

这是非常基本的,因此安全相关,我希望有一个标准的解决方案,但我不知道,所有大型CMS和博客似乎都在推动自己.

我的两个问题:

  • 您是否知道这样的组件是通用的独立库?

  • Zend Framework中有深入了解的人能否告诉我是否可以单独使用Zend_auth和/或Zend_session ,这是一个与ZF无关的大型应用程序的核心,而不会遇到麻烦?

小智 6

我可以建议我写的认证库吗?它是一个通用库(不是为框架编写的,也不是框架的一部分):http://ulogin.sourceforge.net


Yac*_*oby 2

对Zend Framework有深入了解的人能否告诉我,是否可以在与 ZF 无关的大型应用程序的核心独立使用 Zend_auth 和/或 Zend_session,而不会遇到麻烦?

我对 Zend 框架没有深入的了解,但我使用了各种组件(例如 Zend_Search),而没有创建 Zend_Application 对象或使用 MVC 框架,并且我确信该库的其余部分也被设计为完全模块化。上次我挖掘 Zend_Session 代码时,我没有找到任何包含在 .out 之外的内容Zend/Session/。快速谷歌似乎证实了 Zend_Auth 的这一点,以及 Zend FAQ 其中指出:

ZF是组件库还是框架?
简单的回答:两者都有。Zend Framework 在单个发行版中提供了大多数 Web 应用程序所需的所有组件。但 Zend Framework 组件也是松散耦合的,因此即使与其他框架一起使用,也可以轻松地在 Web 应用程序中使用几个组件!使用这种随意使用的架构,我们正在实现更多单体框架中常见的功能。事实上,我们目前正在开发 1.8 版本的工具组件,该组件将使使用 ZF 组件构建应用程序变得更简单,但不会牺牲现有 ZF 组件的随意使用性质。工具组件本身可以独立使用,这证明了 Zend Framework 的随意使用架构。

当未将 Zend_Search 与 MVC 框架一起使用时,我必须做的唯一一件事是将安装 Zend Framework 的目录添加到包含路径,因为包含在 Zend 库中。该文档没有记录不使用 Zend Autoloader 时所需的包含内容,但由于所有内容都使用 PEAR 类命名方案,因此很容易从您正在使用的类名中推断出来。(所以课程Foo_Bar_File需要你包括Foo/Bar/File.php