管理用户使用Zend_Auth和Zend_Session

时间:2010-04-04 06:08:45

标签: php zend-framework zend-auth zend-session

我希望Zend_Auth和Zend_Session保存用户会话和登录信息

对于实现以下项目的简单和最佳方式是什么:

1-Disallow multiple concurrent logins for the specific user

2-List all of all user currently logged in 

3-Admin could logout of specific user or destroy specific session

是否有可以执行上述操作的特殊ZF或PHP API或库?

感谢

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用Zend_Session_SaveHandler_DbTable或创建实施Zend_Session_SaveHandler_Interface的自定义会话SaveHandler。

您可以在application.ini中激活它:

resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
resources.session.saveHandler.options.name = "session"
resources.session.saveHandler.options.primary.session_id = "session_id"
resources.session.saveHandler.options.primary.save_path = "save_path"
resources.session.saveHandler.options.primary.name = "name"
resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId"
resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath"
resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName"
resources.session.saveHandler.options.modifiedColumn = "modified"
resources.session.saveHandler.options.dataColumn = "session_data"
resources.session.saveHandler.options.lifetimeColumn = "lifetime"

有关详细信息,请参阅Session Application resource docs