2013-01-25 113 views
2

我正在为Magento编写一个模块,它只允许用户从特定IP地址登录。Magento - 强制管理用户注销

我钩住

admin_session_user_login_success 

和我的功能运行时,我试图运行

Mage::getSingleton('admin/session')->logout(); 

但是该功能不存在

Invalid method Mage_Admin_Model_Session::logout 

我上

阅读
http://stackoverflow.com/questions/8455022/how-to-force-magento-to-logout 

帐户控制器或会话控制器也可以用来登录用户,但我不知道如何注销管理员用户。

任何片段或想法,非常感谢!

谢谢!

杰夫

回答

3

我能够注销管理员用户与下面的代码段

$adminSession = Mage::getSingleton('admin/session'); 
$adminSession->unsetAll(); 
$adminSession->getCookie()->delete($adminSession->getSessionName()); 
+0

我有这样的查询,如何找出一个管理员用户登录了使用事件观察者? – Naveenbos

0

我在Magento 1.9.0.1以下工作 - 唯一的区别似乎从core/session获取会话,而不是admin/session,所以也许这值得一试?

require_once('../app/Mage.php'); umask(0); Mage::app('default'); $session = Mage::getSingleton('core/session', array('name' => 'adminhtml')); $session->unsetAll(); $session->getCookie()->delete($session->getSessionName());